written 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
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