language_server-protocol 3.14.0.1 → 3.14.0.2
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/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"
|