blixify-ui-web 1.2.169 → 1.2.170
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/lib/components/data/assetImageLoader.d.ts +19 -0
- package/lib/components/data/assetImageLoader.d.ts.map +1 -0
- package/lib/components/data/assetImageLoader.js +216 -0
- package/lib/components/data/assetImageLoader.js.map +1 -0
- package/lib/components/data/blobModule.d.ts +23 -0
- package/lib/components/data/blobModule.d.ts.map +1 -1
- package/lib/components/data/blobModule.js +56 -4
- package/lib/components/data/blobModule.js.map +1 -1
- package/lib/components/data/dataTemplate/index.d.ts.map +1 -1
- package/lib/components/data/dataTemplate/index.js +4 -8
- package/lib/components/data/dataTemplate/index.js.map +1 -1
- package/lib/components/data/listModule.d.ts.map +1 -1
- package/lib/components/data/listModule.js +2 -8
- package/lib/components/data/listModule.js.map +1 -1
- package/lib/components/data/readModule.d.ts.map +1 -1
- package/lib/components/data/readModule.js +3 -9
- package/lib/components/data/readModule.js.map +1 -1
- package/lib/components/display/flexTable/uploadCell.d.ts.map +1 -1
- package/lib/components/display/flexTable/uploadCell.js +2 -1
- package/lib/components/display/flexTable/uploadCell.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface AssetImageLoaderOptions {
|
|
2
|
+
endpoint: string;
|
|
3
|
+
handleGetToken: (forceRefresh?: boolean) => Promise<string | undefined>;
|
|
4
|
+
readPath?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const ASSET_LOADED_ATTR = "data-asset-src";
|
|
7
|
+
/**
|
|
8
|
+
* Loads checked read links (/api/asset/read/…) with an `Authorization: Bearer`
|
|
9
|
+
* header and shows each as a blob: URL, for pages that cannot send the read
|
|
10
|
+
* cookie, such as a bundled Capacitor app running from localhost. It watches
|
|
11
|
+
* the whole page, so raw HTML from notes and markdown is covered as well as
|
|
12
|
+
* rendered fields. Returns a function that stops it and frees the blobs.
|
|
13
|
+
*
|
|
14
|
+
* The read route must answer the cross-origin preflight for the app's origin
|
|
15
|
+
* (`capacitor://localhost`, `https://localhost`) and allow the `Authorization`
|
|
16
|
+
* header, or every fetch fails and the images stay on their read links.
|
|
17
|
+
*/
|
|
18
|
+
export declare const handleWatchAssetImages: (options: AssetImageLoaderOptions) => () => void;
|
|
19
|
+
//# sourceMappingURL=assetImageLoader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assetImageLoader.d.ts","sourceRoot":"","sources":["../../../src/components/data/assetImageLoader.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,uBAAuB;IAGtC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,YAAa,uBAAuB,eAiHtE,CAAC"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
39
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
40
|
+
if (ar || !(i in from)) {
|
|
41
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
42
|
+
ar[i] = from[i];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
46
|
+
};
|
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.handleWatchAssetImages = exports.ASSET_LOADED_ATTR = void 0;
|
|
49
|
+
var blobModule_1 = require("./blobModule");
|
|
50
|
+
exports.ASSET_LOADED_ATTR = "data-asset-src";
|
|
51
|
+
/**
|
|
52
|
+
* Loads checked read links (/api/asset/read/…) with an `Authorization: Bearer`
|
|
53
|
+
* header and shows each as a blob: URL, for pages that cannot send the read
|
|
54
|
+
* cookie, such as a bundled Capacitor app running from localhost. It watches
|
|
55
|
+
* the whole page, so raw HTML from notes and markdown is covered as well as
|
|
56
|
+
* rendered fields. Returns a function that stops it and frees the blobs.
|
|
57
|
+
*
|
|
58
|
+
* The read route must answer the cross-origin preflight for the app's origin
|
|
59
|
+
* (`capacitor://localhost`, `https://localhost`) and allow the `Authorization`
|
|
60
|
+
* header, or every fetch fails and the images stay on their read links.
|
|
61
|
+
*/
|
|
62
|
+
var handleWatchAssetImages = function (options) {
|
|
63
|
+
var _a;
|
|
64
|
+
var readPath = (_a = options.readPath) !== null && _a !== void 0 ? _a : blobModule_1.ASSET_READ_PATH;
|
|
65
|
+
var apiOrigin = "";
|
|
66
|
+
try {
|
|
67
|
+
apiOrigin = new URL(options.endpoint).origin;
|
|
68
|
+
}
|
|
69
|
+
catch (err) { }
|
|
70
|
+
// INFO: a relative or empty endpoint (the web build's apiPrefix) means the
|
|
71
|
+
// page is on the API's own domain, where the read cookie already works
|
|
72
|
+
if (!apiOrigin || apiOrigin === "null")
|
|
73
|
+
return function () { };
|
|
74
|
+
var cache = new Map();
|
|
75
|
+
var stopped = false;
|
|
76
|
+
// INFO: hides read-link images until they are swapped, so the failed
|
|
77
|
+
// localhost request never shows as a broken image
|
|
78
|
+
var style = document.createElement("style");
|
|
79
|
+
style.textContent = "img[src*=\"".concat(readPath, "\"]:not([").concat(exports.ASSET_LOADED_ATTR, "]){visibility:hidden}");
|
|
80
|
+
document.head.appendChild(style);
|
|
81
|
+
var handleResolveUrl = function (src) {
|
|
82
|
+
try {
|
|
83
|
+
var path = new URL(src, "http://local").pathname;
|
|
84
|
+
if (!path.startsWith(readPath))
|
|
85
|
+
return null;
|
|
86
|
+
var url = new URL(src, apiOrigin);
|
|
87
|
+
// INFO: an absolute link to another host never gets the sign-in
|
|
88
|
+
if (url.origin !== apiOrigin)
|
|
89
|
+
return null;
|
|
90
|
+
return url.href;
|
|
91
|
+
}
|
|
92
|
+
catch (err) {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
var handleFetchBlob = function (url_1) {
|
|
97
|
+
var args_1 = [];
|
|
98
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
99
|
+
args_1[_i - 1] = arguments[_i];
|
|
100
|
+
}
|
|
101
|
+
return __awaiter(void 0, __spreadArray([url_1], args_1, true), void 0, function (url, forceRefresh) {
|
|
102
|
+
var token, res, _a, _b;
|
|
103
|
+
if (forceRefresh === void 0) { forceRefresh = false; }
|
|
104
|
+
return __generator(this, function (_c) {
|
|
105
|
+
switch (_c.label) {
|
|
106
|
+
case 0: return [4 /*yield*/, options.handleGetToken(forceRefresh)];
|
|
107
|
+
case 1:
|
|
108
|
+
token = _c.sent();
|
|
109
|
+
if (!token)
|
|
110
|
+
return [2 /*return*/, null];
|
|
111
|
+
return [4 /*yield*/, fetch(url, {
|
|
112
|
+
headers: { Authorization: "Bearer ".concat(token) },
|
|
113
|
+
})];
|
|
114
|
+
case 2:
|
|
115
|
+
res = _c.sent();
|
|
116
|
+
// INFO: a token that expired since the last refresh gets one retry
|
|
117
|
+
if (res.status === 401 && !forceRefresh)
|
|
118
|
+
return [2 /*return*/, handleFetchBlob(url, true)];
|
|
119
|
+
if (!res.ok)
|
|
120
|
+
return [2 /*return*/, null];
|
|
121
|
+
_b = (_a = URL).createObjectURL;
|
|
122
|
+
return [4 /*yield*/, res.blob()];
|
|
123
|
+
case 3: return [2 /*return*/, _b.apply(_a, [_c.sent()])];
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
});
|
|
127
|
+
};
|
|
128
|
+
var handleLoadImage = function (img) { return __awaiter(void 0, void 0, void 0, function () {
|
|
129
|
+
var src, url, blobUrl;
|
|
130
|
+
var _a;
|
|
131
|
+
return __generator(this, function (_b) {
|
|
132
|
+
switch (_b.label) {
|
|
133
|
+
case 0:
|
|
134
|
+
src = (_a = img.getAttribute("src")) !== null && _a !== void 0 ? _a : "";
|
|
135
|
+
if (src.startsWith("blob:"))
|
|
136
|
+
return [2 /*return*/];
|
|
137
|
+
url = handleResolveUrl(src);
|
|
138
|
+
if (!url) {
|
|
139
|
+
// INFO: a read link this loader will not fetch is shown as it is,
|
|
140
|
+
// never left hidden by the style above
|
|
141
|
+
img.setAttribute(exports.ASSET_LOADED_ATTR, src);
|
|
142
|
+
return [2 /*return*/];
|
|
143
|
+
}
|
|
144
|
+
if (!cache.has(url)) {
|
|
145
|
+
cache.set(url, handleFetchBlob(url).catch(function () { return null; }));
|
|
146
|
+
}
|
|
147
|
+
return [4 /*yield*/, cache.get(url)];
|
|
148
|
+
case 1:
|
|
149
|
+
blobUrl = _b.sent();
|
|
150
|
+
// INFO: a failed load is retried the next time the image appears
|
|
151
|
+
if (!blobUrl)
|
|
152
|
+
cache.delete(url);
|
|
153
|
+
if (stopped || img.getAttribute("src") !== src)
|
|
154
|
+
return [2 /*return*/];
|
|
155
|
+
img.setAttribute(exports.ASSET_LOADED_ATTR, src);
|
|
156
|
+
if (blobUrl)
|
|
157
|
+
img.setAttribute("src", blobUrl);
|
|
158
|
+
return [2 /*return*/];
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
}); };
|
|
162
|
+
var handleScan = function (root) {
|
|
163
|
+
if (root instanceof HTMLImageElement)
|
|
164
|
+
handleLoadImage(root);
|
|
165
|
+
root
|
|
166
|
+
.querySelectorAll("img[src*=\"".concat(readPath, "\"]"))
|
|
167
|
+
.forEach(handleLoadImage);
|
|
168
|
+
};
|
|
169
|
+
// INFO: notes and markdown insert raw HTML, and React can reset src on a
|
|
170
|
+
// re-render, so watch both new nodes and src changes
|
|
171
|
+
var observer = new MutationObserver(function (mutations) {
|
|
172
|
+
mutations.forEach(function (mutation) {
|
|
173
|
+
if (mutation.type === "attributes") {
|
|
174
|
+
var target = mutation.target;
|
|
175
|
+
// INFO: a src set back to a read link is hidden again until swapped
|
|
176
|
+
if (!String(target.getAttribute("src")).startsWith("blob:")) {
|
|
177
|
+
target.removeAttribute(exports.ASSET_LOADED_ATTR);
|
|
178
|
+
}
|
|
179
|
+
handleScan(target);
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
mutation.addedNodes.forEach(function (node) {
|
|
183
|
+
if (node instanceof Element)
|
|
184
|
+
handleScan(node);
|
|
185
|
+
});
|
|
186
|
+
});
|
|
187
|
+
});
|
|
188
|
+
observer.observe(document.body, {
|
|
189
|
+
childList: true,
|
|
190
|
+
subtree: true,
|
|
191
|
+
attributes: true,
|
|
192
|
+
attributeFilter: ["src"],
|
|
193
|
+
});
|
|
194
|
+
handleScan(document.body);
|
|
195
|
+
return function () {
|
|
196
|
+
stopped = true;
|
|
197
|
+
observer.disconnect();
|
|
198
|
+
style.remove();
|
|
199
|
+
cache.forEach(function (pending) { return __awaiter(void 0, void 0, void 0, function () {
|
|
200
|
+
var blobUrl;
|
|
201
|
+
return __generator(this, function (_a) {
|
|
202
|
+
switch (_a.label) {
|
|
203
|
+
case 0: return [4 /*yield*/, pending];
|
|
204
|
+
case 1:
|
|
205
|
+
blobUrl = _a.sent();
|
|
206
|
+
if (blobUrl)
|
|
207
|
+
URL.revokeObjectURL(blobUrl);
|
|
208
|
+
return [2 /*return*/];
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
}); });
|
|
212
|
+
cache.clear();
|
|
213
|
+
};
|
|
214
|
+
};
|
|
215
|
+
exports.handleWatchAssetImages = handleWatchAssetImages;
|
|
216
|
+
//# sourceMappingURL=assetImageLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assetImageLoader.js","sourceRoot":"","sources":["../../../src/components/data/assetImageLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,29 @@ export declare const handleDownloadFile: (fileUrl: string, fileName: string) =>
|
|
|
12
12
|
* left alone, so an already-encoded stored name is never double-encoded.
|
|
13
13
|
*/
|
|
14
14
|
export declare const handleEncodeStoredName: (name: string) => string;
|
|
15
|
+
export declare const ASSET_READ_PATH = "/api/asset/read/";
|
|
16
|
+
/**
|
|
17
|
+
* Whether an image endpoint is a checked read route (/api/asset/read/),
|
|
18
|
+
* relative or on any host, rather than a storage host that needs a token.
|
|
19
|
+
*/
|
|
20
|
+
export declare const handleIsAssetReadEndpoint: (endpoint: string | undefined) => boolean;
|
|
21
|
+
/**
|
|
22
|
+
* A read link for a stored object path, `<endpoint><encoded path>`. The link
|
|
23
|
+
* carries no token: the read route checks the caller. With no endpoint it is
|
|
24
|
+
* relative, so the page's own domain serves it.
|
|
25
|
+
*/
|
|
26
|
+
export declare const handleRenderAssetLink: (objectPath: string, endpoint?: string) => string;
|
|
27
|
+
/**
|
|
28
|
+
* The link stored for a file uploaded into a markdown field. A checked read
|
|
29
|
+
* route serves by path and checks the caller, so it gets a read link with no
|
|
30
|
+
* download token; a storage host keeps its token link.
|
|
31
|
+
*/
|
|
32
|
+
export declare const handleRenderUploadedFileLink: (imageEndpoint: string, objectPath: string, token: string) => string;
|
|
33
|
+
/**
|
|
34
|
+
* The stored file name at the end of a link, before any query. A read link
|
|
35
|
+
* has no query, so the name runs to the end.
|
|
36
|
+
*/
|
|
37
|
+
export declare const handleReadLinkFileName: (url: string) => string;
|
|
15
38
|
export declare const renderImageUrlFromPath: (pImageEndpoint: any, pImageCollection: any, pImageParentId: any, pImageFileName: any, pToken: any, bucketName?: string) => string;
|
|
16
39
|
export declare const handleDataURLtoBlob: (dataUrl: string) => "" | Blob;
|
|
17
40
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blobModule.d.ts","sourceRoot":"","sources":["../../../src/components/data/blobModule.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAMxC,eAAO,MAAM,kBAAkB,YAAmB,MAAM,YAAY,MAAM,kBAgBzE,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,SAAU,MAAM,WAIzB,CAAC;AAE3B,eAAO,MAAM,sBAAsB,mBACjB,GAAG,oBACD,GAAG,kBACL,GAAG,kBACH,GAAG,UACX,GAAG,eACE,MAAM,
|
|
1
|
+
{"version":3,"file":"blobModule.d.ts","sourceRoot":"","sources":["../../../src/components/data/blobModule.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAMxC,eAAO,MAAM,kBAAkB,YAAmB,MAAM,YAAY,MAAM,kBAgBzE,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,SAAU,MAAM,WAIzB,CAAC;AAE3B,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,yBAAyB,aAAc,MAAM,GAAG,SAAS,YAQrE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,eAAgB,MAAM,aAAa,MAAM,WACR,CAAC;AAEpE;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,kBACxB,MAAM,cACT,MAAM,SACX,MAAM,WAImE,CAAC;AAEnF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,QAAS,MAAM,WAMjD,CAAC;AAEF,eAAO,MAAM,sBAAsB,mBACjB,GAAG,oBACD,GAAG,kBACL,GAAG,kBACH,GAAG,UACX,GAAG,eACE,MAAM,WAgCpB,CAAC;AAEF,eAAO,MAAM,mBAAmB,YAAa,MAAM,cAalD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,aAAc,MAAM,WAoBvD,CAAC;AA0BF,eAAO,MAAM,oBAAoB,aAAc,MAAM,YAKpD,CAAC;AAyFF,eAAO,MAAM,cAAc,WAAY;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,sBASA,CAAC"}
|
|
@@ -62,7 +62,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
62
62
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
63
63
|
};
|
|
64
64
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
65
|
-
exports.renderFileChip = exports.handleCanPreviewFile = exports.handleStripStoredPrefix = exports.handleDataURLtoBlob = exports.renderImageUrlFromPath = exports.handleEncodeStoredName = exports.handleDownloadFile = void 0;
|
|
65
|
+
exports.renderFileChip = exports.handleCanPreviewFile = exports.handleStripStoredPrefix = exports.handleDataURLtoBlob = exports.renderImageUrlFromPath = exports.handleReadLinkFileName = exports.handleRenderUploadedFileLink = exports.handleRenderAssetLink = exports.handleIsAssetReadEndpoint = exports.ASSET_READ_PATH = exports.handleEncodeStoredName = exports.handleDownloadFile = void 0;
|
|
66
66
|
var solid_1 = require("@heroicons/react/20/solid");
|
|
67
67
|
var button_1 = require("../action/button");
|
|
68
68
|
var modal_1 = require("../display/modal");
|
|
@@ -119,6 +119,56 @@ var handleEncodeStoredName = function (name) {
|
|
|
119
119
|
.replace(/\?/g, "%3F");
|
|
120
120
|
};
|
|
121
121
|
exports.handleEncodeStoredName = handleEncodeStoredName;
|
|
122
|
+
exports.ASSET_READ_PATH = "/api/asset/read/";
|
|
123
|
+
/**
|
|
124
|
+
* Whether an image endpoint is a checked read route (/api/asset/read/),
|
|
125
|
+
* relative or on any host, rather than a storage host that needs a token.
|
|
126
|
+
*/
|
|
127
|
+
var handleIsAssetReadEndpoint = function (endpoint) {
|
|
128
|
+
var value = String(endpoint !== null && endpoint !== void 0 ? endpoint : "");
|
|
129
|
+
if (!value)
|
|
130
|
+
return false;
|
|
131
|
+
try {
|
|
132
|
+
return new URL(value, "http://local").pathname.endsWith(exports.ASSET_READ_PATH);
|
|
133
|
+
}
|
|
134
|
+
catch (err) {
|
|
135
|
+
return false;
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
exports.handleIsAssetReadEndpoint = handleIsAssetReadEndpoint;
|
|
139
|
+
/**
|
|
140
|
+
* A read link for a stored object path, `<endpoint><encoded path>`. The link
|
|
141
|
+
* carries no token: the read route checks the caller. With no endpoint it is
|
|
142
|
+
* relative, so the page's own domain serves it.
|
|
143
|
+
*/
|
|
144
|
+
var handleRenderAssetLink = function (objectPath, endpoint) {
|
|
145
|
+
return "".concat(endpoint || exports.ASSET_READ_PATH).concat(encodeURIComponent(objectPath));
|
|
146
|
+
};
|
|
147
|
+
exports.handleRenderAssetLink = handleRenderAssetLink;
|
|
148
|
+
/**
|
|
149
|
+
* The link stored for a file uploaded into a markdown field. A checked read
|
|
150
|
+
* route serves by path and checks the caller, so it gets a read link with no
|
|
151
|
+
* download token; a storage host keeps its token link.
|
|
152
|
+
*/
|
|
153
|
+
var handleRenderUploadedFileLink = function (imageEndpoint, objectPath, token) {
|
|
154
|
+
return (0, exports.handleIsAssetReadEndpoint)(imageEndpoint)
|
|
155
|
+
? (0, exports.handleRenderAssetLink)(objectPath, imageEndpoint)
|
|
156
|
+
: "".concat(imageEndpoint).concat(encodeURIComponent(objectPath), "?alt=media&token=").concat(token);
|
|
157
|
+
};
|
|
158
|
+
exports.handleRenderUploadedFileLink = handleRenderUploadedFileLink;
|
|
159
|
+
/**
|
|
160
|
+
* The stored file name at the end of a link, before any query. A read link
|
|
161
|
+
* has no query, so the name runs to the end.
|
|
162
|
+
*/
|
|
163
|
+
var handleReadLinkFileName = function (url) {
|
|
164
|
+
var _a;
|
|
165
|
+
var selectedFileName = (_a = String(url !== null && url !== void 0 ? url : "").split("%2F").pop()) !== null && _a !== void 0 ? _a : "";
|
|
166
|
+
var queryIndex = selectedFileName.indexOf("?");
|
|
167
|
+
return queryIndex === -1
|
|
168
|
+
? selectedFileName
|
|
169
|
+
: selectedFileName.substring(0, queryIndex);
|
|
170
|
+
};
|
|
171
|
+
exports.handleReadLinkFileName = handleReadLinkFileName;
|
|
122
172
|
var renderImageUrlFromPath = function (pImageEndpoint, pImageCollection, pImageParentId, pImageFileName, pToken, bucketName) {
|
|
123
173
|
var imageEndpoint = pImageEndpoint !== null && pImageEndpoint !== void 0 ? pImageEndpoint : "";
|
|
124
174
|
var imageCollection = pImageCollection !== null && pImageCollection !== void 0 ? pImageCollection : "";
|
|
@@ -129,9 +179,11 @@ var renderImageUrlFromPath = function (pImageEndpoint, pImageCollection, pImageP
|
|
|
129
179
|
"%2F" +
|
|
130
180
|
imageParentId +
|
|
131
181
|
"%2F" +
|
|
132
|
-
imageFileName
|
|
133
|
-
|
|
134
|
-
|
|
182
|
+
imageFileName;
|
|
183
|
+
// INFO: a checked read route serves by path and checks the caller, so the
|
|
184
|
+
// download token is left out of the link
|
|
185
|
+
if (!(0, exports.handleIsAssetReadEndpoint)(imageEndpoint))
|
|
186
|
+
url += "?alt=media&token=" + pToken;
|
|
135
187
|
if (bucketName) {
|
|
136
188
|
url =
|
|
137
189
|
imageEndpoint +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blobModule.js","sourceRoot":"","sources":["../../../src/components/data/blobModule.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAyD;AACzD,2CAA0C;AAC1C,0CAAyC;AACzC,6CAAwC;AACxC,gDAA0B;AAE1B,uFAAuF;AACvF,iCAAiC;AACjC,uFAAuF;AAChF,IAAM,kBAAkB,GAAG,UAAO,OAAe,EAAE,QAAgB;;;;;;gBAE1D,qBAAM,eAAK,CAAC,GAAG,CAAC,OAAO,EAAE;wBACnC,YAAY,EAAE,MAAM;qBACrB,CAAC,EAAA;;gBAFI,GAAG,GAAG,SAEV;gBACI,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1C,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBACjD,YAAY,CAAC,IAAI,GAAG,SAAS,CAAC;gBAC9B,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBACjC,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC;gBAC/B,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBACpC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBACxC,YAAY,CAAC,KAAK,EAAE,CAAC;gBACrB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBACxC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;;;;;;;;KAElC,CAAC;AAhBW,QAAA,kBAAkB,sBAgB7B;AAEF;;;;;;;;;;GAUG;AACI,IAAM,sBAAsB,GAAG,UAAC,IAAY;IACjD,OAAA,MAAM,CAAC,IAAI,CAAC;SACT,OAAO,CAAC,sBAAsB,EAAE,KAAK,CAAC;SACtC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;AAHxB,CAGwB,CAAC;AAJd,QAAA,sBAAsB,0BAIR;
|
|
1
|
+
{"version":3,"file":"blobModule.js","sourceRoot":"","sources":["../../../src/components/data/blobModule.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/data/dataTemplate/index.tsx"],"names":[],"mappings":"AAqCA,OAAO,KASN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/data/dataTemplate/index.tsx"],"names":[],"mappings":"AAqCA,OAAO,KASN,MAAM,OAAO,CAAC;AAqGf,OAAO,EACL,iBAAiB,EAKlB,MAAM,kBAAkB,CAAC;AAyH1B,eAAO,MAAM,YAAY,mFA6ycvB,CAAC"}
|
|
@@ -3539,7 +3539,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
3539
3539
|
}
|
|
3540
3540
|
createFirebaseUploadHandler_1 = function (collectionId, dataId, fieldId) {
|
|
3541
3541
|
return function (file, path) { return __awaiter(void 0, void 0, void 0, function () {
|
|
3542
|
-
var pathParts, filename, responseData, imageEndpoint, token,
|
|
3542
|
+
var pathParts, filename, responseData, imageEndpoint, token, error_1;
|
|
3543
3543
|
var _a, _b, _c, _d;
|
|
3544
3544
|
return __generator(this, function (_e) {
|
|
3545
3545
|
switch (_e.label) {
|
|
@@ -3558,9 +3558,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
3558
3558
|
else if ((_c = responseData === null || responseData === void 0 ? void 0 : responseData.data) === null || _c === void 0 ? void 0 : _c.data) {
|
|
3559
3559
|
imageEndpoint = ((_d = props.devSettings) === null || _d === void 0 ? void 0 : _d.imageEndpoint) || devSettings.imageEndpoint;
|
|
3560
3560
|
token = responseData.data.data;
|
|
3561
|
-
|
|
3562
|
-
firebaseUrl = "".concat(imageEndpoint).concat(encodedPath, "?alt=media&token=").concat(token);
|
|
3563
|
-
return [2 /*return*/, firebaseUrl];
|
|
3561
|
+
return [2 /*return*/, (0, blobModule_1.handleRenderUploadedFileLink)(imageEndpoint, path, token)];
|
|
3564
3562
|
}
|
|
3565
3563
|
throw new Error("No URL returned from upload");
|
|
3566
3564
|
case 2:
|
|
@@ -3886,14 +3884,12 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
|
|
|
3886
3884
|
if (!selectedField || !selectedField["remove"])
|
|
3887
3885
|
return [2 /*return*/];
|
|
3888
3886
|
return [4 /*yield*/, Promise.all(selectedField["remove"].map(function (eachField) { return __awaiter(void 0, void 0, void 0, function () {
|
|
3889
|
-
var
|
|
3887
|
+
var imageFileName, imageCollectionName, imageParentId;
|
|
3890
3888
|
var _a, _b;
|
|
3891
3889
|
return __generator(this, function (_c) {
|
|
3892
3890
|
switch (_c.label) {
|
|
3893
3891
|
case 0:
|
|
3894
|
-
|
|
3895
|
-
endIndex = eachField.fileName.indexOf("?alt=media&token=");
|
|
3896
|
-
imageFileName = eachField.fileName.substring(startIndex, endIndex);
|
|
3892
|
+
imageFileName = (0, blobModule_1.handleReadLinkFileName)(eachField.fileName);
|
|
3897
3893
|
imageCollectionName = (_a = eachImage.imageCollectionName) !== null && _a !== void 0 ? _a : "";
|
|
3898
3894
|
if (objectId) {
|
|
3899
3895
|
imageCollectionName += "/".concat(dataId);
|