language_server-protocol 3.14.0.1 → 3.14.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +9 -1
- data/lib/language_server/protocol/interface/code_action_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/code_lens_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/completion_params.rb +2 -0
- data/lib/language_server/protocol/interface/completion_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/document_link_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/notification_message.rb +1 -0
- data/lib/language_server/protocol/interface/reference_params.rb +2 -0
- data/lib/language_server/protocol/interface/rename_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/request_message.rb +1 -0
- data/lib/language_server/protocol/interface/response_message.rb +1 -0
- data/lib/language_server/protocol/interface/signature_help_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +1 -0
- data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +1 -0
- data/lib/language_server/protocol/version.rb +1 -1
- metadata +2 -22
- data/.gitignore +0 -10
- data/.travis.yml +0 -5
- data/CHANGELOG.md +0 -26
- data/CODE_OF_CONDUCT.md +0 -74
- data/Dockerfile-node.development +0 -6
- data/Dockerfile.development +0 -24
- data/Gemfile +0 -6
- data/Rakefile +0 -10
- data/bin/console +0 -14
- data/bin/generate_files +0 -5
- data/bin/m +0 -17
- data/bin/setup +0 -6
- data/circle.yml +0 -40
- data/docker-compose.ci.yml +0 -14
- data/docker-compose.override.yml +0 -16
- data/docker-compose.yml +0 -33
- data/language_server-protocol.gemspec +0 -33
- data/package.json +0 -10
- data/scripts/generateFiles.ts +0 -320
- data/yarn.lock +0 -293
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b3ee77bec6cba0531b5550480d60d932a2074102ee192899ca2abddfebcadbf
|
4
|
+
data.tar.gz: b559fd6bc92f8ec57bd5442004757259e76d65472b2c07ef983040dd01878852
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ff16e6734e30b1e9ea7a0cb5e842c92f80315593c74fde9373a904fcfa1b738f354a3330369d841d85b0f07cf0fa6897d8bba175bc7af45a40af756531a6134d
|
7
|
+
data.tar.gz: 90ba3865c04e5730c0b7246736937ea5af80204745b9dae44ea8c7e612b5b1b2f4eedb252c0532df33be4927ba2ebc4036f0908c6f7f085c299138ecf23ea9d7
|
data/README.md
CHANGED
@@ -20,7 +20,7 @@ Or install it yourself as:
|
|
20
20
|
|
21
21
|
## Usage
|
22
22
|
|
23
|
-
|
23
|
+
Currently, this gem supports only stdio as transport layer out of box.
|
24
24
|
|
25
25
|
```ruby
|
26
26
|
require "language_server-protocol"
|
@@ -53,6 +53,14 @@ reader.read do |request|
|
|
53
53
|
end
|
54
54
|
```
|
55
55
|
|
56
|
+
You can use any IO object as transport layer:
|
57
|
+
|
58
|
+
```ruby
|
59
|
+
io = StringIO.new
|
60
|
+
writer = LSP::Transport::Io::Writer.new(io)
|
61
|
+
reader = LSP::Transport::Io::Reader.new(io)
|
62
|
+
```
|
63
|
+
|
56
64
|
## Versioning
|
57
65
|
|
58
66
|
language_server-protocol gem does NOT use semantic versioning.
|
@@ -5,6 +5,7 @@ module LanguageServer
|
|
5
5
|
def initialize(document_selector:, trigger_characters: nil, resolve_provider: nil)
|
6
6
|
@attributes = {}
|
7
7
|
|
8
|
+
@attributes[:documentSelector] = document_selector
|
8
9
|
@attributes[:triggerCharacters] = trigger_characters if trigger_characters
|
9
10
|
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
10
11
|
|
data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb
CHANGED
@@ -5,6 +5,7 @@ module LanguageServer
|
|
5
5
|
def initialize(document_selector:, first_trigger_character:, more_trigger_character: nil)
|
6
6
|
@attributes = {}
|
7
7
|
|
8
|
+
@attributes[:documentSelector] = document_selector
|
8
9
|
@attributes[:firstTriggerCharacter] = first_trigger_character
|
9
10
|
@attributes[:moreTriggerCharacter] = more_trigger_character if more_trigger_character
|
10
11
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: language_server-protocol
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.14.0.
|
4
|
+
version: 3.14.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fumiaki MATSUSHIMA
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-05-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -115,25 +115,8 @@ executables: []
|
|
115
115
|
extensions: []
|
116
116
|
extra_rdoc_files: []
|
117
117
|
files:
|
118
|
-
- ".gitignore"
|
119
|
-
- ".travis.yml"
|
120
|
-
- CHANGELOG.md
|
121
|
-
- CODE_OF_CONDUCT.md
|
122
|
-
- Dockerfile-node.development
|
123
|
-
- Dockerfile.development
|
124
|
-
- Gemfile
|
125
118
|
- LICENSE.txt
|
126
119
|
- README.md
|
127
|
-
- Rakefile
|
128
|
-
- bin/console
|
129
|
-
- bin/generate_files
|
130
|
-
- bin/m
|
131
|
-
- bin/setup
|
132
|
-
- circle.yml
|
133
|
-
- docker-compose.ci.yml
|
134
|
-
- docker-compose.override.yml
|
135
|
-
- docker-compose.yml
|
136
|
-
- language_server-protocol.gemspec
|
137
120
|
- lib/language_server-protocol.rb
|
138
121
|
- lib/language_server/protocol.rb
|
139
122
|
- lib/language_server/protocol/constant.rb
|
@@ -283,9 +266,6 @@ files:
|
|
283
266
|
- lib/language_server/protocol/transport/stdio/reader.rb
|
284
267
|
- lib/language_server/protocol/transport/stdio/writer.rb
|
285
268
|
- lib/language_server/protocol/version.rb
|
286
|
-
- package.json
|
287
|
-
- scripts/generateFiles.ts
|
288
|
-
- yarn.lock
|
289
269
|
homepage: https://github.com/mtsmfm/language_server-protocol-ruby
|
290
270
|
licenses:
|
291
271
|
- MIT
|
data/.gitignore
DELETED
data/.travis.yml
DELETED
data/CHANGELOG.md
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
# Change log
|
2
|
-
|
3
|
-
## 3.14.0.1
|
4
|
-
|
5
|
-
- Drop Ruby < 2.4
|
6
|
-
- Add Transport::Io (Thanks to @soutaro)
|
7
|
-
|
8
|
-
## 3.14.0.0
|
9
|
-
|
10
|
-
- Update Language Server Protocol version to 3.14.0
|
11
|
-
|
12
|
-
## 3.12.0.0
|
13
|
-
|
14
|
-
- Update Language Server Protocol version to 3.12.0
|
15
|
-
|
16
|
-
## 3.7.0.0
|
17
|
-
|
18
|
-
- Update Language Server Protocol version to 3.7.0
|
19
|
-
|
20
|
-
## 0.5.0
|
21
|
-
|
22
|
-
- Add #to_hash to keep compatibility with Rails (#10)
|
23
|
-
|
24
|
-
## 0.4.0
|
25
|
-
|
26
|
-
- Fix handling `extends`
|
data/CODE_OF_CONDUCT.md
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
# Contributor Covenant Code of Conduct
|
2
|
-
|
3
|
-
## Our Pledge
|
4
|
-
|
5
|
-
In the interest of fostering an open and welcoming environment, we as
|
6
|
-
contributors and maintainers pledge to making participation in our project and
|
7
|
-
our community a harassment-free experience for everyone, regardless of age, body
|
8
|
-
size, disability, ethnicity, gender identity and expression, level of experience,
|
9
|
-
nationality, personal appearance, race, religion, or sexual identity and
|
10
|
-
orientation.
|
11
|
-
|
12
|
-
## Our Standards
|
13
|
-
|
14
|
-
Examples of behavior that contributes to creating a positive environment
|
15
|
-
include:
|
16
|
-
|
17
|
-
* Using welcoming and inclusive language
|
18
|
-
* Being respectful of differing viewpoints and experiences
|
19
|
-
* Gracefully accepting constructive criticism
|
20
|
-
* Focusing on what is best for the community
|
21
|
-
* Showing empathy towards other community members
|
22
|
-
|
23
|
-
Examples of unacceptable behavior by participants include:
|
24
|
-
|
25
|
-
* The use of sexualized language or imagery and unwelcome sexual attention or
|
26
|
-
advances
|
27
|
-
* Trolling, insulting/derogatory comments, and personal or political attacks
|
28
|
-
* Public or private harassment
|
29
|
-
* Publishing others' private information, such as a physical or electronic
|
30
|
-
address, without explicit permission
|
31
|
-
* Other conduct which could reasonably be considered inappropriate in a
|
32
|
-
professional setting
|
33
|
-
|
34
|
-
## Our Responsibilities
|
35
|
-
|
36
|
-
Project maintainers are responsible for clarifying the standards of acceptable
|
37
|
-
behavior and are expected to take appropriate and fair corrective action in
|
38
|
-
response to any instances of unacceptable behavior.
|
39
|
-
|
40
|
-
Project maintainers have the right and responsibility to remove, edit, or
|
41
|
-
reject comments, commits, code, wiki edits, issues, and other contributions
|
42
|
-
that are not aligned to this Code of Conduct, or to ban temporarily or
|
43
|
-
permanently any contributor for other behaviors that they deem inappropriate,
|
44
|
-
threatening, offensive, or harmful.
|
45
|
-
|
46
|
-
## Scope
|
47
|
-
|
48
|
-
This Code of Conduct applies both within project spaces and in public spaces
|
49
|
-
when an individual is representing the project or its community. Examples of
|
50
|
-
representing a project or community include using an official project e-mail
|
51
|
-
address, posting via an official social media account, or acting as an appointed
|
52
|
-
representative at an online or offline event. Representation of a project may be
|
53
|
-
further defined and clarified by project maintainers.
|
54
|
-
|
55
|
-
## Enforcement
|
56
|
-
|
57
|
-
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
58
|
-
reported by contacting the project team at mtsmfm@gmail.com. All
|
59
|
-
complaints will be reviewed and investigated and will result in a response that
|
60
|
-
is deemed necessary and appropriate to the circumstances. The project team is
|
61
|
-
obligated to maintain confidentiality with regard to the reporter of an incident.
|
62
|
-
Further details of specific enforcement policies may be posted separately.
|
63
|
-
|
64
|
-
Project maintainers who do not follow or enforce the Code of Conduct in good
|
65
|
-
faith may face temporary or permanent repercussions as determined by other
|
66
|
-
members of the project's leadership.
|
67
|
-
|
68
|
-
## Attribution
|
69
|
-
|
70
|
-
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
71
|
-
available at [http://contributor-covenant.org/version/1/4][version]
|
72
|
-
|
73
|
-
[homepage]: http://contributor-covenant.org
|
74
|
-
[version]: http://contributor-covenant.org/version/1/4/
|
data/Dockerfile-node.development
DELETED
data/Dockerfile.development
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
ARG RUBY_VERSION
|
2
|
-
FROM ruby:$RUBY_VERSION
|
3
|
-
|
4
|
-
RUN apt-get update && apt-get install less -y
|
5
|
-
RUN groupadd --gid 1000 ruby && useradd --uid 1000 --gid ruby --shell /bin/bash --create-home ruby
|
6
|
-
RUN mkdir /app /vendor && chown ruby:ruby /app /vendor
|
7
|
-
|
8
|
-
ENV LANG=C.UTF-8 \
|
9
|
-
BUNDLE_PATH=/vendor/bundle/$RUBY_VERSION \
|
10
|
-
BUNDLE_JOBS=4
|
11
|
-
|
12
|
-
ENV ENTRYKIT_VERSION 0.4.0
|
13
|
-
|
14
|
-
RUN wget https://github.com/progrium/entrykit/releases/download/v${ENTRYKIT_VERSION}/entrykit_${ENTRYKIT_VERSION}_Linux_x86_64.tgz \
|
15
|
-
&& tar -xvzf entrykit_${ENTRYKIT_VERSION}_Linux_x86_64.tgz \
|
16
|
-
&& rm entrykit_${ENTRYKIT_VERSION}_Linux_x86_64.tgz \
|
17
|
-
&& mv entrykit /bin/entrykit \
|
18
|
-
&& chmod +x /bin/entrykit \
|
19
|
-
&& entrykit --symlink
|
20
|
-
|
21
|
-
USER ruby
|
22
|
-
WORKDIR /app
|
23
|
-
|
24
|
-
ENTRYPOINT ["prehook", "bin/setup", "--"]
|
data/Gemfile
DELETED
data/Rakefile
DELETED
data/bin/console
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
require "bundler/setup"
|
4
|
-
require "language_server/protocol"
|
5
|
-
|
6
|
-
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
-
# with your gem easier. You can also use a different console, if you like.
|
8
|
-
|
9
|
-
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
-
# require "pry"
|
11
|
-
# Pry.start
|
12
|
-
|
13
|
-
require "irb"
|
14
|
-
IRB.start(__FILE__)
|
data/bin/generate_files
DELETED
data/bin/m
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
# frozen_string_literal: true
|
3
|
-
#
|
4
|
-
# This file was generated by Bundler.
|
5
|
-
#
|
6
|
-
# The application 'm' is installed as part of a gem, and
|
7
|
-
# this file is here to facilitate running it.
|
8
|
-
#
|
9
|
-
|
10
|
-
require "pathname"
|
11
|
-
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
12
|
-
Pathname.new(__FILE__).realpath)
|
13
|
-
|
14
|
-
require "rubygems"
|
15
|
-
require "bundler/setup"
|
16
|
-
|
17
|
-
load Gem.bin_path("m", "m")
|
data/bin/setup
DELETED
data/circle.yml
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
version: 2.0
|
2
|
-
references:
|
3
|
-
test: &test
|
4
|
-
docker:
|
5
|
-
- image: tmaier/docker-compose
|
6
|
-
environment:
|
7
|
-
COMPOSE_FILE: docker-compose.yml:docker-compose.ci.yml
|
8
|
-
steps:
|
9
|
-
- checkout
|
10
|
-
- setup_remote_docker
|
11
|
-
- run:
|
12
|
-
name: setup
|
13
|
-
command: |
|
14
|
-
set -x
|
15
|
-
docker info
|
16
|
-
docker volume create project
|
17
|
-
docker create -v project:/app --name project busybox chown -R 1000:1000 /app
|
18
|
-
docker cp . project:/app
|
19
|
-
docker start project
|
20
|
-
docker-compose build $CIRCLE_JOB
|
21
|
-
- run:
|
22
|
-
name: test
|
23
|
-
command: |
|
24
|
-
docker-compose run $CIRCLE_JOB bundle exec rake test
|
25
|
-
|
26
|
-
jobs:
|
27
|
-
ruby-2-6:
|
28
|
-
<<: *test
|
29
|
-
ruby-2-5:
|
30
|
-
<<: *test
|
31
|
-
ruby-2-4:
|
32
|
-
<<: *test
|
33
|
-
|
34
|
-
workflows:
|
35
|
-
version: 2
|
36
|
-
test_and_buld:
|
37
|
-
jobs:
|
38
|
-
- ruby-2-6
|
39
|
-
- ruby-2-5
|
40
|
-
- ruby-2-4
|
data/docker-compose.ci.yml
DELETED
data/docker-compose.override.yml
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
version: "3.0"
|
2
|
-
services:
|
3
|
-
ruby-2-6: &latest
|
4
|
-
volumes:
|
5
|
-
- .:/app:cached
|
6
|
-
- $HOME/.gitconfig:/home/ruby/.gitconfig:ro
|
7
|
-
- $HOME/.ssh:/home/ruby/.ssh:ro
|
8
|
-
- $HOME/.gem:/home/ruby/.gem
|
9
|
-
- $HOME/.netrc:/home/ruby/.netrc
|
10
|
-
ruby-2-5:
|
11
|
-
<<: *latest
|
12
|
-
ruby-2-4:
|
13
|
-
<<: *latest
|
14
|
-
node:
|
15
|
-
volumes:
|
16
|
-
- .:/app:cached
|
data/docker-compose.yml
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
version: "3.0"
|
2
|
-
services:
|
3
|
-
ruby-2-6: &latest
|
4
|
-
build: &build
|
5
|
-
context: .
|
6
|
-
dockerfile: Dockerfile.development
|
7
|
-
args:
|
8
|
-
RUBY_VERSION: 2.6.3
|
9
|
-
volumes:
|
10
|
-
- vendor:/vendor
|
11
|
-
- home:/home/ruby
|
12
|
-
ruby-2-5:
|
13
|
-
<<: *latest
|
14
|
-
build:
|
15
|
-
<<: *build
|
16
|
-
args:
|
17
|
-
RUBY_VERSION: 2.5.5
|
18
|
-
ruby-2-4:
|
19
|
-
<<: *latest
|
20
|
-
build:
|
21
|
-
<<: *build
|
22
|
-
args:
|
23
|
-
RUBY_VERSION: 2.4.6
|
24
|
-
node:
|
25
|
-
build:
|
26
|
-
context: .
|
27
|
-
dockerfile: Dockerfile-node.development
|
28
|
-
volumes:
|
29
|
-
- vendor:/vendor
|
30
|
-
- home:/home/node
|
31
|
-
volumes:
|
32
|
-
vendor:
|
33
|
-
home:
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
lib = File.expand_path("../lib", __FILE__)
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require "language_server/protocol/version"
|
5
|
-
|
6
|
-
Gem::Specification.new do |spec|
|
7
|
-
spec.name = "language_server-protocol"
|
8
|
-
spec.version = LanguageServer::Protocol::VERSION
|
9
|
-
spec.authors = ["Fumiaki MATSUSHIMA"]
|
10
|
-
spec.email = ["mtsmfm@gmail.com"]
|
11
|
-
|
12
|
-
spec.summary = %q{A Language Server Protocol SDK}
|
13
|
-
spec.description = %q{A Language Server Protocol SDK}
|
14
|
-
spec.homepage = "https://github.com/mtsmfm/language_server-protocol-ruby"
|
15
|
-
spec.license = "MIT"
|
16
|
-
|
17
|
-
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
18
|
-
f.match(%r{^(test|spec|features)/})
|
19
|
-
end
|
20
|
-
spec.bindir = "exe"
|
21
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
|
-
spec.require_paths = ["lib"]
|
23
|
-
|
24
|
-
spec.required_ruby_version = ">= 2.4.0"
|
25
|
-
|
26
|
-
spec.add_development_dependency "bundler", "~> 1.15"
|
27
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
28
|
-
spec.add_development_dependency "minitest", "~> 5.0"
|
29
|
-
spec.add_development_dependency "pry-byebug"
|
30
|
-
spec.add_development_dependency "minitest-power_assert"
|
31
|
-
spec.add_development_dependency "m"
|
32
|
-
spec.add_development_dependency "activesupport"
|
33
|
-
end
|
data/package.json
DELETED
data/scripts/generateFiles.ts
DELETED
@@ -1,320 +0,0 @@
|
|
1
|
-
import * as ts from "typescript";
|
2
|
-
import * as fs from "fs";
|
3
|
-
import * as path from "path";
|
4
|
-
import * as fetch from "isomorphic-fetch";
|
5
|
-
|
6
|
-
const lspVersion = "c0c516735fb9eea08ac0151333b5380d70525961";
|
7
|
-
const rootDir = path.normalize(path.join(__dirname, ".."));
|
8
|
-
const tempDir = path.join(rootDir, "tmp");
|
9
|
-
const protocolMdPath = path.join(tempDir, lspVersion, "protocol.md");
|
10
|
-
|
11
|
-
const createFile = (filePath, content) => {
|
12
|
-
const dir = path.dirname(path.normalize(filePath));
|
13
|
-
|
14
|
-
dir.split(/(?!^)\//).forEach((_, index, all) => {
|
15
|
-
const dir = all.slice(0, index + 1).join("/");
|
16
|
-
|
17
|
-
if (!fs.existsSync(dir)) {
|
18
|
-
fs.mkdirSync(dir);
|
19
|
-
}
|
20
|
-
});
|
21
|
-
|
22
|
-
fs.writeFileSync(filePath, content);
|
23
|
-
};
|
24
|
-
|
25
|
-
const extractTypeScriptSource = content => {
|
26
|
-
const regEx = /^```typescript\r\n([^]*?)^```\r\n/gm;
|
27
|
-
let match;
|
28
|
-
let result = "";
|
29
|
-
|
30
|
-
while ((match = regEx.exec(content)) !== null) {
|
31
|
-
result = result.concat(match[1]);
|
32
|
-
}
|
33
|
-
|
34
|
-
return result;
|
35
|
-
};
|
36
|
-
|
37
|
-
const extractDefinitions = content => {
|
38
|
-
const fileName = path.join(tempDir, "protocol.ts");
|
39
|
-
createFile(fileName, content);
|
40
|
-
const program = ts.createProgram([fileName], {});
|
41
|
-
const checker = program.getTypeChecker();
|
42
|
-
|
43
|
-
const output = [];
|
44
|
-
|
45
|
-
const serialize = member => {
|
46
|
-
const symbol = checker.getSymbolAtLocation(member.name);
|
47
|
-
const type = checker.getTypeOfSymbolAtLocation(
|
48
|
-
symbol,
|
49
|
-
symbol.valueDeclaration
|
50
|
-
);
|
51
|
-
const types =
|
52
|
-
member.kind == ts.SyntaxKind.UnionType
|
53
|
-
? (<ts.UnionTypeNode>(<ts.PropertySignature>member).type).types
|
54
|
-
: [];
|
55
|
-
|
56
|
-
return {
|
57
|
-
name: symbol.getName(),
|
58
|
-
documentation: ts.displayPartsToString(symbol.getDocumentationComment()),
|
59
|
-
type: checker.typeToString(type),
|
60
|
-
optional: !!member.questionToken,
|
61
|
-
nullable: (<ts.NodeArray<ts.TypeNode>>types).some(
|
62
|
-
t => t.kind == ts.SyntaxKind.NullKeyword
|
63
|
-
),
|
64
|
-
value: symbol.valueDeclaration
|
65
|
-
? symbol.valueDeclaration
|
66
|
-
.getChildAt(symbol.valueDeclaration.getChildCount() - 1)
|
67
|
-
.getText()
|
68
|
-
: null
|
69
|
-
};
|
70
|
-
};
|
71
|
-
|
72
|
-
const handleInterface = (node: ts.InterfaceDeclaration) => {
|
73
|
-
const members = node.members
|
74
|
-
.filter(member => member.name)
|
75
|
-
.map(member => serialize(member));
|
76
|
-
const parentName =
|
77
|
-
node.heritageClauses && node.heritageClauses[0].getLastToken().getText();
|
78
|
-
const parent = output.find(
|
79
|
-
i => i.interface && i.interface.name === parentName
|
80
|
-
);
|
81
|
-
|
82
|
-
output.push({
|
83
|
-
interface: serialize(node),
|
84
|
-
parent: parent,
|
85
|
-
allMembers: ((parent && parent.allMembers) || []).concat(members),
|
86
|
-
members
|
87
|
-
});
|
88
|
-
};
|
89
|
-
|
90
|
-
const handleModule = (node: ts.ModuleDeclaration) => {
|
91
|
-
const members = [];
|
92
|
-
|
93
|
-
ts.forEachChild(node.body, node => {
|
94
|
-
members.push(
|
95
|
-
serialize((<ts.VariableStatement>node).declarationList.declarations[0])
|
96
|
-
);
|
97
|
-
});
|
98
|
-
|
99
|
-
output.push({
|
100
|
-
module: serialize(node),
|
101
|
-
members
|
102
|
-
});
|
103
|
-
};
|
104
|
-
|
105
|
-
const visit = node => {
|
106
|
-
switch (node.kind) {
|
107
|
-
case ts.SyntaxKind.InterfaceDeclaration:
|
108
|
-
handleInterface(node);
|
109
|
-
break;
|
110
|
-
|
111
|
-
case ts.SyntaxKind.ModuleDeclaration:
|
112
|
-
handleModule(node);
|
113
|
-
break;
|
114
|
-
}
|
115
|
-
};
|
116
|
-
|
117
|
-
ts.forEachChild(program.getSourceFile(fileName), visit);
|
118
|
-
|
119
|
-
return output;
|
120
|
-
};
|
121
|
-
|
122
|
-
import Handlebars from "handlebars";
|
123
|
-
const snake = s =>
|
124
|
-
s
|
125
|
-
.replace(/^[A-Z]/, s => s.toLowerCase())
|
126
|
-
.replace(/[A-Z]/g, s => `_${s.toLowerCase()}`);
|
127
|
-
|
128
|
-
Handlebars.registerHelper("params", members => {
|
129
|
-
return members
|
130
|
-
.map(
|
131
|
-
member =>
|
132
|
-
`${snake(member.name)}:${
|
133
|
-
member.optional || member.nullable ? " nil" : ""
|
134
|
-
}`
|
135
|
-
)
|
136
|
-
.join(", ");
|
137
|
-
});
|
138
|
-
Handlebars.registerHelper("snake", snake);
|
139
|
-
Handlebars.registerHelper("comment", (s, options) => {
|
140
|
-
const indent = Array(options.hash.indent + 1).join(" ");
|
141
|
-
return s
|
142
|
-
.split("\n")
|
143
|
-
.map(s => s.trim())
|
144
|
-
.map(s => `${indent}#${s.length == 0 ? "" : ` ${s}`}`)
|
145
|
-
.join("\n");
|
146
|
-
});
|
147
|
-
Handlebars.registerHelper("local_var", s => {
|
148
|
-
const rubyKeywords = ["end", "retry"];
|
149
|
-
const snaked = snake(s);
|
150
|
-
|
151
|
-
if (rubyKeywords.some(k => k == s)) {
|
152
|
-
return `binding.local_variable_get(:${snaked})`;
|
153
|
-
} else {
|
154
|
-
return snake(s);
|
155
|
-
}
|
156
|
-
});
|
157
|
-
Handlebars.registerHelper("const", s => {
|
158
|
-
return snake(s).toUpperCase();
|
159
|
-
});
|
160
|
-
|
161
|
-
(async () => {
|
162
|
-
if (!fs.existsSync(protocolMdPath)) {
|
163
|
-
const res = await fetch(
|
164
|
-
`https://github.com/Microsoft/language-server-protocol/raw/${lspVersion}/specification.md`
|
165
|
-
);
|
166
|
-
createFile(protocolMdPath, await res.text());
|
167
|
-
}
|
168
|
-
|
169
|
-
const md = fs.readFileSync(protocolMdPath).toString();
|
170
|
-
const typeScriptSource = extractTypeScriptSource(md);
|
171
|
-
|
172
|
-
const definitions = extractDefinitions(typeScriptSource);
|
173
|
-
const interfaces = definitions.filter(d => d.interface);
|
174
|
-
const modules = definitions.filter(d => d.module);
|
175
|
-
|
176
|
-
interfaces.forEach(definition => {
|
177
|
-
createFile(
|
178
|
-
path.join(
|
179
|
-
rootDir,
|
180
|
-
"lib",
|
181
|
-
"language_server",
|
182
|
-
"protocol",
|
183
|
-
"interface",
|
184
|
-
`${snake(definition.interface.name)}.rb`
|
185
|
-
),
|
186
|
-
Handlebars.compile(
|
187
|
-
`
|
188
|
-
module LanguageServer
|
189
|
-
module Protocol
|
190
|
-
module Interface
|
191
|
-
{{#if definition.interface.documentation}}
|
192
|
-
#
|
193
|
-
{{comment definition.interface.documentation indent=6}}
|
194
|
-
#
|
195
|
-
{{/if}}
|
196
|
-
class {{definition.interface.name}}{{#if definition.parent}} < {{definition.parent.interface.name}}{{/if}}
|
197
|
-
def initialize({{params definition.allMembers}})
|
198
|
-
@attributes = {}
|
199
|
-
|
200
|
-
{{#each definition.members}}
|
201
|
-
@attributes[:{{name}}] = {{local_var name}}{{#if optional}} if {{local_var name}}{{/if}}
|
202
|
-
{{/each}}
|
203
|
-
|
204
|
-
@attributes.freeze
|
205
|
-
end
|
206
|
-
{{#each definition.members}}
|
207
|
-
|
208
|
-
{{#if documentation}}
|
209
|
-
#
|
210
|
-
{{comment documentation indent=8}}
|
211
|
-
#
|
212
|
-
{{/if}}
|
213
|
-
# @return [{{type}}{{#if nullable}}, nil{{/if}}]
|
214
|
-
def {{snake name}}
|
215
|
-
attributes.fetch(:{{name}})
|
216
|
-
end
|
217
|
-
{{/each}}
|
218
|
-
|
219
|
-
attr_reader :attributes
|
220
|
-
|
221
|
-
def to_hash
|
222
|
-
attributes
|
223
|
-
end
|
224
|
-
|
225
|
-
def to_json(*args)
|
226
|
-
to_hash.to_json(*args)
|
227
|
-
end
|
228
|
-
end
|
229
|
-
end
|
230
|
-
end
|
231
|
-
end
|
232
|
-
`.slice(1),
|
233
|
-
{ noEscape: true }
|
234
|
-
)({ definition })
|
235
|
-
);
|
236
|
-
});
|
237
|
-
|
238
|
-
modules.forEach(definition => {
|
239
|
-
createFile(
|
240
|
-
path.join(
|
241
|
-
rootDir,
|
242
|
-
"lib",
|
243
|
-
"language_server",
|
244
|
-
"protocol",
|
245
|
-
"constant",
|
246
|
-
`${snake(definition.module.name)}.rb`
|
247
|
-
),
|
248
|
-
Handlebars.compile(
|
249
|
-
`
|
250
|
-
module LanguageServer
|
251
|
-
module Protocol
|
252
|
-
module Constant
|
253
|
-
{{#if definition.module.documentation}}
|
254
|
-
#
|
255
|
-
{{comment definition.module.documentation indent=6}}
|
256
|
-
#
|
257
|
-
{{/if}}
|
258
|
-
module {{definition.module.name}}
|
259
|
-
{{#each definition.members}}
|
260
|
-
{{#if documentation}}
|
261
|
-
#
|
262
|
-
{{comment documentation indent=8}}
|
263
|
-
#
|
264
|
-
{{/if}}
|
265
|
-
{{const name}} = {{value}}
|
266
|
-
{{/each}}
|
267
|
-
end
|
268
|
-
end
|
269
|
-
end
|
270
|
-
end
|
271
|
-
`.slice(1),
|
272
|
-
{ noEscape: true }
|
273
|
-
)({ definition })
|
274
|
-
);
|
275
|
-
});
|
276
|
-
|
277
|
-
createFile(
|
278
|
-
path.join(rootDir, "lib", "language_server", "protocol", "interface.rb"),
|
279
|
-
Handlebars.compile(
|
280
|
-
`
|
281
|
-
module LanguageServer
|
282
|
-
module Protocol
|
283
|
-
module Interface
|
284
|
-
{{#each names}}
|
285
|
-
autoload :{{this}}, "language_server/protocol/interface/{{snake this}}"
|
286
|
-
{{/each}}
|
287
|
-
|
288
|
-
{{#each names}}
|
289
|
-
require "language_server/protocol/interface/{{snake this}}"
|
290
|
-
{{/each}}
|
291
|
-
end
|
292
|
-
end
|
293
|
-
end
|
294
|
-
`.slice(1),
|
295
|
-
{ noEscape: true }
|
296
|
-
)({ names: interfaces.map(i => i.interface.name).sort() })
|
297
|
-
);
|
298
|
-
|
299
|
-
createFile(
|
300
|
-
path.join(rootDir, "lib", "language_server", "protocol", "constant.rb"),
|
301
|
-
Handlebars.compile(
|
302
|
-
`
|
303
|
-
module LanguageServer
|
304
|
-
module Protocol
|
305
|
-
module Constant
|
306
|
-
{{#each names}}
|
307
|
-
autoload :{{this}}, "language_server/protocol/constant/{{snake this}}"
|
308
|
-
{{/each}}
|
309
|
-
|
310
|
-
{{#each names}}
|
311
|
-
require "language_server/protocol/constant/{{snake this}}"
|
312
|
-
{{/each}}
|
313
|
-
end
|
314
|
-
end
|
315
|
-
end
|
316
|
-
`.slice(1),
|
317
|
-
{ noEscape: true }
|
318
|
-
)({ names: modules.map(i => i.module.name).sort() })
|
319
|
-
);
|
320
|
-
})();
|
data/yarn.lock
DELETED
@@ -1,293 +0,0 @@
|
|
1
|
-
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
2
|
-
# yarn lockfile v1
|
3
|
-
|
4
|
-
|
5
|
-
"@types/es6-promise@^0.0.32":
|
6
|
-
version "0.0.32"
|
7
|
-
resolved "https://registry.yarnpkg.com/@types/es6-promise/-/es6-promise-0.0.32.tgz#3bcf44fb1e429f3df76188c8c6d874463ba371fd"
|
8
|
-
|
9
|
-
"@types/node@^7.0.18":
|
10
|
-
version "7.0.43"
|
11
|
-
resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.43.tgz#a187e08495a075f200ca946079c914e1a5fe962c"
|
12
|
-
|
13
|
-
align-text@^0.1.1, align-text@^0.1.3:
|
14
|
-
version "0.1.4"
|
15
|
-
resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
|
16
|
-
dependencies:
|
17
|
-
kind-of "^3.0.2"
|
18
|
-
longest "^1.0.1"
|
19
|
-
repeat-string "^1.5.2"
|
20
|
-
|
21
|
-
amdefine@>=0.0.4:
|
22
|
-
version "1.0.1"
|
23
|
-
resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
|
24
|
-
|
25
|
-
ansi-styles@^3.1.0:
|
26
|
-
version "3.2.0"
|
27
|
-
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88"
|
28
|
-
dependencies:
|
29
|
-
color-convert "^1.9.0"
|
30
|
-
|
31
|
-
arrify@^1.0.0:
|
32
|
-
version "1.0.1"
|
33
|
-
resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
|
34
|
-
|
35
|
-
async@^1.4.0:
|
36
|
-
version "1.5.2"
|
37
|
-
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
|
38
|
-
|
39
|
-
camelcase@^1.0.2:
|
40
|
-
version "1.2.1"
|
41
|
-
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
|
42
|
-
|
43
|
-
center-align@^0.1.1:
|
44
|
-
version "0.1.3"
|
45
|
-
resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
|
46
|
-
dependencies:
|
47
|
-
align-text "^0.1.3"
|
48
|
-
lazy-cache "^1.0.3"
|
49
|
-
|
50
|
-
chalk@^2.0.0:
|
51
|
-
version "2.1.0"
|
52
|
-
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e"
|
53
|
-
dependencies:
|
54
|
-
ansi-styles "^3.1.0"
|
55
|
-
escape-string-regexp "^1.0.5"
|
56
|
-
supports-color "^4.0.0"
|
57
|
-
|
58
|
-
cliui@^2.1.0:
|
59
|
-
version "2.1.0"
|
60
|
-
resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
|
61
|
-
dependencies:
|
62
|
-
center-align "^0.1.1"
|
63
|
-
right-align "^0.1.1"
|
64
|
-
wordwrap "0.0.2"
|
65
|
-
|
66
|
-
color-convert@^1.9.0:
|
67
|
-
version "1.9.0"
|
68
|
-
resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a"
|
69
|
-
dependencies:
|
70
|
-
color-name "^1.1.1"
|
71
|
-
|
72
|
-
color-name@^1.1.1:
|
73
|
-
version "1.1.3"
|
74
|
-
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
|
75
|
-
|
76
|
-
decamelize@^1.0.0:
|
77
|
-
version "1.2.0"
|
78
|
-
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
|
79
|
-
|
80
|
-
diff@^3.1.0:
|
81
|
-
version "3.3.1"
|
82
|
-
resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75"
|
83
|
-
|
84
|
-
encoding@^0.1.11:
|
85
|
-
version "0.1.12"
|
86
|
-
resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
|
87
|
-
dependencies:
|
88
|
-
iconv-lite "~0.4.13"
|
89
|
-
|
90
|
-
escape-string-regexp@^1.0.5:
|
91
|
-
version "1.0.5"
|
92
|
-
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
93
|
-
|
94
|
-
handlebars@^4.0.8:
|
95
|
-
version "4.0.10"
|
96
|
-
resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.10.tgz#3d30c718b09a3d96f23ea4cc1f403c4d3ba9ff4f"
|
97
|
-
dependencies:
|
98
|
-
async "^1.4.0"
|
99
|
-
optimist "^0.6.1"
|
100
|
-
source-map "^0.4.4"
|
101
|
-
optionalDependencies:
|
102
|
-
uglify-js "^2.6"
|
103
|
-
|
104
|
-
has-flag@^2.0.0:
|
105
|
-
version "2.0.0"
|
106
|
-
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51"
|
107
|
-
|
108
|
-
iconv-lite@~0.4.13:
|
109
|
-
version "0.4.19"
|
110
|
-
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
|
111
|
-
|
112
|
-
is-buffer@^1.1.5:
|
113
|
-
version "1.1.5"
|
114
|
-
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc"
|
115
|
-
|
116
|
-
is-stream@^1.0.1:
|
117
|
-
version "1.1.0"
|
118
|
-
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
|
119
|
-
|
120
|
-
isomorphic-fetch@^2.2.1:
|
121
|
-
version "2.2.1"
|
122
|
-
resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
|
123
|
-
dependencies:
|
124
|
-
node-fetch "^1.0.1"
|
125
|
-
whatwg-fetch ">=0.10.0"
|
126
|
-
|
127
|
-
kind-of@^3.0.2:
|
128
|
-
version "3.2.2"
|
129
|
-
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
|
130
|
-
dependencies:
|
131
|
-
is-buffer "^1.1.5"
|
132
|
-
|
133
|
-
lazy-cache@^1.0.3:
|
134
|
-
version "1.0.4"
|
135
|
-
resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
|
136
|
-
|
137
|
-
longest@^1.0.1:
|
138
|
-
version "1.0.1"
|
139
|
-
resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
|
140
|
-
|
141
|
-
make-error@^1.1.1:
|
142
|
-
version "1.3.0"
|
143
|
-
resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.0.tgz#52ad3a339ccf10ce62b4040b708fe707244b8b96"
|
144
|
-
|
145
|
-
minimist@0.0.8:
|
146
|
-
version "0.0.8"
|
147
|
-
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
|
148
|
-
|
149
|
-
minimist@^1.2.0:
|
150
|
-
version "1.2.0"
|
151
|
-
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
|
152
|
-
|
153
|
-
minimist@~0.0.1:
|
154
|
-
version "0.0.10"
|
155
|
-
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
|
156
|
-
|
157
|
-
mkdirp@^0.5.1:
|
158
|
-
version "0.5.1"
|
159
|
-
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
|
160
|
-
dependencies:
|
161
|
-
minimist "0.0.8"
|
162
|
-
|
163
|
-
node-fetch@^1.0.1:
|
164
|
-
version "1.7.3"
|
165
|
-
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
|
166
|
-
dependencies:
|
167
|
-
encoding "^0.1.11"
|
168
|
-
is-stream "^1.0.1"
|
169
|
-
|
170
|
-
optimist@^0.6.1:
|
171
|
-
version "0.6.1"
|
172
|
-
resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
|
173
|
-
dependencies:
|
174
|
-
minimist "~0.0.1"
|
175
|
-
wordwrap "~0.0.2"
|
176
|
-
|
177
|
-
repeat-string@^1.5.2:
|
178
|
-
version "1.6.1"
|
179
|
-
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
|
180
|
-
|
181
|
-
right-align@^0.1.1:
|
182
|
-
version "0.1.3"
|
183
|
-
resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
|
184
|
-
dependencies:
|
185
|
-
align-text "^0.1.1"
|
186
|
-
|
187
|
-
source-map-support@^0.4.0:
|
188
|
-
version "0.4.18"
|
189
|
-
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
|
190
|
-
dependencies:
|
191
|
-
source-map "^0.5.6"
|
192
|
-
|
193
|
-
source-map@^0.4.4:
|
194
|
-
version "0.4.4"
|
195
|
-
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
|
196
|
-
dependencies:
|
197
|
-
amdefine ">=0.0.4"
|
198
|
-
|
199
|
-
source-map@^0.5.6, source-map@~0.5.1:
|
200
|
-
version "0.5.7"
|
201
|
-
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
|
202
|
-
|
203
|
-
strip-bom@^3.0.0:
|
204
|
-
version "3.0.0"
|
205
|
-
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
|
206
|
-
|
207
|
-
strip-json-comments@^2.0.0:
|
208
|
-
version "2.0.1"
|
209
|
-
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
|
210
|
-
|
211
|
-
supports-color@^4.0.0:
|
212
|
-
version "4.4.0"
|
213
|
-
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e"
|
214
|
-
dependencies:
|
215
|
-
has-flag "^2.0.0"
|
216
|
-
|
217
|
-
ts-node@^3.0.4:
|
218
|
-
version "3.3.0"
|
219
|
-
resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-3.3.0.tgz#c13c6a3024e30be1180dd53038fc209289d4bf69"
|
220
|
-
dependencies:
|
221
|
-
arrify "^1.0.0"
|
222
|
-
chalk "^2.0.0"
|
223
|
-
diff "^3.1.0"
|
224
|
-
make-error "^1.1.1"
|
225
|
-
minimist "^1.2.0"
|
226
|
-
mkdirp "^0.5.1"
|
227
|
-
source-map-support "^0.4.0"
|
228
|
-
tsconfig "^6.0.0"
|
229
|
-
v8flags "^3.0.0"
|
230
|
-
yn "^2.0.0"
|
231
|
-
|
232
|
-
tsconfig@^6.0.0:
|
233
|
-
version "6.0.0"
|
234
|
-
resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-6.0.0.tgz#6b0e8376003d7af1864f8df8f89dd0059ffcd032"
|
235
|
-
dependencies:
|
236
|
-
strip-bom "^3.0.0"
|
237
|
-
strip-json-comments "^2.0.0"
|
238
|
-
|
239
|
-
typescript@^2.3.2:
|
240
|
-
version "2.5.2"
|
241
|
-
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.5.2.tgz#038a95f7d9bbb420b1bf35ba31d4c5c1dd3ffe34"
|
242
|
-
|
243
|
-
uglify-js@^2.6:
|
244
|
-
version "2.8.29"
|
245
|
-
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
|
246
|
-
dependencies:
|
247
|
-
source-map "~0.5.1"
|
248
|
-
yargs "~3.10.0"
|
249
|
-
optionalDependencies:
|
250
|
-
uglify-to-browserify "~1.0.0"
|
251
|
-
|
252
|
-
uglify-to-browserify@~1.0.0:
|
253
|
-
version "1.0.2"
|
254
|
-
resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
|
255
|
-
|
256
|
-
user-home@^1.1.1:
|
257
|
-
version "1.1.1"
|
258
|
-
resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
|
259
|
-
|
260
|
-
v8flags@^3.0.0:
|
261
|
-
version "3.0.0"
|
262
|
-
resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.0.0.tgz#4be9604488e0c4123645def705b1848d16b8e01f"
|
263
|
-
dependencies:
|
264
|
-
user-home "^1.1.1"
|
265
|
-
|
266
|
-
whatwg-fetch@>=0.10.0:
|
267
|
-
version "2.0.3"
|
268
|
-
resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84"
|
269
|
-
|
270
|
-
window-size@0.1.0:
|
271
|
-
version "0.1.0"
|
272
|
-
resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
|
273
|
-
|
274
|
-
wordwrap@0.0.2:
|
275
|
-
version "0.0.2"
|
276
|
-
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
|
277
|
-
|
278
|
-
wordwrap@~0.0.2:
|
279
|
-
version "0.0.3"
|
280
|
-
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
|
281
|
-
|
282
|
-
yargs@~3.10.0:
|
283
|
-
version "3.10.0"
|
284
|
-
resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
|
285
|
-
dependencies:
|
286
|
-
camelcase "^1.0.2"
|
287
|
-
cliui "^2.1.0"
|
288
|
-
decamelize "^1.0.0"
|
289
|
-
window-size "0.1.0"
|
290
|
-
|
291
|
-
yn@^2.0.0:
|
292
|
-
version "2.0.0"
|
293
|
-
resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a"
|