@antelopejs/dms 0.5.2 → 0.5.4
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/CHANGELOG.md +37 -0
- package/dist/attachments/access.d.ts +1 -0
- package/dist/attachments/access.js +7 -3
- package/dist/attachments/access.js.map +1 -1
- package/dist/attachments/constraints.d.ts +4 -0
- package/dist/attachments/constraints.js +28 -0
- package/dist/attachments/constraints.js.map +1 -0
- package/dist/attachments/save.js +23 -12
- package/dist/attachments/save.js.map +1 -1
- package/dist/attachments/uploads.js +2 -0
- package/dist/attachments/uploads.js.map +1 -1
- package/dist/implementations/dms-base/search-route.js +3 -4
- package/dist/implementations/dms-base/search-route.js.map +1 -1
- package/dist/pages/settings/users/invite-email-outcome.d.ts +6 -0
- package/dist/pages/settings/users/invite-email-outcome.js +9 -0
- package/dist/pages/settings/users/invite-email-outcome.js.map +1 -0
- package/dist/pages/settings/users/invites.d.ts +4 -1
- package/dist/pages/settings/users/invites.js +33 -28
- package/dist/pages/settings/users/invites.js.map +1 -1
- package/dist/pages/settings/users/members.d.ts +8 -3
- package/dist/pages/settings/users/members.js +16 -4
- package/dist/pages/settings/users/members.js.map +1 -1
- package/dist/test/attachment-host/native.d.ts +25 -0
- package/dist/test/attachment-host/native.js +54 -1
- package/dist/test/attachment-host/native.js.map +1 -1
- package/dist/test/helpers/attachments.d.ts +1 -1
- package/dist/test/helpers/attachments.js +2 -2
- package/dist/test/helpers/attachments.js.map +1 -1
- package/dist/test/integration/files/field-constraints.test.d.ts +1 -0
- package/dist/test/integration/files/field-constraints.test.js +100 -0
- package/dist/test/integration/files/field-constraints.test.js.map +1 -0
- package/dist/test/integration/files/page-mode-form-files.test.d.ts +1 -0
- package/dist/test/integration/files/page-mode-form-files.test.js +114 -0
- package/dist/test/integration/files/page-mode-form-files.test.js.map +1 -0
- package/dist/test/integration/files/resource-form-files.test.d.ts +1 -0
- package/dist/test/integration/files/resource-form-files.test.js +121 -0
- package/dist/test/integration/files/resource-form-files.test.js.map +1 -0
- package/dist/test/integration/files/shared-controller-files.test.d.ts +1 -0
- package/dist/test/integration/files/shared-controller-files.test.js +136 -0
- package/dist/test/integration/files/shared-controller-files.test.js.map +1 -0
- package/dist/test/unit/implementations/dms-base/table-view-shared-controller.test.d.ts +1 -0
- package/dist/test/unit/implementations/dms-base/table-view-shared-controller.test.js +113 -0
- package/dist/test/unit/implementations/dms-base/table-view-shared-controller.test.js.map +1 -0
- package/dist/test/unit/interfaces/dms-base/resource-form.test.js +19 -0
- package/dist/test/unit/interfaces/dms-base/resource-form.test.js.map +1 -1
- package/dist/test/unit/interfaces/dms-base/table-view-tenant-gate.test.js +2 -2
- package/dist/test/unit/interfaces/dms-base/table-view-tenant-gate.test.js.map +1 -1
- package/dist/test/unit/pages/settings/invite-email-delivery.test.d.ts +1 -0
- package/dist/test/unit/pages/settings/invite-email-delivery.test.js +141 -0
- package/dist/test/unit/pages/settings/invite-email-delivery.test.js.map +1 -0
- package/frontend-vue/layers/dms-layout/i18n/locales/layout-en-GB.json +2 -0
- package/frontend-vue/layers/dms-layout/i18n/locales/layout-fr-FR.json +2 -0
- package/frontend-vue/layers/dms-ui/app/build/composables/table-view/useTableViewRowActions.ts +9 -5
- package/frontend-vue/layers/dms-ui/app/components/form/components/File.vue +50 -21
- package/frontend-vue/layers/dms-ui/app/components/form/components/Image.vue +54 -21
- package/frontend-vue/layers/dms-ui/app/components/form/components/Relation.vue +4 -3
- package/frontend-vue/layers/dms-ui/app/composables/form/types/api.ts +2 -1
- package/frontend-vue/layers/dms-ui/app/composables/form/useForm.ts +15 -8
- package/frontend-vue/layers/dms-ui/app/composables/form/useUploadWithProgress.ts +44 -3
- package/frontend-vue/layers/dms-ui/app/utils/metadataRetry.ts +47 -0
- package/frontend-vue/layers/dms-ui/app/utils/responseWarning.ts +46 -0
- package/frontend-vue/layers/dms-ui/i18n/locales/ui-en-GB.json +4 -1
- package/frontend-vue/layers/dms-ui/i18n/locales/ui-fr-FR.json +4 -1
- package/frontend-vue/tests/file-unavailable.test.ts +107 -0
- package/frontend-vue/tests/image-hydration-ids.test.ts +87 -0
- package/frontend-vue/tests/image-reference-preservation.test.ts +12 -2
- package/frontend-vue/tests/metadata-retry.test.ts +187 -0
- package/frontend-vue/tests/response-warning-toast.test.ts +57 -0
- package/frontend-vue/tests/upload-forbidden-headers.test.ts +52 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,42 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.5.4
|
|
4
|
+
|
|
5
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/v0.5.3...v0.5.4)
|
|
6
|
+
|
|
7
|
+
### 🩹 Fixes
|
|
8
|
+
|
|
9
|
+
- **invites:** Tell the inviter when the invitation e-mail was not sent ([#122](https://github.com/AntelopeJS/dms/pull/122))
|
|
10
|
+
|
|
11
|
+
### 🏡 Chore
|
|
12
|
+
|
|
13
|
+
- **release:** @antelopejs/interface-dms v0.3.5 ([dcc9afe](https://github.com/AntelopeJS/dms/commit/dcc9afe))
|
|
14
|
+
|
|
15
|
+
### ❤️ Contributors
|
|
16
|
+
|
|
17
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
18
|
+
|
|
19
|
+
## v0.5.3
|
|
20
|
+
|
|
21
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/v0.5.2...v0.5.3)
|
|
22
|
+
|
|
23
|
+
### 🩹 Fixes
|
|
24
|
+
|
|
25
|
+
- **table-view:** Validate file provenance against every TableView sharing a data controller ([#112](https://github.com/AntelopeJS/dms/pull/112))
|
|
26
|
+
- **dms-ui:** Stable SSR ids, forbidden upload headers and missing-file state in upload inputs ([#113](https://github.com/AntelopeJS/dms/pull/113))
|
|
27
|
+
- **attachments:** Enforce field constraints at presign and stop retrying missing stored files ([#114](https://github.com/AntelopeJS/dms/pull/114))
|
|
28
|
+
- **resource-form:** Accept native files submitted from ResourceForm blocks ([#115](https://github.com/AntelopeJS/dms/pull/115))
|
|
29
|
+
- **playground:** Promote, validate and clean profile files through SaveComponentFiles ([#116](https://github.com/AntelopeJS/dms/pull/116))
|
|
30
|
+
- **table-view:** Accept native files from page-mode TableView forms ([#117](https://github.com/AntelopeJS/dms/pull/117))
|
|
31
|
+
|
|
32
|
+
### 🏡 Chore
|
|
33
|
+
|
|
34
|
+
- **release:** @antelopejs/interface-dms v0.3.4 ([9f115b0](https://github.com/AntelopeJS/dms/commit/9f115b0))
|
|
35
|
+
|
|
36
|
+
### ❤️ Contributors
|
|
37
|
+
|
|
38
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
39
|
+
|
|
3
40
|
## v0.5.2
|
|
4
41
|
|
|
5
42
|
[compare changes](https://github.com/AntelopeJS/dms/compare/v0.5.1...v0.5.2)
|
|
@@ -6,4 +6,5 @@ export declare const RegisterNativeUploadField: {
|
|
|
6
6
|
register(registration: NativeUploadFieldRegistration): void;
|
|
7
7
|
unregister(registration: NativeUploadFieldRegistration): void;
|
|
8
8
|
};
|
|
9
|
+
export declare function findNativeUploadDeclaration(owner: UploadTokenClaims, write: boolean): NativeUploadFieldRegistration | undefined;
|
|
9
10
|
export declare function assertNativeFileAccess(context: RequestContext, owner: UploadTokenClaims, write: boolean): Promise<RequestPrincipal>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.RegisterNativeUploadField = void 0;
|
|
4
|
+
exports.findNativeUploadDeclaration = findNativeUploadDeclaration;
|
|
4
5
|
exports.assertNativeFileAccess = assertNativeFileAccess;
|
|
5
6
|
const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
|
|
6
7
|
const page_1 = require("../implementations/dms/page");
|
|
@@ -46,10 +47,13 @@ async function hasComponentAccess(principal, registration, memberModel, roleMode
|
|
|
46
47
|
required.push(registration.writePermission);
|
|
47
48
|
return (await Promise.all(required.map((id) => (0, permissions_1.HasPermission)(permissions, id)))).every(Boolean);
|
|
48
49
|
}
|
|
49
|
-
|
|
50
|
+
function findNativeUploadDeclaration(owner, write) {
|
|
50
51
|
if (!owner.pageId || !owner.componentId)
|
|
51
|
-
|
|
52
|
-
|
|
52
|
+
return undefined;
|
|
53
|
+
return [...registrations.values()].find((item) => declarationsMatch(item.declaration, owner, write))?.declaration;
|
|
54
|
+
}
|
|
55
|
+
async function assertNativeFileAccess(context, owner, write) {
|
|
56
|
+
const registration = findNativeUploadDeclaration(owner, write);
|
|
53
57
|
if (!registration)
|
|
54
58
|
(0, registry_1.denyAttachment)();
|
|
55
59
|
if (write && registration.writePermission === "__native_upload_disabled__")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access.js","sourceRoot":"","sources":["../../src/attachments/access.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"access.js","sourceRoot":"","sources":["../../src/attachments/access.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { FileMetadata, UploadConstraints } from "@antelopejs/interface-file-storage";
|
|
2
|
+
export type ConstrainedFile = Pick<FileMetadata, "size" | "mimetype">;
|
|
3
|
+
export declare function findConstraintViolation(constraints: UploadConstraints | undefined, file: ConstrainedFile): string | undefined;
|
|
4
|
+
export declare function assertUploadSatisfiesField(constraints: UploadConstraints | undefined, file: ConstrainedFile): void;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findConstraintViolation = findConstraintViolation;
|
|
4
|
+
exports.assertUploadSatisfiesField = assertUploadSatisfiesField;
|
|
5
|
+
const interface_api_1 = require("@antelopejs/interface-api");
|
|
6
|
+
const UPLOAD_REJECTED_STATUS = 400;
|
|
7
|
+
const WILDCARD_SUFFIX = "/*";
|
|
8
|
+
function matchesMimetype(mimetype, pattern) {
|
|
9
|
+
if (pattern === mimetype)
|
|
10
|
+
return true;
|
|
11
|
+
return (pattern.endsWith(WILDCARD_SUFFIX) &&
|
|
12
|
+
mimetype.startsWith(pattern.slice(0, -1)));
|
|
13
|
+
}
|
|
14
|
+
function findConstraintViolation(constraints, file) {
|
|
15
|
+
if (constraints?.maxSize !== undefined && file.size > constraints.maxSize)
|
|
16
|
+
return `the file exceeds this field's maximum size of ${constraints.maxSize} bytes`;
|
|
17
|
+
const allowed = constraints?.allowedMimetypes;
|
|
18
|
+
if (allowed?.length &&
|
|
19
|
+
!allowed.some((pattern) => matchesMimetype(file.mimetype, pattern)))
|
|
20
|
+
return `type "${file.mimetype}" is not allowed for this field (allowed: ${allowed.join(", ")})`;
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
function assertUploadSatisfiesField(constraints, file) {
|
|
24
|
+
const violation = findConstraintViolation(constraints, file);
|
|
25
|
+
if (violation)
|
|
26
|
+
throw new interface_api_1.HTTPResult(UPLOAD_REJECTED_STATUS, `Upload rejected: ${violation}.`);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=constraints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constraints.js","sourceRoot":"","sources":["../../src/attachments/constraints.ts"],"names":[],"mappings":";;AAoBA,0DAaC;AAGD,gEAUC;AA9CD,6DAAuD;AAMvD,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,eAAe,GAAG,IAAI,CAAC;AAI7B,SAAS,eAAe,CAAC,QAAgB,EAAE,OAAe;IACxD,IAAI,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;QACjC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAC1C,CAAC;AACJ,CAAC;AAGD,SAAgB,uBAAuB,CACrC,WAA0C,EAC1C,IAAqB;IAErB,IAAI,WAAW,EAAE,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,OAAO;QACvE,OAAO,iDAAiD,WAAW,CAAC,OAAO,QAAQ,CAAC;IACtF,MAAM,OAAO,GAAG,WAAW,EAAE,gBAAgB,CAAC;IAC9C,IACE,OAAO,EAAE,MAAM;QACf,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEnE,OAAO,SAAS,IAAI,CAAC,QAAQ,6CAA6C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAClG,OAAO,SAAS,CAAC;AACnB,CAAC;AAGD,SAAgB,0BAA0B,CACxC,WAA0C,EAC1C,IAAqB;IAErB,MAAM,SAAS,GAAG,uBAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC7D,IAAI,SAAS;QACX,MAAM,IAAI,0BAAU,CAClB,sBAAsB,EACtB,oBAAoB,SAAS,GAAG,CACjC,CAAC;AACN,CAAC"}
|
package/dist/attachments/save.js
CHANGED
|
@@ -1,20 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SaveComponentFiles = SaveComponentFiles;
|
|
4
|
+
const interface_api_1 = require("@antelopejs/interface-api");
|
|
4
5
|
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
5
6
|
const interface_file_storage_1 = require("@antelopejs/interface-file-storage");
|
|
6
7
|
const access_1 = require("./access");
|
|
8
|
+
const constraints_1 = require("./constraints");
|
|
7
9
|
const fields_1 = require("./fields");
|
|
8
10
|
const registry_1 = require("./registry");
|
|
11
|
+
const BAD_REQUEST = 400;
|
|
12
|
+
const FILE_NOT_FOUND_ERROR_NAME = "FileNotFoundError";
|
|
13
|
+
function isFileNotFoundError(error) {
|
|
14
|
+
return error instanceof Error && error.name === FILE_NOT_FOUND_ERROR_NAME;
|
|
15
|
+
}
|
|
16
|
+
async function storedReference(ref) {
|
|
17
|
+
try {
|
|
18
|
+
const key = (0, interface_file_storage_1.isStagedKey)(ref.key)
|
|
19
|
+
? (await (0, interface_file_storage_1.PromoteFile)(ref.key, ref.field.storage)).resourceKey
|
|
20
|
+
: ref.key;
|
|
21
|
+
return { key, metadata: await (0, interface_file_storage_1.GetFileMetadata)(key, ref.field.storage) };
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
if (isFileNotFoundError(error))
|
|
25
|
+
throw new interface_api_1.HTTPResult(BAD_REQUEST, "A submitted file was never stored. Upload it again.");
|
|
26
|
+
throw error;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
9
29
|
function assertConstraints(metadata, reference) {
|
|
10
|
-
|
|
11
|
-
if (constraints?.maxSize !== undefined && metadata.size > constraints.maxSize)
|
|
12
|
-
(0, registry_1.denyAttachment)();
|
|
13
|
-
const allowed = constraints?.allowedMimetypes;
|
|
14
|
-
if (allowed?.length &&
|
|
15
|
-
!allowed.some((pattern) => pattern === metadata.mimetype ||
|
|
16
|
-
(pattern.endsWith("/*") &&
|
|
17
|
-
metadata.mimetype.startsWith(pattern.slice(0, -1)))))
|
|
30
|
+
if ((0, constraints_1.findConstraintViolation)(reference.field.constraints, metadata))
|
|
18
31
|
(0, registry_1.denyAttachment)();
|
|
19
32
|
}
|
|
20
33
|
async function validateReference(request, ref) {
|
|
@@ -52,10 +65,8 @@ async function promoteReferences(request, refs) {
|
|
|
52
65
|
for (const field of request.fields) {
|
|
53
66
|
const mapping = new Map();
|
|
54
67
|
for (const ref of refs.filter((ref) => ref.field.id === field.id)) {
|
|
55
|
-
const key =
|
|
56
|
-
|
|
57
|
-
: ref.key;
|
|
58
|
-
assertConstraints(await (0, interface_file_storage_1.GetFileMetadata)(key, field.storage), ref);
|
|
68
|
+
const { key, metadata } = await storedReference(ref);
|
|
69
|
+
assertConstraints(metadata, ref);
|
|
59
70
|
mapping.set(ref.key, key);
|
|
60
71
|
}
|
|
61
72
|
if (field.key in document)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save.js","sourceRoot":"","sources":["../../src/attachments/save.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"save.js","sourceRoot":"","sources":["../../src/attachments/save.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,11 @@ const interface_file_storage_1 = require("@antelopejs/interface-file-storage");
|
|
|
6
6
|
const config_1 = require("../config");
|
|
7
7
|
const upload_constraints_1 = require("../utils/upload-constraints");
|
|
8
8
|
const access_1 = require("./access");
|
|
9
|
+
const constraints_1 = require("./constraints");
|
|
9
10
|
const registry_1 = require("./registry");
|
|
10
11
|
async function createAttachmentUpload(context, request, claims) {
|
|
11
12
|
const principal = await (0, access_1.assertNativeFileAccess)(context, claims, true);
|
|
13
|
+
(0, constraints_1.assertUploadSatisfiesField)((0, access_1.findNativeUploadDeclaration)(claims, true)?.constraints, request);
|
|
12
14
|
const upload = await (0, interface_file_storage_1.CreateUploadUrl)({ ...request, staging: true, visibility: claims.visibility || "private" }, (0, upload_constraints_1.buildUploadConstraints)((0, config_1.getUploadsConfig)()), claims.storage);
|
|
13
15
|
await (0, registry_1.attachmentTable)()
|
|
14
16
|
.insert({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../src/attachments/uploads.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../src/attachments/uploads.ts"],"names":[],"mappings":";;AAcA,wDAyBC;AAGD,0EAMC;AA/CD,+EAI4C;AAC5C,sCAA6C;AAC7C,oEAAqE;AAErE,qCAA+E;AAC/E,+CAA2D;AAC3D,yCAA2E;AAGpE,KAAK,UAAU,sBAAsB,CAC1C,OAAuB,EACvB,OAAsB,EACtB,MAAyB;IAEzB,MAAM,SAAS,GAAG,MAAM,IAAA,+BAAsB,EAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtE,IAAA,wCAA0B,EACxB,IAAA,oCAA2B,EAAC,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,EACtD,OAAO,CACR,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,IAAA,wCAAe,EAClC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,SAAS,EAAE,EACzE,IAAA,2CAAsB,EAAC,IAAA,yBAAgB,GAAE,CAAC,EAC1C,MAAM,CAAC,OAAO,CACf,CAAC;IACF,MAAM,IAAA,0BAAe,GAAE;SACpB,MAAM,CAAC;QACN,GAAG,EAAE,IAAA,uBAAY,EAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC;QACrD,QAAQ,EAAE,SAAS,CAAC,QAAQ;QAC5B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;KACnC,CAAC;SACD,GAAG,EAAE,CAAC;IACT,OAAO,MAAM,CAAC;AAChB,CAAC;AAGM,KAAK,UAAU,+BAA+B,CACnD,GAAW,EACX,OAAgB;IAEhB,IAAI,CAAC,CAAC,MAAM,IAAA,yBAAc,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5D,OAAO,IAAA,wCAAe,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -69,16 +69,15 @@ async function computeEffectivePermissions(reqCtx, user, permissions) {
|
|
|
69
69
|
}
|
|
70
70
|
async function canViewArchived(thisObj, reqCtx, user, permissions) {
|
|
71
71
|
const tableViewMeta = (0, interface_core_1.GetMetadata)(thisObj.constructor, table_view_1.TableViewMeta);
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
if (!permissionId) {
|
|
72
|
+
const permissionIds = tableViewMeta.actionPermissionIds("viewArchived");
|
|
73
|
+
if (permissionIds.length === 0) {
|
|
75
74
|
return true;
|
|
76
75
|
}
|
|
77
76
|
const resolved = await computeEffectivePermissions(reqCtx, user, permissions);
|
|
78
77
|
if (!resolved) {
|
|
79
78
|
return false;
|
|
80
79
|
}
|
|
81
|
-
return (0, permissions_1.
|
|
80
|
+
return (0, permissions_1.HasAnyPermission)(resolved, permissionIds);
|
|
82
81
|
}
|
|
83
82
|
async function applyArchiveFilter(thisObj, reqCtx, user, permissions, filters) {
|
|
84
83
|
const tableViewMeta = (0, interface_core_1.GetMetadata)(thisObj.constructor, table_view_1.TableViewMeta);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-route.js","sourceRoot":"","sources":["../../../src/implementations/dms-base/search-route.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"search-route.js","sourceRoot":"","sources":["../../../src/implementations/dms-base/search-route.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { InviteEmailDelivery } from "@antelopejs/interface-dms/invites";
|
|
2
|
+
export interface InviteEmailOutcome {
|
|
3
|
+
emailDelivery: InviteEmailDelivery;
|
|
4
|
+
warning?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function inviteEmailOutcome(emailDelivery: InviteEmailDelivery, failureWarning: string): InviteEmailOutcome;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.inviteEmailOutcome = inviteEmailOutcome;
|
|
4
|
+
function inviteEmailOutcome(emailDelivery, failureWarning) {
|
|
5
|
+
if (emailDelivery === "sent")
|
|
6
|
+
return { emailDelivery };
|
|
7
|
+
return { emailDelivery, warning: failureWarning };
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=invite-email-outcome.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invite-email-outcome.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/invite-email-outcome.ts"],"names":[],"mappings":";;AAYA,gDAMC;AAND,SAAgB,kBAAkB,CAChC,aAAkC,EAClC,cAAsB;IAEtB,IAAI,aAAa,KAAK,MAAM;QAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IACvD,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;AACpD,CAAC"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { type RequestContext } from "@antelopejs/interface-api";
|
|
2
2
|
import { UserInvite, UserInviteModel } from "@antelopejs/interface-dms/db";
|
|
3
3
|
import type { User } from "@antelopejs/interface-dms/auth/db";
|
|
4
|
+
import { type InviteEmailOutcome } from "./invite-email-outcome";
|
|
5
|
+
export declare const INVITE_RESEND_EMAIL_FAILED_WARNING = "$page.settings.invites.action.resend_email_failed";
|
|
6
|
+
export declare function resendPendingInvite(tenantId: string, inviteId: string, inviterName?: string): Promise<InviteEmailOutcome>;
|
|
4
7
|
declare const inviteSettingDataAPI_base: import("@antelopejs/interface-core/decorators").Class<import("@antelopejs/interface-data-api").ExtractDefCallbacks<{
|
|
5
8
|
list: import("@antelopejs/interface-data-api").DataControllerCallback;
|
|
6
9
|
get: import("@antelopejs/interface-data-api").DataControllerCallback;
|
|
@@ -32,7 +35,7 @@ declare const InvitesSettingsController_base: {
|
|
|
32
35
|
};
|
|
33
36
|
export declare class InvitesSettingsController extends InvitesSettingsController_base {
|
|
34
37
|
static table: import("@antelopejs/interface-dms").ComponentBuilder<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>;
|
|
35
|
-
resendInvite(id: string, ctx: RequestContext, user: User): Promise<
|
|
38
|
+
resendInvite(id: string, ctx: RequestContext, user: User): Promise<InviteEmailOutcome>;
|
|
36
39
|
cancelInvite(id: string, ctx: RequestContext): Promise<void>;
|
|
37
40
|
}
|
|
38
41
|
export {};
|
|
@@ -12,7 +12,8 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.InvitesSettingsController = exports.inviteSettingDataAPI = void 0;
|
|
15
|
+
exports.InvitesSettingsController = exports.inviteSettingDataAPI = exports.INVITE_RESEND_EMAIL_FAILED_WARNING = void 0;
|
|
16
|
+
exports.resendPendingInvite = resendPendingInvite;
|
|
16
17
|
const interface_api_1 = require("@antelopejs/interface-api");
|
|
17
18
|
const interface_api_util_1 = require("@antelopejs/interface-api-util");
|
|
18
19
|
const interface_data_api_1 = require("@antelopejs/interface-data-api");
|
|
@@ -30,11 +31,39 @@ const base_1 = require("@antelopejs/interface-dms/base");
|
|
|
30
31
|
const default_types_1 = require("@antelopejs/interface-dms/base/data-types/default-types");
|
|
31
32
|
const status_type_1 = require("@antelopejs/interface-dms/base/data-types/status-type");
|
|
32
33
|
const types_1 = require("@antelopejs/interface-dms/base/types");
|
|
33
|
-
const
|
|
34
|
+
const invite_email_outcome_1 = require("./invite-email-outcome");
|
|
34
35
|
const invite_extension_routes_1 = require("./invite-extension-routes");
|
|
35
36
|
const member_invite_form_1 = require("./member-invite-form");
|
|
36
37
|
const members_1 = require("./members");
|
|
37
38
|
const INVITES_PERMISSION_ID = "settings.user.invites";
|
|
39
|
+
exports.INVITE_RESEND_EMAIL_FAILED_WARNING = "$page.settings.invites.action.resend_email_failed";
|
|
40
|
+
async function resendPendingInvite(tenantId, inviteId, inviterName) {
|
|
41
|
+
const existingInvite = await (0, invite_resolution_1.loadInviteForAction)(tenantId, inviteId);
|
|
42
|
+
(0, interface_api_util_1.assert)(existingInvite, 404, "$page.settings.invites.error.not_found");
|
|
43
|
+
const { token } = await (0, invites_1.createUserInviteToken)({
|
|
44
|
+
tenantId,
|
|
45
|
+
replacesInvite: existingInvite,
|
|
46
|
+
email: existingInvite.email,
|
|
47
|
+
firstname: existingInvite.firstname,
|
|
48
|
+
lastname: existingInvite.lastname,
|
|
49
|
+
language: existingInvite.language,
|
|
50
|
+
roleIds: existingInvite.roles_ids,
|
|
51
|
+
asTenantOwner: existingInvite.asTenantOwner,
|
|
52
|
+
skipEmailValidation: existingInvite.skipEmailValidation,
|
|
53
|
+
extensions: existingInvite.extensions ?? undefined,
|
|
54
|
+
replacementReason: "resent",
|
|
55
|
+
});
|
|
56
|
+
const emailDelivery = await invites_1.internal.deliverTenantInviteEmail({
|
|
57
|
+
tenantId,
|
|
58
|
+
email: existingInvite.email,
|
|
59
|
+
token,
|
|
60
|
+
firstname: existingInvite.firstname,
|
|
61
|
+
lastname: existingInvite.lastname,
|
|
62
|
+
language: existingInvite.language,
|
|
63
|
+
inviterName,
|
|
64
|
+
});
|
|
65
|
+
return (0, invite_email_outcome_1.inviteEmailOutcome)(emailDelivery, exports.INVITE_RESEND_EMAIL_FAILED_WARNING);
|
|
66
|
+
}
|
|
38
67
|
let inviteSettingDataAPI = class inviteSettingDataAPI extends (0, interface_data_api_1.DataController)(db_1.UserInvite, {
|
|
39
68
|
list: base_1.TableViewRoutes.List,
|
|
40
69
|
get: invite_extension_routes_1.inviteGetRoute,
|
|
@@ -257,32 +286,8 @@ let InvitesSettingsController = class InvitesSettingsController extends (0, page
|
|
|
257
286
|
],
|
|
258
287
|
},
|
|
259
288
|
});
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
const existingInvite = await (0, invite_resolution_1.loadInviteForAction)(tenantId, id);
|
|
263
|
-
(0, interface_api_util_1.assert)(existingInvite, 404, "$page.settings.invites.error.not_found");
|
|
264
|
-
const { token } = await (0, invites_1.createUserInviteToken)({
|
|
265
|
-
tenantId,
|
|
266
|
-
replacesInvite: existingInvite,
|
|
267
|
-
email: existingInvite.email,
|
|
268
|
-
firstname: existingInvite.firstname,
|
|
269
|
-
lastname: existingInvite.lastname,
|
|
270
|
-
language: existingInvite.language,
|
|
271
|
-
roleIds: existingInvite.roles_ids,
|
|
272
|
-
asTenantOwner: existingInvite.asTenantOwner,
|
|
273
|
-
skipEmailValidation: existingInvite.skipEmailValidation,
|
|
274
|
-
extensions: existingInvite.extensions ?? undefined,
|
|
275
|
-
replacementReason: "resent",
|
|
276
|
-
});
|
|
277
|
-
(0, fire_and_forget_1.fireAndForget)(invites_1.internal.sendTenantInviteEmail({
|
|
278
|
-
tenantId,
|
|
279
|
-
email: existingInvite.email,
|
|
280
|
-
token,
|
|
281
|
-
firstname: existingInvite.firstname,
|
|
282
|
-
lastname: existingInvite.lastname,
|
|
283
|
-
language: existingInvite.language,
|
|
284
|
-
inviterName: user.name,
|
|
285
|
-
}), `invite email to "${existingInvite.email}"`);
|
|
289
|
+
resendInvite(id, ctx, user) {
|
|
290
|
+
return resendPendingInvite((0, request_tenant_1.getRequestTenantId)(ctx), id, user.name);
|
|
286
291
|
}
|
|
287
292
|
async cancelInvite(id, ctx) {
|
|
288
293
|
const tenantId = (0, request_tenant_1.getRequestTenantId)(ctx);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invites.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/invites.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"invites.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/invites.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import { type RequestContext } from "@antelopejs/interface-api";
|
|
2
2
|
import type { Action } from "@antelopejs/interface-dms/component";
|
|
3
3
|
import { type TenantMember } from "@antelopejs/interface-dms/db";
|
|
4
|
+
import { type InviteUserToTenantResult } from "@antelopejs/interface-dms/invites";
|
|
4
5
|
import { type User, UserModel } from "@antelopejs/interface-dms/auth/db";
|
|
6
|
+
import { type InviteEmailOutcome } from "./invite-email-outcome";
|
|
5
7
|
import { type InviteFormDefaults } from "./member-invite-form";
|
|
6
8
|
export declare const INVITES_PAGE_PATH = "/settings/user/members/invites";
|
|
7
9
|
export declare const MEMBER_INVITE_BUTTON_ID = "invite";
|
|
10
|
+
export declare const INVITE_EMAIL_FAILED_WARNING = "$page.settings.members.invite.email_failed";
|
|
11
|
+
export interface MemberInviteResponse extends Partial<InviteEmailOutcome> {
|
|
12
|
+
redirectPath: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function memberInviteResponse(result: InviteUserToTenantResult): MemberInviteResponse;
|
|
8
15
|
export declare function assertNotLastPlatformOwnerOnDelete(targets: TenantMember[]): Promise<void>;
|
|
9
16
|
export declare const membersTable: import("@antelopejs/interface-dms").ComponentBuilder<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>;
|
|
10
17
|
export declare const membersTableAddAction: Action;
|
|
@@ -16,9 +23,7 @@ declare const MembersSettingsController_base: {
|
|
|
16
23
|
export declare class MembersSettingsController extends MembersSettingsController_base {
|
|
17
24
|
static table: import("@antelopejs/interface-dms").ComponentBuilder<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>;
|
|
18
25
|
inviteDefaults(user: User): InviteFormDefaults;
|
|
19
|
-
invite(ctx: RequestContext, user: User, userModel: UserModel, body: unknown): Promise<
|
|
20
|
-
redirectPath: string;
|
|
21
|
-
}>;
|
|
26
|
+
invite(ctx: RequestContext, user: User, userModel: UserModel, body: unknown): Promise<MemberInviteResponse>;
|
|
22
27
|
validateMemberEmail(ctx: RequestContext, memberId: string, userModel: UserModel): Promise<void>;
|
|
23
28
|
}
|
|
24
29
|
export {};
|
|
@@ -12,7 +12,8 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.MembersSettingsController = exports.membersTableAddAction = exports.membersTable = exports.MEMBER_INVITE_BUTTON_ID = exports.INVITES_PAGE_PATH = void 0;
|
|
15
|
+
exports.MembersSettingsController = exports.membersTableAddAction = exports.membersTable = exports.INVITE_EMAIL_FAILED_WARNING = exports.MEMBER_INVITE_BUTTON_ID = exports.INVITES_PAGE_PATH = void 0;
|
|
16
|
+
exports.memberInviteResponse = memberInviteResponse;
|
|
16
17
|
exports.assertNotLastPlatformOwnerOnDelete = assertNotLastPlatformOwnerOnDelete;
|
|
17
18
|
const interface_api_1 = require("@antelopejs/interface-api");
|
|
18
19
|
const interface_api_util_1 = require("@antelopejs/interface-api-util");
|
|
@@ -33,11 +34,23 @@ const types_1 = require("@antelopejs/interface-dms/base/types");
|
|
|
33
34
|
const saas_mode_1 = require("@antelopejs/interface-dms/utils/saas-mode");
|
|
34
35
|
const member_invite_schema_1 = require("../../../validation/member-invite.schema");
|
|
35
36
|
const category_1 = require("./category");
|
|
37
|
+
const invite_email_outcome_1 = require("./invite-email-outcome");
|
|
36
38
|
const member_invite_form_1 = require("./member-invite-form");
|
|
37
39
|
(0, interface_data_api_1.RegisterDataController)()(data_controllers_1.memberSettingDataAPI);
|
|
38
40
|
const MEMBERS_PAGE_PATH = "/settings/user/members";
|
|
39
41
|
exports.INVITES_PAGE_PATH = `${MEMBERS_PAGE_PATH}/invites`;
|
|
40
42
|
exports.MEMBER_INVITE_BUTTON_ID = "invite";
|
|
43
|
+
exports.INVITE_EMAIL_FAILED_WARNING = "$page.settings.members.invite.email_failed";
|
|
44
|
+
function memberInviteResponse(result) {
|
|
45
|
+
if (result.kind === "added")
|
|
46
|
+
return { redirectPath: MEMBERS_PAGE_PATH };
|
|
47
|
+
if (!result.emailDelivery)
|
|
48
|
+
return { redirectPath: exports.INVITES_PAGE_PATH };
|
|
49
|
+
return {
|
|
50
|
+
redirectPath: exports.INVITES_PAGE_PATH,
|
|
51
|
+
...(0, invite_email_outcome_1.inviteEmailOutcome)(result.emailDelivery, exports.INVITE_EMAIL_FAILED_WARNING),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
41
54
|
function detectOwnerChange(current, body) {
|
|
42
55
|
if (body.isTenantOwner === undefined)
|
|
43
56
|
return null;
|
|
@@ -193,12 +206,11 @@ let MembersSettingsController = class MembersSettingsController extends (0, page
|
|
|
193
206
|
asTenantOwner,
|
|
194
207
|
skipEmailValidation,
|
|
195
208
|
sendEmail: true,
|
|
209
|
+
awaitEmailDelivery: true,
|
|
196
210
|
inviterName: user.name,
|
|
197
211
|
extensions,
|
|
198
212
|
});
|
|
199
|
-
return
|
|
200
|
-
redirectPath: result.kind === "added" ? MEMBERS_PAGE_PATH : exports.INVITES_PAGE_PATH,
|
|
201
|
-
};
|
|
213
|
+
return memberInviteResponse(result);
|
|
202
214
|
}
|
|
203
215
|
async validateMemberEmail(ctx, memberId, userModel) {
|
|
204
216
|
const tenantId = (0, request_tenant_1.getRequestTenantId)(ctx);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"members.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/members.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"members.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/members.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,8 +7,33 @@ declare const NativeFilePage_base: {
|
|
|
7
7
|
export declare class NativeFilePage extends NativeFilePage_base {
|
|
8
8
|
static content: import("@antelopejs/interface-dms").ComponentBuilder<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>;
|
|
9
9
|
}
|
|
10
|
+
declare const NativeFileSecondaryPage_base: {
|
|
11
|
+
new (...args: any[]): {};
|
|
12
|
+
extend: <T extends import("@antelopejs/interface-api").ControllerClass>(this: T, location: string) => T;
|
|
13
|
+
location: string;
|
|
14
|
+
};
|
|
15
|
+
export declare class NativeFileSecondaryPage extends NativeFileSecondaryPage_base {
|
|
16
|
+
static content: import("@antelopejs/interface-dms").ComponentBuilder<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>;
|
|
17
|
+
}
|
|
18
|
+
declare const NativeFileNewFormPage_base: {
|
|
19
|
+
new (...args: any[]): {};
|
|
20
|
+
extend: <T extends import("@antelopejs/interface-api").ControllerClass>(this: T, location: string) => T;
|
|
21
|
+
location: string;
|
|
22
|
+
};
|
|
23
|
+
export declare class NativeFileNewFormPage extends NativeFileNewFormPage_base {
|
|
24
|
+
static content: import("@antelopejs/interface-dms/base").FormBuilder;
|
|
25
|
+
}
|
|
26
|
+
declare const NativeFileEditFormPage_base: {
|
|
27
|
+
new (...args: any[]): {};
|
|
28
|
+
extend: <T extends import("@antelopejs/interface-api").ControllerClass>(this: T, location: string) => T;
|
|
29
|
+
location: string;
|
|
30
|
+
};
|
|
31
|
+
export declare class NativeFileEditFormPage extends NativeFileEditFormPage_base {
|
|
32
|
+
static content: import("@antelopejs/interface-dms/base").FormBuilder;
|
|
33
|
+
}
|
|
10
34
|
declare const NativeAttachmentFormController_base: import("@antelopejs/interface-api").ControllerClass<object>;
|
|
11
35
|
export declare class NativeAttachmentFormController extends NativeAttachmentFormController_base {
|
|
12
36
|
get(_user: User): Promise<import("@antelopejs/interface-dms").ComponentInfoSerialized<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>>;
|
|
37
|
+
relation(_user: User): Promise<import("@antelopejs/interface-dms").ComponentInfoSerialized>;
|
|
13
38
|
}
|
|
14
39
|
export {};
|