lecter 0.1.6 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.all-contributorsrc +26 -0
- data/.circleci/config.yml +86 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +27 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +16 -0
- data/.gitignore +1 -0
- data/.rubocop.yml +25 -0
- data/CHANGELOG.md +20 -0
- data/CONTRIBUTING.md +35 -0
- data/Gemfile +3 -2
- data/Gemfile.lock +37 -69
- data/LICENSE.txt +1 -1
- data/README.md +162 -54
- data/Rakefile +5 -3
- data/app/controllers/lecter/diagnosis_controller.rb +28 -49
- data/app/views/layouts/lecter.html.erb +258 -0
- data/app/views/lecter/diagnosis/new.html.erb +61 -0
- data/app/views/lecter/diagnosis/show.html.erb +54 -0
- data/bin/console +1 -0
- data/bin/rails +2 -0
- data/config/locales/en.yml +4 -3
- data/config/locales/ru.yml +4 -3
- data/config/routes.rb +5 -1
- data/lecter.gemspec +9 -5
- data/lib/lecter/engine.rb +2 -0
- data/lib/lecter/formatter_headers.rb +26 -0
- data/lib/lecter/formatter_payload.rb +35 -0
- data/lib/lecter/html_generator.rb +66 -0
- data/lib/lecter/html_row.rb +42 -0
- data/lib/lecter/rack.rb +30 -36
- data/lib/lecter/railtie.rb +9 -0
- data/lib/lecter/requester.rb +63 -0
- data/lib/lecter/trace_point.rb +30 -0
- data/lib/lecter/version.rb +3 -1
- data/lib/lecter.rb +15 -11
- metadata +45 -19
- data/.travis.yml +0 -7
- data/app/assets/javascripts/lecter.js +0 -2
- data/app/assets/stylesheets/lecter.css +0 -261
- data/app/views/layouts/lecter.slim +0 -14
- data/app/views/lecter/diagnosis/new.erb +0 -20
- data/app/views/lecter/diagnosis/show.slim +0 -52
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lecter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Neodelf
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '13.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '13.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -53,13 +53,13 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: rubocop
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
|
-
type: :
|
62
|
+
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
@@ -80,28 +80,48 @@ dependencies:
|
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
|
-
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: simplecov
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.17.1
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.17.1
|
97
|
+
description: The main purpose of that gem is helping developers to understand which
|
98
|
+
code executes by request.<br>
|
84
99
|
email:
|
85
100
|
- neodelf@gmail.com
|
86
101
|
executables: []
|
87
102
|
extensions: []
|
88
103
|
extra_rdoc_files: []
|
89
104
|
files:
|
105
|
+
- ".all-contributorsrc"
|
106
|
+
- ".circleci/config.yml"
|
107
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
108
|
+
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
109
|
+
- ".github/PULL_REQUEST_TEMPLATE.md"
|
90
110
|
- ".gitignore"
|
91
111
|
- ".rspec"
|
92
|
-
- ".
|
112
|
+
- ".rubocop.yml"
|
113
|
+
- CHANGELOG.md
|
93
114
|
- CODE_OF_CONDUCT.md
|
115
|
+
- CONTRIBUTING.md
|
94
116
|
- Gemfile
|
95
117
|
- Gemfile.lock
|
96
118
|
- LICENSE.txt
|
97
119
|
- README.md
|
98
120
|
- Rakefile
|
99
|
-
- app/assets/javascripts/lecter.js
|
100
|
-
- app/assets/stylesheets/lecter.css
|
101
121
|
- app/controllers/lecter/diagnosis_controller.rb
|
102
|
-
- app/views/layouts/lecter.
|
103
|
-
- app/views/lecter/diagnosis/new.erb
|
104
|
-
- app/views/lecter/diagnosis/show.
|
122
|
+
- app/views/layouts/lecter.html.erb
|
123
|
+
- app/views/lecter/diagnosis/new.html.erb
|
124
|
+
- app/views/lecter/diagnosis/show.html.erb
|
105
125
|
- bin/console
|
106
126
|
- bin/rails
|
107
127
|
- bin/setup
|
@@ -111,7 +131,14 @@ files:
|
|
111
131
|
- lecter.gemspec
|
112
132
|
- lib/lecter.rb
|
113
133
|
- lib/lecter/engine.rb
|
134
|
+
- lib/lecter/formatter_headers.rb
|
135
|
+
- lib/lecter/formatter_payload.rb
|
136
|
+
- lib/lecter/html_generator.rb
|
137
|
+
- lib/lecter/html_row.rb
|
114
138
|
- lib/lecter/rack.rb
|
139
|
+
- lib/lecter/railtie.rb
|
140
|
+
- lib/lecter/requester.rb
|
141
|
+
- lib/lecter/trace_point.rb
|
115
142
|
- lib/lecter/version.rb
|
116
143
|
homepage: https://github.com/neodelf/lecter
|
117
144
|
licenses:
|
@@ -119,7 +146,7 @@ licenses:
|
|
119
146
|
metadata:
|
120
147
|
allowed_push_host: https://rubygems.org
|
121
148
|
homepage_uri: https://github.com/neodelf/lecter
|
122
|
-
post_install_message:
|
149
|
+
post_install_message:
|
123
150
|
rdoc_options: []
|
124
151
|
require_paths:
|
125
152
|
- lib
|
@@ -134,9 +161,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
134
161
|
- !ruby/object:Gem::Version
|
135
162
|
version: '0'
|
136
163
|
requirements: []
|
137
|
-
|
138
|
-
|
139
|
-
signing_key:
|
164
|
+
rubygems_version: 3.0.8
|
165
|
+
signing_key:
|
140
166
|
specification_version: 4
|
141
|
-
summary:
|
167
|
+
summary: Show executable code by request.
|
142
168
|
test_files: []
|
data/.travis.yml
DELETED
@@ -1,2 +0,0 @@
|
|
1
|
-
/*! highlight.js v9.15.8 | BSD3 License | git.io/hljslicense */
|
2
|
-
!function(e){var n="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):n&&(n.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return n.hljs}))}(function(a){var f=[],u=Object.keys,N={},c={},n=/^(no-?highlight|plain|text)$/i,s=/\blang(?:uage)?-([\w-]+)\b/i,t=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,r={case_insensitive:"cI",lexemes:"l",contains:"c",keywords:"k",subLanguage:"sL",className:"cN",begin:"b",beginKeywords:"bK",end:"e",endsWithParent:"eW",illegal:"i",excludeBegin:"eB",excludeEnd:"eE",returnBegin:"rB",returnEnd:"rE",relevance:"r",variants:"v",IDENT_RE:"IR",UNDERSCORE_IDENT_RE:"UIR",NUMBER_RE:"NR",C_NUMBER_RE:"CNR",BINARY_NUMBER_RE:"BNR",RE_STARTERS_RE:"RSR",BACKSLASH_ESCAPE:"BE",APOS_STRING_MODE:"ASM",QUOTE_STRING_MODE:"QSM",PHRASAL_WORDS_MODE:"PWM",C_LINE_COMMENT_MODE:"CLCM",C_BLOCK_COMMENT_MODE:"CBCM",HASH_COMMENT_MODE:"HCM",NUMBER_MODE:"NM",C_NUMBER_MODE:"CNM",BINARY_NUMBER_MODE:"BNM",CSS_NUMBER_MODE:"CSSNM",REGEXP_MODE:"RM",TITLE_MODE:"TM",UNDERSCORE_TITLE_MODE:"UTM",COMMENT:"C",beginRe:"bR",endRe:"eR",illegalRe:"iR",lexemesRe:"lR",terminators:"t",terminator_end:"tE"},b="</span>",h={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};function _(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function E(e){return e.nodeName.toLowerCase()}function v(e,n){var t=e&&e.exec(n);return t&&0===t.index}function l(e){return n.test(e)}function g(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function R(e){var a=[];return function e(n,t){for(var r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?t+=r.nodeValue.length:1===r.nodeType&&(a.push({event:"start",offset:t,node:r}),t=e(r,t),E(r).match(/br|hr|img|input/)||a.push({event:"stop",offset:t,node:r}));return t}(e,0),a}function i(e){if(r&&!e.langApiRestored){for(var n in e.langApiRestored=!0,r)e[n]&&(e[r[n]]=e[n]);(e.c||[]).concat(e.v||[]).forEach(i)}}function m(o){function s(e){return e&&e.source||e}function c(e,n){return new RegExp(s(e),"m"+(o.cI?"i":"")+(n?"g":""))}!function n(t,e){if(!t.compiled){if(t.compiled=!0,t.k=t.k||t.bK,t.k){function r(t,e){o.cI&&(e=e.toLowerCase()),e.split(" ").forEach(function(e){var n=e.split("|");a[n[0]]=[t,n[1]?Number(n[1]):1]})}var a={};"string"==typeof t.k?r("keyword",t.k):u(t.k).forEach(function(e){r(e,t.k[e])}),t.k=a}t.lR=c(t.l||/\w+/,!0),e&&(t.bK&&(t.b="\\b("+t.bK.split(" ").join("|")+")\\b"),t.b||(t.b=/\B|\b/),t.bR=c(t.b),t.endSameAsBegin&&(t.e=t.b),t.e||t.eW||(t.e=/\B|\b/),t.e&&(t.eR=c(t.e)),t.tE=s(t.e)||"",t.eW&&e.tE&&(t.tE+=(t.e?"|":"")+e.tE)),t.i&&(t.iR=c(t.i)),null==t.r&&(t.r=1),t.c||(t.c=[]),t.c=Array.prototype.concat.apply([],t.c.map(function(e){return function(n){return n.v&&!n.cached_variants&&(n.cached_variants=n.v.map(function(e){return g(n,{v:null},e)})),n.cached_variants||n.eW&&[g(n)]||[n]}("self"===e?t:e)})),t.c.forEach(function(e){n(e,t)}),t.starts&&n(t.starts,e);var i=t.c.map(function(e){return e.bK?"\\.?(?:"+e.b+")\\.?":e.b}).concat([t.tE,t.i]).map(s).filter(Boolean);t.t=i.length?c(function(e,n){for(var t=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,r=0,a="",i=0;i<e.length;i++){var o=r,c=s(e[i]);for(0<i&&(a+=n);0<c.length;){var u=t.exec(c);if(null==u){a+=c;break}a+=c.substring(0,u.index),c=c.substring(u.index+u[0].length),"\\"==u[0][0]&&u[1]?a+="\\"+String(Number(u[1])+o):(a+=u[0],"("==u[0]&&r++)}}return a}(i,"|"),!0):{exec:function(){return null}}}}(o)}function C(e,n,i,t){function c(e,n,t,r){var a='<span class="'+(r?"":h.classPrefix);return e?(a+=e+'">')+n+(t?"":b):n}function o(){E+=null!=l.sL?function(){var e="string"==typeof l.sL;if(e&&!N[l.sL])return _(g);var n=e?C(l.sL,g,!0,f[l.sL]):O(g,l.sL.length?l.sL:void 0);return 0<l.r&&(R+=n.r),e&&(f[l.sL]=n.top),c(n.language,n.value,!1,!0)}():function(){var e,n,t,r,a,i,o;if(!l.k)return _(g);for(r="",n=0,l.lR.lastIndex=0,t=l.lR.exec(g);t;)r+=_(g.substring(n,t.index)),a=l,i=t,void 0,o=s.cI?i[0].toLowerCase():i[0],(e=a.k.hasOwnProperty(o)&&a.k[o])?(R+=e[1],r+=c(e[0],_(t[0]))):r+=_(t[0]),n=l.lR.lastIndex,t=l.lR.exec(g);return r+_(g.substr(n))}(),g=""}function u(e){E+=e.cN?c(e.cN,"",!0):"",l=Object.create(e,{parent:{value:l}})}function r(e,n){if(g+=e,null==n)return o(),0;var t=function(e,n){var t,r,a;for(t=0,r=n.c.length;t<r;t++)if(v(n.c[t].bR,e))return n.c[t].endSameAsBegin&&(n.c[t].eR=(a=n.c[t].bR.exec(e)[0],new RegExp(a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"m"))),n.c[t]}(n,l);if(t)return t.skip?g+=n:(t.eB&&(g+=n),o(),t.rB||t.eB||(g=n)),u(t),t.rB?0:n.length;var r=function e(n,t){if(v(n.eR,t)){for(;n.endsParent&&n.parent;)n=n.parent;return n}if(n.eW)return e(n.parent,t)}(l,n);if(r){var a=l;for(a.skip?g+=n:(a.rE||a.eE||(g+=n),o(),a.eE&&(g=n));l.cN&&(E+=b),l.skip||l.sL||(R+=l.r),(l=l.parent)!==r.parent;);return r.starts&&(r.endSameAsBegin&&(r.starts.eR=r.eR),u(r.starts)),a.rE?0:n.length}if(function(e,n){return!i&&v(n.iR,e)}(n,l))throw new Error('Illegal lexeme "'+n+'" for mode "'+(l.cN||"<unnamed>")+'"');return g+=n,n.length||1}var s=B(e);if(!s)throw new Error('Unknown language: "'+e+'"');m(s);var a,l=t||s,f={},E="";for(a=l;a!==s;a=a.parent)a.cN&&(E=c(a.cN,"",!0)+E);var g="",R=0;try{for(var d,p,M=0;l.t.lastIndex=M,d=l.t.exec(n);)p=r(n.substring(M,d.index),d[0]),M=d.index+p;for(r(n.substr(M)),a=l;a.parent;a=a.parent)a.cN&&(E+=b);return{r:R,value:E,language:e,top:l}}catch(e){if(e.message&&-1!==e.message.indexOf("Illegal"))return{r:0,value:_(n)};throw e}}function O(t,e){e=e||h.languages||u(N);var r={r:0,value:_(t)},a=r;return e.filter(B).filter(M).forEach(function(e){var n=C(e,t,!1);n.language=e,n.r>a.r&&(a=n),n.r>r.r&&(a=r,r=n)}),a.language&&(r.second_best=a),r}function d(e){return h.tabReplace||h.useBR?e.replace(t,function(e,n){return h.useBR&&"\n"===e?"<br>":h.tabReplace?n.replace(/\t/g,h.tabReplace):""}):e}function o(e){var n,t,r,a,i,o=function(e){var n,t,r,a,i=e.className+" ";if(i+=e.parentNode?e.parentNode.className:"",t=s.exec(i))return B(t[1])?t[1]:"no-highlight";for(n=0,r=(i=i.split(/\s+/)).length;n<r;n++)if(l(a=i[n])||B(a))return a}(e);l(o)||(h.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div")).innerHTML=e.innerHTML.replace(/\n/g,"").replace(/<br[ \/]*>/g,"\n"):n=e,i=n.textContent,r=o?C(o,i,!0):O(i),(t=R(n)).length&&((a=document.createElementNS("http://www.w3.org/1999/xhtml","div")).innerHTML=r.value,r.value=function(e,n,t){var r=0,a="",i=[];function o(){return e.length&&n.length?e[0].offset!==n[0].offset?e[0].offset<n[0].offset?e:n:"start"===n[0].event?e:n:e.length?e:n}function c(e){a+="<"+E(e)+f.map.call(e.attributes,function(e){return" "+e.nodeName+'="'+_(e.value).replace('"',""")+'"'}).join("")+">"}function u(e){a+="</"+E(e)+">"}function s(e){("start"===e.event?c:u)(e.node)}for(;e.length||n.length;){var l=o();if(a+=_(t.substring(r,l[0].offset)),r=l[0].offset,l===e){for(i.reverse().forEach(u);s(l.splice(0,1)[0]),(l=o())===e&&l.length&&l[0].offset===r;);i.reverse().forEach(c)}else"start"===l[0].event?i.push(l[0].node):i.pop(),s(l.splice(0,1)[0])}return a+_(t.substr(r))}(t,R(a),i)),r.value=d(r.value),e.innerHTML=r.value,e.className=function(e,n,t){var r=n?c[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}(e.className,o,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function p(){if(!p.called){p.called=!0;var e=document.querySelectorAll("pre code");f.forEach.call(e,o)}}function B(e){return e=(e||"").toLowerCase(),N[e]||N[c[e]]}function M(e){var n=B(e);return n&&!n.disableAutodetect}return a.highlight=C,a.highlightAuto=O,a.fixMarkup=d,a.highlightBlock=o,a.configure=function(e){h=g(h,e)},a.initHighlighting=p,a.initHighlightingOnLoad=function(){addEventListener("DOMContentLoaded",p,!1),addEventListener("load",p,!1)},a.registerLanguage=function(n,e){var t=N[n]=e(a);i(t),t.aliases&&t.aliases.forEach(function(e){c[e]=n})},a.listLanguages=function(){return u(N)},a.getLanguage=B,a.autoDetection=M,a.inherit=g,a.IR=a.IDENT_RE="[a-zA-Z]\\w*",a.UIR=a.UNDERSCORE_IDENT_RE="[a-zA-Z_]\\w*",a.NR=a.NUMBER_RE="\\b\\d+(\\.\\d+)?",a.CNR=a.C_NUMBER_RE="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",a.BNR=a.BINARY_NUMBER_RE="\\b(0b[01]+)",a.RSR=a.RE_STARTERS_RE="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",a.BE=a.BACKSLASH_ESCAPE={b:"\\\\[\\s\\S]",r:0},a.ASM=a.APOS_STRING_MODE={cN:"string",b:"'",e:"'",i:"\\n",c:[a.BE]},a.QSM=a.QUOTE_STRING_MODE={cN:"string",b:'"',e:'"',i:"\\n",c:[a.BE]},a.PWM=a.PHRASAL_WORDS_MODE={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},a.C=a.COMMENT=function(e,n,t){var r=a.inherit({cN:"comment",b:e,e:n,c:[]},t||{});return r.c.push(a.PWM),r.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),r},a.CLCM=a.C_LINE_COMMENT_MODE=a.C("//","$"),a.CBCM=a.C_BLOCK_COMMENT_MODE=a.C("/\\*","\\*/"),a.HCM=a.HASH_COMMENT_MODE=a.C("#","$"),a.NM=a.NUMBER_MODE={cN:"number",b:a.NR,r:0},a.CNM=a.C_NUMBER_MODE={cN:"number",b:a.CNR,r:0},a.BNM=a.BINARY_NUMBER_MODE={cN:"number",b:a.BNR,r:0},a.CSSNM=a.CSS_NUMBER_MODE={cN:"number",b:a.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},a.RM=a.REGEXP_MODE={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[a.BE,{b:/\[/,e:/\]/,r:0,c:[a.BE]}]},a.TM=a.TITLE_MODE={cN:"title",b:a.IR,r:0},a.UTM=a.UNDERSCORE_TITLE_MODE={cN:"title",b:a.UIR,r:0},a.METHOD_GUARD={b:"\\.\\s*"+a.UIR,r:0},a});hljs.registerLanguage("ruby",function(e){var b="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},c={cN:"doctag",b:"@[A-Za-z]+"},a={b:"#<",e:">"},s=[e.C("#","$",{c:[c]}),e.C("^\\=begin","^\\=end",{c:[c],r:10}),e.C("^__END__","\\n$")],n={cN:"subst",b:"#\\{",e:"}",k:r},t={cN:"string",c:[e.BE,n],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:/`/,e:/`/},{b:"%[qQwWx]?\\(",e:"\\)"},{b:"%[qQwWx]?\\[",e:"\\]"},{b:"%[qQwWx]?{",e:"}"},{b:"%[qQwWx]?<",e:">"},{b:"%[qQwWx]?/",e:"/"},{b:"%[qQwWx]?%",e:"%"},{b:"%[qQwWx]?-",e:"-"},{b:"%[qQwWx]?\\|",e:"\\|"},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{b:/<<(-?)\w+$/,e:/^\s*\w+$/}]},i={cN:"params",b:"\\(",e:"\\)",endsParent:!0,k:r},d=[t,a,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{b:"<\\s*",c:[{b:"("+e.IR+"::)?"+e.IR}]}].concat(s)},{cN:"function",bK:"def",e:"$|;",c:[e.inherit(e.TM,{b:b}),i].concat(s)},{b:e.IR+"::"},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"symbol",b:":(?!\\s)",c:[t,{b:b}],r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{cN:"params",b:/\|/,e:/\|/,k:r},{b:"("+e.RSR+"|unless)\\s*",k:"unless",c:[a,{cN:"regexp",c:[e.BE,n],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}].concat(s),r:0}].concat(s);n.c=d;var l=[{b:/^\s*=>/,starts:{e:"$",c:i.c=d}},{cN:"meta",b:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>)",starts:{e:"$",c:d}}];return{aliases:["rb","gemspec","podspec","thor","irb"],k:r,i:/\/\*/,c:s.concat(l).concat(d)}});
|
@@ -1,261 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
|
3
|
-
Railscasts-like style (c) Visoft, Inc. (Damien White)
|
4
|
-
|
5
|
-
*/
|
6
|
-
|
7
|
-
.hljs {
|
8
|
-
display: block;
|
9
|
-
overflow-x: auto;
|
10
|
-
padding: 0.5em;
|
11
|
-
background: #232323;
|
12
|
-
color: #e6e1dc;
|
13
|
-
}
|
14
|
-
|
15
|
-
.hljs-comment,
|
16
|
-
.hljs-quote {
|
17
|
-
color: #bc9458;
|
18
|
-
font-style: italic;
|
19
|
-
}
|
20
|
-
|
21
|
-
.hljs-keyword,
|
22
|
-
.hljs-selector-tag {
|
23
|
-
color: #c26230;
|
24
|
-
}
|
25
|
-
|
26
|
-
.hljs-string,
|
27
|
-
.hljs-number,
|
28
|
-
.hljs-regexp,
|
29
|
-
.hljs-variable,
|
30
|
-
.hljs-template-variable {
|
31
|
-
color: #a5c261;
|
32
|
-
}
|
33
|
-
|
34
|
-
.hljs-subst {
|
35
|
-
color: #519f50;
|
36
|
-
}
|
37
|
-
|
38
|
-
.hljs-tag,
|
39
|
-
.hljs-name {
|
40
|
-
color: #e8bf6a;
|
41
|
-
}
|
42
|
-
|
43
|
-
.hljs-type {
|
44
|
-
color: #da4939;
|
45
|
-
}
|
46
|
-
|
47
|
-
|
48
|
-
.hljs-symbol,
|
49
|
-
.hljs-bullet,
|
50
|
-
.hljs-built_in,
|
51
|
-
.hljs-builtin-name,
|
52
|
-
.hljs-attr,
|
53
|
-
.hljs-link {
|
54
|
-
color: #6d9cbe;
|
55
|
-
}
|
56
|
-
|
57
|
-
.hljs-params {
|
58
|
-
color: #d0d0ff;
|
59
|
-
}
|
60
|
-
|
61
|
-
.hljs-attribute {
|
62
|
-
color: #cda869;
|
63
|
-
}
|
64
|
-
|
65
|
-
.hljs-meta {
|
66
|
-
color: #9b859d;
|
67
|
-
}
|
68
|
-
|
69
|
-
.hljs-title,
|
70
|
-
.hljs-section {
|
71
|
-
color: #ffc66d;
|
72
|
-
}
|
73
|
-
|
74
|
-
.hljs-addition {
|
75
|
-
background-color: #144212;
|
76
|
-
color: #e6e1dc;
|
77
|
-
display: inline-block;
|
78
|
-
width: 100%;
|
79
|
-
}
|
80
|
-
|
81
|
-
.hljs-deletion {
|
82
|
-
background-color: #600;
|
83
|
-
color: #e6e1dc;
|
84
|
-
display: inline-block;
|
85
|
-
width: 100%;
|
86
|
-
}
|
87
|
-
|
88
|
-
.hljs-selector-class {
|
89
|
-
color: #9b703f;
|
90
|
-
}
|
91
|
-
|
92
|
-
.hljs-selector-id {
|
93
|
-
color: #8b98ab;
|
94
|
-
}
|
95
|
-
|
96
|
-
.hljs-emphasis {
|
97
|
-
font-style: italic;
|
98
|
-
}
|
99
|
-
|
100
|
-
.hljs-strong {
|
101
|
-
font-weight: bold;
|
102
|
-
}
|
103
|
-
|
104
|
-
.hljs-link {
|
105
|
-
text-decoration: underline;
|
106
|
-
}
|
107
|
-
|
108
|
-
/* diagnosis/show.slim */
|
109
|
-
|
110
|
-
|
111
|
-
.arrow-right {
|
112
|
-
width: 0;
|
113
|
-
height: 0;
|
114
|
-
border-top: 5px solid transparent;
|
115
|
-
border-bottom: 5px solid transparent;
|
116
|
-
border-left: 5px solid black;
|
117
|
-
float: left;
|
118
|
-
margin: 7px;
|
119
|
-
}
|
120
|
-
|
121
|
-
.down {
|
122
|
-
border-left: 5px solid transparent;
|
123
|
-
border-right: 5px solid transparent;
|
124
|
-
border-top: 5px solid black;
|
125
|
-
margin: 10px 7px 0 5px;
|
126
|
-
}
|
127
|
-
|
128
|
-
.ui-accordion .ui-accordion-header {
|
129
|
-
font-size: 78%;
|
130
|
-
}
|
131
|
-
|
132
|
-
.sidebar {
|
133
|
-
float: left;
|
134
|
-
}
|
135
|
-
|
136
|
-
.sidebar > .sidebar-wrapper {
|
137
|
-
width: 235px;
|
138
|
-
position: fixed;
|
139
|
-
margin: 49px 33px 0 0;
|
140
|
-
overflow-y: scroll;
|
141
|
-
top: 82px;
|
142
|
-
bottom: 40px;
|
143
|
-
}
|
144
|
-
|
145
|
-
.sidebar-wrapper > ul {
|
146
|
-
list-style-type: none;
|
147
|
-
height: calc(100% - 40px);
|
148
|
-
}
|
149
|
-
|
150
|
-
.sidebar-wrapper > ul > li {
|
151
|
-
margin-bottom: 3px;
|
152
|
-
}
|
153
|
-
|
154
|
-
.sidebar-wrapper > ul > li > a {
|
155
|
-
text-decoration: none;
|
156
|
-
color: inherit;
|
157
|
-
display: block;
|
158
|
-
font-size: 13px;
|
159
|
-
text-inline: 1.5;
|
160
|
-
}
|
161
|
-
|
162
|
-
.sidebar-wrapper > ul > li > a:hover {
|
163
|
-
color: #7d7d7d;
|
164
|
-
}
|
165
|
-
|
166
|
-
.right {
|
167
|
-
float: left;
|
168
|
-
padding-left: 10px;
|
169
|
-
width: 70%;
|
170
|
-
margin-left: 297px;
|
171
|
-
}
|
172
|
-
|
173
|
-
.listing {
|
174
|
-
display: none;
|
175
|
-
padding: 1em 2.2em;
|
176
|
-
overflow: auto;
|
177
|
-
border-bottom-right-radius: 4px;
|
178
|
-
border: 0.5px solid;
|
179
|
-
border-top-width: 0;
|
180
|
-
border-bottom-left-radius: 4px;
|
181
|
-
background: #efefef;
|
182
|
-
}
|
183
|
-
|
184
|
-
.filename {
|
185
|
-
cursor: pointer;
|
186
|
-
position: relative;
|
187
|
-
margin: 2px 0 0 0;
|
188
|
-
padding: .5em .5em .5em .7em;
|
189
|
-
border: solid 0.1px;
|
190
|
-
background: #efefef;
|
191
|
-
}
|
192
|
-
|
193
|
-
/* layouts/lecter.slim */
|
194
|
-
|
195
|
-
body {
|
196
|
-
font-family: "Helvetica Neue", "Helvetica", Arial, "Open Sans", sans-serif;
|
197
|
-
font-size: 15px;
|
198
|
-
line-height: 1.6;
|
199
|
-
-webkit-font-smoothing: antialiased;
|
200
|
-
}
|
201
|
-
|
202
|
-
.body-wrapper {
|
203
|
-
overflow: hidden;
|
204
|
-
*zoom: 1;
|
205
|
-
margin-top: 50px;
|
206
|
-
margin-bottom: 50px;
|
207
|
-
display: block;
|
208
|
-
max-width: 955px;
|
209
|
-
margin: 0 auto;
|
210
|
-
padding: 0 20px;
|
211
|
-
}
|
212
|
-
|
213
|
-
.nav {
|
214
|
-
font-weight: 500;
|
215
|
-
background: #0b4e22;
|
216
|
-
border-bottom: 1px solid #cccccc;
|
217
|
-
}
|
218
|
-
|
219
|
-
.nav-inner {
|
220
|
-
display: block;
|
221
|
-
max-width: 955px;
|
222
|
-
margin: 0 auto;
|
223
|
-
padding: 1px 20px;
|
224
|
-
}
|
225
|
-
|
226
|
-
.nav-inner > ul {
|
227
|
-
list-style-type: none;
|
228
|
-
}
|
229
|
-
|
230
|
-
.nav-inner > ul > li > a {
|
231
|
-
text-decoration: none;
|
232
|
-
font-weight: 600;
|
233
|
-
color: white;
|
234
|
-
letter-spacing: 0.4px;
|
235
|
-
}
|
236
|
-
|
237
|
-
.ul {
|
238
|
-
-webkit-justify-content: space-between;
|
239
|
-
justify-content: space-between;
|
240
|
-
list-style-type: none;
|
241
|
-
margin: 0;
|
242
|
-
padding: 8px 2px 8px;
|
243
|
-
display: -webkit-flex;
|
244
|
-
display: flex;
|
245
|
-
}
|
246
|
-
|
247
|
-
.li {
|
248
|
-
-webkit-flex: 0 1 auto;
|
249
|
-
flex: 0 1 auto;
|
250
|
-
display: list-item;
|
251
|
-
text-align: -webkit-match-parent;
|
252
|
-
list-style-type: none;
|
253
|
-
}
|
254
|
-
|
255
|
-
.nav-inner > li > a {
|
256
|
-
text-decoration: none;
|
257
|
-
font-weight: 400;
|
258
|
-
color: white;
|
259
|
-
letter-spacing: 0.4px;
|
260
|
-
}
|
261
|
-
|
@@ -1,20 +0,0 @@
|
|
1
|
-
<%= content_for :title, t('.title') %>
|
2
|
-
|
3
|
-
<h1><%= t('.title') %></h1>
|
4
|
-
|
5
|
-
<%= form_tag diagnosis_path do %>
|
6
|
-
<% flash.each do |key, value| %>
|
7
|
-
<%= value %>
|
8
|
-
<% end %>
|
9
|
-
<% %i[endpoint params].each do |attr| %>
|
10
|
-
<p>
|
11
|
-
<%= label_tag t(".#{attr}") %>
|
12
|
-
<%= text_field_tag attr %>
|
13
|
-
</p>
|
14
|
-
<% end %>
|
15
|
-
<p>
|
16
|
-
<%= label_tag t('.method') %>
|
17
|
-
<%= select_tag :method, options_for_select(%w[GET POST PUT PATCH DELETE], 'GET') %>
|
18
|
-
</p>
|
19
|
-
<%= submit_tag t('.create') %>
|
20
|
-
<% end %>
|
@@ -1,52 +0,0 @@
|
|
1
|
-
= javascript_include_tag 'highlight.pack.js', '//code.jquery.com/jquery-1.12.4.js', '//code.jquery.com/ui/1.12.1/jquery-ui.js'
|
2
|
-
= stylesheet_link_tag 'railscasts'
|
3
|
-
|
4
|
-
= content_for :title, t('.title')
|
5
|
-
|
6
|
-
.sidebar
|
7
|
-
.sidebar-wrapper
|
8
|
-
ul
|
9
|
-
- @lines.each_with_index do |item, item_index|
|
10
|
-
li = link_to item.keys.first.split('/').last, "#anchor#{item_index}"
|
11
|
-
.right
|
12
|
-
h4
|
13
|
-
= t('.response_status', status: @response_status)
|
14
|
-
- @lines.each_with_index do |item, item_index|
|
15
|
-
.filename id="anchor#{item_index}"
|
16
|
-
- file = item.keys.first
|
17
|
-
.arrow-right
|
18
|
-
.filename-title
|
19
|
-
= file.remove(Rails.root.to_s)
|
20
|
-
- lines = item.values.split(' ').flatten.map(&:to_i)
|
21
|
-
- previous_row_is_empty = false
|
22
|
-
.listing
|
23
|
-
- file_context = File.open(Rails.root.join(file), 'r').read.split("\n")
|
24
|
-
- html_rows = []
|
25
|
-
- file_context.each_with_index do |row, index_row|
|
26
|
-
- include = lines.include?(index_row + 1)
|
27
|
-
- if include || lines.reduce(false) { |memo, line| memo || index_row.in?(line - 5..line + 4) }
|
28
|
-
- previous_row_is_empty = false
|
29
|
-
- html_row = "#{index_row + 1} #{'-> ' + lines.each_with_index.select { |_, index| lines[index] == index_row + 1 }.map { |_, index| index + 1 }.join(', ') if include} #{row}\n"
|
30
|
-
- html_rows << content_tag(:code, html_row, style: "#{include ? 'background-color: #4a4a4a;' : nil}")
|
31
|
-
- elsif !previous_row_is_empty
|
32
|
-
- previous_row_is_empty = true
|
33
|
-
- html_rows << "...\n"
|
34
|
-
pre
|
35
|
-
code
|
36
|
-
- html_rows.each do |html_row|
|
37
|
-
= html_row
|
38
|
-
|
39
|
-
javascript:
|
40
|
-
$(document).ready(function(){
|
41
|
-
hljs.initHighlighting();
|
42
|
-
|
43
|
-
$('.filename').on('click', function(){
|
44
|
-
$(this).find('.arrow-right').toggleClass('down')
|
45
|
-
$(this).next().slideToggle();
|
46
|
-
});
|
47
|
-
|
48
|
-
$('.sidebar-wrapper > ul > li > a').on('click', function(){
|
49
|
-
var anchor = $(this).first().attr('href').split('#').pop();
|
50
|
-
$('.filename#'+anchor).click();
|
51
|
-
});
|
52
|
-
})
|