locomotivecms_wagon 3.0.0.beta2 → 3.0.0.rc0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/generators/blank/.gitignore +7 -0
- data/generators/blank/Gemfile.tt +0 -2
- data/generators/blank/app/assets/.babelrc +2 -1
- data/generators/blank/app/assets/javascripts/sections/index.js +1 -1
- data/generators/blank/app/assets/webpack.common.js +13 -3
- data/generators/blank/app/assets/webpack.dev.js +5 -1
- data/generators/blank/app/views/pages/layouts/default.liquid +4 -0
- data/generators/blank/config/site.yml.tt +4 -0
- data/generators/blank/{app/assets/package.json.tt → package.json.tt} +10 -9
- data/generators/cloned/Gemfile.tt +0 -2
- data/generators/content_type/app/content_types/%slug%.yml.tt +4 -0
- data/generators/public_form/content_type.yml.tt +53 -0
- data/generators/public_form/page.liquid.tt +75 -0
- data/generators/webpack/app/assets/.babelrc +4 -0
- data/generators/webpack/app/assets/fonts/.empty_directory +1 -0
- data/generators/webpack/app/assets/javascripts/app.js +19 -0
- data/generators/webpack/app/assets/javascripts/sections/_manager.js +94 -0
- data/generators/webpack/app/assets/javascripts/sections/index.js +5 -0
- data/generators/webpack/app/assets/postcss.config.js +6 -0
- data/generators/webpack/app/assets/stylesheets/app.scss +1 -0
- data/generators/webpack/app/assets/webpack.common.js +57 -0
- data/generators/webpack/app/assets/webpack.dev.js +11 -0
- data/generators/webpack/app/assets/webpack.prod.js +12 -0
- data/generators/webpack/package.json.tt +36 -0
- data/lib/locomotive/wagon/cli.rb +21 -4
- data/lib/locomotive/wagon/commands/push_sub_commands/push_content_types_command.rb +1 -1
- data/lib/locomotive/wagon/commands/serve_command.rb +1 -6
- data/lib/locomotive/wagon/decorators/concerns/persist_assets_concern.rb +1 -1
- data/lib/locomotive/wagon/generators/public_form.rb +97 -0
- data/lib/locomotive/wagon/generators/site.rb +0 -1
- data/lib/locomotive/wagon/generators/webpack.rb +29 -0
- data/lib/locomotive/wagon/tools/listen.rb +10 -4
- data/lib/locomotive/wagon/version.rb +1 -1
- data/locomotivecms_wagon.gemspec +1 -2
- data/spec/fixtures/cassettes/authenticate.yml +42 -42
- data/spec/fixtures/cassettes/delete.yml +232 -232
- data/spec/fixtures/cassettes/push.yml +1728 -1728
- data/spec/fixtures/cassettes/sync.yml +1999 -1999
- data/spec/unit/decorators/content_entry_decorator_spec.rb +1 -1
- data/spec/unit/decorators/site_decorator_spec.rb +28 -3
- metadata +21 -22
- data/generators/blank/Guardfile +0 -22
- data/generators/cloned/Guardfile +0 -22
- data/lib/locomotive/wagon/generators/site/unzip.rb +0 -89
@@ -0,0 +1 @@
|
|
1
|
+
// Wagon main stylesheet file
|
@@ -0,0 +1,57 @@
|
|
1
|
+
const path = require('path');
|
2
|
+
const Webpack = require('webpack');
|
3
|
+
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
4
|
+
|
5
|
+
module.exports = {
|
6
|
+
entry: './app/assets/javascripts/app.js',
|
7
|
+
output: {
|
8
|
+
path: path.resolve(__dirname, '../../public'),
|
9
|
+
filename: 'javascripts/bundle.js'
|
10
|
+
},
|
11
|
+
module: {
|
12
|
+
rules: [
|
13
|
+
{
|
14
|
+
test: /\.(js|jsx|es6)$/,
|
15
|
+
exclude: /(node_modules|bower_components)/,
|
16
|
+
use: {
|
17
|
+
loader: 'babel-loader',
|
18
|
+
options: {
|
19
|
+
presets: ['@babel/preset-env']
|
20
|
+
}
|
21
|
+
}
|
22
|
+
},
|
23
|
+
{
|
24
|
+
test: /\.scss$/,
|
25
|
+
use: ['style-loader', MiniCssExtractPlugin.loader, 'css-loader', 'postcss-loader', 'sass-loader']
|
26
|
+
},
|
27
|
+
{
|
28
|
+
test: /\.(woff2?|svg)$/,
|
29
|
+
loader: 'file-loader?name=fonts/[name].[ext]&useRelativePath=false&publicPath=../'
|
30
|
+
},
|
31
|
+
{
|
32
|
+
test: /\.(ttf|eot|otf)$/,
|
33
|
+
loader: 'file-loader?name=fonts/[name].[ext]&useRelativePath=false&publicPath=../'
|
34
|
+
},
|
35
|
+
{
|
36
|
+
test: /\.(gif|png|jpe?g|svg)$/i,
|
37
|
+
use: [
|
38
|
+
{
|
39
|
+
loader: 'file-loader', options: {
|
40
|
+
outputPath: 'images/',
|
41
|
+
name: '[path][name].[ext]'
|
42
|
+
}
|
43
|
+
},
|
44
|
+
{ loader: 'image-webpack-loader', options: { bypassOnDebug: true } }
|
45
|
+
]
|
46
|
+
}
|
47
|
+
]
|
48
|
+
},
|
49
|
+
plugins: [
|
50
|
+
new Webpack.ProvidePlugin({
|
51
|
+
$: 'jquery',
|
52
|
+
jQuery: 'jquery',
|
53
|
+
'window.jQuery': 'jquery'
|
54
|
+
}),
|
55
|
+
new MiniCssExtractPlugin({ filename: 'stylesheets/bundle.css', allChunks: true })
|
56
|
+
]
|
57
|
+
};
|
@@ -0,0 +1,11 @@
|
|
1
|
+
const merge = require('webpack-merge');
|
2
|
+
const common = require('./webpack.common.js');
|
3
|
+
const LiveReloadPlugin = require('webpack-livereload-plugin');
|
4
|
+
|
5
|
+
module.exports = merge(common, {
|
6
|
+
mode: 'development',
|
7
|
+
devtool: 'inline-source-map',
|
8
|
+
plugins: [
|
9
|
+
new LiveReloadPlugin()
|
10
|
+
]
|
11
|
+
});
|
@@ -0,0 +1,12 @@
|
|
1
|
+
const merge = require('webpack-merge');
|
2
|
+
const common = require('./webpack.config.js');
|
3
|
+
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');
|
4
|
+
|
5
|
+
module.exports = merge(common, {
|
6
|
+
plugins: [
|
7
|
+
new OptimizeCssAssetsPlugin({
|
8
|
+
assetNameRegExp: /\.css$/,
|
9
|
+
cssProcessorOptions: { discardComments: { removeAll: true } }
|
10
|
+
})
|
11
|
+
]
|
12
|
+
});
|
@@ -0,0 +1,36 @@
|
|
1
|
+
{
|
2
|
+
"name": "Wagon assets",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"description": "Assets source for the Wagon site",
|
5
|
+
"main": "index.js",
|
6
|
+
"scripts": {
|
7
|
+
"start": "webpack --config app/assets/webpack.dev.js --progress --colors --watch",
|
8
|
+
"build:dev": "webpack --config app/assets/webpack.dev.js --progress",
|
9
|
+
"build:prod": "NODE_ENV=production webpack --config app/assets/webpack.prod.js --progress --mode production",
|
10
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
11
|
+
},
|
12
|
+
"author": "Wagon",
|
13
|
+
"license": "ISC",
|
14
|
+
"dependencies": {
|
15
|
+
},
|
16
|
+
"devDependencies": {
|
17
|
+
"@babel/core": "^7.4.3",
|
18
|
+
"@babel/plugin-proposal-class-properties": "^7.4.0",
|
19
|
+
"babel-loader": "^8.0.5",
|
20
|
+
"@babel/preset-env": "^7.4.3",
|
21
|
+
"css-loader": "^0.28.11",
|
22
|
+
"file-loader": "^1.1.11",
|
23
|
+
"image-webpack-loader": "^4.3.0",
|
24
|
+
"mini-css-extract-plugin": "^0.4.0",
|
25
|
+
"node-sass": "^4.9.0",
|
26
|
+
"optimize-css-assets-webpack-plugin": "^4.0.2",
|
27
|
+
"postcss-flexbugs-fixes": "^3.3.1",
|
28
|
+
"postcss-loader": "^2.1.5",
|
29
|
+
"sass-loader": "^7.0.1",
|
30
|
+
"style-loader": "^0.21.0",
|
31
|
+
"webpack": "^4.20.2",
|
32
|
+
"webpack-cli": "^3.1.1",
|
33
|
+
"webpack-merge": "^4.1.4",
|
34
|
+
"webpack-livereload-plugin": "^2.2.0"
|
35
|
+
}
|
36
|
+
}
|
data/lib/locomotive/wagon/cli.rb
CHANGED
@@ -164,6 +164,15 @@ module Locomotive
|
|
164
164
|
end
|
165
165
|
end
|
166
166
|
|
167
|
+
desc 'public_form', 'Generate a public form like a contact form'
|
168
|
+
def public_form
|
169
|
+
force_color_if_asked(options)
|
170
|
+
|
171
|
+
if path = check_path!
|
172
|
+
Locomotive::Wagon.generate :public_form, [path], self.options
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
167
176
|
desc 'site_metafields', 'Generate the missing file to describe the site metafields'
|
168
177
|
def site_metafields
|
169
178
|
force_color_if_asked(options)
|
@@ -173,6 +182,15 @@ module Locomotive
|
|
173
182
|
end
|
174
183
|
end
|
175
184
|
|
185
|
+
desc 'webpack', 'Add Webpack to your v3.x Wagon site'
|
186
|
+
def webpack
|
187
|
+
force_color_if_asked(options)
|
188
|
+
|
189
|
+
if path = check_path!
|
190
|
+
Locomotive::Wagon.generate :webpack, [path], self.options
|
191
|
+
end
|
192
|
+
end
|
193
|
+
|
176
194
|
protected
|
177
195
|
|
178
196
|
# Read the YAML config file of a Locomotive site.
|
@@ -289,7 +307,7 @@ module Locomotive
|
|
289
307
|
option :port, aliases: '-p', type: 'string', default: '3333', desc: 'The port of the Thin server'
|
290
308
|
option :env, aliases: '-e', type: 'string', default: 'local', desc: 'The env used to the data of the pages and content entries'
|
291
309
|
option :daemonize, aliases: '-d', type: 'boolean', default: false, desc: 'Run daemonized Thin server in the background'
|
292
|
-
option :
|
310
|
+
option :force_polling, aliases: '-o', type: 'boolean', default: false, desc: 'Force polling of files for reload'
|
293
311
|
option :force, aliases: '-f', type: 'boolean', default: false, desc: 'Stop the current daemonized Thin server if found before starting a new one'
|
294
312
|
option :verbose, aliases: '-v', type: 'boolean', default: false, desc: 'Display the full error stack trace if an error occurs'
|
295
313
|
option :debug, type: 'boolean', default: false, desc: 'Display some debugging information (rack middleware stack)'
|
@@ -407,9 +425,8 @@ module Locomotive
|
|
407
425
|
#{'bundle exec' unless skip_bundle} wagon serve
|
408
426
|
|
409
427
|
# In a another terminal
|
410
|
-
|
411
|
-
|
412
|
-
npm start
|
428
|
+
yarn
|
429
|
+
yarn start
|
413
430
|
|
414
431
|
open http://0.0.0.0:3333
|
415
432
|
BASH
|
@@ -26,7 +26,7 @@ module Locomotive::Wagon
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def persist(decorated_entity)
|
29
|
-
raise SkipPersistingException if only_relationships? && !decorated_entity.with_relationships?
|
29
|
+
raise SkipPersistingException.new if only_relationships? && !decorated_entity.with_relationships?
|
30
30
|
|
31
31
|
api_client.content_types.update(decorated_entity.slug, decorated_entity.to_hash)
|
32
32
|
end
|
@@ -79,11 +79,6 @@ module Locomotive::Wagon
|
|
79
79
|
config.asset_path = File.expand_path(File.join(path, 'public'))
|
80
80
|
config.minify_assets = false
|
81
81
|
|
82
|
-
if (port = options[:live_reload_port]).to_i > 0
|
83
|
-
require 'rack-livereload'
|
84
|
-
config.middleware.insert_before Rack::Lint, Rack::LiveReload, live_reload_port: port
|
85
|
-
end
|
86
|
-
|
87
82
|
config.middleware.insert_before Rack::Lint, Locomotive::Wagon::Middlewares::ErrorPage
|
88
83
|
|
89
84
|
config.services_hook = -> (services) {
|
@@ -121,7 +116,7 @@ module Locomotive::Wagon
|
|
121
116
|
|
122
117
|
cache = Locomotive::Steam::Adapters::Filesystem::SimpleCacheStore.new
|
123
118
|
|
124
|
-
Locomotive::Wagon::Listen.start(path, cache)
|
119
|
+
Locomotive::Wagon::Listen.start(path, cache, options)
|
125
120
|
end
|
126
121
|
|
127
122
|
def server
|
@@ -7,7 +7,7 @@ module Locomotive::Wagon
|
|
7
7
|
def replace_with_content_assets!(text)
|
8
8
|
return text if text.blank?
|
9
9
|
|
10
|
-
text.to_s.gsub(/([^a-zA-Z0-9])(\/samples\/[\/a-zA-Z0-9_-]+\.[a-zA-Z0-9]+)/) do
|
10
|
+
text.to_s.gsub(/([^a-zA-Z0-9]|^)(\/samples\/[\/a-zA-Z0-9_-]+\.[a-zA-Z0-9]+)/) do
|
11
11
|
url = __content_assets_pusher__.persist($2) || $2
|
12
12
|
$1 + url
|
13
13
|
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
require 'thor/group'
|
2
|
+
require 'active_support'
|
3
|
+
require 'active_support/core_ext'
|
4
|
+
|
5
|
+
module Locomotive
|
6
|
+
module Wagon
|
7
|
+
module Generators
|
8
|
+
class PublicForm < Thor::Group
|
9
|
+
|
10
|
+
include Thor::Actions
|
11
|
+
include Locomotive::Wagon::CLI::ForceColor
|
12
|
+
|
13
|
+
argument :target_path # path to the site
|
14
|
+
|
15
|
+
def create_content_type
|
16
|
+
slug = ask("What's the slug of the content type? (ex.: user_messages)")
|
17
|
+
@content_type_slug = slug = slug.underscore
|
18
|
+
|
19
|
+
file_path = File.join(content_types_path, slug)
|
20
|
+
|
21
|
+
template "content_type.yml.tt", "#{file_path}.yml", {
|
22
|
+
name: slug.humanize,
|
23
|
+
slug: slug
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
def create_page_form
|
28
|
+
slug = ask("What's the slug of your page? (ex.: contact-us)")
|
29
|
+
slug = slug.dasherize
|
30
|
+
|
31
|
+
file_path = File.join(pages_path, slug)
|
32
|
+
|
33
|
+
template "page.liquid.tt", "#{file_path}.liquid", {
|
34
|
+
title: slug.humanize,
|
35
|
+
handle: slug.underscore,
|
36
|
+
content_type: @content_type_slug
|
37
|
+
}
|
38
|
+
end
|
39
|
+
|
40
|
+
def add_metafields_schema
|
41
|
+
append_to_file 'config/metafields_schema.yml', <<-YAML
|
42
|
+
|
43
|
+
google:
|
44
|
+
label: Google API Integration
|
45
|
+
fields:
|
46
|
+
recaptcha_site_key:
|
47
|
+
hint: reCAPTCHA - Site key
|
48
|
+
type: string
|
49
|
+
hint: "Visit: https://developers.google.com/recaptcha/intro"
|
50
|
+
recaptcha_secret:
|
51
|
+
hint: reCAPTCHA - Secret key
|
52
|
+
type: string
|
53
|
+
YAML
|
54
|
+
end
|
55
|
+
|
56
|
+
def add_metafields
|
57
|
+
append_to_file 'config/site.yml', <<-YAML
|
58
|
+
|
59
|
+
metafields:
|
60
|
+
google:
|
61
|
+
recaptcha_site_key: "<GOOGLE SITE KEY>"
|
62
|
+
recaptcha_secret: "<GOOGLE SECRET>"
|
63
|
+
YAML
|
64
|
+
end
|
65
|
+
|
66
|
+
def print_next_instructions
|
67
|
+
say <<-TEXT
|
68
|
+
|
69
|
+
Congratulations, your public form has been generated with success!
|
70
|
+
|
71
|
+
In order to complete the Google reCAPTCHA configuration, visit https://developers.google.com/recaptcha/intro.
|
72
|
+
Create a developer account if you don't have one and register your site.
|
73
|
+
|
74
|
+
Once done, copy and paste your Google SITE KEY and Google SECRET KEY in the config/site.yml file.
|
75
|
+
|
76
|
+
TEXT
|
77
|
+
end
|
78
|
+
|
79
|
+
protected
|
80
|
+
|
81
|
+
def content_types_path
|
82
|
+
File.join(target_path, 'app', 'content_types')
|
83
|
+
end
|
84
|
+
|
85
|
+
def pages_path
|
86
|
+
File.join(target_path, 'app', 'views', 'pages')
|
87
|
+
end
|
88
|
+
|
89
|
+
def self.source_root
|
90
|
+
File.join(File.dirname(__FILE__), '..', '..', '..', '..', 'generators', 'public_form')
|
91
|
+
end
|
92
|
+
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'thor/group'
|
2
|
+
require 'active_support'
|
3
|
+
require 'active_support/core_ext'
|
4
|
+
|
5
|
+
module Locomotive
|
6
|
+
module Wagon
|
7
|
+
module Generators
|
8
|
+
class Webpack < Thor::Group
|
9
|
+
|
10
|
+
include Thor::Actions
|
11
|
+
include Locomotive::Wagon::CLI::ForceColor
|
12
|
+
|
13
|
+
argument :target_path # path to the site
|
14
|
+
|
15
|
+
def copy_source
|
16
|
+
directory('webpack', self.target_path, {
|
17
|
+
recursive: true
|
18
|
+
})
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.source_root
|
22
|
+
File.join(File.dirname(__FILE__), '..', '..', '..', '..', 'generators')
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -2,10 +2,13 @@ require 'listen'
|
|
2
2
|
|
3
3
|
module Locomotive::Wagon
|
4
4
|
|
5
|
-
class Listen < Struct.new(:path, :cache)
|
5
|
+
class Listen < Struct.new(:path, :cache, :options)
|
6
6
|
|
7
|
-
def self.start(path, cache)
|
8
|
-
new(path, cache).tap
|
7
|
+
def self.start(path, cache, options)
|
8
|
+
new(path, cache, options).tap do |instance|
|
9
|
+
puts 'Listener polling is on.' if options[:force_polling]
|
10
|
+
instance.apply_definitions
|
11
|
+
end
|
9
12
|
end
|
10
13
|
|
11
14
|
def apply_definitions
|
@@ -31,7 +34,10 @@ module Locomotive::Wagon
|
|
31
34
|
filter = definition[1]
|
32
35
|
_path = File.expand_path(File.join(self.path, definition.first))
|
33
36
|
|
34
|
-
listener = ::Listen.to(_path,
|
37
|
+
listener = ::Listen.to(_path, {
|
38
|
+
only: filter,
|
39
|
+
force_polling: options[:force_polling]
|
40
|
+
}, &reloader)
|
35
41
|
|
36
42
|
# non blocking listener
|
37
43
|
listener.start
|
data/locomotivecms_wagon.gemspec
CHANGED
@@ -28,11 +28,10 @@ Gem::Specification.new do |gem|
|
|
28
28
|
|
29
29
|
gem.add_dependency 'locomotivecms_common', '~> 0.3.1'
|
30
30
|
gem.add_dependency 'locomotivecms_coal', '~> 1.6.0.beta1'
|
31
|
-
gem.add_dependency 'locomotivecms_steam', '~> 1.5.0.
|
31
|
+
gem.add_dependency 'locomotivecms_steam', '~> 1.5.0.rc0'
|
32
32
|
|
33
33
|
gem.add_dependency 'haml', '~> 4.0.7'
|
34
34
|
gem.add_dependency 'listen', '~> 3.1.5'
|
35
|
-
gem.add_dependency 'rack-livereload', '~> 0.3.16'
|
36
35
|
gem.add_dependency 'neatjson', '~> 0.8.4'
|
37
36
|
|
38
37
|
gem.add_dependency 'faker', '~> 1.6'
|
@@ -31,20 +31,20 @@ http_interactions:
|
|
31
31
|
X-Error-Detail:
|
32
32
|
- Invalid email or password.
|
33
33
|
X-Runtime:
|
34
|
-
- '0.
|
34
|
+
- '0.225086'
|
35
35
|
X-Request-Id:
|
36
|
-
-
|
36
|
+
- e0a12c11-333f-412b-819d-f8d8438b890e
|
37
37
|
Date:
|
38
|
-
-
|
38
|
+
- Sun, 07 Apr 2019 15:29:54 GMT
|
39
39
|
X-Powered-By:
|
40
|
-
- Phusion Passenger 6.0.
|
40
|
+
- Phusion Passenger 6.0.2
|
41
41
|
Server:
|
42
|
-
- nginx/1.15.8 + Phusion Passenger 6.0.
|
42
|
+
- nginx/1.15.8 + Phusion Passenger 6.0.2
|
43
43
|
body:
|
44
44
|
encoding: UTF-8
|
45
45
|
string: '{"message":"Invalid email or password."}'
|
46
46
|
http_version:
|
47
|
-
recorded_at:
|
47
|
+
recorded_at: Sun, 07 Apr 2019 15:29:54 GMT
|
48
48
|
- request:
|
49
49
|
method: post
|
50
50
|
uri: http://localhost:3000/locomotive/api/v3/my_account.json
|
@@ -74,22 +74,22 @@ http_interactions:
|
|
74
74
|
Cache-Control:
|
75
75
|
- max-age=0, private, must-revalidate
|
76
76
|
ETag:
|
77
|
-
- W/"
|
77
|
+
- W/"473276b9204ed33a143e3dc6ba87b3bb"
|
78
78
|
X-Runtime:
|
79
|
-
- '0.
|
79
|
+
- '0.087953'
|
80
80
|
X-Request-Id:
|
81
|
-
-
|
81
|
+
- 5ed7a039-65a5-4eaf-b254-253fcf4cf301
|
82
82
|
Date:
|
83
|
-
-
|
83
|
+
- Sun, 07 Apr 2019 15:29:54 GMT
|
84
84
|
X-Powered-By:
|
85
|
-
- Phusion Passenger 6.0.
|
85
|
+
- Phusion Passenger 6.0.2
|
86
86
|
Server:
|
87
|
-
- nginx/1.15.8 + Phusion Passenger 6.0.
|
87
|
+
- nginx/1.15.8 + Phusion Passenger 6.0.2
|
88
88
|
body:
|
89
89
|
encoding: UTF-8
|
90
|
-
string: '{"_id":"
|
90
|
+
string: '{"_id":"5caa1772a9533007beaa4a80","created_at":"2019-04-07T15:29:54Z","updated_at":"2019-04-07T15:29:54Z","name":"John","email":"john@doe.net","locale":"en","api_key":"33ce5fb2a74cc1a7cc32d3fadf64e51409d36bb7","super_admin":false,"local_admin":false}'
|
91
91
|
http_version:
|
92
|
-
recorded_at:
|
92
|
+
recorded_at: Sun, 07 Apr 2019 15:29:54 GMT
|
93
93
|
- request:
|
94
94
|
method: post
|
95
95
|
uri: http://localhost:3000/locomotive/api/v3/tokens.json
|
@@ -119,25 +119,25 @@ http_interactions:
|
|
119
119
|
Cache-Control:
|
120
120
|
- max-age=0, private, must-revalidate
|
121
121
|
ETag:
|
122
|
-
- W/"
|
122
|
+
- W/"fc7c4c3d9d16be8d9545dce1c18b248a"
|
123
123
|
X-Runtime:
|
124
|
-
- '0.
|
124
|
+
- '0.008493'
|
125
125
|
X-Request-Id:
|
126
|
-
-
|
126
|
+
- 52477d7a-87f3-49c1-b79d-6ada23ce6a88
|
127
127
|
Date:
|
128
|
-
-
|
128
|
+
- Sun, 07 Apr 2019 15:29:54 GMT
|
129
129
|
X-Powered-By:
|
130
|
-
- Phusion Passenger 6.0.
|
130
|
+
- Phusion Passenger 6.0.2
|
131
131
|
Server:
|
132
|
-
- nginx/1.15.8 + Phusion Passenger 6.0.
|
132
|
+
- nginx/1.15.8 + Phusion Passenger 6.0.2
|
133
133
|
body:
|
134
134
|
encoding: UTF-8
|
135
|
-
string: '{"token":"
|
135
|
+
string: '{"token":"RzLvRkNVUyRna6okCxP9"}'
|
136
136
|
http_version:
|
137
|
-
recorded_at:
|
137
|
+
recorded_at: Sun, 07 Apr 2019 15:29:54 GMT
|
138
138
|
- request:
|
139
139
|
method: get
|
140
|
-
uri: http://localhost:3000/locomotive/api/v3/my_account.json?auth_token=
|
140
|
+
uri: http://localhost:3000/locomotive/api/v3/my_account.json?auth_token=RzLvRkNVUyRna6okCxP9
|
141
141
|
body:
|
142
142
|
encoding: US-ASCII
|
143
143
|
string: ''
|
@@ -149,7 +149,7 @@ http_interactions:
|
|
149
149
|
X-Locomotive-Account-Email:
|
150
150
|
- admin@locomotivecms.com
|
151
151
|
X-Locomotive-Account-Token:
|
152
|
-
-
|
152
|
+
- RzLvRkNVUyRna6okCxP9
|
153
153
|
response:
|
154
154
|
status:
|
155
155
|
code: 200
|
@@ -166,27 +166,27 @@ http_interactions:
|
|
166
166
|
Cache-Control:
|
167
167
|
- max-age=0, private, must-revalidate
|
168
168
|
ETag:
|
169
|
-
- W/"
|
169
|
+
- W/"9f0bb3987772edd70b54bf2882c1f59a"
|
170
170
|
X-Runtime:
|
171
|
-
- '0.
|
171
|
+
- '0.021974'
|
172
172
|
X-Request-Id:
|
173
|
-
-
|
173
|
+
- 99083fe8-48c6-4250-b3b8-3a9f30654ea9
|
174
174
|
Date:
|
175
|
-
-
|
175
|
+
- Sun, 07 Apr 2019 15:29:54 GMT
|
176
176
|
X-Powered-By:
|
177
|
-
- Phusion Passenger 6.0.
|
177
|
+
- Phusion Passenger 6.0.2
|
178
178
|
Server:
|
179
|
-
- nginx/1.15.8 + Phusion Passenger 6.0.
|
179
|
+
- nginx/1.15.8 + Phusion Passenger 6.0.2
|
180
180
|
Content-Encoding:
|
181
181
|
- gzip
|
182
182
|
body:
|
183
183
|
encoding: UTF-8
|
184
|
-
string: '{"_id":"
|
184
|
+
string: '{"_id":"5caa173da95330069274f68c","created_at":"2019-04-07T15:29:01Z","updated_at":"2019-04-07T15:29:01Z","name":"Admin","email":"admin@locomotivecms.com","locale":"en","api_key":"d49cd50f6f0d2b163f48fc73cb249f0244c37074","super_admin":false,"local_admin":true}'
|
185
185
|
http_version:
|
186
|
-
recorded_at:
|
186
|
+
recorded_at: Sun, 07 Apr 2019 15:29:54 GMT
|
187
187
|
- request:
|
188
188
|
method: get
|
189
|
-
uri: http://localhost:3000/locomotive/api/v3/my_account.json?auth_token=
|
189
|
+
uri: http://localhost:3000/locomotive/api/v3/my_account.json?auth_token=RzLvRkNVUyRna6okCxP9
|
190
190
|
body:
|
191
191
|
encoding: US-ASCII
|
192
192
|
string: ''
|
@@ -198,7 +198,7 @@ http_interactions:
|
|
198
198
|
X-Locomotive-Account-Email:
|
199
199
|
- admin@locomotivecms.com
|
200
200
|
X-Locomotive-Account-Token:
|
201
|
-
-
|
201
|
+
- RzLvRkNVUyRna6okCxP9
|
202
202
|
response:
|
203
203
|
status:
|
204
204
|
code: 200
|
@@ -215,22 +215,22 @@ http_interactions:
|
|
215
215
|
Cache-Control:
|
216
216
|
- max-age=0, private, must-revalidate
|
217
217
|
ETag:
|
218
|
-
- W/"
|
218
|
+
- W/"9f0bb3987772edd70b54bf2882c1f59a"
|
219
219
|
X-Runtime:
|
220
|
-
- '0.
|
220
|
+
- '0.013451'
|
221
221
|
X-Request-Id:
|
222
|
-
-
|
222
|
+
- 79920346-1e4a-4e94-bf06-77e16afc02ef
|
223
223
|
Date:
|
224
|
-
-
|
224
|
+
- Sun, 07 Apr 2019 15:29:54 GMT
|
225
225
|
X-Powered-By:
|
226
|
-
- Phusion Passenger 6.0.
|
226
|
+
- Phusion Passenger 6.0.2
|
227
227
|
Server:
|
228
|
-
- nginx/1.15.8 + Phusion Passenger 6.0.
|
228
|
+
- nginx/1.15.8 + Phusion Passenger 6.0.2
|
229
229
|
Content-Encoding:
|
230
230
|
- gzip
|
231
231
|
body:
|
232
232
|
encoding: UTF-8
|
233
|
-
string: '{"_id":"
|
233
|
+
string: '{"_id":"5caa173da95330069274f68c","created_at":"2019-04-07T15:29:01Z","updated_at":"2019-04-07T15:29:01Z","name":"Admin","email":"admin@locomotivecms.com","locale":"en","api_key":"d49cd50f6f0d2b163f48fc73cb249f0244c37074","super_admin":false,"local_admin":true}'
|
234
234
|
http_version:
|
235
|
-
recorded_at:
|
235
|
+
recorded_at: Sun, 07 Apr 2019 15:29:54 GMT
|
236
236
|
recorded_with: VCR 4.0.0
|