clowne 1.1.0 → 1.2.0

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 (100) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +11 -51
  3. data/.travis.yml +11 -23
  4. data/Gemfile +9 -9
  5. data/README.md +8 -7
  6. data/Rakefile +3 -3
  7. data/clowne.gemspec +14 -8
  8. data/docs/.nojekyll +0 -0
  9. data/docs/.rubocop.yml +8 -2
  10. data/docs/CNAME +1 -0
  11. data/docs/README.md +131 -0
  12. data/docs/_sidebar.md +25 -0
  13. data/docs/active_record.md +2 -5
  14. data/docs/after_clone.md +3 -6
  15. data/docs/after_persist.md +7 -10
  16. data/docs/architecture.md +2 -5
  17. data/docs/assets/docsify.min.js +1 -0
  18. data/docs/assets/prism-ruby.min.js +1 -0
  19. data/docs/assets/styles.css +348 -0
  20. data/docs/assets/vue.css +1 -0
  21. data/docs/clone_mapper.md +2 -5
  22. data/docs/customization.md +1 -4
  23. data/docs/exclude_association.md +1 -4
  24. data/docs/finalize.md +4 -8
  25. data/docs/from_v02_to_v1.md +2 -10
  26. data/docs/getting_started.md +171 -0
  27. data/docs/implicit_cloner.md +1 -4
  28. data/docs/include_association.md +3 -6
  29. data/docs/index.html +29 -0
  30. data/docs/init_as.md +4 -8
  31. data/docs/inline_configuration.md +1 -4
  32. data/docs/nullify.md +1 -5
  33. data/docs/operation.md +3 -6
  34. data/docs/parameters.md +5 -8
  35. data/docs/sequel.md +1 -4
  36. data/docs/supported_adapters.md +3 -6
  37. data/docs/testing.md +18 -21
  38. data/docs/traits.md +1 -4
  39. data/gemfiles/activerecord42.gemfile +5 -5
  40. data/gemfiles/jruby.gemfile +6 -6
  41. data/gemfiles/railsmaster.gemfile +6 -6
  42. data/lib/clowne.rb +11 -11
  43. data/lib/clowne/adapters/active_record.rb +3 -3
  44. data/lib/clowne/adapters/active_record/associations.rb +7 -7
  45. data/lib/clowne/adapters/active_record/associations/base.rb +1 -1
  46. data/lib/clowne/adapters/active_record/associations/belongs_to.rb +1 -1
  47. data/lib/clowne/adapters/active_record/associations/has_one.rb +1 -1
  48. data/lib/clowne/adapters/active_record/resolvers/association.rb +1 -1
  49. data/lib/clowne/adapters/base.rb +6 -6
  50. data/lib/clowne/adapters/sequel.rb +7 -7
  51. data/lib/clowne/adapters/sequel/associations.rb +6 -6
  52. data/lib/clowne/adapters/sequel/associations/base.rb +2 -2
  53. data/lib/clowne/adapters/sequel/associations/many_to_many.rb +4 -4
  54. data/lib/clowne/adapters/sequel/associations/one_to_many.rb +1 -1
  55. data/lib/clowne/adapters/sequel/associations/one_to_one.rb +1 -1
  56. data/lib/clowne/adapters/sequel/operation.rb +3 -2
  57. data/lib/clowne/adapters/sequel/resolvers/after_persist.rb +1 -1
  58. data/lib/clowne/adapters/sequel/resolvers/association.rb +1 -1
  59. data/lib/clowne/adapters/sequel/specifications/after_persist_does_not_support.rb +1 -1
  60. data/lib/clowne/cloner.rb +8 -8
  61. data/lib/clowne/declarations.rb +15 -15
  62. data/lib/clowne/declarations/after_clone.rb +1 -1
  63. data/lib/clowne/declarations/after_persist.rb +1 -1
  64. data/lib/clowne/declarations/finalize.rb +1 -1
  65. data/lib/clowne/declarations/include_association.rb +1 -1
  66. data/lib/clowne/declarations/init_as.rb +1 -1
  67. data/lib/clowne/declarations/nullify.rb +1 -1
  68. data/lib/clowne/ext/orm_ext.rb +1 -1
  69. data/lib/clowne/ext/record_key.rb +1 -1
  70. data/lib/clowne/ext/string_constantize.rb +1 -1
  71. data/lib/clowne/ext/yield_self_then.rb +1 -1
  72. data/lib/clowne/planner.rb +1 -1
  73. data/lib/clowne/rspec.rb +3 -3
  74. data/lib/clowne/rspec/clone_association.rb +3 -3
  75. data/lib/clowne/rspec/clone_associations.rb +2 -2
  76. data/lib/clowne/rspec/helpers.rb +1 -1
  77. data/lib/clowne/utils/clone_mapper.rb +1 -1
  78. data/lib/clowne/utils/operation.rb +3 -3
  79. data/lib/clowne/utils/params.rb +1 -1
  80. data/lib/clowne/version.rb +1 -1
  81. metadata +50 -35
  82. data/docs/alternatives.md +0 -26
  83. data/docs/basic_example.md +0 -83
  84. data/docs/installation.md +0 -46
  85. data/docs/overview.md +0 -25
  86. data/docs/web/.gitignore +0 -11
  87. data/docs/web/README.md +0 -6
  88. data/docs/web/core/Footer.js +0 -88
  89. data/docs/web/i18n/en.json +0 -141
  90. data/docs/web/package.json +0 -14
  91. data/docs/web/pages/en/help.js +0 -50
  92. data/docs/web/pages/en/index.js +0 -231
  93. data/docs/web/pages/en/users.js +0 -47
  94. data/docs/web/sidebars.json +0 -38
  95. data/docs/web/siteConfig.js +0 -46
  96. data/docs/web/static/css/custom.css +0 -235
  97. data/docs/web/static/fonts/FiraCode-Medium.woff +0 -0
  98. data/docs/web/static/fonts/FiraCode-Regular.woff +0 -0
  99. data/docs/web/static/img/favicon/favicon.ico +0 -0
  100. data/docs/web/yarn.lock +0 -1741
@@ -1,26 +0,0 @@
1
- ---
2
- id: alternatives
3
- title: Motivation & Alternatives
4
- ---
5
-
6
- ### Why did we decide to build our own cloning gem instead of using the existing solutions?
7
-
8
- First, the existing solutions turned out not to be stable and flexible enough for us.
9
-
10
- Secondly, they are Rails-only (or, more precisely, ActiveRecord-only).
11
-
12
- Nevertheless, thanks to [amoeba](https://github.com/amoeba-rb/amoeba) and [deep_cloneable](https://github.com/moiristo/deep_cloneable) for inspiration.
13
-
14
- For ActiveRecord we support amoeba-like [in-model configuration](active_record.md) and you can add missing DSL declarations yourself [easily](customization.md).
15
-
16
- We also provide an ability to specify cloning [configuration in-place](inline_configuration.md) like `deep_clonable` does.
17
-
18
- So, we took the best of these too and brought to the outside-of-Rails world.
19
-
20
- ### Why build a gem to clone models at all?
21
-
22
- That's a good question. Of course, you can write plain old Ruby services do handle the cloning logic. But for complex models hierarchies, this approach has major disadvantages: high code complexity and lack of re-usability.
23
-
24
- The things become even worse when you deal with STI models and different cloning contexts.
25
-
26
- That's why we decided to build a specific cloning tool.
@@ -1,83 +0,0 @@
1
- ---
2
- id: basic_example
3
- title: Basic Example
4
- ---
5
-
6
- Assume that you have the following model:
7
-
8
- ```ruby
9
- class User < ActiveRecord::Base
10
- # create_table :users do |t|
11
- # t.string :login
12
- # t.string :email
13
- # t.timestamps null: false
14
- # end
15
-
16
- has_one :profile
17
- has_many :posts
18
- end
19
-
20
- class Profile < ActiveRecord::Base
21
- # create_table :profiles do |t|
22
- # t.string :name
23
- # end
24
- end
25
-
26
- class Post < ActiveRecord::Base
27
- # create_table :posts
28
- end
29
- ```
30
-
31
- Let's declare our cloners first:
32
-
33
- ```ruby
34
- class UserCloner < Clowne::Cloner
35
- adapter :active_record
36
-
37
- include_association :profile, clone_with: SpecialProfileCloner
38
- include_association :posts
39
-
40
- nullify :login
41
-
42
- # params here is an arbitrary Hash passed into cloner
43
- finalize do |_source, record, params|
44
- record.email = params[:email]
45
- end
46
- end
47
-
48
- class SpecialProfileCloner < Clowne::Cloner
49
- adapter :active_record
50
-
51
- nullify :name
52
- end
53
- ```
54
-
55
- Now you can use `UserCloner` to clone existing records:
56
-
57
- ```ruby
58
- user = User.last
59
- # => <#User id: 1, login: 'clown', email: 'clown@circus.example.com'>
60
-
61
- operation = UserCloner.call(user, email: 'fake@example.com')
62
- # => <#Clowne::Utils::Operation...>
63
-
64
- operation.to_record
65
- # => <#User id: nil, login: nil, email: 'fake@example.com'>
66
-
67
- operation.persist!
68
- # => true
69
-
70
- cloned = operation.to_record
71
- # => <#User id: 2, login: nil, email: 'fake@example.com'>
72
-
73
- cloned.login
74
- # => nil
75
- cloned.email
76
- # => "fake@example.com"
77
-
78
- # associations:
79
- cloned.posts.count == user.posts.count
80
- # => true
81
- cloned.profile.name
82
- # => nil
83
- ```
@@ -1,46 +0,0 @@
1
- ---
2
- id: installation
3
- title: Installation & Configuration
4
- ---
5
-
6
- ## Installation
7
-
8
- To install Clowne with RubyGems:
9
-
10
- ```ruby
11
- gem install clowne
12
- ```
13
-
14
- Or add this line to your application's Gemfile:
15
-
16
- ```ruby
17
- gem 'clowne'
18
- ```
19
-
20
- ## Configuration
21
-
22
- Basic cloner implementation looks like:
23
-
24
- ```ruby
25
- class SomeCloner < Clowne::Cloner
26
- adapter :active_record # or adapter Clowne::Adapters::ActiveRecord
27
- # some implementation ...
28
- end
29
- ```
30
-
31
- You can configure the default adapter for cloners:
32
-
33
- ```ruby
34
- # put to initializer
35
- # e.g. config/initializers/clowne.rb
36
- Clowne.default_adapter = :active_record
37
- ```
38
-
39
- and skip explicit adapter declaration
40
-
41
- ```ruby
42
- class SomeCloner < Clowne::Cloner
43
- # some implementation ...
44
- end
45
- ```
46
- See the list of [available adapters](supported_adapters.md).
@@ -1,25 +0,0 @@
1
- ---
2
- id: overview
3
- title: Overview
4
- ---
5
-
6
- In [the basic example](basic_example.md), you can see that Clowne consists of flexible DSL which is used in a class inherited of `Clowne::Cloner`.
7
-
8
- You can combinate this DSL via [`traits`](traits.md) and make a cloning plan which exactly you want.
9
-
10
- **We strongly recommend [`write tests`](testing.md) to cover resulting cloner logic**
11
-
12
- Cloner class returns [`Operation`](operation.md) instance as a result of cloning. The operation provides methods to save cloned record. You can wrap this call to a transaction if it is necessary.
13
-
14
- ## Execution Order
15
-
16
- The order of cloning actions depends on the adapter (i.e., could be customized).
17
-
18
- All built-in adapters have the same order and what happens when you call `Operation#persist`:
19
- - init clone (see [`init_as`](init_as.md)) (empty by default)
20
- - [`clone associations`](include_association.md)
21
- - [`nullify`](nullify.md) attributes
22
- - run [`finalize`](finalize.md) blocks. _The order of [`finalize`](finalize.md) blocks is the order they've been written._
23
- - run [`after_clone`](after_clone.md) callbacks
24
- - __SAVE CLONED RECORD__
25
- - run [`after_persist`](after_persist.md) callbacks
@@ -1,11 +0,0 @@
1
- node_modules
2
- .DS_Store
3
- lib/core/metadata.js
4
- lib/core/MetadataBlog.js
5
- website/translated_docs
6
- website/build/
7
- website/yarn.lock
8
- website/node_modules
9
-
10
- website/i18n/*
11
- !website/i18n/en.json
@@ -1,6 +0,0 @@
1
- # Clowne Docs
2
-
3
- 1. Install `node` and `yarn`
4
- 2. `$ yarn` - install frontend deps
5
- 3. `$ yarn run start --port 3002`
6
- 4. `$ open http://localhost:3002`
@@ -1,88 +0,0 @@
1
- /**
2
- * Copyright (c) 2017-present, Facebook, Inc.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- const React = require('react');
9
-
10
- class Footer extends React.Component {
11
- docUrl(doc, language) {
12
- const baseUrl = this.props.config.baseUrl;
13
- return baseUrl + 'docs/' + (language ? language + '/' : '') + doc;
14
- }
15
-
16
- pageUrl(doc, language) {
17
- const baseUrl = this.props.config.baseUrl;
18
- return baseUrl + (language ? language + '/' : '') + doc;
19
- }
20
-
21
- render() {
22
- const currentYear = new Date().getFullYear();
23
-
24
- const yearLabel = currentYear > 2018 ? `2018–${currentYear}` : currentYear;
25
-
26
- return (
27
- <footer className="nav-footer" id="footer">
28
- <section className="sitemap">
29
- <div className="footer--block">
30
- <h5>Project</h5>
31
- <div className="footer--list--item">
32
- <a href={this.props.config.repoUrl} target="_blank">
33
- GitHub
34
- </a>
35
- </div>
36
- <div className="footer--list--item">
37
- <a href={this.props.config.gemUrl} target="_blank">
38
- RubyGems
39
- </a>
40
- </div>
41
- </div>
42
- {/* <div className="footer--block">
43
- <h5>Community</h5>
44
- <div className="footer--list--item">
45
- <a href="https://discordapp.com/" target="_blank">Project Chat</a>
46
- </div>
47
- <div className="footer--list--item">
48
- <a href="https://twitter.com/" target="_blank">
49
- Twitter
50
- </a>
51
- </div>
52
- </div>
53
- */}
54
- <div className="footer--block">
55
- <h5>Resources</h5>
56
- <div className="footer--list--item">
57
- <a href="https://evilmartians.com/chronicles/clowne-clone-ruby-models-with-a-smile" target="_blank">Clowne: clone Ruby models with a smile</a>
58
- </div>
59
- </div>
60
- <div className="footer--block legals">
61
- <p className="footer--copy">
62
- <span className="copy">{yearLabel}</span>&nbsp;
63
- <a href="https://evilmartians.com" target="_blank">Evil Martians</a>
64
- </p>
65
- <div className="footer--list--item">
66
- <p>Released under the <a href="https://github.com/palkan/clowne/blob/master/LICENSE.txt" target="_blank">MIT license</a></p>
67
- </div>
68
- <div className="footer--list--item">
69
- <p>Built with <a href="https://docusaurus.io" target="_blank">Docusaurus</a></p>
70
- </div>
71
- </div>
72
- </section>
73
- <div className="footer--humanoids">
74
- <div className="humanoids">
75
- <div className="humanoids__martian">
76
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 108 92"><path fill="#E2CBB5" d="M26 88L8 78l18-10"></path><path fill="#9FA628" d="M94 92v-6H44c-5.5 0-10-4.5-10-10s4.5-10 10-10h50V32c0-14-7.9-22-22-22H48c-14.1 0-22 8-22 22v60h68z"></path><circle fill="#FFF" cx="48" cy="50" r="8"></circle><circle fill="#FFF" cx="72" cy="50" r="8"></circle><circle fill="#BF6C35" cx="48" cy="50" r="4"></circle><circle fill="#BF6C35" cx="72" cy="50" r="4"></circle><g fill="#663F4C"><path d="M48 60c-5.5 0-10-4.5-10-10s4.5-10 10-10 10 4.5 10 10-4.5 10-10 10zm0-16c-3.3 0-6 2.7-6 6s2.7 6 6 6 6-2.7 6-6-2.7-6-6-6zM82 50c0 5.5-4.5 10-10 10s-10-4.5-10-10 4.5-10 10-10 10 4.5 10 10zm-16 0c0 3.3 2.7 6 6 6s6-2.7 6-6-2.7-6-6-6-6 2.7-6 6z"></path><path d="M102 8c-3.8 0-6-2.2-6-6 0-1.1-.9-2-2-2s-2 .9-2 2c0 2.2.5 4.1 1.5 5.7L88.2 13c-4-3.3-9.5-5-16.2-5H48c-6.7 0-12.2 1.7-16.2 4.9l-5.3-5.3C27.5 6.1 28 4.2 28 2c0-1.1-.9-2-2-2s-2 .9-2 2c0 3.8-2.2 6-6 6-1.1 0-2 .9-2 2s.9 2 2 2c2.2 0 4.1-.5 5.7-1.5l5.3 5.3c-3.2 4-4.9 9.5-4.9 16.2v34.8L3.9 78 24 89v3h4V32c0-12.9 7.1-20 20-20h24c12.9 0 20 7.1 20 20v32H44c-6.6 0-12 5.4-12 12s5.4 12 12 12h48v4h4v-8h-2l-4-8-4 8h-4l-4-8-4 8h-4l-4-8-4 8h-4l-4-8-4 8h-4l-4-8-3.1 6.2C37.1 80.7 36 78.5 36 76c0-4.4 3.6-8 8-8l4 8 4-8h4l4 8 4-8h4l4 8 4-8h4l4 8 4-8h8V32c0-6.7-1.7-12.2-4.9-16.2l5.3-5.3c1.6 1 3.5 1.5 5.7 1.5 1.1 0 2-.9 2-2s-1-2-2.1-2zM24 84.4L12.1 78 24 71.4v13z"></path></g></svg>
77
- </div>
78
- <div className="humanoids__human">
79
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 108 92"><path fill="#E2CBB5" d="M14 62v30h68v-6H32c-5.5 0-10-4.5-10-10s4.5-10 10-10h50v-4c4 0 8-3.6 8-8s-4-8-8-8V32c0-14-7.9-22-22-22H36c-14.1 0-22 8-22 22v14c-4 0-8 3.6-8 8s4 8 8 8z"></path><circle fill="#FFF" cx="36" cy="50" r="8"></circle><circle fill="#FFF" cx="60" cy="50" r="8"></circle><circle fill="#9FA628" cx="36" cy="50" r="4"></circle><circle fill="#9FA628" cx="60" cy="50" r="4"></circle><path fill="#BF6C35" d="M60 10H36c-14.1 0-22 8-22 22v2l4-4 6 6 6-6 6 6 6-6 6 6 6-6 6 6 6-6 6 6 6-6 4 4v-2c0-14-7.9-22-22-22z"></path><g fill="#663F4C"><path d="M36 60c-5.5 0-10-4.5-10-10s4.5-10 10-10 10 4.5 10 10-4.5 10-10 10zm0-16c-3.3 0-6 2.7-6 6s2.7 6 6 6 6-2.7 6-6-2.7-6-6-6zM60 60c-5.5 0-10-4.5-10-10s4.5-10 10-10 10 4.5 10 10-4.5 10-10 10zm0-16c-3.3 0-6 2.7-6 6s2.7 6 6 6 6-2.7 6-6-2.7-6-6-6z"></path><path d="M12 63.8V92h4V32c0-12.9 7.1-20 20-20h24c12.9 0 20 7.1 20 20v32H32c-6.6 0-12 5.4-12 12s5.4 12 12 12h48v4h4v-8H74v-1c0-1.7-1.3-3-3-3s-3 1.3-3 3v1h-6v-1c0-1.7-1.3-3-3-3s-3 1.3-3 3v1h-6v-1c0-1.7-1.3-3-3-3s-3 1.3-3 3v1h-6v-1c0-1.7-1.3-3-3-3s-3 1.3-3 3v1c-4 0-8-3.6-8-8s3.6-8 8-8h6v1c0 1.7 1.3 3 3 3s3-1.3 3-3v-1h6v1c0 1.7 1.3 3 3 3s3-1.3 3-3v-1h6v1c0 1.7 1.3 3 3 3s3-1.3 3-3v-1h6v1c0 1.7 1.3 3 3 3s3-1.3 3-3v-1h4v-4.2c5-.9 8-5 8-9.8s-3-8.9-8-9.8V32c0-15.3-8.7-24-24-24H36c-15.3 0-24 8.7-24 24v12.2c-5 .9-8 5-8 9.8s3 8.9 8 9.8zm72-15.5c2 .8 4 3 4 5.7s-2 4.8-4 5.7V48.3zm-72 0v11.3c-2-.8-4-3-4-5.7s2-4.7 4-5.6z"></path></g></svg>
80
- </div>
81
- </div>
82
- </div>
83
- </footer>
84
- );
85
- }
86
- }
87
-
88
- module.exports = Footer;
@@ -1,141 +0,0 @@
1
- {
2
- "_comment": "This file is auto-generated by write-translations.js",
3
- "localized-strings": {
4
- "next": "Next",
5
- "previous": "Previous",
6
- "tagline": "A flexible gem for cloning your models",
7
- "active_record": "Active Record",
8
- "after_clone": "After Clone",
9
- "after_persist": "After Persist",
10
- "alternatives": "Motivation & Alternatives",
11
- "architecture": "Architecture",
12
- "basic_example": "Basic Example",
13
- "clone_mapper": "Clone mapper",
14
- "customization": "Customization",
15
- "exclude_association": "Exclude Association",
16
- "finalize": "Finalization",
17
- "Finalize": "Finalize",
18
- "from_v02_to_v10": "From v0.2.x to v1.0.0",
19
- "implicit_cloner": "Implicit Cloner",
20
- "include_association": "Include Association",
21
- "init_as": "Initialize Cloning Target",
22
- "Init As": "Init As",
23
- "inline_configuration": "Inline Configuration",
24
- "installation": "Installation & Configuration",
25
- "nullify": "Nullify Attributes",
26
- "Nullify": "Nullify",
27
- "operation": "Operation",
28
- "overview": "Overview",
29
- "parameters": "Parameters",
30
- "sequel": "Sequel",
31
- "supported_adapters": "Supported Adapters",
32
- "testing": "Testing",
33
- "traits": "Traits",
34
- "HISTORY": "HISTORY",
35
- "README": "README",
36
- "readme": "readme",
37
- "CHANGES": "CHANGES",
38
- "LICENSE": "LICENSE",
39
- "CHANGELOG": "CHANGELOG",
40
- "CONTRIBUTING": "CONTRIBUTING",
41
- "History": "History",
42
- "Readme": "Readme",
43
- "extending-remarkable": "extending-remarkable",
44
- "local-third-party-project-testing": "local-third-party-project-testing",
45
- "publish": "publish",
46
- "testing-changes-on-Docusaurus-itself": "testing-changes-on-Docusaurus-itself",
47
- "CODE_OF_CONDUCT": "CODE_OF_CONDUCT",
48
- "2016-03-11-blog-post": "Blog Title",
49
- "2017-04-10-blog-post-two": "New Blog Post",
50
- "2017-09-25-testing-rss": "Adding RSS Support - RSS Truncation Test",
51
- "2017-09-26-adding-rss": "Adding RSS Support",
52
- "2017-10-24-new-version-1.0.0": "New Version 1.0.0",
53
- "doc1": "Latin-ish",
54
- "Example Page": "Example Page",
55
- "doc2": "document number 2",
56
- "doc3": "This is document number 3",
57
- "doc4": "Other Document",
58
- "doc5": "Fifth Document",
59
- "copy-sync": "copy-sync",
60
- "copy": "copy",
61
- "emptyDir-sync": "emptyDir-sync",
62
- "emptyDir": "emptyDir",
63
- "ensureDir-sync": "ensureDir-sync",
64
- "ensureDir": "ensureDir",
65
- "ensureFile-sync": "ensureFile-sync",
66
- "ensureFile": "ensureFile",
67
- "ensureLink-sync": "ensureLink-sync",
68
- "ensureLink": "ensureLink",
69
- "ensureSymlink-sync": "ensureSymlink-sync",
70
- "ensureSymlink": "ensureSymlink",
71
- "fs-read-write": "fs-read-write",
72
- "move-sync": "move-sync",
73
- "move": "move",
74
- "outputFile-sync": "outputFile-sync",
75
- "outputFile": "outputFile",
76
- "outputJson-sync": "outputJson-sync",
77
- "outputJson": "outputJson",
78
- "pathExists-sync": "pathExists-sync",
79
- "pathExists": "pathExists",
80
- "readJson-sync": "readJson-sync",
81
- "readJson": "readJson",
82
- "remove-sync": "remove-sync",
83
- "remove": "remove",
84
- "writeJson-sync": "writeJson-sync",
85
- "writeJson": "writeJson",
86
- "changelog": "changelog",
87
- "http_signing": "http_signing",
88
- "Changelog": "Changelog",
89
- "license": "license",
90
- "ERROR-HANDLING": "ERROR-HANDLING",
91
- "LIMITS": "LIMITS",
92
- "block-bq-flat": "block-bq-flat",
93
- "block-bq-nested": "block-bq-nested",
94
- "block-code": "block-code",
95
- "block-fences": "block-fences",
96
- "block-heading": "block-heading",
97
- "block-hr": "block-hr",
98
- "block-html": "block-html",
99
- "block-lheading": "block-lheading",
100
- "block-list-flat": "block-list-flat",
101
- "block-list-nested": "block-list-nested",
102
- "block-ref-flat": "block-ref-flat",
103
- "block-ref-nested": "block-ref-nested",
104
- "block-tables-large": "block-tables-large",
105
- "block-tables": "block-tables",
106
- "inline-autolink": "inline-autolink",
107
- "inline-backticks": "inline-backticks",
108
- "inline-em-flat": "inline-em-flat",
109
- "inline-em-nested": "inline-em-nested",
110
- "inline-em-worst": "inline-em-worst",
111
- "inline-entity": "inline-entity",
112
- "inline-escape": "inline-escape",
113
- "inline-html": "inline-html",
114
- "inline-links-flat": "inline-links-flat",
115
- "inline-links-nested": "inline-links-nested",
116
- "inline-newlines-large": "inline-newlines-large",
117
- "inline-newlines": "inline-newlines",
118
- "rawtabs": "rawtabs",
119
- "example": "example",
120
- "parser": "parser",
121
- "parsing_block": "parsing_block",
122
- "parsing_core": "parsing_core",
123
- "parsing_inline": "parsing_inline",
124
- "plugins": "plugins",
125
- "renderer": "renderer",
126
- "AUTHORS": "AUTHORS",
127
- "PULL_REQUEST_TEMPLATE": "PULL_REQUEST_TEMPLATE",
128
- "Docs": "Docs",
129
- "GitHub": "GitHub",
130
- "Getting Started": "Getting Started",
131
- "API": "API",
132
- "Adapters": "Adapters",
133
- "Advanced Options": "Advanced Options",
134
- "Upgrade Notes": "Upgrade Notes"
135
- },
136
- "pages-strings": {
137
- "Help Translate|recruit community translators for your project": "Help Translate",
138
- "Edit this Doc|recruitment message asking to edit the doc source": "Edit",
139
- "Translate this Doc|recruitment message asking to translate the docs": "Translate"
140
- }
141
- }
@@ -1,14 +0,0 @@
1
- {
2
- "scripts": {
3
- "examples": "docusaurus-examples",
4
- "start": "docusaurus-start",
5
- "build": "docusaurus-build",
6
- "publish-gh-pages": "docusaurus-publish",
7
- "write-translations": "docusaurus-write-translations",
8
- "version": "docusaurus-version",
9
- "rename-version": "docusaurus-rename-version"
10
- },
11
- "devDependencies": {
12
- "docusaurus": "^1.0.5"
13
- }
14
- }