sassc-embedded 1.5.2 → 1.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/sassc/embedded/version.rb +1 -1
- data/lib/sassc/embedded.rb +25 -9
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 695381cf5ae96903ffaf015c6e406eab12c38312008ee5dce88e2f1658d6da35
|
4
|
+
data.tar.gz: c5c981214af6123d9c17ff3dc4b6099bc78864419df9c29848ce146ebbfeca2d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a346cd91ea29ae9618460eee15592b1316948637bae1054a343521f9a0194b290c972d37481fd91b068d47bf83d38a033efb2f9e20f3713fcbc7ad339110cbb
|
7
|
+
data.tar.gz: 36d53934e2f475d3c62a42a5f7530c32668d42d4ba3a09a84eed6177bb9256d4dc7383adf64d80b6863590bffbfc676c6cec6b792b24523cbce7b516d887ff5d
|
data/lib/sassc/embedded.rb
CHANGED
@@ -204,7 +204,7 @@ module SassC
|
|
204
204
|
class << self
|
205
205
|
def resolve_path(path, from_import)
|
206
206
|
ext = File.extname(path)
|
207
|
-
|
207
|
+
if ['.sass', '.scss', '.css'].include?(ext)
|
208
208
|
if from_import
|
209
209
|
result = exactly_one(try_path("#{without_ext(path)}.import#{ext}"))
|
210
210
|
return result unless result.nil?
|
@@ -212,6 +212,15 @@ module SassC
|
|
212
212
|
return exactly_one(try_path(path))
|
213
213
|
end
|
214
214
|
|
215
|
+
unless ext.empty?
|
216
|
+
if from_import
|
217
|
+
result = exactly_one(try_path("#{without_ext(path)}.import#{ext}"))
|
218
|
+
return result unless result.nil?
|
219
|
+
end
|
220
|
+
result = exactly_one(try_path(path))
|
221
|
+
return result unless result.nil?
|
222
|
+
end
|
223
|
+
|
215
224
|
if from_import
|
216
225
|
result = exactly_one(try_path_with_ext("#{path}.import"))
|
217
226
|
return result unless result.nil?
|
@@ -286,6 +295,8 @@ module SassC
|
|
286
295
|
def initialize(importer)
|
287
296
|
@importer = importer
|
288
297
|
@importer_results = {}
|
298
|
+
@load_id = 0
|
299
|
+
@load_urls = {}
|
289
300
|
@parent_urls = [URL.path_to_file_url(File.absolute_path(@importer.options[:filename] || 'stdin'))]
|
290
301
|
end
|
291
302
|
|
@@ -293,12 +304,14 @@ module SassC
|
|
293
304
|
return url if url.start_with?(Protocol::IMPORT, Protocol::LOADED)
|
294
305
|
|
295
306
|
if url.start_with?(Protocol::LOAD)
|
296
|
-
url = url.delete_prefix(Protocol::LOAD)
|
307
|
+
url = @load_urls.delete(url.delete_prefix(Protocol::LOAD))
|
297
308
|
return url if @importer_results.key?(url)
|
298
309
|
|
299
310
|
path = URL.parse(url).route_from(@parent_urls.last).to_s
|
300
311
|
resolved = resolve_path(path, URL.file_url_to_path(@parent_urls.last), from_import)
|
301
|
-
return
|
312
|
+
return URL.path_to_file_url(resolved) unless resolved.nil?
|
313
|
+
|
314
|
+
return
|
302
315
|
end
|
303
316
|
|
304
317
|
return unless url.start_with?(Protocol::FILE)
|
@@ -371,25 +384,28 @@ module SassC
|
|
371
384
|
def imports_to_native(imports)
|
372
385
|
{
|
373
386
|
contents: imports.flat_map do |import|
|
374
|
-
|
387
|
+
load_id = @load_id
|
388
|
+
@load_id = load_id.next
|
389
|
+
load_url = URL.path_to_file_url(import.path)
|
390
|
+
@load_urls[load_id.to_s] = load_url
|
375
391
|
if import.source
|
376
|
-
@importer_results[
|
392
|
+
@importer_results[load_url] = if import.source.is_a?(Hash)
|
377
393
|
{
|
378
394
|
contents: import.source[:contents],
|
379
395
|
syntax: import.source[:syntax],
|
380
|
-
source_map_url:
|
396
|
+
source_map_url: load_url
|
381
397
|
}
|
382
398
|
else
|
383
399
|
{
|
384
400
|
contents: import.source,
|
385
401
|
syntax: syntax(import.path),
|
386
|
-
source_map_url:
|
402
|
+
source_map_url: load_url
|
387
403
|
}
|
388
404
|
end
|
389
405
|
end
|
390
406
|
[
|
391
|
-
"@import
|
392
|
-
"@import
|
407
|
+
"@import \"#{Protocol::LOAD}#{load_id}\";",
|
408
|
+
"@import \"#{Protocol::LOADED}#{load_id}\";"
|
393
409
|
]
|
394
410
|
end.join("\n"),
|
395
411
|
syntax: :scss
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sassc-embedded
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- なつき
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-04-
|
11
|
+
date: 2022-04-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sassc
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.19.0
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: 0.19.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: rubocop-performance
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -138,8 +138,8 @@ homepage: https://github.com/ntkme/sassc-embedded-polyfill-ruby
|
|
138
138
|
licenses:
|
139
139
|
- MIT
|
140
140
|
metadata:
|
141
|
-
documentation_uri: https://rubydoc.info/gems/sassc-embedded/1.5.
|
142
|
-
source_code_uri: https://github.com/ntkme/sassc-embedded-polyfill-ruby/tree/v1.5.
|
141
|
+
documentation_uri: https://rubydoc.info/gems/sassc-embedded/1.5.5
|
142
|
+
source_code_uri: https://github.com/ntkme/sassc-embedded-polyfill-ruby/tree/v1.5.5
|
143
143
|
funding_uri: https://github.com/sponsors/ntkme
|
144
144
|
post_install_message:
|
145
145
|
rdoc_options: []
|