maglove 2.0.4 → 2.0.7
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.
- checksums.yaml +4 -4
- data/{vendor → assets}/autoprefixer.js +0 -0
- data/{data/maglove → assets}/export.haml +0 -0
- data/{data/maglove → assets}/hpub/index.css +0 -0
- data/{data/maglove → assets}/hpub/index.haml +0 -0
- data/{data/maglove → assets}/hpub/page.haml +0 -0
- data/{data/maglove → assets}/index.haml +0 -0
- data/{data/maglove → assets}/maglove.css +0 -0
- data/{data/maglove → assets}/maglove.haml +0 -0
- data/{data/maglove → assets}/maglove.js +1 -1
- data/{data/maglove → assets}/scaffold/base/base.coffee +0 -0
- data/{data/maglove → assets}/scaffold/base/base.less +0 -0
- data/{data/maglove → assets}/scaffold/base/images/base/loading-bars.svg +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/animations.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/blockquotes.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/buttons.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/code.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/forms.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/global.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/grid-minimal.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/grid-non-responsive.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/grid.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/helpers.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/images.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/lists.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/mixins.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/print.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/resets.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/base/tables.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/core/alignments.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/core/cleanup.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/core/editor.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/core/typography.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/flex-video.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/animated.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/bordered-pulled.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/core.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/fixed-width.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/font-awesome.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/icons.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/larger.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/list.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/mixins.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/rotated-flipped.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/stacked.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/font-awesome/variables.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/image-loader.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/vendor/magnific-popup.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/banner.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/button.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/callout.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/columns.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/container.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/feedback.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/heading.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/horizontal_rule.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/image.less +0 -0
- data/{data/maglove → assets}/scaffold/base/less/widgets/paragraph.less +0 -0
- data/{data/maglove → assets}/scaffold/base/variables.less +0 -0
- data/{data/maglove → assets}/scaffold/base/vendor/jquery.js +0 -0
- data/{data/maglove → assets}/scaffold/theme/images/logo.png +0 -0
- data/{data/maglove → assets}/scaffold/theme/images/pattern/symphony.png +0 -0
- data/{data/maglove → assets}/scaffold/theme/less/base/variables.less +0 -0
- data/{data/maglove → assets}/scaffold/theme/templates/article-01.haml +3 -3
- data/{data/maglove → assets}/scaffold/theme/templates/cover.haml +0 -0
- data/{data/maglove → assets}/scaffold/theme/templates/toc.haml +1 -1
- data/{data/maglove → assets}/scaffold/theme/templates/toc.yml +0 -0
- data/{data/maglove → assets}/scaffold/theme/theme.coffee +0 -0
- data/{data/maglove → assets}/scaffold/theme/theme.less +0 -0
- data/{data/maglove → assets}/thumbnail.haml +0 -0
- data/{data/maglove → assets}/thumbnail.js +0 -0
- data/bin/maglove +0 -6
- data/lib/magloft/api_caller.rb +12 -12
- data/lib/magloft/remote_resource.rb +17 -17
- data/lib/maglove.rb +19 -19
- data/lib/maglove/asset/theme.rb +7 -6
- data/lib/maglove/commands/assets.rb +61 -44
- data/lib/maglove/commands/base.rb +5 -1
- data/lib/maglove/commands/fonts.rb +9 -6
- data/lib/maglove/commands/main.rb +3 -1
- data/lib/maglove/commands/theme.rb +63 -58
- data/lib/maglove/middleware/live_reload.rb +19 -11
- data/lib/maglove/server.rb +18 -8
- data/lib/maglove/theme.rb +27 -0
- data/lib/maglove/tilt/coffee_template.rb +1 -1
- data/lib/maglove/tilt/haml_template.rb +2 -3
- data/lib/maglove/tilt/js_template.rb +1 -2
- data/lib/maglove/tilt/scss_template.rb +3 -9
- data/lib/maglove/tilt/yaml_template.rb +2 -3
- data/lib/maglove/version.rb +1 -1
- data/lib/powersnap.rb +1 -3
- metadata +164 -155
- data/.gitignore +0 -9
- data/.rubocop.yml +0 -157
- data/Gemfile +0 -3
- data/Gemfile.lock +0 -206
- data/README.md +0 -26
- data/lib/block_resolver.rb +0 -6
- data/lib/maglove/application.rb +0 -58
- data/lib/maglove/phantom_script.rb +0 -44
- data/lib/maglove/workspace.rb +0 -41
- data/lib/workspace.rb +0 -11
- data/lib/workspace/workspace_dir.rb +0 -98
- data/lib/workspace/workspace_dir/archive.rb +0 -18
- data/lib/workspace/workspace_file.rb +0 -127
- data/lib/workspace/workspace_file/archive.rb +0 -45
- data/lib/workspace/workspace_file/media.rb +0 -19
- data/lib/workspace/workspace_file/net.rb +0 -18
- data/lib/workspace/workspace_file/parse.rb +0 -21
- data/maglove.gemspec +0 -45
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7f7896a05f75ab83d370e8ee2e04751f7a534079
|
|
4
|
+
data.tar.gz: bd7fab9800b1a8da0e8e31bddc167d3bfe447b5f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8813bda699c274fb6bcdd43752f4f2633ebced987cc6070f051aeeba190ecb09b19d11702364dc699ebfdefa61217d89d8ec6c5ce88e1463d10719d3b5825c22
|
|
7
|
+
data.tar.gz: 11e012d299e08125c3f4c3144463cd3fb5a41b02fafeb42527f5a71aad3cfd47901a6ef8b1b3757440f6b0070b6f5b70271a3c7fb5165a3119c8bbfe1bb4f246
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -37,7 +37,7 @@ class MagLove {
|
|
|
37
37
|
init(message) {
|
|
38
38
|
console.log("MagLove Initialized")
|
|
39
39
|
this.templates = message.templates
|
|
40
|
-
this.send("watch")
|
|
40
|
+
this.send("watch", { template: this.template })
|
|
41
41
|
if(window.ThemeApi) {
|
|
42
42
|
window.ThemeApi.init({deviceId: 'AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE', appId: 'com.magloft.maglove', apiHost: 'www.magloft.com'})
|
|
43
43
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
- drop_container
|
|
3
3
|
|
|
4
4
|
-# ROOT CONTAINER
|
|
5
|
-
- container_widget animate: "scale-background", min_height: "calc(100vh - 92px)", parallax_effect: "fixed", image_source:
|
|
5
|
+
- container_widget animate: "scale-background", min_height: "calc(100vh - 92px)", parallax_effect: "fixed", image_source: var(:background_url, asset("images/sample/skyscraper.jpg")), image_size: "cover", background_color: "overlay", image_position: "center center" do
|
|
6
6
|
|
|
7
7
|
-# TOP PAGE CONTAINER
|
|
8
8
|
- container_widget min_height: "calc(100vh - 92px)" do
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
-# MAIN HEADING
|
|
14
14
|
- heading_widget align: "left", style: "feature" do
|
|
15
15
|
- style :bold, color: "#FFFFFF" do
|
|
16
|
-
=
|
|
16
|
+
= var(:title, "Article Title")
|
|
17
17
|
|
|
18
18
|
- horizontal_rule_widget style: "flourish-01", color: "light"
|
|
19
19
|
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
- container_widget parallax_effect: "up", image_source: asset("images/base/bg/stripes.jpg"), margin_left: "20px", margin_right: "20px", margin_top: "20px", padding_top: "2em", padding_bottom: "2em", padding_left: "2em", padding_right: "2em" do
|
|
31
31
|
- heading_widget type: "h2", align: "center", style: "feature" do
|
|
32
32
|
- style :bold, color: "#FFFFFF" do
|
|
33
|
-
=
|
|
33
|
+
= var(:title, "WHY I DESIGN?")
|
|
34
34
|
|
|
35
35
|
-# BODY CONTAINER
|
|
36
36
|
- container_widget padding_top: "2em", padding_left: "0em", padding_right: "0em" do
|
|
File without changes
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
- drop_container
|
|
3
3
|
|
|
4
4
|
-# ROOT CONTAINER
|
|
5
|
-
- container_widget min_height: "100vh", parallax_effect: "fixed", image_source:
|
|
5
|
+
- container_widget min_height: "100vh", parallax_effect: "fixed", image_source: var(:background_url, asset("images/bg/toc.jpg")), image_size: "cover", image_position: "top center", padding_left: "20px", padding_right: "20px" do
|
|
6
6
|
|
|
7
7
|
-# FIXED CONTAINER
|
|
8
8
|
- container_widget animate: "fade-in-up scroll-animate", padding_top: "2em", padding_left: "20px", padding_right: "20px" do
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
data/bin/maglove
CHANGED
|
@@ -4,14 +4,8 @@ require "thor"
|
|
|
4
4
|
require "ext/thor/option"
|
|
5
5
|
require 'coffee_script'
|
|
6
6
|
require "active_support/all"
|
|
7
|
-
require "hamloft"
|
|
8
|
-
require "workspace"
|
|
9
7
|
require "typhoeus"
|
|
10
8
|
require "maglove"
|
|
11
|
-
require "action_dispatch/http/mime_type"
|
|
12
|
-
|
|
13
|
-
# require local widgets
|
|
14
|
-
Dir["widgets/*.rb"].each { |path| require File.join(Dir.pwd, path) }
|
|
15
9
|
|
|
16
10
|
# allow colons
|
|
17
11
|
ARGV.unshift(*ARGV.shift.split(":")) if ARGV.count > 0 and ARGV[0].include?(":")
|
data/lib/magloft/api_caller.rb
CHANGED
|
@@ -43,33 +43,33 @@ module MagLoft
|
|
|
43
43
|
end
|
|
44
44
|
|
|
45
45
|
short_circuits.add(
|
|
46
|
-
if: ->
|
|
47
|
-
do: ->
|
|
46
|
+
if: ->(response) { Dialers::Status.new(response.status).server_error? },
|
|
47
|
+
do: ->(response) { fail Dialers::ServerError, response }
|
|
48
48
|
)
|
|
49
49
|
|
|
50
50
|
short_circuits.add(
|
|
51
|
-
if: ->
|
|
52
|
-
do: ->
|
|
51
|
+
if: ->(response) { Dialers::Status.new(response.status).is?(404) },
|
|
52
|
+
do: ->(response) { fail Dialers::NotFoundError, response }
|
|
53
53
|
)
|
|
54
54
|
|
|
55
55
|
short_circuits.add(
|
|
56
|
-
if: ->
|
|
57
|
-
do: ->
|
|
56
|
+
if: ->(response) { Dialers::Status.new(response.status).is?(409) },
|
|
57
|
+
do: ->(response) { fail ConflictError, response }
|
|
58
58
|
)
|
|
59
59
|
|
|
60
60
|
short_circuits.add(
|
|
61
|
-
if: ->
|
|
62
|
-
do: ->
|
|
61
|
+
if: ->(response) { Dialers::Status.new(response.status).is?(400) },
|
|
62
|
+
do: ->(response) { fail ValidationError, response }
|
|
63
63
|
)
|
|
64
64
|
|
|
65
65
|
short_circuits.add(
|
|
66
|
-
if: ->
|
|
67
|
-
do: ->
|
|
66
|
+
if: ->(response) { Dialers::Status.new(response.status).is?(422) },
|
|
67
|
+
do: ->(response) { fail ValidationError, response }
|
|
68
68
|
)
|
|
69
69
|
|
|
70
70
|
short_circuits.add(
|
|
71
|
-
if: ->
|
|
72
|
-
do: ->
|
|
71
|
+
if: ->(response) { Dialers::Status.new(response.status).is?(401) },
|
|
72
|
+
do: ->(response) { fail UnauthorizedError, response }
|
|
73
73
|
)
|
|
74
74
|
|
|
75
75
|
class ConflictError < Dialers::ErrorWithResponse
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
module MagLoft
|
|
2
2
|
class RemoteResource
|
|
3
|
-
attr_accessor :
|
|
3
|
+
attr_accessor :id
|
|
4
4
|
attr_reader :destroyed
|
|
5
5
|
|
|
6
6
|
def initialize(attributes = {})
|
|
@@ -9,33 +9,33 @@ module MagLoft
|
|
|
9
9
|
end
|
|
10
10
|
|
|
11
11
|
def changed?
|
|
12
|
-
|
|
12
|
+
changed_data.keys.count > 0
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def destroyed?
|
|
16
|
-
|
|
16
|
+
destroyed == true
|
|
17
17
|
end
|
|
18
18
|
|
|
19
19
|
def save
|
|
20
20
|
return false if destroyed? or !changed?
|
|
21
|
-
if
|
|
22
|
-
if
|
|
23
|
-
transformable = Api.client.api_caller.post(self.class.endpoint,
|
|
21
|
+
if changed_data.keys.count > 0
|
|
22
|
+
if id.nil?
|
|
23
|
+
transformable = Api.client.api_caller.post(self.class.endpoint, changed_data)
|
|
24
24
|
else
|
|
25
|
-
transformable = Api.client.api_caller.put("#{self.class.endpoint}/#{
|
|
25
|
+
transformable = Api.client.api_caller.put("#{self.class.endpoint}/#{id}", changed_data.except(:id))
|
|
26
26
|
end
|
|
27
27
|
transformable.transform_to_existing(self)
|
|
28
|
-
|
|
28
|
+
clear_changed_data!
|
|
29
29
|
end
|
|
30
30
|
self
|
|
31
31
|
end
|
|
32
32
|
|
|
33
33
|
def destroy
|
|
34
|
-
return false if
|
|
35
|
-
transformable = Api.client.api_caller.delete("#{self.class.endpoint}/#{
|
|
34
|
+
return false if id.nil? or destroyed?
|
|
35
|
+
transformable = Api.client.api_caller.delete("#{self.class.endpoint}/#{id}")
|
|
36
36
|
transformable.transform_to_existing(self)
|
|
37
37
|
@destroyed = true
|
|
38
|
-
|
|
38
|
+
clear_changed_data!
|
|
39
39
|
self
|
|
40
40
|
end
|
|
41
41
|
|
|
@@ -44,12 +44,12 @@ module MagLoft
|
|
|
44
44
|
end
|
|
45
45
|
|
|
46
46
|
def clear_changed_data!
|
|
47
|
-
|
|
47
|
+
@changed_data = {}
|
|
48
48
|
self
|
|
49
49
|
end
|
|
50
50
|
|
|
51
51
|
def update_data(key, value)
|
|
52
|
-
if
|
|
52
|
+
if send(key) != value
|
|
53
53
|
instance_variable_set("@#{key}", value)
|
|
54
54
|
changed_data[key] = value
|
|
55
55
|
end
|
|
@@ -63,8 +63,8 @@ module MagLoft
|
|
|
63
63
|
def remote_attribute(*args)
|
|
64
64
|
args.each do |arg|
|
|
65
65
|
remote_attributes.push(arg)
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
class_eval("attr_accessor :#{arg}", __FILE__, __LINE__)
|
|
67
|
+
class_eval("def #{arg}=(val);update_data(:#{arg}, val);end", __FILE__, __LINE__)
|
|
68
68
|
end
|
|
69
69
|
end
|
|
70
70
|
|
|
@@ -93,7 +93,7 @@ module MagLoft
|
|
|
93
93
|
end
|
|
94
94
|
|
|
95
95
|
def create(attributes = {})
|
|
96
|
-
entity =
|
|
96
|
+
entity = new(attributes)
|
|
97
97
|
entity.save
|
|
98
98
|
entity
|
|
99
99
|
end
|
|
@@ -104,7 +104,7 @@ module MagLoft
|
|
|
104
104
|
if remote_attributes.include?(attribute)
|
|
105
105
|
params = {}
|
|
106
106
|
params[attribute] = args.first
|
|
107
|
-
return
|
|
107
|
+
return find_one(params)
|
|
108
108
|
end
|
|
109
109
|
end
|
|
110
110
|
super
|
data/lib/maglove.rb
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
require 'magloft'
|
|
2
|
-
require "
|
|
3
|
-
require "
|
|
2
|
+
require "workspace"
|
|
3
|
+
require "workspace-parse"
|
|
4
|
+
require "maglove/theme"
|
|
5
|
+
require "maglove/engine"
|
|
4
6
|
require "maglove/commands/base"
|
|
5
7
|
require "maglove/commands/fonts"
|
|
6
8
|
require "maglove/commands/theme"
|
|
7
9
|
require "maglove/commands/assets"
|
|
8
10
|
require "maglove/commands/main"
|
|
9
|
-
require "block_resolver"
|
|
10
11
|
|
|
11
12
|
module Maglove
|
|
12
|
-
def self.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
else
|
|
21
|
-
@theme_config[theme][key.to_s]
|
|
13
|
+
def self.theme
|
|
14
|
+
Theme.instance
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def self.assets_dir
|
|
18
|
+
@assets_dir ||= begin
|
|
19
|
+
spec = Gem::Specification.find_by_name("maglove")
|
|
20
|
+
Workspace::Dir.new(spec.gem_dir).dir("assets")
|
|
22
21
|
end
|
|
23
22
|
end
|
|
24
23
|
|
|
25
24
|
def self.logger
|
|
26
25
|
if @logger.nil?
|
|
27
|
-
Logging.color_scheme("bright",
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
Logging.color_scheme("bright", {
|
|
27
|
+
levels: { debug: :blue, info: :green, warn: :yellow, error: :red, fatal: [:white, :on_red] },
|
|
28
|
+
date: :blue,
|
|
29
|
+
mdc: :cyan,
|
|
30
|
+
logger: :cyan,
|
|
31
|
+
message: :black
|
|
32
|
+
})
|
|
33
33
|
Logging.appenders.stdout("stdout", layout: Logging.layouts.pattern(pattern: '[%d] %-5l %-18X{full_command} %x %m\n', color_scheme: 'bright'))
|
|
34
34
|
@logger = Logging::Logger.new(self.class.name)
|
|
35
35
|
@logger.level = :debug
|
data/lib/maglove/asset/theme.rb
CHANGED
|
@@ -11,7 +11,6 @@ require "maglove/tilt/yaml_template"
|
|
|
11
11
|
module MagLove
|
|
12
12
|
module Asset
|
|
13
13
|
class Theme
|
|
14
|
-
include Workspace
|
|
15
14
|
include MagLove::Helper::LogHelper
|
|
16
15
|
attr_reader :mtime, :path, :valid, :contents, :options
|
|
17
16
|
|
|
@@ -20,22 +19,24 @@ module MagLove
|
|
|
20
19
|
"less" => "css",
|
|
21
20
|
"scss" => "css",
|
|
22
21
|
"coffee" => "js",
|
|
22
|
+
"js" => "js",
|
|
23
23
|
"yml" => "json"
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
def initialize(path, options = {})
|
|
27
27
|
@path = path
|
|
28
28
|
@options = options
|
|
29
|
+
@options[:theme] = Maglove.theme.identifier
|
|
29
30
|
@mtime = File.mtime(absolute_path)
|
|
30
31
|
begin
|
|
31
32
|
if ::Tilt[input_type]
|
|
32
33
|
template = ::Tilt.new(absolute_path)
|
|
33
|
-
@contents = template.render(Object.new, @options.merge(base_path:
|
|
34
|
+
@contents = template.render(Object.new, @options.merge(base_path: "src/base/#{Maglove.theme.base_version}/"))
|
|
34
35
|
else
|
|
35
36
|
@contents = File.read(absolute_path)
|
|
36
37
|
end
|
|
37
|
-
rescue
|
|
38
|
-
error("▸ #{e.message}")
|
|
38
|
+
rescue Maglove::Engine::RenderError => e
|
|
39
|
+
error("▸ HAML error: #{e.message}")
|
|
39
40
|
end
|
|
40
41
|
end
|
|
41
42
|
|
|
@@ -68,9 +69,9 @@ module MagLove
|
|
|
68
69
|
|
|
69
70
|
def absolute_path
|
|
70
71
|
if @options[:base]
|
|
71
|
-
|
|
72
|
+
Maglove.theme.base_dir.file(path).absolute_path
|
|
72
73
|
else
|
|
73
|
-
|
|
74
|
+
Maglove.theme.src_dir.file(path).absolute_path
|
|
74
75
|
end
|
|
75
76
|
end
|
|
76
77
|
|