lightgraf 0.1.0 → 0.1.1.pre.beta.1
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/.gitignore +2 -0
- data/.rubocop.yml +20 -0
- data/CHANGELOG.md +1 -0
- data/Gemfile +4 -2
- data/Gemfile.lock +47 -0
- data/README.md +19 -6
- data/Rakefile +24 -6
- data/bin/console +3 -3
- data/lib/lightgraf/fixtures.rb +27 -0
- data/lib/lightgraf/internal.rb +138 -0
- data/lib/lightgraf/version.rb +3 -1
- data/lib/lightgraf.rb +28 -3
- data/lightgraf.gemspec +19 -14
- metadata +43 -12
- data/.idea/workspace.xml +0 -76
- data/.travis.yml +0 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 887b14c815b3b0891625506fd0c8a24853b93fb713f7446159f177d539ff182d
|
|
4
|
+
data.tar.gz: e2212a9792924b7096ede20918a7299c53dd36b405b5403a5e35bfcf00a3dee6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: db9724f20aa5aa288a3dea179066e6f9a31fc84da8af9baa72ebc4bf35609ca8b3f2bd38bd2ae94a85f2eb5cbf8566e6079e8df76e43440eb52c889b88f9f435
|
|
7
|
+
data.tar.gz: 5b0a64c0fd10d0a549ab7a5204bf3ac6718bb404ceff95f6918d0c6509676520ed6053a50bc7c1daafa513c7d2ea0d33b5e6f7e2d3dc0cc59bf4ab2963c9148f
|
data/.gitignore
CHANGED
data/.rubocop.yml
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
Layout/IndentationStyle:
|
|
2
|
+
Enabled: false
|
|
3
|
+
Layout/IndentationWidth:
|
|
4
|
+
Enabled: false
|
|
5
|
+
Layout/FirstHashElementIndentation:
|
|
6
|
+
Enabled: false
|
|
7
|
+
Layout/LineLength:
|
|
8
|
+
Enabled: false
|
|
9
|
+
Layout/ArgumentAlignment:
|
|
10
|
+
Enabled: false
|
|
11
|
+
Layout/FirstArrayElementIndentation:
|
|
12
|
+
Enabled: false
|
|
13
|
+
Style/NumericLiterals:
|
|
14
|
+
Enabled: false
|
|
15
|
+
Style/AndOr:
|
|
16
|
+
Enabled: false
|
|
17
|
+
Metrics/BlockLength:
|
|
18
|
+
Enabled: false
|
|
19
|
+
Metrics/MethodLength:
|
|
20
|
+
Enabled: false
|
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
## Initial
|
data/Gemfile
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
source 'https://rubygems.org'
|
|
4
|
+
|
|
5
|
+
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
|
|
4
6
|
|
|
5
7
|
# Specify your gem's dependencies in lightgraf.gemspec
|
|
6
8
|
gemspec
|
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
lightgraf (0.1.1.pre.beta.1)
|
|
5
|
+
|
|
6
|
+
GEM
|
|
7
|
+
remote: https://rubygems.org/
|
|
8
|
+
specs:
|
|
9
|
+
ast (2.4.2)
|
|
10
|
+
irb (1.0.0)
|
|
11
|
+
json (2.6.3)
|
|
12
|
+
minitest (5.18.0)
|
|
13
|
+
parallel (1.23.0)
|
|
14
|
+
parser (3.2.2.1)
|
|
15
|
+
ast (~> 2.4.1)
|
|
16
|
+
rainbow (3.1.1)
|
|
17
|
+
rake (10.5.0)
|
|
18
|
+
regexp_parser (2.8.0)
|
|
19
|
+
rexml (3.2.5)
|
|
20
|
+
rubocop (1.50.2)
|
|
21
|
+
json (~> 2.3)
|
|
22
|
+
parallel (~> 1.10)
|
|
23
|
+
parser (>= 3.2.0.0)
|
|
24
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
25
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
26
|
+
rexml (>= 3.2.5, < 4.0)
|
|
27
|
+
rubocop-ast (>= 1.28.0, < 2.0)
|
|
28
|
+
ruby-progressbar (~> 1.7)
|
|
29
|
+
unicode-display_width (>= 2.4.0, < 3.0)
|
|
30
|
+
rubocop-ast (1.28.1)
|
|
31
|
+
parser (>= 3.2.1.0)
|
|
32
|
+
ruby-progressbar (1.13.0)
|
|
33
|
+
unicode-display_width (2.4.2)
|
|
34
|
+
|
|
35
|
+
PLATFORMS
|
|
36
|
+
ruby
|
|
37
|
+
|
|
38
|
+
DEPENDENCIES
|
|
39
|
+
bundler (~> 1.17)
|
|
40
|
+
irb
|
|
41
|
+
lightgraf!
|
|
42
|
+
minitest (~> 5.0)
|
|
43
|
+
rake (~> 10.0)
|
|
44
|
+
rubocop
|
|
45
|
+
|
|
46
|
+
BUNDLED WITH
|
|
47
|
+
1.17.2
|
data/README.md
CHANGED
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
# Lightgraf
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Lightweight typography tool for Rails. It handles for you:
|
|
4
|
+
- __Quotes__:
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
"Alpha", "Бета" and "Omega"\
|
|
7
|
+
`↓`\
|
|
8
|
+
“Alpha”, «Бета» and “Omega”
|
|
9
|
+
|
|
10
|
+
- __Hyphens__:
|
|
11
|
+
|
|
12
|
+
Мой номер - +7 (977) 417-50-96\
|
|
13
|
+
`↓` \
|
|
14
|
+
Мой номер — +7 (977) 417-50-96
|
|
15
|
+
|
|
16
|
+
- __Spaces__:
|
|
17
|
+
|
|
18
|
+
А что я? А я ничего\
|
|
19
|
+
`↓` \
|
|
20
|
+
А(NBSP)что я?(NBSP)А(NBSP)я(NBSP)ничего
|
|
6
21
|
|
|
7
22
|
## Installation
|
|
8
23
|
|
|
@@ -14,7 +29,7 @@ gem 'lightgraf'
|
|
|
14
29
|
|
|
15
30
|
And then execute:
|
|
16
31
|
|
|
17
|
-
$ bundle
|
|
32
|
+
$ bundle install
|
|
18
33
|
|
|
19
34
|
Or install it yourself as:
|
|
20
35
|
|
|
@@ -28,11 +43,9 @@ TODO: Write usage instructions here
|
|
|
28
43
|
|
|
29
44
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
|
30
45
|
|
|
31
|
-
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
|
32
|
-
|
|
33
46
|
## Contributing
|
|
34
47
|
|
|
35
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
|
48
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/lesterrry/lightgraf.
|
|
36
49
|
|
|
37
50
|
## License
|
|
38
51
|
|
data/Rakefile
CHANGED
|
@@ -1,10 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
# Handcrafted by Aydar N.
|
|
2
|
+
# 2023
|
|
3
|
+
#
|
|
4
|
+
# me@aydar.media
|
|
5
|
+
#
|
|
6
|
+
|
|
7
|
+
# frozen_string_literal: true
|
|
8
|
+
|
|
9
|
+
require 'bundler/gem_tasks'
|
|
10
|
+
require 'rake/testtask'
|
|
3
11
|
|
|
4
12
|
Rake::TestTask.new(:test) do |t|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
13
|
+
t.libs << 'test'
|
|
14
|
+
t.libs << 'lib'
|
|
15
|
+
t.test_files = FileList['test/**/*_test.rb'].exclude('test/**/*_bench_test.rb')
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
desc 'Run all tests'
|
|
19
|
+
task default: :test
|
|
20
|
+
|
|
21
|
+
Rake::TestTask.new(:bench) do |t|
|
|
22
|
+
t.libs << 'test'
|
|
23
|
+
t.libs << 'lib'
|
|
24
|
+
t.test_files = FileList['test/**/*_bench_test.rb']
|
|
8
25
|
end
|
|
9
26
|
|
|
10
|
-
|
|
27
|
+
desc 'Run benchmark'
|
|
28
|
+
task :bench
|
data/bin/console
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env ruby
|
|
2
2
|
|
|
3
|
-
require
|
|
4
|
-
require
|
|
3
|
+
require 'bundler/setup'
|
|
4
|
+
require 'lightgraf'
|
|
5
5
|
|
|
6
6
|
# You can add fixtures and/or initialization code here to make experimenting
|
|
7
7
|
# with your gem easier. You can also use a different console, if you like.
|
|
@@ -10,5 +10,5 @@ require "lightgraf"
|
|
|
10
10
|
# require "pry"
|
|
11
11
|
# Pry.start
|
|
12
12
|
|
|
13
|
-
require
|
|
13
|
+
require 'irb'
|
|
14
14
|
IRB.start(__FILE__)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Lightgraf
|
|
4
|
+
|
|
5
|
+
# Flags & symbols to operate
|
|
6
|
+
module Fixtures
|
|
7
|
+
INCORRECT_QUOTES = %w[' " `].freeze
|
|
8
|
+
HYPHENS = %w[- – —].freeze
|
|
9
|
+
SPACES = [' ', ' ', ' ', ' ', ' '].freeze
|
|
10
|
+
TAG_L = %(<)
|
|
11
|
+
TAG_R = %(>)
|
|
12
|
+
QUOT_RU_A_L = %(«)
|
|
13
|
+
QUOT_RU_A_R = %(»)
|
|
14
|
+
QUOT_RU_B_L = %(„)
|
|
15
|
+
QUOT_RU_B_R = %(“)
|
|
16
|
+
QUOT_EN_A_L = %(“)
|
|
17
|
+
QUOT_EN_A_R = %(”)
|
|
18
|
+
QUOT_EN_B_L = %(‘)
|
|
19
|
+
QUOT_EN_B_R = %(’)
|
|
20
|
+
HTML_NOBR_L = %(<nobr>)
|
|
21
|
+
HTML_NOBR_R = %(</nobr>)
|
|
22
|
+
HYPHEN = HYPHENS[2]
|
|
23
|
+
SPACE = SPACES[0]
|
|
24
|
+
NBSP = SPACES[2]
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'lightgraf/fixtures'
|
|
4
|
+
require 'cgi'
|
|
5
|
+
|
|
6
|
+
module Lightgraf
|
|
7
|
+
|
|
8
|
+
# Main internal parser
|
|
9
|
+
module Internal
|
|
10
|
+
include Fixtures
|
|
11
|
+
|
|
12
|
+
def self.fix(
|
|
13
|
+
text,
|
|
14
|
+
html_encode: true,
|
|
15
|
+
disable_quotes: false,
|
|
16
|
+
disable_hyphens: false,
|
|
17
|
+
disable_nbsp: false,
|
|
18
|
+
disable_nobr: false,
|
|
19
|
+
lang_check_max_take: 5,
|
|
20
|
+
nbsp_max_length: 3
|
|
21
|
+
)
|
|
22
|
+
raise TypeError unless text.is_a? String
|
|
23
|
+
|
|
24
|
+
text = CGI.unescape_html text
|
|
25
|
+
fixed = ''
|
|
26
|
+
inside = []
|
|
27
|
+
quote_char = []
|
|
28
|
+
quote_lang = []
|
|
29
|
+
last_space = nil
|
|
30
|
+
last_hyphen = nil
|
|
31
|
+
need_nobr_r = false
|
|
32
|
+
(0..text.length - 1).each do |i|
|
|
33
|
+
char = text[i]
|
|
34
|
+
if char == TAG_L
|
|
35
|
+
inside << :tag
|
|
36
|
+
fixed += TAG_L
|
|
37
|
+
next
|
|
38
|
+
elsif char == TAG_R
|
|
39
|
+
inside.pop if inside.last == :tag
|
|
40
|
+
fixed += TAG_R
|
|
41
|
+
next
|
|
42
|
+
elsif inside.last == :tag
|
|
43
|
+
fixed += char
|
|
44
|
+
next
|
|
45
|
+
elsif [QUOT_RU_A_L, QUOT_EN_A_L].include?(char)
|
|
46
|
+
inside << :quote_a
|
|
47
|
+
elsif [QUOT_RU_A_R, QUOT_EN_A_R].include?(char)
|
|
48
|
+
inside.pop if inside.last == :quote_a
|
|
49
|
+
elsif SPACES.include?(char)
|
|
50
|
+
need_next = false
|
|
51
|
+
if !disable_nbsp and (i < nbsp_max_length or (!last_space.nil? and last_hyphen != i - 1 and (i - last_space) <= nbsp_max_length) or HYPHENS.include?(text[i + 1]))
|
|
52
|
+
fixed += NBSP
|
|
53
|
+
need_next = true
|
|
54
|
+
end
|
|
55
|
+
if need_nobr_r
|
|
56
|
+
fixed += HTML_NOBR_R
|
|
57
|
+
need_nobr_r = false
|
|
58
|
+
end
|
|
59
|
+
last_space = i
|
|
60
|
+
next if need_next
|
|
61
|
+
elsif HYPHENS.include?(char)
|
|
62
|
+
need_next = false
|
|
63
|
+
if !disable_hyphens and (i.zero? or last_space == i - 1)
|
|
64
|
+
fixed += HYPHEN
|
|
65
|
+
need_next = true
|
|
66
|
+
elsif html_encode and !disable_nobr and !need_nobr_r and last_space != i - 1 and !whitespace?(text[i + 1])
|
|
67
|
+
fixed.insert (last_space.nil? ? 0 : last_space + 1), HTML_NOBR_L
|
|
68
|
+
need_nobr_r = true
|
|
69
|
+
end
|
|
70
|
+
last_hyphen = i
|
|
71
|
+
next if need_next
|
|
72
|
+
elsif !disable_quotes and INCORRECT_QUOTES.include?(char)
|
|
73
|
+
case inside.last
|
|
74
|
+
when :quote_a
|
|
75
|
+
if char == quote_char.last
|
|
76
|
+
fixed += quote_lang.last == :ru ? QUOT_RU_A_R : QUOT_EN_A_R
|
|
77
|
+
inside.pop
|
|
78
|
+
quote_char.pop
|
|
79
|
+
quote_lang.pop
|
|
80
|
+
else
|
|
81
|
+
quote_lang << (cyrillic?(text[i, lang_check_max_take]) ? :ru : :en)
|
|
82
|
+
fixed += quote_lang.last == :ru ? QUOT_RU_B_L : QUOT_EN_B_L
|
|
83
|
+
inside << :quote_b
|
|
84
|
+
quote_char << char
|
|
85
|
+
end
|
|
86
|
+
when :quote_b
|
|
87
|
+
if char == quote_char.last
|
|
88
|
+
fixed += quote_lang.last == :ru ? QUOT_RU_B_R : QUOT_EN_B_R
|
|
89
|
+
inside << :quote_a
|
|
90
|
+
quote_char.pop
|
|
91
|
+
quote_lang.pop
|
|
92
|
+
else
|
|
93
|
+
quote_lang << (cyrillic?(text[i, lang_check_max_take]) ? :ru : :en)
|
|
94
|
+
fixed += quote_lang.last == :ru ? QUOT_RU_A_L : QUOT_EN_A_L
|
|
95
|
+
inside << :quote_a
|
|
96
|
+
quote_char << char
|
|
97
|
+
end
|
|
98
|
+
when nil
|
|
99
|
+
quote_lang = (cyrillic?(text[i, lang_check_max_take]) ? [:ru] : [:en])
|
|
100
|
+
fixed += quote_lang.last == :ru ? QUOT_RU_A_L : QUOT_EN_A_L
|
|
101
|
+
inside << :quote_a
|
|
102
|
+
quote_char = [char]
|
|
103
|
+
end
|
|
104
|
+
next
|
|
105
|
+
end
|
|
106
|
+
fixed += html_encode ? CGI.escape_html(char) : char
|
|
107
|
+
end
|
|
108
|
+
fixed += HTML_NOBR_R if need_nobr_r
|
|
109
|
+
fixed
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
# Shows whether cyrillic is present in a block of text
|
|
113
|
+
# == Parameters:
|
|
114
|
+
# +text+:: +String+ of text to check
|
|
115
|
+
# == Returns:
|
|
116
|
+
# +Bool+:: Whether cyrillic is present
|
|
117
|
+
def self.cyrillic?(text)
|
|
118
|
+
raise TypeError unless text.is_a? String
|
|
119
|
+
|
|
120
|
+
!text.match(/[а-яА-Я]/).nil?
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
# Shows whether whitespace is present in a block of text
|
|
124
|
+
# == Parameters:
|
|
125
|
+
# +text+:: +String+ of text to check
|
|
126
|
+
# == Returns:
|
|
127
|
+
# +Bool+:: Whether whitespace is present
|
|
128
|
+
def self.whitespace?(text)
|
|
129
|
+
raise TypeError unless text.is_a? String
|
|
130
|
+
|
|
131
|
+
text.each_char do |i|
|
|
132
|
+
return true if SPACES.include? i
|
|
133
|
+
end
|
|
134
|
+
false
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
end
|
data/lib/lightgraf/version.rb
CHANGED
data/lib/lightgraf.rb
CHANGED
|
@@ -1,6 +1,31 @@
|
|
|
1
|
-
|
|
1
|
+
# Handcrafted by Aydar N.
|
|
2
|
+
# 2023
|
|
3
|
+
#
|
|
4
|
+
# me@aydar.media
|
|
5
|
+
#
|
|
2
6
|
|
|
7
|
+
# frozen_string_literal: true
|
|
8
|
+
|
|
9
|
+
require 'lightgraf/internal'
|
|
10
|
+
|
|
11
|
+
# Contains main typography methods
|
|
3
12
|
module Lightgraf
|
|
4
|
-
|
|
5
|
-
|
|
13
|
+
|
|
14
|
+
class Error < StandardError; end
|
|
15
|
+
|
|
16
|
+
# Fixes formatting of a block of text, returning formatted text
|
|
17
|
+
# == Parameters:
|
|
18
|
+
# +text+:: +String+ of text to format
|
|
19
|
+
# +html_encode+:: (Optional) Whether to html-encode output
|
|
20
|
+
# +disable_quotes+:: (Optional) Whether to disable fixing quotation
|
|
21
|
+
# +disable_hyphens+:: (Optional) Whether to disable fixing hyphens
|
|
22
|
+
# +disable_nbsp+:: (Optional) Whether to disable fixing whitespaces
|
|
23
|
+
# +disable_nobr+:: (Optional) Whether to disable adding <nobr>
|
|
24
|
+
# +lang_check_max_take+:: (Optional) Max number of chars to consider while analyzing quotation language
|
|
25
|
+
# == Returns:
|
|
26
|
+
# +String+:: Formatted text
|
|
27
|
+
def self.fix(text, html_encode: true, disable_quotes: false, disable_hyphens: false, disable_nbsp: false, disable_nobr: false, lang_check_max_take: 5)
|
|
28
|
+
Internal.fix text, html_encode: html_encode, disable_quotes: disable_quotes, disable_hyphens: disable_hyphens, disable_nbsp: disable_nbsp, disable_nobr: disable_nobr, lang_check_max_take: lang_check_max_take
|
|
29
|
+
end
|
|
30
|
+
|
|
6
31
|
end
|
data/lightgraf.gemspec
CHANGED
|
@@ -1,29 +1,34 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
|
|
2
|
-
lib = File.expand_path(
|
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
require
|
|
5
|
+
require 'lightgraf/version'
|
|
5
6
|
|
|
6
7
|
Gem::Specification.new do |spec|
|
|
7
|
-
spec.name =
|
|
8
|
+
spec.name = 'lightgraf'
|
|
8
9
|
spec.version = Lightgraf::VERSION
|
|
9
|
-
spec.authors = [
|
|
10
|
-
spec.email = [
|
|
10
|
+
spec.authors = ['Aydar N.']
|
|
11
|
+
spec.email = ['me@aydar.media']
|
|
11
12
|
|
|
12
|
-
spec.
|
|
13
|
+
spec.required_ruby_version = '>= 2.6.3'
|
|
14
|
+
|
|
15
|
+
spec.summary = 'Lightweight typography helper for Russian language'
|
|
13
16
|
# spec.description = "TODO: Write a longer description"
|
|
14
|
-
spec.homepage =
|
|
15
|
-
spec.license =
|
|
17
|
+
spec.homepage = 'https://rubygems.org/gems/lightgraf'
|
|
18
|
+
spec.license = 'MIT'
|
|
16
19
|
|
|
17
20
|
# Specify which files should be added to the gem when it is released.
|
|
18
21
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
|
19
|
-
spec.files = Dir.chdir(File.expand_path(
|
|
22
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
|
20
23
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
21
24
|
end
|
|
22
|
-
spec.bindir =
|
|
25
|
+
spec.bindir = 'exe'
|
|
23
26
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
24
|
-
spec.require_paths = [
|
|
27
|
+
spec.require_paths = ['lib']
|
|
25
28
|
|
|
26
|
-
spec.add_development_dependency
|
|
27
|
-
spec.add_development_dependency
|
|
28
|
-
spec.add_development_dependency
|
|
29
|
+
spec.add_development_dependency 'bundler', '~> 1.17'
|
|
30
|
+
spec.add_development_dependency 'irb'
|
|
31
|
+
spec.add_development_dependency 'minitest', '~> 5.0'
|
|
32
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
|
33
|
+
spec.add_development_dependency 'rubocop'
|
|
29
34
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lightgraf
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.1.pre.beta.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Aydar N.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-05-
|
|
11
|
+
date: 2023-05-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -25,19 +25,19 @@ dependencies:
|
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
26
|
version: '1.17'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
28
|
+
name: irb
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - "
|
|
31
|
+
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
33
|
+
version: '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: '0'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: minitest
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -52,6 +52,34 @@ dependencies:
|
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '5.0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: rake
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '10.0'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '10.0'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: rubocop
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - ">="
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '0'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - ">="
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '0'
|
|
55
83
|
description:
|
|
56
84
|
email:
|
|
57
85
|
- me@aydar.media
|
|
@@ -60,15 +88,18 @@ extensions: []
|
|
|
60
88
|
extra_rdoc_files: []
|
|
61
89
|
files:
|
|
62
90
|
- ".gitignore"
|
|
63
|
-
- ".
|
|
64
|
-
-
|
|
91
|
+
- ".rubocop.yml"
|
|
92
|
+
- CHANGELOG.md
|
|
65
93
|
- Gemfile
|
|
94
|
+
- Gemfile.lock
|
|
66
95
|
- LICENSE.txt
|
|
67
96
|
- README.md
|
|
68
97
|
- Rakefile
|
|
69
98
|
- bin/console
|
|
70
99
|
- bin/setup
|
|
71
100
|
- lib/lightgraf.rb
|
|
101
|
+
- lib/lightgraf/fixtures.rb
|
|
102
|
+
- lib/lightgraf/internal.rb
|
|
72
103
|
- lib/lightgraf/version.rb
|
|
73
104
|
- lightgraf.gemspec
|
|
74
105
|
homepage: https://rubygems.org/gems/lightgraf
|
|
@@ -83,12 +114,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
83
114
|
requirements:
|
|
84
115
|
- - ">="
|
|
85
116
|
- !ruby/object:Gem::Version
|
|
86
|
-
version:
|
|
117
|
+
version: 2.6.3
|
|
87
118
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
88
119
|
requirements:
|
|
89
|
-
- - "
|
|
120
|
+
- - ">"
|
|
90
121
|
- !ruby/object:Gem::Version
|
|
91
|
-
version:
|
|
122
|
+
version: 1.3.1
|
|
92
123
|
requirements: []
|
|
93
124
|
rubygems_version: 3.0.3
|
|
94
125
|
signing_key:
|
data/.idea/workspace.xml
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="AutoImportSettings">
|
|
4
|
-
<option name="autoReloadType" value="SELECTIVE" />
|
|
5
|
-
</component>
|
|
6
|
-
<component name="ChangeListManager">
|
|
7
|
-
<list default="true" id="fc920db6-015a-487a-8cb9-6220e2890a1b" name="Changes" comment="">
|
|
8
|
-
<change afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
|
|
9
|
-
<change afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
|
10
|
-
<change afterPath="$PROJECT_DIR$/.travis.yml" afterDir="false" />
|
|
11
|
-
<change afterPath="$PROJECT_DIR$/Gemfile" afterDir="false" />
|
|
12
|
-
<change afterPath="$PROJECT_DIR$/LICENSE.txt" afterDir="false" />
|
|
13
|
-
<change afterPath="$PROJECT_DIR$/README.md" afterDir="false" />
|
|
14
|
-
<change afterPath="$PROJECT_DIR$/Rakefile" afterDir="false" />
|
|
15
|
-
<change afterPath="$PROJECT_DIR$/bin/console" afterDir="false" />
|
|
16
|
-
<change afterPath="$PROJECT_DIR$/bin/setup" afterDir="false" />
|
|
17
|
-
<change afterPath="$PROJECT_DIR$/lib/lightgraf.rb" afterDir="false" />
|
|
18
|
-
<change afterPath="$PROJECT_DIR$/lib/lightgraf/version.rb" afterDir="false" />
|
|
19
|
-
<change afterPath="$PROJECT_DIR$/lightgraf.gemspec" afterDir="false" />
|
|
20
|
-
<change afterPath="$PROJECT_DIR$/test/lightgraf_test.rb" afterDir="false" />
|
|
21
|
-
<change afterPath="$PROJECT_DIR$/test/test_helper.rb" afterDir="false" />
|
|
22
|
-
</list>
|
|
23
|
-
<option name="SHOW_DIALOG" value="false" />
|
|
24
|
-
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
|
25
|
-
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
|
26
|
-
<option name="LAST_RESOLUTION" value="IGNORE" />
|
|
27
|
-
</component>
|
|
28
|
-
<component name="Git.Settings">
|
|
29
|
-
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
|
30
|
-
</component>
|
|
31
|
-
<component name="MarkdownSettingsMigration">
|
|
32
|
-
<option name="stateVersion" value="1" />
|
|
33
|
-
</component>
|
|
34
|
-
<component name="ProjectId" id="2PzC14JQ6ytQpvYmgsI1snqtupd" />
|
|
35
|
-
<component name="ProjectLevelVcsManager">
|
|
36
|
-
<ConfirmationsSetting value="1" id="Add" />
|
|
37
|
-
</component>
|
|
38
|
-
<component name="ProjectViewState">
|
|
39
|
-
<option name="hideEmptyMiddlePackages" value="true" />
|
|
40
|
-
<option name="showLibraryContents" value="true" />
|
|
41
|
-
</component>
|
|
42
|
-
<component name="PropertiesComponent"><![CDATA[{
|
|
43
|
-
"keyToString": {
|
|
44
|
-
"ASKED_SHARE_PROJECT_CONFIGURATION_FILES": "true",
|
|
45
|
-
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
|
46
|
-
"RunOnceActivity.ShowReadmeOnStart": "true",
|
|
47
|
-
"WebServerToolWindowFactoryState": "false",
|
|
48
|
-
"git-widget-placeholder": "master",
|
|
49
|
-
"node.js.detected.package.eslint": "true",
|
|
50
|
-
"node.js.detected.package.tslint": "true",
|
|
51
|
-
"node.js.selected.package.eslint": "(autodetect)",
|
|
52
|
-
"node.js.selected.package.tslint": "(autodetect)",
|
|
53
|
-
"nodejs_package_manager_path": "npm",
|
|
54
|
-
"ruby.rails.projectView.checked": "true",
|
|
55
|
-
"ruby.structure.view.model.defaults.configured": "true",
|
|
56
|
-
"settings.editor.selected.configurable": "copyright.filetypes.CSS",
|
|
57
|
-
"vue.rearranger.settings.migration": "true"
|
|
58
|
-
}
|
|
59
|
-
}]]></component>
|
|
60
|
-
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
|
61
|
-
<component name="SpringUtil" SPRING_PRE_LOADER_OPTION="true" RAKE_SPRING_PRE_LOADER_OPTION="true" RAILS_SPRING_PRE_LOADER_OPTION="true" />
|
|
62
|
-
<component name="TaskManager">
|
|
63
|
-
<task active="true" id="Default" summary="Default task">
|
|
64
|
-
<changelist id="fc920db6-015a-487a-8cb9-6220e2890a1b" name="Changes" comment="" />
|
|
65
|
-
<created>1684450304594</created>
|
|
66
|
-
<option name="number" value="Default" />
|
|
67
|
-
<option name="presentableId" value="Default" />
|
|
68
|
-
<updated>1684450304594</updated>
|
|
69
|
-
<workItem from="1684450305899" duration="1722000" />
|
|
70
|
-
</task>
|
|
71
|
-
<servers />
|
|
72
|
-
</component>
|
|
73
|
-
<component name="TypeScriptGeneratedFilesManager">
|
|
74
|
-
<option name="version" value="3" />
|
|
75
|
-
</component>
|
|
76
|
-
</project>
|