decord/source/85_AssetSourceResolver.js

184 lines
6.1 KiB
JavaScript
Raw Normal View History

2026-07-29 08:29:29 +00:00
// Module ID: 85
// Function ID: 86
// Name: AssetSourceResolver
// Dependencies: [41, 42, 86, 87, 102, 38]
2026-07-20 16:05:17 +00:00
2026-07-29 08:29:29 +00:00
// Module 85 (AssetSourceResolver)
2026-07-23 10:11:24 +00:00
import _classCallCheck from "_classCallCheck";
2026-07-29 08:29:29 +00:00
const AssetSourceResolver = arg1;
class AssetSourceResolver {
constructor(arg0, arg1, arg2) {
tmp = outer1_2(this, AssetSourceResolver);
this.serverUrl = global;
this.jsbundleUrl = arg1;
this.asset = importDefault;
return;
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
const items = [
{
2026-07-20 16:05:17 +00:00
key: "isLoadedFromServer",
value: function isLoadedFromServer() {
const self = this;
let tmp = null != this.serverUrl;
if (tmp) {
tmp = "" !== self.serverUrl;
}
if (tmp) {
tmp = "xml" !== self.asset.type;
}
return tmp;
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "isLoadedFromFileSystem",
value: function isLoadedFromFileSystem() {
let tmp = null != this.jsbundleUrl;
if (tmp) {
const jsbundleUrl = this.jsbundleUrl;
let startsWithResult;
2026-07-29 08:29:29 +00:00
if (jsbundleUrl != null) {
2026-07-20 16:05:17 +00:00
startsWithResult = jsbundleUrl.startsWith("file://");
}
tmp = startsWithResult;
}
return tmp;
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "defaultAsset",
value: function defaultAsset() {
const self = this;
if (this.isLoadedFromServer()) {
let assetServerURLResult = self.assetServerURL();
} else if (null != self.asset.resolver) {
assetServerURLResult = self.getAssetUsingResolver(self.asset.resolver);
} else if (self.isLoadedFromFileSystem()) {
assetServerURLResult = self.drawableFolderInBundle();
} else {
assetServerURLResult = self.resourceIdentifierWithoutScale();
}
return assetServerURLResult;
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "getAssetUsingResolver",
value: function getAssetUsingResolver(resolver) {
const self = this;
if ("android" === resolver) {
if (self.isLoadedFromFileSystem()) {
let result = self.drawableFolderInBundle();
} else {
result = self.resourceIdentifierWithoutScale();
}
return result;
} else if ("generic" === resolver) {
return self.scaledAssetURLNearBundle();
} else {
const _Error = Error;
const _JSON = JSON;
const text = `Don't know how to get asset via provided resolver: ${resolver}`;
const _JSON2 = JSON;
const text1 = `${`Don't know how to get asset via provided resolver: ${resolver}`}
Asset: ${JSON.stringify(self.asset, null, "\t")}`;
2026-07-23 10:11:24 +00:00
const error = new Error(text1 + "\nPossible resolvers are:" + JSON.stringify(["android", "generic"], null, "\t"));
2026-07-20 16:05:17 +00:00
throw error;
}
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "assetServerURL",
value: function assetServerURL() {
2026-07-29 08:29:29 +00:00
let asset;
2026-07-20 16:05:17 +00:00
let fromSource;
let serverUrl;
2026-07-29 08:29:29 +00:00
const self = this;
AssetSourceResolver(38)(null != this.serverUrl, "need server to load from");
({ asset, fromSource, serverUrl } = this);
const obj = AssetSourceResolver(86);
const tmp = AssetSourceResolver;
const _default = AssetSourceResolver(87).default;
let str = "";
if (1 !== pickScaleResult) {
str = `${"@" + tmp4}x`;
}
pickScaleResult = obj.pickScale(asset.scales, AssetSourceResolver(87).default.get());
return fromSource(serverUrl + (tmp(102).getBasePath(asset) + "/" + asset.name + str + "." + asset.type) + "?platform=android&hash=" + self.asset.hash);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "scaledAssetPath",
value: function scaledAssetPath() {
2026-07-29 08:29:29 +00:00
const asset = this.asset;
const obj = AssetSourceResolver(86);
const tmp = AssetSourceResolver;
const _default = AssetSourceResolver(87).default;
let str = "";
if (1 !== pickScaleResult) {
str = `${"@" + tmp3}x`;
}
pickScaleResult = obj.pickScale(asset.scales, AssetSourceResolver(87).default.get());
return this.fromSource(tmp(102).getBasePath(asset) + "/" + asset.name + str + "." + asset.type);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "scaledAssetURLNearBundle",
value: function scaledAssetURLNearBundle() {
const self = this;
2026-07-29 08:29:29 +00:00
let str = this.jsbundleUrl;
if (str == null) {
str = "file://";
}
const asset = self.asset;
const obj = AssetSourceResolver(86);
const tmp = AssetSourceResolver;
const _default = AssetSourceResolver(87).default;
let str2 = "";
if (1 !== pickScaleResult) {
str2 = `${"@" + tmp3}x`;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
tmp(102);
pickScaleResult = obj.pickScale(asset.scales, AssetSourceResolver(87).default.get());
return self.fromSource(str + `${obj2.getBasePath(asset)}/${asset.name}` + str2 + "." + asset.type.replace(/\.\.\//g, "_"));
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "resourceIdentifierWithoutScale",
value: function resourceIdentifierWithoutScale() {
2026-07-29 08:29:29 +00:00
AssetSourceResolver(38)(true, "resource identifiers work on Android");
return this.fromSource(AssetSourceResolver(102).getAndroidResourceIdentifier(this.asset));
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "drawableFolderInBundle",
value: function drawableFolderInBundle() {
const self = this;
2026-07-29 08:29:29 +00:00
let str = this.jsbundleUrl;
if (str == null) {
str = "file://";
2026-07-20 16:05:17 +00:00
}
const asset = self.asset;
2026-07-29 08:29:29 +00:00
const obj = AssetSourceResolver(86);
obj.pickScale(asset.scales, AssetSourceResolver(87).default.get());
const obj2 = AssetSourceResolver(102);
2026-07-20 16:05:17 +00:00
const text = `${obj2.getAndroidResourceFolderName(asset, tmp)}/`;
2026-07-29 08:29:29 +00:00
const _default = AssetSourceResolver(87).default;
return self.fromSource(str + (`${obj2.getAndroidResourceFolderName(asset, tmp)}/` + AssetSourceResolver(102).getAndroidResourceIdentifier(asset) + "." + asset.type));
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
},
{
2026-07-20 16:05:17 +00:00
key: "fromSource",
value: function fromSource(uri) {
2026-07-29 08:29:29 +00:00
const obj = { __packager_asset: true, width: this.asset.width, height: this.asset.height, uri, scale: null };
const obj2 = AssetSourceResolver(86);
obj[4] = obj2.pickScale(this.asset.scales, AssetSourceResolver(87).default.get());
2026-07-20 16:05:17 +00:00
return obj;
}
2026-07-29 08:29:29 +00:00
}
];
const tmp2 = require("_createClass")(AssetSourceResolver, items);
2026-07-23 10:11:24 +00:00
tmp2.pickScale = require("pickScale").pickScale;
2026-07-20 16:05:17 +00:00
export default tmp2;