written 0.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.
Files changed (65) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +3 -0
  3. data/Gemfile +15 -0
  4. data/Gemfile.lock +128 -0
  5. data/Rakefile +83 -0
  6. data/lib/written/app/assets/javascripts/vendors/prism.js +1411 -0
  7. data/lib/written/app/assets/javascripts/written/core/content.coffee +106 -0
  8. data/lib/written/app/assets/javascripts/written/core/cursor.coffee +59 -0
  9. data/lib/written/app/assets/javascripts/written/core/document.coffee +19 -0
  10. data/lib/written/app/assets/javascripts/written/core/ext.coffee +109 -0
  11. data/lib/written/app/assets/javascripts/written/core/extensions.coffee +2 -0
  12. data/lib/written/app/assets/javascripts/written/core/history.coffee +16 -0
  13. data/lib/written/app/assets/javascripts/written/core/observer.coffee +29 -0
  14. data/lib/written/app/assets/javascripts/written/extensions/clipboard.coffee +114 -0
  15. data/lib/written/app/assets/javascripts/written/extensions/image.coffee +91 -0
  16. data/lib/written/app/assets/javascripts/written/parsers/block/code.coffee +25 -0
  17. data/lib/written/app/assets/javascripts/written/parsers/block/heading.coffee +10 -0
  18. data/lib/written/app/assets/javascripts/written/parsers/block/image.coffee +18 -0
  19. data/lib/written/app/assets/javascripts/written/parsers/block/olist.coffee +18 -0
  20. data/lib/written/app/assets/javascripts/written/parsers/block/paragraph.coffee +10 -0
  21. data/lib/written/app/assets/javascripts/written/parsers/block/ulist.coffee +17 -0
  22. data/lib/written/app/assets/javascripts/written/parsers/inline/italic.coffee +13 -0
  23. data/lib/written/app/assets/javascripts/written/parsers/inline/link.coffee +16 -0
  24. data/lib/written/app/assets/javascripts/written/parsers/inline/strong.coffee +12 -0
  25. data/lib/written/app/assets/javascripts/written/parsers/parsers.coffee +98 -0
  26. data/lib/written/app/assets/javascripts/written.coffee +4 -0
  27. data/lib/written/app/assets/stylesheets/vendors/prism.css +138 -0
  28. data/lib/written/app/assets/stylesheets/written.scss +21 -0
  29. data/lib/written/document.rb +42 -0
  30. data/lib/written/node.rb +21 -0
  31. data/lib/written/nodes/code.rb +65 -0
  32. data/lib/written/nodes/heading.rb +15 -0
  33. data/lib/written/nodes/image.rb +14 -0
  34. data/lib/written/nodes/ordered_list.rb +18 -0
  35. data/lib/written/nodes/unordered_list.rb +19 -0
  36. data/lib/written/parsers/base.rb +26 -0
  37. data/lib/written/parsers/code.rb +60 -0
  38. data/lib/written/parsers/heading.rb +19 -0
  39. data/lib/written/parsers/image.rb +19 -0
  40. data/lib/written/parsers/link.rb +12 -0
  41. data/lib/written/parsers/list.rb +33 -0
  42. data/lib/written/parsers/word.rb +16 -0
  43. data/lib/written/parsers.rb +11 -0
  44. data/lib/written/railtie.rb +20 -0
  45. data/lib/written/version.rb +3 -0
  46. data/lib/written.rb +14 -0
  47. data/test/javascript/assertions/assert.coffee +3 -0
  48. data/test/javascript/polyfills/HTMLULListElement.coffee +0 -0
  49. data/test/javascript/polyfills/Text.coffee +0 -0
  50. data/test/javascript/polyfills.coffee +2 -0
  51. data/test/javascript/runner.coffee +46 -0
  52. data/test/javascript/tests/initialization.coffee +16 -0
  53. data/test/javascript/tests/parsing.coffee +9 -0
  54. data/test/ruby/blank_test.rb +83 -0
  55. data/test/server/app/assets/javascripts/application.coffee +3 -0
  56. data/test/server/app/assets/stylesheets/application.scss +10 -0
  57. data/test/server/app/controllers/application_controller.rb +2 -0
  58. data/test/server/app/controllers/posts_controller.rb +4 -0
  59. data/test/server/app/views/layouts/application.html.erb +14 -0
  60. data/test/server/app/views/posts/show.html.erb +14 -0
  61. data/test/server/application.rb +12 -0
  62. data/test/server/config.ru +5 -0
  63. data/test/server/log/test.log +570 -0
  64. data/written.gemspec +17 -0
  65. metadata +106 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 7670288ac5a1341361eed2fc3f2cbaed365097fb
4
+ data.tar.gz: e9e8636a5bd02a222a4e5d561f89d9cd668b74be
5
+ SHA512:
6
+ metadata.gz: efc6cd3cbc0b73d93646c9bb89af901c8d837a4e8c16322078998db990a4b40792cb2518494f71646f5f3f172e783c21c4e89d6aecd78e21b0e4567dacd01813
7
+ data.tar.gz: b6434071dec6ad67cdd02febec770e29c6b0d0cead71020484954b6dc0e4f53cc3d16ce0695e46b1fab9af3e05f37f2a0f31304ad7298263c507b21bd8bf3ea8
data/.gitignore ADDED
@@ -0,0 +1,3 @@
1
+ .DS_Store
2
+ tmp/
3
+ *.log
data/Gemfile ADDED
@@ -0,0 +1,15 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'rails', '~>4.2'
4
+
5
+ gem 'rake'
6
+ gem 'sprockets'
7
+ gem 'coffee-script'
8
+ gem 'sass'
9
+ gem 'uglifier'
10
+
11
+ gem 'thin'
12
+
13
+ gem 'byebug', group: [:development, :test]
14
+
15
+ gem 'specterjs', group: [:development]
data/Gemfile.lock ADDED
@@ -0,0 +1,128 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ actionmailer (4.2.4)
5
+ actionpack (= 4.2.4)
6
+ actionview (= 4.2.4)
7
+ activejob (= 4.2.4)
8
+ mail (~> 2.5, >= 2.5.4)
9
+ rails-dom-testing (~> 1.0, >= 1.0.5)
10
+ actionpack (4.2.4)
11
+ actionview (= 4.2.4)
12
+ activesupport (= 4.2.4)
13
+ rack (~> 1.6)
14
+ rack-test (~> 0.6.2)
15
+ rails-dom-testing (~> 1.0, >= 1.0.5)
16
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
17
+ actionview (4.2.4)
18
+ activesupport (= 4.2.4)
19
+ builder (~> 3.1)
20
+ erubis (~> 2.7.0)
21
+ rails-dom-testing (~> 1.0, >= 1.0.5)
22
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
23
+ activejob (4.2.4)
24
+ activesupport (= 4.2.4)
25
+ globalid (>= 0.3.0)
26
+ activemodel (4.2.4)
27
+ activesupport (= 4.2.4)
28
+ builder (~> 3.1)
29
+ activerecord (4.2.4)
30
+ activemodel (= 4.2.4)
31
+ activesupport (= 4.2.4)
32
+ arel (~> 6.0)
33
+ activesupport (4.2.4)
34
+ i18n (~> 0.7)
35
+ json (~> 1.7, >= 1.7.7)
36
+ minitest (~> 5.1)
37
+ thread_safe (~> 0.3, >= 0.3.4)
38
+ tzinfo (~> 1.1)
39
+ arel (6.0.3)
40
+ builder (3.2.2)
41
+ byebug (6.0.2)
42
+ coffee-script (2.4.1)
43
+ coffee-script-source
44
+ execjs
45
+ coffee-script-source (1.9.1.1)
46
+ daemons (1.2.3)
47
+ erubis (2.7.0)
48
+ eventmachine (1.0.8)
49
+ execjs (2.6.0)
50
+ globalid (0.3.6)
51
+ activesupport (>= 4.1.0)
52
+ i18n (0.7.0)
53
+ json (1.8.3)
54
+ loofah (2.0.3)
55
+ nokogiri (>= 1.5.9)
56
+ mail (2.6.3)
57
+ mime-types (>= 1.16, < 3)
58
+ mime-types (2.6.2)
59
+ mini_portile (0.6.2)
60
+ minitest (5.8.2)
61
+ nokogiri (1.6.6.2)
62
+ mini_portile (~> 0.6.0)
63
+ rack (1.6.4)
64
+ rack-test (0.6.3)
65
+ rack (>= 1.0)
66
+ rails (4.2.4)
67
+ actionmailer (= 4.2.4)
68
+ actionpack (= 4.2.4)
69
+ actionview (= 4.2.4)
70
+ activejob (= 4.2.4)
71
+ activemodel (= 4.2.4)
72
+ activerecord (= 4.2.4)
73
+ activesupport (= 4.2.4)
74
+ bundler (>= 1.3.0, < 2.0)
75
+ railties (= 4.2.4)
76
+ sprockets-rails
77
+ rails-deprecated_sanitizer (1.0.3)
78
+ activesupport (>= 4.2.0.alpha)
79
+ rails-dom-testing (1.0.7)
80
+ activesupport (>= 4.2.0.beta, < 5.0)
81
+ nokogiri (~> 1.6.0)
82
+ rails-deprecated_sanitizer (>= 1.0.1)
83
+ rails-html-sanitizer (1.0.2)
84
+ loofah (~> 2.0)
85
+ railties (4.2.4)
86
+ actionpack (= 4.2.4)
87
+ activesupport (= 4.2.4)
88
+ rake (>= 0.8.7)
89
+ thor (>= 0.18.1, < 2.0)
90
+ rake (10.4.2)
91
+ sass (3.4.19)
92
+ specterjs (0.0.1)
93
+ rails (~> 4.2)
94
+ thin (~> 1.6)
95
+ sprockets (3.2.0)
96
+ rack (~> 1.0)
97
+ sprockets-rails (2.3.3)
98
+ actionpack (>= 3.0)
99
+ activesupport (>= 3.0)
100
+ sprockets (>= 2.8, < 4.0)
101
+ thin (1.6.4)
102
+ daemons (~> 1.0, >= 1.0.9)
103
+ eventmachine (~> 1.0, >= 1.0.4)
104
+ rack (~> 1.0)
105
+ thor (0.19.1)
106
+ thread_safe (0.3.5)
107
+ tzinfo (1.2.2)
108
+ thread_safe (~> 0.1)
109
+ uglifier (2.7.2)
110
+ execjs (>= 0.3.0)
111
+ json (>= 1.8.0)
112
+
113
+ PLATFORMS
114
+ ruby
115
+
116
+ DEPENDENCIES
117
+ byebug
118
+ coffee-script
119
+ rails (~> 4.2)
120
+ rake
121
+ sass
122
+ specterjs
123
+ sprockets
124
+ thin
125
+ uglifier
126
+
127
+ BUNDLED WITH
128
+ 1.10.6
data/Rakefile ADDED
@@ -0,0 +1,83 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+
3
+ require "rake/testtask"
4
+
5
+ task default: %w[test]
6
+
7
+
8
+ namespace :test do
9
+ desc 'Run Javascript tests'
10
+ task :javascript do
11
+ require 'rails'
12
+ require 'written'
13
+ require 'sprockets'
14
+ require 'tempfile'
15
+ environment = Sprockets::Environment.new
16
+ ThoughtJS::Railtie.instance.paths['app/assets'].existent.each do |path|
17
+ environment.append_path path
18
+ end
19
+
20
+ environment.append_path 'test/javascript'
21
+
22
+ test = Tempfile.new 'test.js'
23
+ test.write environment['test.js']
24
+ test.rewind
25
+
26
+ runner = Tempfile.new 'runner.js'
27
+ runner.write environment['runner.js']
28
+ runner.rewind
29
+
30
+ # Use system so it's possible to know if the tests were successful
31
+ # based on the return value
32
+ system("phantomjs #{runner.path} #{test.path}")
33
+ test.close
34
+ runner.close
35
+ end
36
+
37
+ Rake::TestTask.new do |t|
38
+ t.name = 'ruby'
39
+ t.description = 'Run Ruby tests'
40
+ t.verbose = true
41
+
42
+ t.test_files = FileList['test/ruby/*_test.rb']
43
+
44
+ t.libs << "test"
45
+ end
46
+ end
47
+
48
+ desc 'Run all tests'
49
+ task test: ['test:ruby', 'test:javascript']
50
+
51
+ desc 'Start a rails server for testing and development'
52
+ task :server do
53
+ require 'bundler/setup'
54
+ ENV['RAILS_ENV'] ||= 'development'
55
+ Bundler.require(:default, ENV['RAILS_ENV'])
56
+
57
+ Dir.chdir 'test/server' do
58
+ require "rails"
59
+ require 'written'
60
+
61
+ %w(
62
+ action_controller
63
+ action_view
64
+ sprockets
65
+ ).each do |framework|
66
+ begin
67
+ require "#{framework}/railtie"
68
+ rescue LoadError
69
+ end
70
+ end
71
+
72
+ Rails.env = ENV['RAILS_ENV']
73
+ require 'rails/commands/server'
74
+ require_relative 'test/server/application'
75
+
76
+ server = Rails::Server.new
77
+ server.options[:Port] ||= 3000
78
+ server.options[:Host] ||= '0.0.0.0'
79
+ server.options[:server] = 'thin'
80
+
81
+ server.start
82
+ end
83
+ end