|
@ -16,13 +16,12 @@ Kubernetes 的目标不仅仅是一个编排系统,而是提供一个规范用
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<a href="https://jimmysong.io/kubernetes-handbook">
|
<a href="https://jimmysong.io/kubernetes-handbook/">
|
||||||
<img src="cover-thumbnail.jpg" title="Kubernetes Handbook——Kubernetes 中文指南/云原生应用架构实践手册 by Jimmy Song(宋净超)" alt="Kubernetes Handbook——Kubernetes 中文指南/云原生应用架构实践手册 by Jimmy Song (宋净超)">
|
<img src="cover-thumbnail.jpg" title="Kubernetes Handbook——Kubernetes 中文指南/云原生应用架构实践手册 by Jimmy Song(宋净超)" alt="Kubernetes Handbook——Kubernetes 中文指南/云原生应用架构实践手册 by Jimmy Song (宋净超)">
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
Kubernetes Handbook 项目始于 2016 年底,开源于 2017 年 3 月并在其后不断完善,这是第一本系统介绍 Kubernetes 的中文电子书。写作本书的过程中,笔者记录了从零开始学习和使用 Kubernetes 的历程,着重于经验总结和资料分享,亦有 Kubernetes 核心概念解析,希望能够帮助大家少走弯路,为大家介绍 Kubernetes 周边生态,如微服务、DevOps、大数据应用、[Service Mesh](https://jimmysong.io/blog/what-is-a-service-mesh/)、云原生应用、Serverless 等领域。
|
||||||
Kubernetes Handbook 始于 2016 年底,开源于 2017 年 3 月并在其后不断完善,是第一本系统介绍 Kubernetes 的中文书籍。写作本书的过程中,笔者记录了从零开始学习和使用 Kubernetes 的历程,着重于经验总结和资料分享,亦有 Kubernetes 核心概念解析,希望能够帮助大家少走弯路,为大家介绍 Kubernetes 周边生态,如微服务、DevOps、大数据应用、[Service Mesh](https://jimmysong.io/blog/what-is-a-service-mesh/)、云原生应用、Serverless 等领域。
|
|
||||||
|
|
||||||
### 开始之前
|
### 开始之前
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"title": "Kubernetes Handbook - Kubernetes 中文指南/云原生应用架构实践手册 · Jimmy Song",
|
"title": "Kubernetes 中文指南——云原生应用架构实践手册",
|
||||||
"description": "Kubernetes Handbook - Kubernetes 中文指南/云原生应用架构实践手册,本书记录了本人从零开始学习和使用 Kubernetes 的心路历程,着重于经验分享和总结,同时也会有相关的概念解析,希望能够帮助大家少踩坑,少走弯路,还会指引大家关注Kubernetes生态周边,如微服务构建、DevOps、大数据应用、Service Mesh、Cloud Native等领域。",
|
"description": "Kubernetes Handbook - Kubernetes 中文指南/云原生应用架构实践手册,本书记录了本人从零开始学习和使用 Kubernetes 的心路历程,着重于经验分享和总结,同时也会有相关的概念解析,希望能够帮助大家少踩坑,少走弯路,还会指引大家关注Kubernetes生态周边,如微服务构建、DevOps、大数据应用、Service Mesh、Cloud Native等领域。",
|
||||||
"language": "zh-hans",
|
"language": "zh-hans",
|
||||||
"author": "Jimmy Song(宋净超)",
|
"author": "宋净超(Jimmy Song)",
|
||||||
"links": {
|
"links": {
|
||||||
"sidebar": {
|
"sidebar": {
|
||||||
"回到主页": "https://jimmysong.io",
|
"回到主页": "https://jimmysong.io",
|
||||||
"云原生开源项目大全": "https://jimmysong.io/awesome-cloud-native",
|
"云原生开源项目大全": "https://jimmysong.io/awesome-cloud-native/",
|
||||||
"云原生社区": "https://cloudnative.to"
|
"云原生社区": "https://cloudnative.to"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 72 KiB |
BIN
cover.jpg
Before Width: | Height: | Size: 389 KiB After Width: | Height: | Size: 492 KiB |
|
@ -9,7 +9,7 @@
|
||||||
"spec": "1.0.3",
|
"spec": "1.0.3",
|
||||||
"type": "version"
|
"type": "version"
|
||||||
},
|
},
|
||||||
"/Users/jimmy/Workspace/github/rootsongjc/kubernetes-handbook"
|
"/Users/jimmy/Workspace/github/rootsongjc/istio-handbook"
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"_from": "gitbook-plugin-adsense@1.0.3",
|
"_from": "gitbook-plugin-adsense@1.0.3",
|
||||||
|
@ -43,7 +43,7 @@
|
||||||
"_shasum": "3ca1d940f016ad88321f6797e852c9ed837c94e9",
|
"_shasum": "3ca1d940f016ad88321f6797e852c9ed837c94e9",
|
||||||
"_shrinkwrap": null,
|
"_shrinkwrap": null,
|
||||||
"_spec": "gitbook-plugin-adsense@1.0.3",
|
"_spec": "gitbook-plugin-adsense@1.0.3",
|
||||||
"_where": "/Users/jimmy/Workspace/github/rootsongjc/kubernetes-handbook",
|
"_where": "/Users/jimmy/Workspace/github/rootsongjc/istio-handbook",
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/Vufuzi/plugin-google-adsense/issues"
|
"url": "https://github.com/Vufuzi/plugin-google-adsense/issues"
|
||||||
},
|
},
|
||||||
|
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 20 KiB |
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2019 zanfab
|
||||||
|
|
||||||
|
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,191 @@
|
||||||
|
# GitBook plugin: Flexible Alerts
|
||||||
|
|
||||||
|
![Build Status](https://api.travis-ci.org/zanfab/gitbook-plugin-flexible-alerts.svg)
|
||||||
|
[![npm version](https://img.shields.io/npm/v/gitbook-plugin-flexible-alerts/latest.svg)](https://www.npmjs.com/package/gitbook-plugin-flexible-alerts)
|
||||||
|
[![npm Downloads](https://img.shields.io/npm/dt/gitbook-plugin-flexible-alerts.svg)](https://www.npmjs.com/package/gitbook-plugin-flexible-alerts)
|
||||||
|
|
||||||
|
This GitBook plugin converts blockquotes into beautiful alerts. Look and feel can be configured on a global as well as on a alert specific level so output does fit your needs (some examples are shown below). In addition, you can provide own alert types.
|
||||||
|
|
||||||
|
![Sample alerts created with plugin 'flexible-alerts'](https://user-images.githubusercontent.com/44210522/50688702-ea774f00-1026-11e9-9281-ca615cb466f5.jpg)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### Step #1 - Update book.json file
|
||||||
|
|
||||||
|
1. In you gitbook's book.json file, add `flexible-alerts` to plugins list.
|
||||||
|
2. In pluginsConfig, configure the plugin so it does fit your needs. A custom setup is not mandatory.
|
||||||
|
3. By default style 'callout' and headings 'Note', 'Tip', 'Warning', 'Attention' will be used. You can change it using plugin configuration via `book.json` or for a single alert in your markdown files.
|
||||||
|
|
||||||
|
**Sample `book.json` file for gitbook version 2.0.0+**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"plugins": [
|
||||||
|
"flexible-alerts"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Sample `book.json` file for gitbook version 2.0.0+ and style `flat` instead of `callout`**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"plugins": [
|
||||||
|
"flexible-alerts"
|
||||||
|
],
|
||||||
|
"pluginsConfig": {
|
||||||
|
"flexible-alerts": {
|
||||||
|
"style": "flat"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Sample `book.json` file for gitbook version 2.0.0+ and custom headings**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"plugins": [
|
||||||
|
"flexible-alerts"
|
||||||
|
],
|
||||||
|
"pluginsConfig": {
|
||||||
|
"flexible-alerts": {
|
||||||
|
"note": {
|
||||||
|
"label": "Hinweis"
|
||||||
|
},
|
||||||
|
"tip": {
|
||||||
|
"label": "Tipp"
|
||||||
|
},
|
||||||
|
"warning": {
|
||||||
|
"label": "Warnung"
|
||||||
|
},
|
||||||
|
"danger": {
|
||||||
|
"label": "Achtung"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Sample `book.json` file for gitbook version 2.0.0+ and multilingual headings**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"plugins": [
|
||||||
|
"flexible-alerts"
|
||||||
|
],
|
||||||
|
"pluginsConfig": {
|
||||||
|
"flexible-alerts": {
|
||||||
|
"note": {
|
||||||
|
"label": {
|
||||||
|
"de": "Hinweis",
|
||||||
|
"en": "Note"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tip": {
|
||||||
|
"label": {
|
||||||
|
"de": "Tipp",
|
||||||
|
"en": "Tip"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warning": {
|
||||||
|
"label": {
|
||||||
|
"de": "Warnung",
|
||||||
|
"en": "Warning"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"danger": {
|
||||||
|
"label": {
|
||||||
|
"de": "Achtung",
|
||||||
|
"en": "Attention"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Note: Above snippets can be used as complete `book.json` file, if one of these matches your requirements and your book doesn't have one yet.
|
||||||
|
|
||||||
|
### Step #2 - gitbook commands
|
||||||
|
|
||||||
|
1. Run `gitbook install`. It will automatically install `flexible-alerts` gitbook plugin for your book. This is needed only once.
|
||||||
|
2. Build your book (`gitbook build`) or serve (`gitbook serve`) as usual.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
To use the plugin just modify an existing blockquote and prepend a line matching pattern `[!type]`. By default types `NOTE`, `TIP`, `WARNING` and `DANGER` are supported. You can extend the available types by providing a valid configuration (see below for an example).
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
> [!NOTE]
|
||||||
|
> An alert of type 'note' using global style 'callout'.
|
||||||
|
```
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
> [!NOTE|style:flat]
|
||||||
|
> An alert of type 'note' using alert specific style 'flat' which overrides global style 'callout'.
|
||||||
|
```
|
||||||
|
|
||||||
|
As you can see in the second snippet, output can be configured on alert level also. Supported options are listed in following table:
|
||||||
|
|
||||||
|
| Key | Allowed value |
|
||||||
|
| --------------- | ---- |
|
||||||
|
| style | One of follwowing values: callout, flat |
|
||||||
|
| label | Any text |
|
||||||
|
| icon | A valid Font Awesome icon, e.g. 'fa fa-info-circle' |
|
||||||
|
| className | A name of a CSS class which specifies the look and feel |
|
||||||
|
| labelVisibility | One of follwowing values: visible (default), hidden |
|
||||||
|
| iconVisibility | One of follwowing values: visible (default), hidden |
|
||||||
|
|
||||||
|
Multiple options can be used for single alerts as shown below:
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
> [!TIP|style:flat|label:My own heading|iconVisibility:hidden]
|
||||||
|
> An alert of type 'tip' using alert specific style 'flat' which overrides global style 'callout'.
|
||||||
|
> In addition, this alert uses an own heading and hides specific icon.
|
||||||
|
```
|
||||||
|
|
||||||
|
![Custom alert](https://user-images.githubusercontent.com/44210522/50689970-04676080-102c-11e9-9cbc-8af129cb988c.png)
|
||||||
|
|
||||||
|
As mentioned above you can provide your own alert types. Therefore, you have to provide the type configuration via `book.json`. Following example shows an additional type `COMMENT`.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"plugins": [
|
||||||
|
"flexible-alerts"
|
||||||
|
],
|
||||||
|
"pluginsConfig": {
|
||||||
|
"flexible-alerts": {
|
||||||
|
"style": "callout",
|
||||||
|
"comment": {
|
||||||
|
"label": "Comment",
|
||||||
|
"icon": "fa fa-comments",
|
||||||
|
"className": "info"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
In Markdown just use the alert according to the types provided by default.
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
> [!COMMENT]
|
||||||
|
> An alert of type 'comment' using style 'callout' with default settings.
|
||||||
|
```
|
||||||
|
|
||||||
|
![Custom alert type 'comment'](https://user-images.githubusercontent.com/44210522/50722960-6f21a600-10d7-11e9-87e7-d40d87045afe.png)
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
If alerts do not look as expected, check if your `book.json` as well as alerts in Markdown are valid according to this documentation.
|
||||||
|
|
||||||
|
## Changelog
|
||||||
|
|
||||||
|
04/08/2019 - Fixed issue concerning languages using characters others than [a-z,A-Z,0-9] like Chinese or Russian.
|
||||||
|
|
||||||
|
02/24/2019 - Added support for Internet Explorer 11
|
||||||
|
|
||||||
|
01/07/2019 - Moved complete icon definition to pluginsConfig section
|
||||||
|
|
||||||
|
01/05/2019 - Initial Release
|
|
@ -0,0 +1,9 @@
|
||||||
|
/*!
|
||||||
|
* gitbook-plugin-flexible-alerts
|
||||||
|
* v1.0.3
|
||||||
|
* https://github.com/zanfab/gitbook-plugin-flexible-alerts#readme
|
||||||
|
* (c) 2019 Fabian Zankl
|
||||||
|
* MIT license
|
||||||
|
*/
|
||||||
|
"use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function findAlertSetting(t,n,e,i){var o=(t||"").match(new RegExp("".concat(n,":(([^\\r\\n|]*))")));return o?i?i(o[1]):o[1]:i?i(e):e}require(["gitbook","jQuery"],function(p,e){p.events.bind("page.change",function(){var b=p.state.config.pluginsConfig["flexible-alerts"];e("blockquote").each(function(){var t=e(this).html(),n=t.replace(/\[!(\w*)((?:\|\w*:.*)*?)\]([\s\S]*)/g,function(t,n,e,i){var o=b[n.toLowerCase()];if(!o)return t;var r=findAlertSetting(e,"style",b.style),c=findAlertSetting(e,"iconVisibility","visible",function(t){return"hidden"!==t}),l=findAlertSetting(e,"labelVisibility","visible",function(t){return"hidden"!==t}),a=findAlertSetting(e,"label",o.label),f=findAlertSetting(e,"icon",o.icon),s=findAlertSetting(e,"className",o.className);if("object"===_typeof(a)){var u=p.state.innerLanguage;u&&a.hasOwnProperty(u)?a=a[u]:c=l=!1}var y='<i class="'.concat(f,'"></i>');return'<div class="alert '.concat(r," ").concat(s,'">\n <p class="title">\n ').concat(c?y:"","\n ").concat(l?a:"","\n </p>\n <p>").concat(i,"\n </div>")});n!==t&&e(this).replaceWith(n)})})});
|
||||||
|
//# sourceMappingURL=plugin.js.map
|
|
@ -0,0 +1 @@
|
||||||
|
{"version":3,"file":"plugin.js","sources":["../../src/book/plugin.js"],"sourcesContent":["function findAlertSetting(input, key, fallback, callback) {\n const match = (input || '').match(new RegExp(`${key}:(([^\\\\r\\\\n|]*))`));\n if (!match) {\n return callback ? callback(fallback) : fallback;\n }\n\n return callback ? callback(match[1]) : match[1];\n}\n\nrequire(['gitbook', 'jQuery'], function (gitbook, $) {\n gitbook.events.bind('page.change', function () {\n const options = gitbook.state.config.pluginsConfig['flexible-alerts'];\n\n $('blockquote').each(function () {\n const origin = $(this).html();\n const content = origin.replace(/\\[!(\\w*)((?:\\|\\w*:.*)*?)\\]([\\s\\S]*)/g, (match, key, settings, value) => {\n const config = options[key.toLowerCase()];\n\n if (!config) {\n return match;\n }\n\n // Style configuration\n const style = findAlertSetting(settings, 'style', options.style);\n let isIconVisible = findAlertSetting(settings, 'iconVisibility', 'visible', (value) => value !== 'hidden');\n let isLabelVisible = findAlertSetting(settings, 'labelVisibility', 'visible', (value) => value !== 'hidden');\n let label = findAlertSetting(settings, 'label', config.label);\n const icon = findAlertSetting(settings, 'icon', config.icon);\n const className = findAlertSetting(settings, 'className', config.className);\n\n // Label can be language specific and could be specified via user configuration\n if (typeof label === 'object') {\n const language = gitbook.state.innerLanguage;\n\n if (language && label.hasOwnProperty(language)) {\n label = label[language];\n } else {\n isLabelVisible = false;\n isIconVisible = false;\n }\n }\n\n const iconTag = `<i class=\"${icon}\"></i>`;\n\n return (\n `<div class=\"alert ${style} ${className}\">\n <p class=\"title\">\n ${isIconVisible ? iconTag : ''}\n ${isLabelVisible ? label : ''}\n </p>\n <p>${value}\n </div>`\n );\n });\n\n // Do not change blockquotes without alert indicator.\n if (content !== origin) {\n $(this).replaceWith(content);\n }\n });\n });\n});\n"],"names":["findAlertSetting","input","key","fallback","callback","match","RegExp","require","gitbook","$","events","bind","options","state","config","pluginsConfig","each","origin","this","html","content","replace","settings","value","toLowerCase","style","isIconVisible","isLabelVisible","label","icon","className","_typeof","language","innerLanguage","hasOwnProperty","iconTag","replaceWith"],"mappings":";;;;;;;8PAAA,SAASA,iBAAiBC,EAAOC,EAAKC,EAAUC,OACxCC,GAASJ,GAAS,IAAII,MAAM,IAAIC,iBAAUJ,+BAC3CG,EAIED,EAAWA,EAASC,EAAM,IAAMA,EAAM,GAHpCD,EAAWA,EAASD,GAAYA,EAM3CI,QAAQ,CAAC,UAAW,UAAW,SAAUC,EAASC,GAChDD,EAAQE,OAAOC,KAAK,cAAe,eAC3BC,EAAUJ,EAAQK,MAAMC,OAAOC,cAAc,mBAEnDN,EAAE,cAAcO,KAAK,eACbC,EAASR,EAAES,MAAMC,OACjBC,EAAUH,EAAOI,QAAQ,uCAAwC,SAAChB,EAAOH,EAAKoB,EAAUC,OACtFT,EAASF,EAAQV,EAAIsB,mBAEtBV,SACIT,MAIHoB,EAAQzB,iBAAiBsB,EAAU,QAASV,EAAQa,OACtDC,EAAgB1B,iBAAiBsB,EAAU,iBAAkB,UAAW,SAACC,SAAoB,WAAVA,IACnFI,EAAiB3B,iBAAiBsB,EAAU,kBAAmB,UAAW,SAACC,SAAoB,WAAVA,IACrFK,EAAQ5B,iBAAiBsB,EAAU,QAASR,EAAOc,OACjDC,EAAO7B,iBAAiBsB,EAAU,OAAQR,EAAOe,MACjDC,EAAY9B,iBAAiBsB,EAAU,YAAaR,EAAOgB,cAG5C,WAAjBC,QAAOH,GAAoB,KACvBI,EAAWxB,EAAQK,MAAMoB,cAE3BD,GAAYJ,EAAMM,eAAeF,GACnCJ,EAAQA,EAAMI,GAGdN,EADAC,GAAiB,MAKfQ,sBAAuBN,8CAGNJ,cAASK,oEAEpBJ,EAAgBS,EAAU,kCAC1BR,EAAiBC,EAAQ,qDAE1BL,4BAMTH,IAAYH,GACdR,EAAES,MAAMkB,YAAYhB"}
|
|
@ -0,0 +1,126 @@
|
||||||
|
.alert {
|
||||||
|
display: block;
|
||||||
|
position: relative;
|
||||||
|
word-wrap: break-word;
|
||||||
|
word-break: break-word;
|
||||||
|
padding: .75rem 1.25rem;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert > * {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert + .alert {
|
||||||
|
margin-top: -.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert p {
|
||||||
|
margin-top: .5rem;
|
||||||
|
margin-bottom: .5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert i {
|
||||||
|
margin-right: .5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert .title {
|
||||||
|
font-weight: 600;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert > :first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert > :last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout {
|
||||||
|
border: 1px solid #eee;
|
||||||
|
border-left-width: .25rem;
|
||||||
|
border-radius: .25rem;
|
||||||
|
background: #FFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.warning {
|
||||||
|
border-left-color: #f0ad4e !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.warning .title {
|
||||||
|
color: #f0ad4e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.tip {
|
||||||
|
border-left-color: #28a745 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.tip .title {
|
||||||
|
color: #28a745;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.info {
|
||||||
|
border-left-color: #17a2b8 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.info .title {
|
||||||
|
color: #17a2b8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.danger {
|
||||||
|
border-left-color: #dc3545 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.callout.danger .title {
|
||||||
|
color: #dc3545;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat {
|
||||||
|
border: 1px solid transparent;
|
||||||
|
border-radius: .125rem;
|
||||||
|
|
||||||
|
color: #383d41;
|
||||||
|
background-color: #e2e3e5;
|
||||||
|
border-color: #d6d8db;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.info {
|
||||||
|
color: #02587f;
|
||||||
|
background-color: #cdeefd;
|
||||||
|
border-color: #b8e7fc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.info .title {
|
||||||
|
color: #01354d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.tip {
|
||||||
|
color: #285b2a;
|
||||||
|
background-color: #dbefdc;
|
||||||
|
border-color: #cde9ce;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.tip .title {
|
||||||
|
color: #18381a;;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.warning {
|
||||||
|
color: #852d12;
|
||||||
|
background-color: #ffddd3;
|
||||||
|
border-color: #ffd0c1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.warning .title {
|
||||||
|
color: #581e0c;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.danger {
|
||||||
|
color: #7f231c;
|
||||||
|
background-color: #fdd9d7;
|
||||||
|
border-color: #fccac7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert.flat.danger .title {
|
||||||
|
color: #551713;
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
/*!
|
||||||
|
* gitbook-plugin-flexible-alerts
|
||||||
|
* v1.0.3
|
||||||
|
* https://github.com/zanfab/gitbook-plugin-flexible-alerts#readme
|
||||||
|
* (c) 2019 Fabian Zankl
|
||||||
|
* MIT license
|
||||||
|
*/
|
||||||
|
"use strict";module.exports={book:{assets:"./dist/book",js:["plugin.js"],css:["style.css"]}};
|
||||||
|
//# sourceMappingURL=index.js.map
|
|
@ -0,0 +1 @@
|
||||||
|
{"version":3,"file":"index.js","sources":["../src/index.js"],"sourcesContent":["module.exports = {\n book: {\n assets: './dist/book',\n js: [\n 'plugin.js'\n ],\n css: [\n 'style.css'\n ]\n }\n};\n"],"names":["module","exports","book","assets","js","css"],"mappings":";;;;;;;aAAAA,OAAOC,QAAU,CACfC,KAAM,CACJC,OAAQ,cACRC,GAAI,CACF,aAEFC,IAAK,CACH"}
|
|
@ -0,0 +1 @@
|
||||||
|
"use strict";module.exports=require('./dist/index.js');
|
|
@ -0,0 +1,161 @@
|
||||||
|
{
|
||||||
|
"_args": [
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "gitbook-plugin-flexible-alerts",
|
||||||
|
"raw": "gitbook-plugin-flexible-alerts@1.0.3",
|
||||||
|
"rawSpec": "1.0.3",
|
||||||
|
"scope": null,
|
||||||
|
"spec": "1.0.3",
|
||||||
|
"type": "version"
|
||||||
|
},
|
||||||
|
"/Users/jimmy/Workspace/github/rootsongjc/opentelemetry-obervability"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"_from": "gitbook-plugin-flexible-alerts@1.0.3",
|
||||||
|
"_hasShrinkwrap": false,
|
||||||
|
"_id": "gitbook-plugin-flexible-alerts@1.0.3",
|
||||||
|
"_inCache": true,
|
||||||
|
"_installable": true,
|
||||||
|
"_location": "/gitbook-plugin-flexible-alerts",
|
||||||
|
"_nodeVersion": "11.13.0",
|
||||||
|
"_npmOperationalInternal": {
|
||||||
|
"host": "s3://npm-registry-packages",
|
||||||
|
"tmp": "tmp/gitbook-plugin-flexible-alerts_1.0.3_1554738322600_0.32370197887939023"
|
||||||
|
},
|
||||||
|
"_npmUser": {
|
||||||
|
"email": "fabian.zankl@gmail.com",
|
||||||
|
"name": "zanfab"
|
||||||
|
},
|
||||||
|
"_npmVersion": "6.7.0",
|
||||||
|
"_phantomChildren": {},
|
||||||
|
"_requested": {
|
||||||
|
"name": "gitbook-plugin-flexible-alerts",
|
||||||
|
"raw": "gitbook-plugin-flexible-alerts@1.0.3",
|
||||||
|
"rawSpec": "1.0.3",
|
||||||
|
"scope": null,
|
||||||
|
"spec": "1.0.3",
|
||||||
|
"type": "version"
|
||||||
|
},
|
||||||
|
"_requiredBy": [
|
||||||
|
"#USER"
|
||||||
|
],
|
||||||
|
"_resolved": "https://registry.npmjs.org/gitbook-plugin-flexible-alerts/-/gitbook-plugin-flexible-alerts-1.0.3.tgz",
|
||||||
|
"_shasum": "057a15a91209febbfdd0e813437be17da6bbd8a0",
|
||||||
|
"_shrinkwrap": null,
|
||||||
|
"_spec": "gitbook-plugin-flexible-alerts@1.0.3",
|
||||||
|
"_where": "/Users/jimmy/Workspace/github/rootsongjc/opentelemetry-obervability",
|
||||||
|
"author": {
|
||||||
|
"name": "Fabian Zankl"
|
||||||
|
},
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/zanfab/gitbook-plugin-flexible-alerts/issues"
|
||||||
|
},
|
||||||
|
"dependencies": {},
|
||||||
|
"description": "GitBook plugin to convert blockquotes into beautiful and configurable alerts using preconfigured or own styles and alert types.",
|
||||||
|
"devDependencies": {
|
||||||
|
"@babel/core": "^7.3.3",
|
||||||
|
"@babel/preset-env": "^7.3.1",
|
||||||
|
"eslint": "^5.14.1",
|
||||||
|
"lodash.merge": "^4.6.1",
|
||||||
|
"rimraf": "^2.6.3",
|
||||||
|
"rollup": "^1.2.3",
|
||||||
|
"rollup-copy-plugin": "^0.1.0",
|
||||||
|
"rollup-plugin-babel": "^4.3.2",
|
||||||
|
"rollup-plugin-copy-assets": "^1.1.0",
|
||||||
|
"rollup-plugin-eslint": "^5.0.0",
|
||||||
|
"rollup-plugin-node-resolve": "^4.0.1",
|
||||||
|
"rollup-plugin-uglify": "^6.0.2",
|
||||||
|
"rollup-plugin-url": "^2.2.0"
|
||||||
|
},
|
||||||
|
"directories": {},
|
||||||
|
"dist": {
|
||||||
|
"fileCount": 9,
|
||||||
|
"integrity": "sha512-81hXO9fIN4MYkRQ2D56kaNh4XQ/ztjQQQijB0cwXXqTbaLkpo+2P56BH6THRBMApxpFe5S9Q6X5YhTHkMyhHNw==",
|
||||||
|
"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq2yTCRA9TVsSAnZWagAAokcP/3aBcU2+qdd08MLY8VBv\nu9Q4fmVGZcH8SNmQbMJIM1G0h1c1sGb6+0S0pvQjd0rVUsohrxpYW2nTwmzX\n1+uOiBlqYAOHKfrPRWWP3BoSwY880QATI4itlXfSx2nXkC+r9P7YyjaKffP/\nlXbZH9qpb9hrCUSaf0MZHJGxLQciK3CKe1ayVm1ODBgwREmJRrb57YJkwKTT\nzNAydhhNOwvlHuPWMN8QmEYyba03Gt4H7YCvR2RAxEnapqg66mTiW+sUtRZF\nV2lpdYhjbRykJtDziMVdUOt6QkNeDAdVfy13oDp/ffVkgsYuhPZR2jU8svQq\n38rR8TfhhUt6vNOvNijV39u9a8YIfz4gMxcWsfo0hh2Db9wMcv6p8uxXEzrT\n1KdeeGf9tzwzw7mpiSocM/EM3sn12OnSIvnWeDtebboe5T/6ErFO51bwIQAz\nPn8CKoSiiBv1NnHeHOqqNEFD0xp8EGGrazImaME4yWdTrBODRXPMV7V9s1pr\nuWoEqM+PPdns7/GFbsqS1n2N/m54XnKVl2gSThehD59XC1ouWDr5wKXVKhFT\nP8RTUNYwUd26BZgo6boToGiYhbCxewqh7wMMRSjdB0ASjgTYlNRU69batiBR\n1IEp9OXltUL35zF4tJeV/YoZi+E135wRDz7q+7opLqmF2cOVcNtnR0tNx0NK\n/JWN\r\n=u7hr\r\n-----END PGP SIGNATURE-----\r\n",
|
||||||
|
"shasum": "057a15a91209febbfdd0e813437be17da6bbd8a0",
|
||||||
|
"tarball": "https://registry.npmjs.org/gitbook-plugin-flexible-alerts/-/gitbook-plugin-flexible-alerts-1.0.3.tgz",
|
||||||
|
"unpackedSize": 17162
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"gitbook": ">=2.0.0"
|
||||||
|
},
|
||||||
|
"gitHead": "082e485b1d49ad3732b3e549e825d4664fd0a2fa",
|
||||||
|
"gitbook": {
|
||||||
|
"properties": {
|
||||||
|
"danger": {
|
||||||
|
"default": {
|
||||||
|
"className": "danger",
|
||||||
|
"icon": "fa fa-ban",
|
||||||
|
"label": "Attention"
|
||||||
|
},
|
||||||
|
"title": "Configuration for alerts of type 'danger'",
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"note": {
|
||||||
|
"default": {
|
||||||
|
"className": "info",
|
||||||
|
"icon": "fa fa-info-circle",
|
||||||
|
"label": "Note"
|
||||||
|
},
|
||||||
|
"title": "Configuration for alerts of type 'note'",
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"style": {
|
||||||
|
"default": "callout",
|
||||||
|
"title": "Style used for alerts.",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"tip": {
|
||||||
|
"default": {
|
||||||
|
"className": "tip",
|
||||||
|
"icon": "fa fa-lightbulb-o",
|
||||||
|
"label": "Tip"
|
||||||
|
},
|
||||||
|
"title": "Configuration for alerts of type 'tip'",
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"warning": {
|
||||||
|
"default": {
|
||||||
|
"className": "warning",
|
||||||
|
"icon": "fa fa-exclamation-triangle",
|
||||||
|
"label": "Warning"
|
||||||
|
},
|
||||||
|
"title": "Configuration for alerts of type 'warning'",
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/zanfab/gitbook-plugin-flexible-alerts#readme",
|
||||||
|
"keywords": [
|
||||||
|
"gitbook",
|
||||||
|
"plugin",
|
||||||
|
"alert",
|
||||||
|
"blockquotes",
|
||||||
|
"quote",
|
||||||
|
"hint",
|
||||||
|
"callout"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"main": "index.js",
|
||||||
|
"maintainers": [
|
||||||
|
{
|
||||||
|
"email": "fabian.zankl@gmail.com",
|
||||||
|
"name": "zanfab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "gitbook-plugin-flexible-alerts",
|
||||||
|
"optionalDependencies": {},
|
||||||
|
"readme": "ERROR: No README data found!",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/zanfab/gitbook-plugin-flexible-alerts.git"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"build": "rollup -c",
|
||||||
|
"clean": "rimraf dist/*",
|
||||||
|
"prepare": "npm run clean && npm run build",
|
||||||
|
"start": "npm run build -- -w"
|
||||||
|
},
|
||||||
|
"version": "1.0.3"
|
||||||
|
}
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 624 KiB After Width: | Height: | Size: 605 KiB |
Before Width: | Height: | Size: 274 KiB After Width: | Height: | Size: 252 KiB |
Before Width: | Height: | Size: 382 KiB After Width: | Height: | Size: 377 KiB |
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 1.8 KiB |
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="pdf-header">
|
<div class="pdf-header">
|
||||||
<span>{{ page.title }}</span>
|
<span>{{ config.title }}</span>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
Before Width: | Height: | Size: 213 KiB After Width: | Height: | Size: 183 KiB |