quilljs2-rails 2.0.3

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.
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "quilljs/rails"
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
data/bin/setup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
@@ -0,0 +1,6 @@
1
+ module Quilljs
2
+ module Rails
3
+ # Gem version follows the bundled/editor major version for clarity
4
+ VERSION = "2.0.3"
5
+ end
6
+ end
@@ -0,0 +1,10 @@
1
+ require "quilljs/rails/version"
2
+
3
+ module Quilljs
4
+ module Rails
5
+ if defined?(::Rails)
6
+ class Engine < ::Rails::Engine
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,32 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'quilljs/rails/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "quilljs2-rails"
8
+ spec.version = Quilljs::Rails::VERSION
9
+ spec.authors = ["Sajjad Umar"]
10
+ spec.email = ["sajjadumardev@gmail.com"]
11
+
12
+ spec.summary = %q{Rails assets and helper for Quill rich text editor (2.x support)}
13
+ spec.description = 'Maintained fork of abhinavmathur/quilljs-rails updated for Quill 2.x (via CDN recommended). Provides a global initializer and includes legacy Quill 1.x assets for Sprockets.'
14
+ spec.homepage = 'https://github.com/sumar7/quilljs-rails'
15
+ spec.license = "MIT"
16
+ spec.files = `git ls-files`.split("\n")
17
+ spec.metadata = {
18
+ "homepage_uri" => spec.homepage,
19
+ "source_code_uri" => spec.homepage,
20
+ "changelog_uri" => spec.homepage + "#changelog",
21
+ "rubygems_mfa_required" => "true"
22
+ }
23
+
24
+ spec.executables = []
25
+ spec.require_paths = ['lib']
26
+ spec.required_ruby_version = '>= 2.1.3'
27
+
28
+ spec.add_development_dependency 'bundler', '>= 2.2'
29
+ spec.add_development_dependency "rake", ">= 12.3.3"
30
+ spec.add_development_dependency 'jquery-rails', '~> 4.1'
31
+
32
+ end
@@ -0,0 +1,68 @@
1
+ require 'test_helper'
2
+
3
+ class Quilljs::RailsFunctionalityTest < Minitest::Test
4
+ LIB_PATH = File.expand_path('../../lib', __dir__)
5
+
6
+ def test_engine_not_loaded_without_rails
7
+ # In some environments, Rails may be present via dev deps; if so, this check is not applicable.
8
+ if defined?(::Rails)
9
+ skip 'Rails is present in test environment; skipping pre-definition check.'
10
+ end
11
+ refute Quilljs::Rails.const_defined?(:Engine), 'Engine should not be pre-defined before explicit load with Rails::Engine'
12
+ end
13
+
14
+ def test_engine_loaded_when_rails_is_defined
15
+ created_rails = false
16
+ unless defined?(::Rails)
17
+ Object.const_set(:Rails, Module.new)
18
+ created_rails = true
19
+ end
20
+ # Ensure Rails::Engine exists so the engine class can inherit from it
21
+ ::Rails.const_set(:Engine, Class.new) unless defined?(::Rails::Engine)
22
+
23
+ load File.expand_path('../../lib/quilljs/rails.rb', __dir__)
24
+
25
+ assert Quilljs::Rails.const_defined?(:Engine), 'Engine should be defined when Rails is present'
26
+ ensure
27
+ # Cleanup only if we created Rails in this test
28
+ if created_rails
29
+ Object.send(:remove_const, :Rails)
30
+ end
31
+ end
32
+
33
+ def test_initializer_uses_text_change_event
34
+ path = File.expand_path('../../app/assets/javascripts/quill.global.js', __dir__)
35
+ content = File.read(path)
36
+ assert_includes content, "on('text-change'", "quill.global.js should bind to 'text-change' for Quill 2.x"
37
+ assert_includes content, 'window.Quilljs', 'Initializer should expose window.Quilljs global'
38
+ assert_includes content, 'setDefaults:', 'Initializer should define setDefaults method'
39
+ end
40
+
41
+ def test_asset_files_exist
42
+ %w[
43
+ app/assets/javascripts/quill.min.js
44
+ app/assets/javascripts/quill.core.js
45
+ app/assets/javascripts/quill.global.js
46
+ app/assets/stylesheets/quill.core.css
47
+ app/assets/stylesheets/quill.snow.css
48
+ app/assets/stylesheets/quill.bubble.css
49
+ ].each do |rel|
50
+ path = File.expand_path("../../#{rel}", __dir__)
51
+ assert File.exist?(path), "Expected asset to exist: #{rel}"
52
+ end
53
+ end
54
+
55
+ def test_assets_updated_to_v2
56
+ {
57
+ 'app/assets/javascripts/quill.min.js' => 'v2.0.3',
58
+ 'app/assets/javascripts/quill.core.js' => 'v2.0.3',
59
+ 'app/assets/stylesheets/quill.core.css' => 'v2.0.3',
60
+ 'app/assets/stylesheets/quill.snow.css' => 'v2.0.3',
61
+ 'app/assets/stylesheets/quill.bubble.css' => 'v2.0.3',
62
+ }.each do |rel, marker|
63
+ path = File.expand_path("../../#{rel}", __dir__)
64
+ content = File.read(path)[0, 200]
65
+ assert_includes content, marker, "#{rel} should indicate updated Quill #{marker}"
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,16 @@
1
+ require 'test_helper'
2
+
3
+ class Quilljs::RailsTest < Minitest::Test
4
+ def test_that_it_has_a_version_number
5
+ refute_nil ::Quilljs::Rails::VERSION
6
+ end
7
+
8
+ def test_gem_name_and_author_updated
9
+ gemspec = File.read(File.expand_path('../../quilljs-rails.gemspec', __dir__))
10
+ assert_includes gemspec, 'quilljs2-rails', 'Gemspec should use the new gem name indicating Quill 2 support'
11
+ assert_includes gemspec, 'Sajjad Umar', 'Gemspec should list Sajjad Umar as the author'
12
+ readme = File.read(File.expand_path('../../README.md', __dir__))
13
+ assert_includes readme, 'maintained fork of the original quilljs-rails', 'README should mention this is a fork of the original'
14
+ assert_includes readme, "gem 'quilljs2-rails'", 'README installation should use the new gem name'
15
+ end
16
+ end
@@ -0,0 +1,4 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+ require 'quilljs/rails'
3
+
4
+ require 'minitest/autorun'
metadata ADDED
@@ -0,0 +1,117 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: quilljs2-rails
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.3
5
+ platform: ruby
6
+ authors:
7
+ - Sajjad Umar
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2025-08-21 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '2.2'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '2.2'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 12.3.3
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 12.3.3
41
+ - !ruby/object:Gem::Dependency
42
+ name: jquery-rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '4.1'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '4.1'
55
+ description: Maintained fork of abhinavmathur/quilljs-rails updated for Quill 2.x
56
+ (via CDN recommended). Provides a global initializer and includes legacy Quill 1.x
57
+ assets for Sprockets.
58
+ email:
59
+ - sajjadumardev@gmail.com
60
+ executables: []
61
+ extensions: []
62
+ extra_rdoc_files: []
63
+ files:
64
+ - ".github/workflows/release.yml"
65
+ - ".gitignore"
66
+ - ".idea/misc.xml"
67
+ - ".idea/modules.xml"
68
+ - ".idea/quilljs-rails.iml"
69
+ - ".idea/vcs.xml"
70
+ - ".idea/workspace.xml"
71
+ - ".travis.yml"
72
+ - Gemfile
73
+ - LICENSE.txt
74
+ - README.md
75
+ - Rakefile
76
+ - app/assets/javascripts/quill.core.js
77
+ - app/assets/javascripts/quill.global.js
78
+ - app/assets/javascripts/quill.min.js
79
+ - app/assets/stylesheets/quill.bubble.css
80
+ - app/assets/stylesheets/quill.core.css
81
+ - app/assets/stylesheets/quill.snow.css
82
+ - bin/console
83
+ - bin/setup
84
+ - lib/quilljs/rails.rb
85
+ - lib/quilljs/rails/version.rb
86
+ - quilljs-rails.gemspec
87
+ - test/quilljs/functionality_test.rb
88
+ - test/quilljs/rails_test.rb
89
+ - test/test_helper.rb
90
+ homepage: https://github.com/sumar7/quilljs-rails
91
+ licenses:
92
+ - MIT
93
+ metadata:
94
+ homepage_uri: https://github.com/sumar7/quilljs-rails
95
+ source_code_uri: https://github.com/sumar7/quilljs-rails
96
+ changelog_uri: https://github.com/sumar7/quilljs-rails#changelog
97
+ rubygems_mfa_required: 'true'
98
+ post_install_message:
99
+ rdoc_options: []
100
+ require_paths:
101
+ - lib
102
+ required_ruby_version: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - ">="
105
+ - !ruby/object:Gem::Version
106
+ version: 2.1.3
107
+ required_rubygems_version: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
112
+ requirements: []
113
+ rubygems_version: 3.2.3
114
+ signing_key:
115
+ specification_version: 4
116
+ summary: Rails assets and helper for Quill rich text editor (2.x support)
117
+ test_files: []