Add resource system for doric,start with android

This commit is contained in:
pengfei.zhou
2021-10-20 18:57:17 +08:00
committed by osborn
parent 7637a820e5
commit 5501dd38d9
26 changed files with 880 additions and 23 deletions

31
doric-js/lib/src/util/resource.d.ts vendored Normal file
View File

@@ -0,0 +1,31 @@
import { Modeling } from "./types";
export declare abstract class Resource implements Modeling {
type: string;
identifier: string;
constructor(type: string, identifier: string);
toModel(): {
type: string;
identifier: string;
};
}
export declare class FileResource extends Resource {
constructor(path: string);
}
export declare class RemoteResource extends Resource {
constructor(url: string);
}
/**
* This is for android platform
*/
export declare class DrawableResource extends Resource {
constructor(url: string);
}
export declare class AssetResource extends Resource {
constructor(path: string);
}
/**
* This is for iOS platform
*/
export declare class MainBundleResource extends Resource {
constructor(path: string);
}

View File

@@ -0,0 +1,43 @@
export class Resource {
constructor(type, identifier) {
this.type = type;
this.identifier = identifier;
}
toModel() {
return {
type: this.type,
identifier: this.identifier,
};
}
}
export class FileResource extends Resource {
constructor(path) {
super("file", path);
}
}
export class RemoteResource extends Resource {
constructor(url) {
super("remote", url);
}
}
/**
* This is for android platform
*/
export class DrawableResource extends Resource {
constructor(url) {
super("drawable", url);
}
}
export class AssetResource extends Resource {
constructor(path) {
super("assets", path);
}
}
/**
* This is for iOS platform
*/
export class MainBundleResource extends Resource {
constructor(path) {
super("mainBundle", path);
}
}