@fluid-topics/ft-viewer 2.2.7 → 2.2.9
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.
- package/build/asset/ft-asset-viewer-context.js +9 -4
- package/build/common/model/ft-viewer.models.d.ts +21 -0
- package/build/common/model/ft-viewer.models.js +43 -0
- package/build/ft-viewer.light.js +117 -117
- package/build/ft-viewer.min.js +96 -96
- package/build/ud/ft-ud-viewer-context.js +9 -4
- package/package.json +10 -10
|
@@ -10,7 +10,7 @@ import { provide } from "@lit/context";
|
|
|
10
10
|
import { assetViewerStateManagerContext } from "./components/registration";
|
|
11
11
|
import { FtAssetViewerStateManager } from "./model/FtAssetViewerStateManager";
|
|
12
12
|
import { property } from "lit/decorators.js";
|
|
13
|
-
import { FtViewerLoadedEvent, } from "../common";
|
|
13
|
+
import { dispatchViewerLoadError, FtViewerLoadedEvent, } from "../common";
|
|
14
14
|
import { AuthenticationChangeEvent, ftAppInfoStore, } from "@fluid-topics/ft-app-context";
|
|
15
15
|
export class FtAssetViewerContext extends FtLitElementRedux {
|
|
16
16
|
constructor() {
|
|
@@ -29,9 +29,14 @@ export class FtAssetViewerContext extends FtLitElementRedux {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
async initStateManager() {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
this.
|
|
32
|
+
try {
|
|
33
|
+
const state = await this.viewerStateManager.init(this.documentId, this.assetId, this.origin);
|
|
34
|
+
if (this.documentId && this.assetId && this.origin) {
|
|
35
|
+
this.dispatchEvent(new FtViewerLoadedEvent(state));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
dispatchViewerLoadError(this, e);
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
42
|
connectedCallback() {
|
|
@@ -48,3 +48,24 @@ export declare class FtViewerLoadedEvent extends CustomEvent<FtViewerState> {
|
|
|
48
48
|
static eventName: string;
|
|
49
49
|
constructor(state: FtViewerState);
|
|
50
50
|
}
|
|
51
|
+
export declare class FtViewerNotFoundErrorEvent extends Event {
|
|
52
|
+
static eventName: string;
|
|
53
|
+
constructor();
|
|
54
|
+
}
|
|
55
|
+
export declare class FtViewerUnauthorizedErrorEvent extends Event {
|
|
56
|
+
static eventName: string;
|
|
57
|
+
constructor();
|
|
58
|
+
}
|
|
59
|
+
export declare class FtViewerForbiddenErrorEvent extends Event {
|
|
60
|
+
static eventName: string;
|
|
61
|
+
constructor();
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Dispatched when the document (or asset) could not be loaded for a reason
|
|
65
|
+
* not covered by a more specific event.
|
|
66
|
+
*/
|
|
67
|
+
export declare class FtViewerLoadErrorEvent extends CustomEvent<Error> {
|
|
68
|
+
static eventName: string;
|
|
69
|
+
constructor(e: Error);
|
|
70
|
+
}
|
|
71
|
+
export declare function dispatchViewerLoadError(target: EventTarget, e: Error): void;
|
|
@@ -21,3 +21,46 @@ export class FtViewerLoadedEvent extends CustomEvent {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
FtViewerLoadedEvent.eventName = "ft-viewer-loaded";
|
|
24
|
+
export class FtViewerNotFoundErrorEvent extends Event {
|
|
25
|
+
constructor() {
|
|
26
|
+
super(FtViewerNotFoundErrorEvent.eventName, { composed: true, bubbles: true });
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
FtViewerNotFoundErrorEvent.eventName = "ft-viewer-not-found";
|
|
30
|
+
export class FtViewerUnauthorizedErrorEvent extends Event {
|
|
31
|
+
constructor() {
|
|
32
|
+
super(FtViewerUnauthorizedErrorEvent.eventName, { composed: true, bubbles: true });
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
FtViewerUnauthorizedErrorEvent.eventName = "ft-viewer-unauthorized";
|
|
36
|
+
export class FtViewerForbiddenErrorEvent extends Event {
|
|
37
|
+
constructor() {
|
|
38
|
+
super(FtViewerForbiddenErrorEvent.eventName, { composed: true, bubbles: true });
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
FtViewerForbiddenErrorEvent.eventName = "ft-viewer-forbidden";
|
|
42
|
+
/**
|
|
43
|
+
* Dispatched when the document (or asset) could not be loaded for a reason
|
|
44
|
+
* not covered by a more specific event.
|
|
45
|
+
*/
|
|
46
|
+
export class FtViewerLoadErrorEvent extends CustomEvent {
|
|
47
|
+
constructor(e) {
|
|
48
|
+
super(FtViewerLoadErrorEvent.eventName, { detail: e, composed: true, bubbles: true });
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
FtViewerLoadErrorEvent.eventName = "ft-viewer-load-error";
|
|
52
|
+
export function dispatchViewerLoadError(target, e) {
|
|
53
|
+
const maybeHttpError = e;
|
|
54
|
+
if (maybeHttpError.status === 401) {
|
|
55
|
+
target.dispatchEvent(new FtViewerUnauthorizedErrorEvent());
|
|
56
|
+
}
|
|
57
|
+
else if (maybeHttpError.status === 403) {
|
|
58
|
+
target.dispatchEvent(new FtViewerForbiddenErrorEvent());
|
|
59
|
+
}
|
|
60
|
+
else if (maybeHttpError.status === 404) {
|
|
61
|
+
target.dispatchEvent(new FtViewerNotFoundErrorEvent());
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
target.dispatchEvent(new FtViewerLoadErrorEvent(e));
|
|
65
|
+
}
|
|
66
|
+
}
|