forked from OpenNeo/impress
Remove SwfAsset#html5_*_url
in favor of SwfAsset#urls
The alt styles controller is the one place we use this right now, but I'm planning to generalize this to loading appearances during item search, too! I also add more `only` fields to the alt styles `as_json` call, because idk it feels like good practice to both 1) say what we need in this endpoint, rather than rely on default behavior upstream, and 2) to avoid leaking fields we didn't realize were on there. (And also to preserve bandwidth, too!)
This commit is contained in:
parent
cd095eefcb
commit
c5cd1f2f3d
3 changed files with 9 additions and 15 deletions
|
@ -16,10 +16,13 @@ class AltStylesController < ApplicationController
|
||||||
format.html { render }
|
format.html { render }
|
||||||
format.json {
|
format.json {
|
||||||
render json: @alt_styles.includes(swf_assets: [:zone]).as_json(
|
render json: @alt_styles.includes(swf_assets: [:zone]).as_json(
|
||||||
|
only: [:id, :species_id, :color_id, :body_id, :series_name,
|
||||||
|
:adjective_name, :thumbnail_url],
|
||||||
include: {
|
include: {
|
||||||
swf_assets: {
|
swf_assets: {
|
||||||
|
only: [:id, :body_id],
|
||||||
include: [:zone],
|
include: [:zone],
|
||||||
methods: [:html5_image_url, :html5_svg_url],
|
methods: [:urls],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: [:series_name, :adjective_name, :thumbnail_url],
|
methods: [:series_name, :adjective_name, :thumbnail_url],
|
||||||
|
|
|
@ -72,11 +72,9 @@ function normalizeSwfAssetToLayer(swfAssetData) {
|
||||||
bodyId: swfAssetData.body_id,
|
bodyId: swfAssetData.body_id,
|
||||||
knownGlitches: [], // TODO
|
knownGlitches: [], // TODO
|
||||||
|
|
||||||
// HACK: We're just simplifying this adapter, but it would be better to
|
svgUrl: swfAssetData.urls.svg,
|
||||||
// actually check what file formats the manifest says!
|
canvasMovieLibraryUrl: swfAssetData.urls.canvas_library,
|
||||||
svgUrl: swfAssetData.html5_svg_url,
|
imageUrl: swfAssetData.urls.png,
|
||||||
canvasMovieLibraryUrl: null,
|
swfUrl: swfAssetData.urls.swf,
|
||||||
imageUrl: swfAssetData.html5_image_url,
|
|
||||||
swfUrl: swfAssetData.url,
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,6 +45,7 @@ class SwfAsset < ApplicationRecord
|
||||||
swf: url,
|
swf: url,
|
||||||
png: image_url,
|
png: image_url,
|
||||||
svg: manifest_asset_urls[:svg],
|
svg: manifest_asset_urls[:svg],
|
||||||
|
canvas_library: manifest_asset_urls[:js],
|
||||||
manifest: manifest_url,
|
manifest: manifest_url,
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
@ -147,14 +148,6 @@ class SwfAsset < ApplicationRecord
|
||||||
).to_s
|
).to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
def html5_image_url
|
|
||||||
manifest_asset_urls[:png]
|
|
||||||
end
|
|
||||||
|
|
||||||
def html5_svg_url
|
|
||||||
manifest_asset_urls[:svg]
|
|
||||||
end
|
|
||||||
|
|
||||||
def known_glitches
|
def known_glitches
|
||||||
self[:known_glitches].split(',')
|
self[:known_glitches].split(',')
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue