From 9177a448ada6986668d6514daecf6f66f037ba49 Mon Sep 17 00:00:00 2001 From: benhar-dev <53424421+benhar-dev@users.noreply.github.com> Date: Wed, 6 Dec 2023 13:02:15 +1100 Subject: [PATCH] v0.1.0 --- README.md | 12 +- docs/README.md | 6 +- docs/_sidebar.md | 2 +- docs/changelog.md | 2 +- docs/config.js | 2 + docs/docsify/custom.css | 44 --- docs/docsify/language-st.css | 31 -- docs/docsify/language-st.js | 92 ----- docs/docsify/logo.css | 3 + .../plugins/docsify-plugin-flexible-alerts.js | 9 - docs/images/logo-dark.svg | 204 ++++++++++ docs/images/{logo.svg => logo-light.svg} | 0 docs/index.html | 48 +-- mobject-promises.library | Bin 0 -> 429539 bytes .gitattributes => src/.gitattributes | 0 .gitignore => src/.gitignore | 0 .../mobject-promises/Main/Main.plcproj | 39 +- .../mobject-promises/Main/POUs/MAIN.TcPOU | 12 +- .../Main/Tests/Promise_TestSuite.TcPOU | 360 ++++++++++++++++++ .../mobject-promises-test-project.tsproj | 18 +- .../mobject-promises/mobject-promises.tspproj | 2 +- .../Interfaces/I_Promise.TcIO | 46 +++ .../mobject-promises/Promise/Promise.TcPOU | 92 +++++ .../_Internal/Context/I_PromiseContext.TcIO | 52 +++ .../_Internal/Context/PromiseContext.TcPOU | 240 ++++++++++++ .../mobject-promises/mobject-promises.plcproj | 72 +++- 26 files changed, 1142 insertions(+), 246 deletions(-) create mode 100644 docs/config.js delete mode 100644 docs/docsify/custom.css delete mode 100644 docs/docsify/language-st.css delete mode 100644 docs/docsify/language-st.js create mode 100644 docs/docsify/logo.css delete mode 100644 docs/docsify/plugins/docsify-plugin-flexible-alerts.js create mode 100644 docs/images/logo-dark.svg rename docs/images/{logo.svg => logo-light.svg} (100%) create mode 100644 mobject-promises.library rename .gitattributes => src/.gitattributes (100%) rename .gitignore => src/.gitignore (100%) create mode 100644 src/mobject-promises/mobject-promises/Main/Tests/Promise_TestSuite.TcPOU create mode 100644 src/mobject-promises/mobject-promises/mobject-promises/Interfaces/I_Promise.TcIO create mode 100644 src/mobject-promises/mobject-promises/mobject-promises/Promise/Promise.TcPOU create mode 100644 src/mobject-promises/mobject-promises/mobject-promises/_Internal/Context/I_PromiseContext.TcIO create mode 100644 src/mobject-promises/mobject-promises/mobject-promises/_Internal/Context/PromiseContext.TcPOU diff --git a/README.md b/README.md index 453c292..e8a6844 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,14 @@
- +
## The mobject-promises Library -This is one of the many libraries of mobject. This library focuses on all things related to asynchronous operations and their eventual completion (or failure) with values. +This is one of the many libraries of [mobject](http://mobject.org). This library focuses on all things related to asynchronous operations and their eventual completion (or failure) with values. ## What is mobject? @@ -16,8 +20,8 @@ mobject's goal is to be a lightweight solution to typical oop problems. ## Documentation -The documentation for this project can be found [here](https://mobject-dev-team.github.io/mobject-condition-monitoring/#/). +The documentation for this project can be found [here](https://mobject-dev-team.github.io/mobject-promises/#/). ## Versions -- TcXaeShell 3.1.4024.42 +- TcXaeShell 3.1.4024.53 diff --git a/docs/README.md b/docs/README.md index 4a0c264..7de4530 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,12 +1,14 @@- +
> A framework and guide for writing object oriented programs in structured text. ## The mobject-promises Library -This is one of the many libraries of mobject. This library focuses on all things related to asynchronous operations and their eventual completion (or failure) with values. +This is one of the many libraries of [mobject](http://mobject.org). This library focuses on all things related to asynchronous operations and their eventual completion (or failure) with values. ## What is mobject? diff --git a/docs/_sidebar.md b/docs/_sidebar.md index b8b8f23..d55971f 100644 --- a/docs/_sidebar.md +++ b/docs/_sidebar.md @@ -6,7 +6,7 @@ - Guides - - [Coding Guide](https://benhar-dev.github.io/coding-convention/#/) + - [Coding Guide](https://mobject-dev-team.github.io/mobject-coding-convention/#/) - Versions diff --git a/docs/changelog.md b/docs/changelog.md index 1e03711..8e8e3da 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,5 +1,5 @@ # Changelog -## 0.0.0 +## v0.1.0-alpha - Alpha release diff --git a/docs/config.js b/docs/config.js new file mode 100644 index 0000000..5e6029b --- /dev/null +++ b/docs/config.js @@ -0,0 +1,2 @@ +window.$docsify = window.$docsify || {}; +window.$docsify.repo = "https://github.com/Mobject-Dev-Team/mobject-promises"; diff --git a/docs/docsify/custom.css b/docs/docsify/custom.css deleted file mode 100644 index 307926b..0000000 --- a/docs/docsify/custom.css +++ /dev/null @@ -1,44 +0,0 @@ - -.markdown-section output:after, .markdown-section pre:after { - content: ''; -} - -pre { - margin : 0px; -} - -.markdown-section pre { - padding: 0; -} - -.markdown-section pre>code { - padding: 2.2em 2.2em; -} - -.markdown-section code { - background-color: #f8f8f8; - padding : 1.3em; -} - -.markdown-section pre { - margin: 0em 0; - position: relative; - background-color:white; -} - -.markdown-section blockquote { - border-left: 4px solid #929292; - background-color: #f4f4f4; -} - -.sidebar ul li.active>a { - color: #29292b;; -} - -.github-corner svg { - fill: #383d41; -} - -a { - text-decoration: none; -} \ No newline at end of file diff --git a/docs/docsify/language-st.css b/docs/docsify/language-st.css deleted file mode 100644 index a49ec56..0000000 --- a/docs/docsify/language-st.css +++ /dev/null @@ -1,31 +0,0 @@ -.token.class-name { - color:blue; -} - -.token.keyword { - color:blue; -} - -.token.variable { - color:blue; -} - -.token.comment { - color:green; -} - - -[data-lang="declaration"] { - margin-bottom: 0px !important; -} - -[data-lang="body"] { - border-top: 1px solid lightgrey; - margin-top: 0px !important; -} - - -[data-lang="body"] + [data-lang="declaration"] { - border-top: 1px solid lightgrey; - margin-top: 0px !important; -} diff --git a/docs/docsify/language-st.js b/docs/docsify/language-st.js deleted file mode 100644 index 6ae6209..0000000 --- a/docs/docsify/language-st.js +++ /dev/null @@ -1,92 +0,0 @@ -Prism.languages.example = { - 'comment': [ - { - pattern: /(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\(\*[\s\S]*?(?:\*\)|$)|\{[\s\S]*?(?:\}|$))/, - lookbehind: true, - }, - { - pattern: /(^|[^\\:])\/\/.*/, - lookbehind: true, - greedy: true, - }, - ], - 'string': { - pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, - greedy: true, - }, - 'class-name': /\b(?:END_)?(?:PROGRAM|CONFIGURATION|INTERFACE|FUNCTION_BLOCK|FUNCTION|ACTION|TRANSITION|TYPE|STRUCT|(?:INITIAL_)?STEP|NAMESPACE|LIBRARY|CHANNEL|FOLDER|RESOURCE|VAR_(?:GLOBAL|INPUT|PUTPUT|IN_OUT|ACCESS|TEMP|EXTERNAL|CONFIG)|VAR|METHOD|PROPERTY)\b/i, - 'keyword': /\b(?:(?:END_)?(?:IF|WHILE|REPEAT|CASE|FOR)|ELSE|FROM|THEN|ELSIF|DO|TO|BY|PRIVATE|PUBLIC|PROTECTED|CONSTANT|RETURN|EXIT|CONTINUE|GOTO|JMP|AT|RETAIN|NON_RETAIN|TASK|WITH|UNTIL|USING|EXTENDS|IMPLEMENTS|GET|SET|__TRY|__CATCH|__FINALLY|__ENDTRY)\b/, - 'variable': /\b(?:AT|BOOL|BYTE|(?:D|L)?WORD|U?(?:S|D|L)?INT|L?REAL|TIME(?:_OF_DAY)?|TOD|DT|DATE(?:_AND_TIME)?|STRING|ARRAY|ANY|POINTER)\b/, - 'symbol': /%[IQM][XBWDL][\d.]*|%[IQ][\d.]*/, - 'number': /\b(?:16#[\da-f]+|2#[01_]+|0x[\da-f]+)\b|\b(?:T|D|DT|TOD)#[\d_shmd:]*|\b[A-Z]*\#[\d.,_]*|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i, - 'boolean': /\b(?:TRUE|FALSE|NULL)\b/, - 'function': /\w+(?=\()/, - 'operator': /(?:S?R?:?=>?|&&?|\*\*?|<=?|>=?|[-:^/+])|\b(?:OR|AND|MOD|NOT|XOR|LE|GE|EQ|NE|GT|LT)\b/, - 'punctuation': /[();]/, - 'type': { - 'pattern': /#/, - 'alias': 'selector', - }, -}; - -Prism.languages.declaration = { - 'comment': [ - { - pattern: /(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\(\*[\s\S]*?(?:\*\)|$)|\{[\s\S]*?(?:\}|$))/, - lookbehind: true, - }, - { - pattern: /(^|[^\\:])\/\/.*/, - lookbehind: true, - greedy: true, - }, - ], - 'string': { - pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, - greedy: true, - }, - 'class-name': /\b(?:END_)?(?:PROGRAM|CONFIGURATION|INTERFACE|FUNCTION_BLOCK|FUNCTION|ACTION|TRANSITION|TYPE|STRUCT|(?:INITIAL_)?STEP|NAMESPACE|LIBRARY|CHANNEL|FOLDER|RESOURCE|VAR_(?:GLOBAL|INPUT|PUTPUT|IN_OUT|ACCESS|TEMP|EXTERNAL|CONFIG)|VAR|METHOD|PROPERTY)\b/i, - 'keyword': /\b(?:(?:END_)?(?:IF|WHILE|REPEAT|CASE|FOR)|ELSE|FROM|THEN|ELSIF|DO|TO|BY|PRIVATE|PUBLIC|PROTECTED|CONSTANT|RETURN|EXIT|CONTINUE|GOTO|JMP|AT|RETAIN|NON_RETAIN|TASK|WITH|UNTIL|USING|EXTENDS|IMPLEMENTS|GET|SET|__TRY|__CATCH|__FINALLY|__ENDTRY)\b/, - 'variable': /\b(?:AT|BOOL|BYTE|(?:D|L)?WORD|U?(?:S|D|L)?INT|L?REAL|TIME(?:_OF_DAY)?|TOD|DT|DATE(?:_AND_TIME)?|STRING|ARRAY|ANY|POINTER)\b/, - 'symbol': /%[IQM][XBWDL][\d.]*|%[IQ][\d.]*/, - 'number': /\b(?:16#[\da-f]+|2#[01_]+|0x[\da-f]+)\b|\b(?:T|D|DT|TOD)#[\d_shmd:]*|\b[A-Z]*\#[\d.,_]*|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i, - 'boolean': /\b(?:TRUE|FALSE|NULL)\b/, - 'function': /\w+(?=\()/, - 'operator': /(?:S?R?:?=>?|&&?|\*\*?|<=?|>=?|[-:^/+])|\b(?:OR|AND|MOD|NOT|XOR|LE|GE|EQ|NE|GT|LT)\b/, - 'punctuation': /[();]/, - 'type': { - 'pattern': /#/, - 'alias': 'selector', - }, -}; - -Prism.languages.body = { - 'comment': [ - { - pattern: /(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\(\*[\s\S]*?(?:\*\)|$)|\{[\s\S]*?(?:\}|$))/, - lookbehind: true, - }, - { - pattern: /(^|[^\\:])\/\/.*/, - lookbehind: true, - greedy: true, - }, - ], - 'string': { - pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, - greedy: true, - }, - 'class-name': /\b(?:END_)?(?:PROGRAM|CONFIGURATION|INTERFACE|FUNCTION_BLOCK|FUNCTION|ACTION|TRANSITION|TYPE|STRUCT|(?:INITIAL_)?STEP|NAMESPACE|LIBRARY|CHANNEL|FOLDER|RESOURCE|VAR_(?:GLOBAL|INPUT|PUTPUT|IN_OUT|ACCESS|TEMP|EXTERNAL|CONFIG)|VAR|METHOD|PROPERTY)\b/i, - 'keyword': /\b(?:(?:END_)?(?:IF|WHILE|REPEAT|CASE|FOR)|ELSE|FROM|THEN|ELSIF|DO|TO|BY|PRIVATE|PUBLIC|PROTECTED|CONSTANT|RETURN|EXIT|CONTINUE|GOTO|JMP|AT|RETAIN|NON_RETAIN|TASK|WITH|UNTIL|USING|EXTENDS|IMPLEMENTS|GET|SET|__TRY|__CATCH|__FINALLY|__ENDTRY)\b/, - 'variable': /\b(?:AT|BOOL|BYTE|(?:D|L)?WORD|U?(?:S|D|L)?INT|L?REAL|TIME(?:_OF_DAY)?|TOD|DT|DATE(?:_AND_TIME)?|STRING|ARRAY|ANY|POINTER)\b/, - 'symbol': /%[IQM][XBWDL][\d.]*|%[IQ][\d.]*/, - 'number': /\b(?:16#[\da-f]+|2#[01_]+|0x[\da-f]+)\b|\b(?:T|D|DT|TOD)#[\d_shmd:]*|\b[A-Z]*\#[\d.,_]*|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i, - 'boolean': /\b(?:TRUE|FALSE|NULL)\b/, - 'function': /\w+(?=\()/, - 'operator': /(?:S?R?:?=>?|&&?|\*\*?|<=?|>=?|[-:^/+])|\b(?:OR|AND|MOD|NOT|XOR|LE|GE|EQ|NE|GT|LT)\b/, - 'punctuation': /[();]/, - 'type': { - 'pattern': /#/, - 'alias': 'selector', - }, -}; \ No newline at end of file diff --git a/docs/docsify/logo.css b/docs/docsify/logo.css new file mode 100644 index 0000000..4a380f6 --- /dev/null +++ b/docs/docsify/logo.css @@ -0,0 +1,3 @@ +.top-logo { + content: var(--docsify_logo); +} \ No newline at end of file diff --git a/docs/docsify/plugins/docsify-plugin-flexible-alerts.js b/docs/docsify/plugins/docsify-plugin-flexible-alerts.js deleted file mode 100644 index 76d9443..0000000 --- a/docs/docsify/plugins/docsify-plugin-flexible-alerts.js +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * docsify-plugin-flexible-alerts - * v1.1.0 - * https://github.com/fzankl/docsify-plugin-flexible-alerts#readme - * (c) 2020 Fabian Zankl - * MIT license - */ -!function(){"use strict";function h(t){return(h="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)}var e;!function(t,e){void 0===e&&(e={});var a,l,o=e.insertAt;t&&"undefined"!=typeof document&&(a=document.head||document.getElementsByTagName("head")[0],(l=document.createElement("style")).type="text/css","top"===o&&a.firstChild?a.insertBefore(l,a.firstChild):a.appendChild(l),l.styleSheet?l.styleSheet.cssText=t:l.appendChild(document.createTextNode(t)))}(".alert{display:block;position:relative;word-wrap:break-word;word-break:break-word;padding:.75rem 1.25rem!important;margin-bottom:1rem!important}.alert>*{max-width:100%}.alert>:first-child{margin-top:0}.alert>:last-child{margin-bottom:0}.alert:before{content:unset!important}.alert+.alert{margin-top:-.25rem!important}.alert p{margin-top:.5rem;margin-bottom:.5rem}.alert .title{display:flex;align-items:center;flex-wrap:wrap;font-weight:600;margin:0}.icon{display:inline-block;width:16px;height:16px;background-repeat:no-repeat;margin-right:.5rem}.alert.callout{border:1px solid #eee;border-left-width:.25rem;border-radius:.25rem;background:var(--background)}.alert.callout.note{border-left-color:#17a2b8!important}.alert.callout.note .title{color:#17a2b8}.alert.callout.note .icon-note{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='%2317a2b8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M8 16A8 8 0 108 0a8 8 0 000 16zm.93-9.412l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM8 5.5a1 1 0 100-2 1 1 0 000 2z'/%3E%3C/svg%3E\")}.alert.callout.tip{border-left-color:#28a745!important}.alert.callout.tip .title{color:#28a745}.alert.callout.tip .icon-tip{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 352 512' fill='%2328a745' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0026.64 14.28h61.71a31.99 31.99 0 0026.64-14.28l17.09-25.69a31.989 31.989 0 005.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z'/%3E%3C/svg%3E\")}.alert.callout.warning{border-left-color:#f0ad4e!important}.alert.callout.warning .title{color:#f0ad4e}.alert.callout.warning .icon-warning{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 17 16' fill='%23f0ad4e' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M8.982 1.566a1.13 1.13 0 00-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5a.905.905 0 00-.9.995l.35 3.507a.552.552 0 001.1 0l.35-3.507A.905.905 0 008 5zm.002 6a1 1 0 100 2 1 1 0 000-2z'/%3E%3C/svg%3E\")}.alert.callout.attention{border-left-color:#dc3545!important}.alert.callout.attention .title{color:#dc3545}.alert.callout.attention .icon-attention{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='%23dc3545' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M8 15A7 7 0 108 1a7 7 0 000 14zm0 1A8 8 0 108 0a8 8 0 000 16z'/%3E%3Cpath fill-rule='evenodd' d='M11.354 4.646a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708 0z'/%3E%3C/svg%3E\")}.alert.flat{border-radius:.125rem;color:#383d41;background-color:#e2e3e5;border:1px solid #d6d8db}.alert.flat.note{color:#02587f;background-color:#cdeefd;border-color:#b4e6fc}.alert.flat.note .title{color:#01354d}.alert.flat.note .icon-note{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='%2301354d' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M8 16A8 8 0 108 0a8 8 0 000 16zm.93-9.412l-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM8 5.5a1 1 0 100-2 1 1 0 000 2z'/%3E%3C/svg%3E\")}.alert.flat.tip{color:#285b2a;background-color:#dbefdc;border-color:#c9e7cb}.alert.flat.tip .title{color:#18381a}.alert.flat.tip .icon-tip{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 352 512' fill='%2318381a' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0026.64 14.28h61.71a31.99 31.99 0 0026.64-14.28l17.09-25.69a31.989 31.989 0 005.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z'/%3E%3C/svg%3E\")}.alert.flat.warning{color:#852d12;background-color:#ffddd3;border-color:#ffc9ba}.alert.flat.warning .title{color:#581e0c}.alert.flat.warning .icon-warning{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 17 16' fill='%23581e0c' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M8.982 1.566a1.13 1.13 0 00-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5a.905.905 0 00-.9.995l.35 3.507a.552.552 0 001.1 0l.35-3.507A.905.905 0 008 5zm.002 6a1 1 0 100 2 1 1 0 000-2z'/%3E%3C/svg%3E\")}.alert.flat.attention{color:#7f231c;background-color:#fdd9d7;border-color:#fcc2bf}.alert.flat.attention .title{color:#551713}.alert.flat.attention .icon-attention{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='%23551713' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M8 15A7 7 0 108 1a7 7 0 000 14zm0 1A8 8 0 108 0a8 8 0 000 16z'/%3E%3Cpath fill-rule='evenodd' d='M11.354 4.646a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708 0z'/%3E%3C/svg%3E\")}"),e={style:"callout",note:{label:"Note",icon:"icon-note",className:"note"},tip:{label:"Tip",icon:"icon-tip",className:"tip"},warning:{label:"Warning",icon:"icon-warning",className:"warning"},attention:{label:"Attention",icon:"icon-attention",className:"attention"},typeMappings:{info:"note",danger:"attention"}},window.$docsify=window.$docsify||{},window.$docsify.plugins=[].concat(function(t,f){function p(t,e,a,l){var o=(t||"").match(new RegExp("".concat(e,":(([\\s\\w\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF-]*))")));return o?l?l(o[1]):o[1]:l?l(a):a}var w=function t(e,a,l){var o,r=2|[\S\n]*)?\[!(\w*)((?:\|[\w*:[\s\w\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF-]*)*?)\]([\s\S]*?)(?:<\/p>)?<\s*\/\s*blockquote>/g,function(t,e,a,l){!w[e.toLowerCase()]&&w.typeMappings[e.toLowerCase()]&&(e=w.typeMappings[e.toLowerCase()]);var o=w[e.toLowerCase()];if(!o)return t;var r,n=p(a,"style",w.style),i=p(a,"iconVisibility","visible",function(t){return"hidden"!==t}),c=p(a,"labelVisibility","visible",function(t){return"hidden"!==t}),d=p(a,"label",o.label),s=p(a,"icon",o.icon),g=p(a,"className",o.className);"object"===h(d)&&((r=Object.keys(d).filter(function(t){return-1 '.concat(i?m:"").concat(c?d:""," ").concat(l,"