@antelopejs/dms 0.8.0 → 0.8.1
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 +16 -0
- package/dist/implementations/dms/resolver-timeout.d.ts +1 -0
- package/dist/implementations/dms/resolver-timeout.js +13 -3
- package/dist/implementations/dms/resolver-timeout.js.map +1 -1
- package/dist/test/antelope.test.js +2 -1
- package/dist/test/antelope.test.js.map +1 -1
- package/dist/test/helpers/db.js +19 -11
- package/dist/test/helpers/db.js.map +1 -1
- package/dist/test/integration/auth/two-factor-codes.test.js +4 -2
- package/dist/test/integration/auth/two-factor-codes.test.js.map +1 -1
- package/dist/test/unit/implementations/dms/dynamic-menu-hardening.test.js +8 -5
- package/dist/test/unit/implementations/dms/dynamic-menu-hardening.test.js.map +1 -1
- package/dist/test/unit/implementations/dms/layout-banners.test.js +20 -7
- package/dist/test/unit/implementations/dms/layout-banners.test.js.map +1 -1
- package/frontend-vue/layers/dms-ui/app/components/grid/GridRow.vue +14 -6
- package/frontend-vue/layers/dms-ui/app/components/grid/columns.ts +37 -0
- package/frontend-vue/package.json +1 -1
- package/frontend-vue/pnpm-lock.yaml +5 -5
- package/frontend-vue/tests/form-enclosing-form.test.ts +0 -21
- package/frontend-vue/tests/form-load-error.test.ts +0 -22
- package/frontend-vue/tests/grid-responsive-columns.test.ts +30 -31
- package/frontend-vue/tests/nuxt-ui-aria-labels.test.ts +1 -28
- package/frontend-vue/tests/period-live-pause.test.ts +0 -13
- package/frontend-vue/tests/period-max-days.test.ts +0 -14
- package/frontend-vue/tests/row-side-panel.test.ts +0 -12
- package/frontend-vue/tests/table-cell-wrap.test.ts +0 -12
- package/frontend-vue/tests/table-density-menu.test.ts +0 -21
- package/frontend-vue/tests/table-live-hold.test.ts +0 -44
- package/frontend-vue/tests/table-row-hover.test.ts +0 -10
- package/frontend-vue/tests/table-scroll-area.test.ts +0 -8
- package/frontend-vue/tests/table-view-card-props.test.ts +0 -17
- package/frontend-vue/tests/table-view-cards-reorder.test.ts +0 -16
- package/frontend-vue/tests/table-view-grouped.test.ts +0 -55
- package/frontend-vue/tests/table-view-pinned-rows.test.ts +0 -15
- package/frontend-vue/tests/table-view-record-link.test.ts +0 -17
- package/frontend-vue/tests/table-view-refresh.test.ts +0 -17
- package/frontend-vue/tests/table-view-url-tab.test.ts +0 -14
- package/frontend-vue/tests/tone.test.ts +0 -19
- package/package.json +5 -5
- package/dist/test/integration/auth/login.test.d.ts +0 -1
- package/dist/test/integration/auth/login.test.js +0 -57
- package/dist/test/integration/auth/login.test.js.map +0 -1
- package/dist/test/integration/auth/refresh.test.d.ts +0 -1
- package/dist/test/integration/auth/refresh.test.js +0 -59
- package/dist/test/integration/auth/refresh.test.js.map +0 -1
- package/dist/test/integration/auth/sessions.test.d.ts +0 -1
- package/dist/test/integration/auth/sessions.test.js +0 -58
- package/dist/test/integration/auth/sessions.test.js.map +0 -1
- package/dist/test/integration/auth/signup.test.d.ts +0 -1
- package/dist/test/integration/auth/signup.test.js +0 -99
- package/dist/test/integration/auth/signup.test.js.map +0 -1
- package/dist/test/unit/skills/dms-dev-script.test.d.ts +0 -1
- package/dist/test/unit/skills/dms-dev-script.test.js +0 -137
- package/dist/test/unit/skills/dms-dev-script.test.js.map +0 -1
- package/frontend-vue/tests/form-reload-on-reopen.test.ts +0 -20
- package/frontend-vue/tests/icon-aria-hidden.test.ts +0 -29
- package/frontend-vue/tests/skeleton-paragraph.test.ts +0 -30
- package/frontend-vue/tests/tab-slot-spacing.test.ts +0 -29
- package/frontend-vue/tests/table-empty-body-viewport.test.ts +0 -25
- package/frontend-vue/tests/table-header-placement.test.ts +0 -21
- package/frontend-vue/tests/vue-inventory.test.ts +0 -107
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.8.1
|
|
4
|
+
|
|
5
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/v0.8.0...v0.8.1)
|
|
6
|
+
|
|
7
|
+
### 🩹 Fixes
|
|
8
|
+
|
|
9
|
+
- **grid:** Collapse grid row cells whose block renders nothing ([#272](https://github.com/AntelopeJS/dms/pull/272))
|
|
10
|
+
|
|
11
|
+
### 🤖 CI
|
|
12
|
+
|
|
13
|
+
- Speed up pipeline ([#271](https://github.com/AntelopeJS/dms/pull/271))
|
|
14
|
+
|
|
15
|
+
### ❤️ Contributors
|
|
16
|
+
|
|
17
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
18
|
+
|
|
3
19
|
## v0.8.0
|
|
4
20
|
|
|
5
21
|
[compare changes](https://github.com/AntelopeJS/dms/compare/v0.7.21...v0.8.0)
|
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.overrideResolverTimeout = overrideResolverTimeout;
|
|
3
4
|
exports.withResolverTimeout = withResolverTimeout;
|
|
4
|
-
const
|
|
5
|
+
const DEFAULT_RESOLVER_TIMEOUT_MS = 2000;
|
|
6
|
+
let resolverTimeoutMs = DEFAULT_RESOLVER_TIMEOUT_MS;
|
|
7
|
+
function overrideResolverTimeout(timeoutMs) {
|
|
8
|
+
const previous = resolverTimeoutMs;
|
|
9
|
+
resolverTimeoutMs = timeoutMs;
|
|
10
|
+
return () => {
|
|
11
|
+
resolverTimeoutMs = previous;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
5
14
|
function withResolverTimeout(work, subject) {
|
|
15
|
+
const timeoutMs = resolverTimeoutMs;
|
|
6
16
|
return new Promise((resolve, reject) => {
|
|
7
17
|
const timer = setTimeout(() => {
|
|
8
|
-
reject(new Error(`resolver did not answer within ${
|
|
9
|
-
},
|
|
18
|
+
reject(new Error(`resolver did not answer within ${timeoutMs}ms (${subject})`));
|
|
19
|
+
}, timeoutMs);
|
|
10
20
|
work.then(resolve, reject).finally(() => clearTimeout(timer));
|
|
11
21
|
});
|
|
12
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver-timeout.js","sourceRoot":"","sources":["../../../src/implementations/dms/resolver-timeout.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"resolver-timeout.js","sourceRoot":"","sources":["../../../src/implementations/dms/resolver-timeout.ts"],"names":[],"mappings":";;AAcA,0DAMC;AAOD,kDAaC;AApCD,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEzC,IAAI,iBAAiB,GAAG,2BAA2B,CAAC;AAQpD,SAAgB,uBAAuB,CAAC,SAAiB;IACvD,MAAM,QAAQ,GAAG,iBAAiB,CAAC;IACnC,iBAAiB,GAAG,SAAS,CAAC;IAC9B,OAAO,GAAG,EAAE;QACV,iBAAiB,GAAG,QAAQ,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AAOD,SAAgB,mBAAmB,CACjC,IAAgB,EAChB,OAAe;IAEf,MAAM,SAAS,GAAG,iBAAiB,CAAC;IACpC,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,CACJ,IAAI,KAAK,CAAC,kCAAkC,SAAS,OAAO,OAAO,GAAG,CAAC,CACxE,CAAC;QACJ,CAAC,EAAE,SAAS,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -14,6 +14,7 @@ const MONGO_BINARY_VERSION = "8.0.8";
|
|
|
14
14
|
const LOCAL_API_PATH = process.env.DMS_TEST_API_PATH;
|
|
15
15
|
const LOCAL_MONGODB_PATH = process.env.DMS_TEST_MONGODB_PATH;
|
|
16
16
|
const LOCAL_STORAGE_PATH = process.env.DMS_TEST_STORAGE_PATH;
|
|
17
|
+
const LOCAL_INSTALL_COMMAND = process.env.DMS_PREBUILT ? [] : ["pnpm build"];
|
|
17
18
|
function providerSource(path, packageName, version) {
|
|
18
19
|
if (path) {
|
|
19
20
|
return {
|
|
@@ -39,7 +40,7 @@ exports.default = (0, config_1.defineConfig)({
|
|
|
39
40
|
source: {
|
|
40
41
|
type: "local",
|
|
41
42
|
path: ".",
|
|
42
|
-
installCommand:
|
|
43
|
+
installCommand: LOCAL_INSTALL_COMMAND,
|
|
43
44
|
},
|
|
44
45
|
config: {
|
|
45
46
|
auth: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"antelope.test.js","sourceRoot":"","sources":["../../src/test/antelope.test.ts"],"names":[],"mappings":";;AAAA,+CAA+C;AAC/C,qCAAiC;AACjC,yCAAiC;AACjC,8DAAiE;AACjE,2EAAgE;AAKhE,MAAM,aAAa,GAAG,CAAC,CAAC;AAGxB,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAC9D,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;AACxD,MAAM,UAAU,GAAG,iBAAiB,CAAC;AACrC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AACjD,MAAM,oBAAoB,GAAG,OAAO,CAAC;AACrC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACrD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;AAC7D,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"antelope.test.js","sourceRoot":"","sources":["../../src/test/antelope.test.ts"],"names":[],"mappings":"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"}
|
package/dist/test/helpers/db.js
CHANGED
|
@@ -13,21 +13,29 @@ function getMongoUrl() {
|
|
|
13
13
|
}
|
|
14
14
|
return url;
|
|
15
15
|
}
|
|
16
|
+
let sharedClient;
|
|
17
|
+
function getClient() {
|
|
18
|
+
sharedClient ??= mongodb_1.MongoClient.connect(getMongoUrl()).catch((error) => {
|
|
19
|
+
sharedClient = undefined;
|
|
20
|
+
throw error;
|
|
21
|
+
});
|
|
22
|
+
return sharedClient;
|
|
23
|
+
}
|
|
24
|
+
after(async () => {
|
|
25
|
+
const client = sharedClient;
|
|
26
|
+
sharedClient = undefined;
|
|
27
|
+
if (client)
|
|
28
|
+
await (await client).close();
|
|
29
|
+
});
|
|
16
30
|
function isPreserved(name) {
|
|
17
31
|
return PRESERVED_COLLECTION_PREFIXES.some((prefix) => name.startsWith(prefix));
|
|
18
32
|
}
|
|
19
33
|
async function resetDatabase() {
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
.filter((collection) => !isPreserved(collection.collectionName))
|
|
26
|
-
.map((collection) => collection.deleteMany({})));
|
|
27
|
-
}
|
|
28
|
-
finally {
|
|
29
|
-
await client.close();
|
|
30
|
-
}
|
|
34
|
+
const db = (await getClient()).db(DMS_SCHEMA_DB);
|
|
35
|
+
const collections = await db.collections();
|
|
36
|
+
await Promise.all(collections
|
|
37
|
+
.filter((collection) => !isPreserved(collection.collectionName))
|
|
38
|
+
.map((collection) => collection.deleteMany({})));
|
|
31
39
|
}
|
|
32
40
|
async function countRawDocuments(collectionName, filter = {}) {
|
|
33
41
|
const client = await mongodb_1.MongoClient.connect(getMongoUrl());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/test/helpers/db.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/test/helpers/db.ts"],"names":[],"mappings":";;AAyCA,sCAQC;AAED,8CAiBC;AAED,wCAeC;AArFD,qCAAsC;AAItC,MAAM,6BAA6B,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAChE,MAAM,aAAa,GAAG,UAAU,CAAC;AAEjC,SAAS,WAAW;IAClB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACvC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAID,IAAI,YAA8C,CAAC;AAEnD,SAAS,SAAS;IAChB,YAAY,KAAK,qBAAW,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QAClE,YAAY,GAAG,SAAS,CAAC;QACzB,MAAM,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IACH,OAAO,YAAY,CAAC;AACtB,CAAC;AAID,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,MAAM,GAAG,YAAY,CAAC;IAC5B,YAAY,GAAG,SAAS,CAAC;IACzB,IAAI,MAAM;QAAE,MAAM,CAAC,MAAM,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,6BAA6B,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CACnD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CACxB,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,aAAa;IACjC,MAAM,EAAE,GAAG,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,OAAO,CAAC,GAAG,CACf,WAAW;SACR,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;SAC/D,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAClD,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,cAAsB,EACtB,SAAkC,EAAE;IAEpC,MAAM,MAAM,GAAG,MAAM,qBAAW,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,GAAG,aAAa,KAAK,cAAc,EAAE,CAAC;QACnD,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,MAAM;aAChB,EAAE,CAAC,aAAa,CAAC;aACjB,UAAU,CAAC,IAAI,CAAC;aAChB,cAAc,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,cAAc,CAClC,cAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,qBAAW,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM;aACzB,EAAE,CAAC,aAAa,CAAC;aACjB,UAAU,CAAC,GAAG,aAAa,KAAK,cAAc,EAAE,CAAC;aACjD,OAAO,EAAE,CAAC;QACb,OAAO,MAAM,CAAC,WAAW,CACvB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CACtD,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC"}
|
|
@@ -23,6 +23,7 @@ const ATTEMPTS_PER_CHALLENGE = 5;
|
|
|
23
23
|
const WRONG_BACKUP_CODE = "WRONG000";
|
|
24
24
|
const TOTP_STEP_MS = 30 * 1000;
|
|
25
25
|
const TOTP_SAFE_MARGIN_MS = 3 * 1000;
|
|
26
|
+
const TOTP_BOUNDARY_OVERSHOOT_MS = 50;
|
|
26
27
|
const RATE_LIMIT_MS = 60 * 1000;
|
|
27
28
|
const ATTEMPTS_PER_ACCOUNT = 10;
|
|
28
29
|
const LOCKOUT_TITLE = "$dms.notifications.messages.two_factor_lockout.title";
|
|
@@ -33,8 +34,9 @@ const SHA256_HEX = /^[0-9a-f]{64}$/;
|
|
|
33
34
|
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
34
35
|
async function currentTotpCode(secret) {
|
|
35
36
|
const leftInStep = TOTP_STEP_MS - (Date.now() % TOTP_STEP_MS);
|
|
36
|
-
if (leftInStep < TOTP_SAFE_MARGIN_MS)
|
|
37
|
-
await sleep(leftInStep);
|
|
37
|
+
if (leftInStep < TOTP_SAFE_MARGIN_MS) {
|
|
38
|
+
await sleep(leftInStep + TOTP_BOUNDARY_OVERSHOOT_MS);
|
|
39
|
+
}
|
|
38
40
|
return (0, _2fa_1.generateCode)(secret, (0, two_factor_codes_1.totpStepAt)(Date.now()));
|
|
39
41
|
}
|
|
40
42
|
async function enableTotp(client, user) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"two-factor-codes.test.js","sourceRoot":"","sources":["../../../../src/test/integration/auth/two-factor-codes.test.ts"],"names":[],"mappings":";;AAAA,6FAAqE;AACrE,0DAAyE;AAEzE,+BAA8B;AAC9B,8BAAmC;AACnC,+CAAuD;AACvD,wFAAoF;AACpF,gEAA2E;AAC3E,sEAA6E;AAC7E,6CAI4B;AAC5B,yCAAiD;AACjD,iDAK8B;AAC9B,6CAAkD;AAOlD,MAAM,UAAU,GAAG,oCAAoC,CAAC;AACxD,MAAM,OAAO,GAAG,GAAG,CAAC;AACpB,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,yBAAyB,GAAG,gBAAgB,CAAC;AACnD,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,iBAAiB,GAAG,UAAU,CAAC;AACrC,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC;AAG/B,MAAM,mBAAmB,GAAG,CAAC,GAAG,IAAI,CAAC;AACrC,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC;AAChC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,aAAa,GAAG,sDAAsD,CAAC;AAC7E,MAAM,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC;AACtC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AAClC,MAAM,UAAU,GAAG,gBAAgB,CAAC;AAEpC,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEhF,KAAK,UAAU,eAAe,CAAC,MAAc;IAC3C,MAAM,UAAU,GAAG,YAAY,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,CAAC;IAC9D,IAAI,UAAU,GAAG,mBAAmB;QAAE,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9D,OAAO,IAAA,mBAAY,EAAC,MAAM,EAAE,IAAA,6BAAU,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAQD,KAAK,UAAU,UAAU,CACvB,MAAqB,EACrB,IAAoB;IAEpB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,cAAc,EAAE;QAC3D,eAAe,EAAE,IAAI,CAAC,QAAQ;KAC/B,CAAC,CAAC;IACH,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,IAA0B,CAAC;IACpD,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5E,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3E,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AACnE,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAiB,EAAC,yBAAyB,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC;IAC3C,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC7E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAoB;IACxC,MAAM,QAAQ,GAAG,MAAM,IAAA,mBAAY,GAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE;QAC5D,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IACH,IAAA,aAAM,EAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CACxE,IAAI,CACL,CAAC;IACF,OAAO,QAAQ,CAAC,IAAI,CAAC,gBAA0B,CAAC;AAClD,CAAC;AAED,SAAS,MAAM,CAAC,KAAa,EAAE,MAAc,EAAE,IAAY;IACzD,OAAO,IAAA,mBAAY,GAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,KAAa,EAAE,KAAa;IACvD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QACjE,IAAA,aAAM,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAC3D,iBAAiB,CAClB,CAAC;IACJ,CAAC;AACH,CAAC;AAGD,KAAK,UAAU,oBAAoB,CAAC,MAAc;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,oBAAoB,CAAC;IACnD,SAAS,CAAC;QACR,MAAM,aAAa,GAAG,MAAM,IAAA,wCAAQ,EAAC,gDAAsB,CAAC,CAAC,WAAW,CACtE,MAAM,CACP,CAAC;QACF,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAChC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,KAAK,aAAa,CACvD,CAAC,MAAM,CAAC;QACT,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrD,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAAc;IACtC,MAAM,IAAI,GAAG,MAAM,IAAA,wCAAQ,EAAC,cAAS,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,gBAAgB,GAAG,GAAW,EAAE,CACpC,uBAAc,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,yBAAyB,CAAC;KAC3E,MAAM,CAAC;AAGZ,KAAK,UAAU,iBAAiB,CAAI,OAAyB;IAC3D,oBAAW,CAAC,IAAI,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,EAAE,CAAC;IACzB,CAAC;YAAS,CAAC;QACT,oBAAW,CAAC,IAAI,GAAG,KAAK,CAAC;IAC3B,CAAC;AACH,CAAC;AAID,KAAK,UAAU,kBAAkB,CAAC,MAAc;IAC9C,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,6BAA6B,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC,CAAC;IAC1E,MAAM,IAAA,wCAAQ,EAAC,cAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,QAAQ,CAAC,qCAAqC,EAAE;IAC9C,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAE9B,IAAI,IAAoB,CAAC;IACzB,IAAI,MAAqB,CAAC;IAE1B,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE,CACzB,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAmB,CAAC;IAE1D,MAAM,eAAe,GAAG,GAAG,EAAE,CAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,eAAe,EAAE;QACxC,eAAe,EAAE,IAAI,CAAC,QAAQ;KAC/B,CAAC,CAAC;IAEL,MAAM,CAAC,sBAAa,CAAC,CAAC;IAEtB,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,uBAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,MAAM,IAAA,kBAAa,GAAE,CAAC;QACtB,IAAI,GAAG,MAAM,IAAA,mBAAY,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,MAAM,GAAG,IAAA,uBAAgB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,aAAa,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;YAEnD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACtD,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAC3C,6BAA6B,CAC9B,CAAC;YAEF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACzE,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,qBAAM,EAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAe,CAAC;YAC9D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG;gBACtB,IAAA,iCAAsB,EAAC,QAAQ,EAAE,MAAM,CAAC;gBACxC,IAAA,iCAAsB,EAAC,QAAQ,EAAE,MAAM,CAAC;aACzC,CAAC;YACF,IAAA,aAAM,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAE/C,MAAM,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACnE,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YAC3D,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEnE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAClD,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAC5C,0BAA0B,CAC3B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;YAChG,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,UAAU,GAAG,oBAAoB,GAAG,sBAAsB,CAAC;YACjE,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC;gBAC5D,MAAM,aAAa,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,CAAC;YAClE,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1E,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACvD,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAC5C,qCAAqC,CACtC,CAAC;YACF,IAAA,aAAM,EAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,aAAa,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,CAAC;YAChE,MAAM,aAAa,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,sBAAsB,GAAG,CAAC,CAAC,CAAC;YACpE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACzE,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEnE,MAAM,aAAa,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,CAAC;YAChE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,IAAA,aAAM,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,eAAe,EAAE,CAAC;YACxB,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBAC/C,IAAI,EAAE,MAAM,eAAe,EAAE;aAC9B,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,aAAa,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;YACnD,MAAM,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,QAAQ,GAAG,MAAM,IAAA,mBAAY,GAAE,CAAC,IAAI,CACxC,6BAA6B,EAC7B,EAAE,KAAK,EAAE,CACV,CAAC;YACF,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACzD,IAAA,aAAM,EAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAC9C,6BAA6B,CAC9B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,eAAe,EAAE,CAAC;YACxB,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBAC/C,IAAI,EAAE,MAAM,eAAe,EAAE;aAC9B,CAAC,CAAC;YACH,MAAM,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,IAAA,mBAAY,GAAE,CAAC,IAAI,CACzC,6BAA6B,EAC7B,EAAE,KAAK,EAAE,CACV,CAAC;YACF,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAC/D,OAAO,CACR,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;YAErC,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC;YAClE,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACpC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAElC,IAAA,aAAM,EAAC,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtE,IAAA,aAAM,EAAC,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAC1D,iBAAiB,CAClB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAEhD,IAAA,aAAM,EAAC,CAAC,MAAM,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CACtE,iBAAiB,CAClB,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,oBAAoB,EAAE;gBACvE,IAAI;aACL,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,UAAU,EAAE;gBAC1D,MAAM,EAAE,MAAM;gBACd,IAAI;aACL,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACpD,IAAA,aAAM,EAAC,MAAM,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,IAAA,wCAAQ,EAAC,cAAS,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC;YAC7C,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,MAAM,EAAE,IAAA,6BAAU,EAAC,KAAK,CAAC,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,YAAY,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAA,mBAAY,EAAC,MAAM,EAAE,IAAA,6BAAU,EAAC,OAAO,CAAC,CAAC,CAAC;YAE9D,MAAM,MAAM,GAAG,KAAK,EAAE,IAAY,EAAE,GAAW,EAAE,EAAE,CACjD,IAAA,iCAAc,EACZ,SAAS,EACT,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAC7B,MAAM,EACN,IAAI,EACJ,GAAG,CACJ,CAAC;YACJ,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtD,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACvD,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAG3D,IAAA,aAAM,EAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,IAAA,wCAAQ,EAAC,cAAS,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,YAAY,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAA,mBAAY,EAAC,MAAM,EAAE,IAAA,6BAAU,EAAC,KAAK,CAAC,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACxC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;aACxB,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjC,IAAA,iCAAc,EAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;gBACrD,IAAA,iCAAc,EAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;aACvD,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,OAAO,GAAG,MAAM,eAAe,EAAE,CAAC;YACxC,IAAA,aAAM,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACvE,IAAA,aAAM,EAAC,MAAM,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEtD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBAC/D,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACnD,IAAA,aAAM,EAAC,MAAM,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAEhD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBACjE,IAAI;aACL,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAC/D,OAAO,CACR,CAAC;YACF,IAAA,aAAM,EAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACjE,IAAA,aAAM,EAAC,MAAM,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBAChE,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACnD,IAAA,aAAM,EAAC,MAAM,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,qBAAqB,CAAC,CAAC;YACxE,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAEpD,MAAM,eAAe,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,MAAM,eAAe,EAAE,CAAC;YACtC,MAAM,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,qBAAqB,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC;YAEvC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACrB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;oBAC7D,IAAI,EAAE,KAAK;iBACZ,CAAC,CAAC;gBACH,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACnD,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBACjE,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,eAAe,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,eAAe,EAAE,CAAC;YAErC,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;YACzC,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzE,IAAA,aAAM,EAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,qBAAqB,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAEvD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBACjE,IAAI;aACL,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAC/D,OAAO,CACR,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,eAAe,CAAC,CAAC;YACxD,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAA,aAAM,EAAC,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzD,IAAA,aAAM,EAAC,MAAM,CAAC,6BAA6B,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEpE,MAAM,OAAO,GAAG,MAAM,eAAe,EAAE,CAAC;YACxC,IAAA,aAAM,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBACjE,IAAI,EAAE,MAAM,eAAe,EAAE;aAC9B,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAC/D,OAAO,CACR,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,eAAe,EAAE,CAAC;YACxB,MAAM,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE7C,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,CAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,qBAAqB,CAAC,CAChD,CAAC;YACF,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAA,aAAM,EAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CACvD,MAAM,CAAC,6BAA6B,CACrC,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,qBAAqB,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"two-factor-codes.test.js","sourceRoot":"","sources":["../../../../src/test/integration/auth/two-factor-codes.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
const interface_core_1 = require("@antelopejs/interface-core");
|
|
37
37
|
const chai_1 = require("chai");
|
|
38
38
|
const page_1 = require("../../../../implementations/dms/page");
|
|
39
|
+
const resolver_timeout_1 = require("../../../../implementations/dms/resolver-timeout");
|
|
39
40
|
const permissionsImpl = __importStar(require("../../../../implementations/dms/permissions"));
|
|
40
41
|
const permissionsResolverImpl = __importStar(require("../../../../implementations/dms/permissions-resolver"));
|
|
41
42
|
const tenantAccessImpl = __importStar(require("../../../../implementations/dms/tenant-access"));
|
|
@@ -48,7 +49,7 @@ const TENANT = "menu-hardening-tenant";
|
|
|
48
49
|
const CATEGORY_FULL_ID = page_2.pagesCategory.fullId;
|
|
49
50
|
const MEMBER = { _id: "menu-hardening-member" };
|
|
50
51
|
const TARGET_SLUG = "/menu-hardening-target";
|
|
51
|
-
const RESOLVER_TIMEOUT_MS =
|
|
52
|
+
const RESOLVER_TIMEOUT_MS = 300;
|
|
52
53
|
function entry(id, displayName) {
|
|
53
54
|
return { id, displayName, fullSlug: TARGET_SLUG };
|
|
54
55
|
}
|
|
@@ -93,18 +94,20 @@ describe("[unit] implementations/dms/page — dynamic menu hardening", () => {
|
|
|
93
94
|
});
|
|
94
95
|
it("drops the entries of a resolver that does not answer in time", async () => {
|
|
95
96
|
const dispose = (0, page_2.RegisterDynamicMenuProvider)(CATEGORY_FULL_ID, () => new Promise(() => undefined));
|
|
97
|
+
const restoreTimeout = (0, resolver_timeout_1.overrideResolverTimeout)(RESOLVER_TIMEOUT_MS);
|
|
96
98
|
try {
|
|
97
99
|
const started = Date.now();
|
|
98
100
|
const children = await menuChildren();
|
|
99
101
|
const elapsed = Date.now() - started;
|
|
100
102
|
(0, chai_1.expect)(children).to.not.include("alpha");
|
|
101
103
|
(0, chai_1.expect)(elapsed).to.be.greaterThanOrEqual(RESOLVER_TIMEOUT_MS - 100);
|
|
102
|
-
(0, chai_1.expect)(elapsed).to.be.lessThan(RESOLVER_TIMEOUT_MS *
|
|
104
|
+
(0, chai_1.expect)(elapsed).to.be.lessThan(RESOLVER_TIMEOUT_MS * 3);
|
|
103
105
|
}
|
|
104
106
|
finally {
|
|
107
|
+
restoreTimeout();
|
|
105
108
|
dispose();
|
|
106
109
|
}
|
|
107
|
-
})
|
|
110
|
+
});
|
|
108
111
|
it("runs the providers together rather than one after the other", async () => {
|
|
109
112
|
const RESOLVER_DELAY_MS = 300;
|
|
110
113
|
const PROVIDER_COUNT = 4;
|
|
@@ -123,7 +126,7 @@ describe("[unit] implementations/dms/page — dynamic menu hardening", () => {
|
|
|
123
126
|
for (const dispose of disposers)
|
|
124
127
|
dispose();
|
|
125
128
|
}
|
|
126
|
-
})
|
|
129
|
+
});
|
|
127
130
|
it("survives a provider unregistering while the resolvers run", async () => {
|
|
128
131
|
let disposeSecond;
|
|
129
132
|
const first = (0, page_2.RegisterDynamicMenuProvider)(CATEGORY_FULL_ID, async () => {
|
|
@@ -163,6 +166,6 @@ describe("[unit] implementations/dms/page — dynamic menu hardening", () => {
|
|
|
163
166
|
first();
|
|
164
167
|
second();
|
|
165
168
|
}
|
|
166
|
-
})
|
|
169
|
+
});
|
|
167
170
|
});
|
|
168
171
|
//# sourceMappingURL=dynamic-menu-hardening.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-menu-hardening.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/implementations/dms/dynamic-menu-hardening.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAAgE;AAChE,+BAA8B;AAC9B,+DAG8C;AAC9C,6FAA+E;AAC/E,8GAAgG;AAChG,gGAAkF;AAClF,yDAMwC;AACxC,4FAA8E;AAC9E,6GAA+F;AAC/F,+FAAiF;AAEjF,8DAGsC;AAEtC,MAAM,MAAM,GAAG,uBAAuB,CAAC;AACvC,MAAM,gBAAgB,GAAG,oBAAa,CAAC,MAAM,CAAC;AAC9C,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,uBAAuB,EAAU,CAAC;AACxD,MAAM,WAAW,GAAG,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"dynamic-menu-hardening.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/implementations/dms/dynamic-menu-hardening.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,12 +47,13 @@ const permissionsInterface = __importStar(require("@antelopejs/interface-dms/per
|
|
|
47
47
|
const permissionsResolverInterface = __importStar(require("@antelopejs/interface-dms/permissions-resolver"));
|
|
48
48
|
const tenantAccessInterface = __importStar(require("@antelopejs/interface-dms/tenant-access"));
|
|
49
49
|
const permission_ids_1 = require("@antelopejs/interface-dms/internal/permission-ids");
|
|
50
|
+
const resolver_timeout_1 = require("../../../../implementations/dms/resolver-timeout");
|
|
50
51
|
const page_access_1 = require("../../../helpers/page-access");
|
|
51
52
|
const TENANT = "layout-banner-tenant";
|
|
52
53
|
const DENIED_TENANT = "layout-banner-denied-tenant";
|
|
53
54
|
const MEMBER = { _id: "layout-banner-member" };
|
|
54
55
|
const GRANTED_PERMISSION = "pages.layout-banner-page";
|
|
55
|
-
const RESOLVER_TIMEOUT_MS =
|
|
56
|
+
const RESOLVER_TIMEOUT_MS = 300;
|
|
56
57
|
const gateInfo = (0, page_access_1.denyingTenantGate)("layout-banner-gate", DENIED_TENANT);
|
|
57
58
|
async function bannersFor(tenantId = TENANT, user = MEMBER) {
|
|
58
59
|
const { memberModel, roleModel } = (0, page_access_1.stubPageAccessModels)([GRANTED_PERMISSION]);
|
|
@@ -191,10 +192,16 @@ describe("[unit] implementations/dms/layout-banners — site layout resolution",
|
|
|
191
192
|
text: "hanging",
|
|
192
193
|
visible: () => new Promise(() => undefined),
|
|
193
194
|
}));
|
|
194
|
-
const
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
195
|
+
const restoreTimeout = (0, resolver_timeout_1.overrideResolverTimeout)(RESOLVER_TIMEOUT_MS);
|
|
196
|
+
try {
|
|
197
|
+
const started = Date.now();
|
|
198
|
+
(0, chai_1.expect)(await bannerKeys()).to.deep.equal([]);
|
|
199
|
+
(0, chai_1.expect)(Date.now() - started).to.be.lessThan(RESOLVER_TIMEOUT_MS * 3);
|
|
200
|
+
}
|
|
201
|
+
finally {
|
|
202
|
+
restoreTimeout();
|
|
203
|
+
}
|
|
204
|
+
});
|
|
198
205
|
it("skips an untyped banner that has no content", async () => {
|
|
199
206
|
const contentless = {
|
|
200
207
|
key: "empty",
|
|
@@ -276,8 +283,14 @@ describe("[unit] implementations/dms/layout-banners — site layout resolution",
|
|
|
276
283
|
variant: "info",
|
|
277
284
|
resolve: () => ({ text: "$banner.ok" }),
|
|
278
285
|
}));
|
|
279
|
-
(0,
|
|
280
|
-
|
|
286
|
+
const restoreTimeout = (0, resolver_timeout_1.overrideResolverTimeout)(RESOLVER_TIMEOUT_MS);
|
|
287
|
+
try {
|
|
288
|
+
(0, chai_1.expect)(await bannerKeys()).to.deep.equal(["healthy"]);
|
|
289
|
+
}
|
|
290
|
+
finally {
|
|
291
|
+
restoreTimeout();
|
|
292
|
+
}
|
|
293
|
+
});
|
|
281
294
|
it("replaces a banner re-registered under the same key, and drops it on dispose", async () => {
|
|
282
295
|
(0, layout_banners_1.RegisterLayoutBanner)({ key: "same", variant: "info", text: "first" });
|
|
283
296
|
const dispose = (0, layout_banners_1.RegisterLayoutBanner)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-banners.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/implementations/dms/layout-banners.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAAgE;AAChE,+BAA8B;AAC9B,+DAG8C;AAC9C,kGAAoF;AACpF,6FAA+E;AAC/E,8GAAgG;AAChG,gGAAkF;AAClF,iGAAmF;AACnF,6EAIkD;AAClD,yDAAmF;AACnF,4FAA8E;AAC9E,6GAA+F;AAC/F,+FAAiF;AACjF,sFAA4F;AAG5F,8DAGsC;AAEtC,MAAM,MAAM,GAAG,sBAAsB,CAAC;AACtC,MAAM,aAAa,GAAG,6BAA6B,CAAC;AACpD,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,sBAAsB,EAAU,CAAC;AACvD,MAAM,kBAAkB,GAAG,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"layout-banners.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/implementations/dms/layout-banners.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import type { DefaultComponentProps } from "../../../../dms-core/app/types/compo
|
|
|
4
4
|
import { GRID_CONTEXT, type GridContext } from "./constants";
|
|
5
5
|
import {
|
|
6
6
|
GRID_DEFAULT_MIN_COLUMN_WIDTH,
|
|
7
|
+
gridCollapsedCellStyles,
|
|
7
8
|
gridColumnsTemplate,
|
|
8
9
|
gridResponsiveStyles,
|
|
9
10
|
gridScopeId,
|
|
@@ -39,13 +40,20 @@ const columnsTemplate = computed(() =>
|
|
|
39
40
|
// its spans reach are container queries on its own width, identical in the
|
|
40
41
|
// server render and the browser (see gridResponsiveStyles).
|
|
41
42
|
const scope = gridScopeId(props.componentId || useId());
|
|
43
|
+
// Its cells close over the ones their blocks leave empty
|
|
44
|
+
// (see gridCollapsedCellStyles).
|
|
42
45
|
const responsiveStyles = computed(() =>
|
|
43
|
-
|
|
44
|
-
scope,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
[
|
|
47
|
+
gridCollapsedCellStyles(scope, maxColumns.value),
|
|
48
|
+
gridResponsiveStyles(
|
|
49
|
+
scope,
|
|
50
|
+
maxColumns.value,
|
|
51
|
+
gap.value,
|
|
52
|
+
minColumnWidth.value,
|
|
53
|
+
),
|
|
54
|
+
]
|
|
55
|
+
.filter(Boolean)
|
|
56
|
+
.join("\n"),
|
|
49
57
|
);
|
|
50
58
|
|
|
51
59
|
const rowStyle = computed(() => ({
|
|
@@ -112,6 +112,43 @@ export function gridResponsiveStyles(
|
|
|
112
112
|
return rules.join("\n");
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
+
/**
|
|
116
|
+
* A cell whose block renders nothing (an element holding only comments):
|
|
117
|
+
* a block hidden by its own condition, not a spacer, which is empty on
|
|
118
|
+
* purpose to line the next cells up.
|
|
119
|
+
*/
|
|
120
|
+
const COLLAPSED_CELL = ":empty:not(.dms-spacer)";
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* The rules that let a row close over the cells its blocks leave empty, as a
|
|
124
|
+
* stylesheet: an empty cell takes no track, and the last filled cell before a
|
|
125
|
+
* run of trailing empty ones spans their tracks too, so a block whose
|
|
126
|
+
* neighbour turned itself off fills the row instead of leaving a hole beside
|
|
127
|
+
* it. The span is clamped to the tracks left like any other (see
|
|
128
|
+
* `gridResponsiveStyles`). The row's own stylesheet is its last child, which
|
|
129
|
+
* is what closes the trailing run.
|
|
130
|
+
*/
|
|
131
|
+
export function gridCollapsedCellStyles(
|
|
132
|
+
scope: string,
|
|
133
|
+
maxColumns: number,
|
|
134
|
+
): string {
|
|
135
|
+
const columns = Math.max(maxColumns, SINGLE_COLUMN);
|
|
136
|
+
if (columns <= SINGLE_COLUMN) return "";
|
|
137
|
+
const cells = `[data-dms-grid="${scope}"] > `;
|
|
138
|
+
const rules = [`${cells}${COLLAPSED_CELL} { display: none; }`];
|
|
139
|
+
for (let trailing = SINGLE_COLUMN; trailing < columns; trailing++) {
|
|
140
|
+
const run = Array.from(
|
|
141
|
+
{ length: trailing },
|
|
142
|
+
() => `+ ${COLLAPSED_CELL} `,
|
|
143
|
+
).join("");
|
|
144
|
+
const span = trailing + SINGLE_COLUMN;
|
|
145
|
+
rules.push(
|
|
146
|
+
`${cells}:not(${COLLAPSED_CELL}):has(${run}+ style:last-child) { grid-column: span min(${span}, var(${GRID_TRACKS_VAR}, ${span})); }`,
|
|
147
|
+
);
|
|
148
|
+
}
|
|
149
|
+
return rules.join("\n");
|
|
150
|
+
}
|
|
151
|
+
|
|
115
152
|
/**
|
|
116
153
|
* Prints a grid's responsive stylesheet inside the grid element. A render
|
|
117
154
|
* function rather than template text: the server escapes interpolated text,
|
|
@@ -160,8 +160,8 @@ importers:
|
|
|
160
160
|
specifier: '>=1.13.4 <2'
|
|
161
161
|
version: 1.13.5
|
|
162
162
|
'@antelopejs/dms-frontend':
|
|
163
|
-
specifier: '>=0.5.
|
|
164
|
-
version: 0.5.
|
|
163
|
+
specifier: '>=0.5.6 <0.6.0'
|
|
164
|
+
version: 0.5.6(@antelopejs/core@1.13.5)
|
|
165
165
|
'@eslint/js':
|
|
166
166
|
specifier: ^8.57.0
|
|
167
167
|
version: 8.57.0
|
|
@@ -237,8 +237,8 @@ packages:
|
|
|
237
237
|
engines: {node: '>=20.19'}
|
|
238
238
|
hasBin: true
|
|
239
239
|
|
|
240
|
-
'@antelopejs/dms-frontend@0.5.
|
|
241
|
-
resolution: {integrity: sha512-
|
|
240
|
+
'@antelopejs/dms-frontend@0.5.6':
|
|
241
|
+
resolution: {integrity: sha512-bO7kacKMF1rVsIjS208rhPUoIxRYss6ZuQCdQ1Kpq5D3pG0qSvF2pNsi+WecvxTOKM8d6AQAoLl5facu5tyHFQ==}
|
|
242
242
|
engines: {node: '>=20.12.0'}
|
|
243
243
|
hasBin: true
|
|
244
244
|
peerDependencies:
|
|
@@ -4208,7 +4208,7 @@ snapshots:
|
|
|
4208
4208
|
semver: 7.8.5
|
|
4209
4209
|
typescript: 5.9.3
|
|
4210
4210
|
|
|
4211
|
-
'@antelopejs/dms-frontend@0.5.
|
|
4211
|
+
'@antelopejs/dms-frontend@0.5.6(@antelopejs/core@1.13.5)':
|
|
4212
4212
|
dependencies:
|
|
4213
4213
|
'@antelopejs/core': 1.13.5
|
|
4214
4214
|
chokidar: 4.0.3
|
|
@@ -5,8 +5,6 @@
|
|
|
5
5
|
* leaves with its component, and focusing a field by id. A page opened on a
|
|
6
6
|
* field's anchor focuses that field.
|
|
7
7
|
*/
|
|
8
|
-
import { readFileSync } from "node:fs";
|
|
9
|
-
import { resolve } from "node:path";
|
|
10
8
|
import { createApp, defineComponent, h } from "vue";
|
|
11
9
|
import { afterEach, describe, expect, it, vi } from "vitest";
|
|
12
10
|
import {
|
|
@@ -120,22 +118,3 @@ describe("a field's anchor", () => {
|
|
|
120
118
|
expect(linkedFieldId("#%E0%A4%A", FIELD_IDS)).toBe(undefined);
|
|
121
119
|
});
|
|
122
120
|
});
|
|
123
|
-
|
|
124
|
-
describe("the Form", () => {
|
|
125
|
-
const formSource = readFileSync(
|
|
126
|
-
resolve(__dirname, "../layers/dms-ui/app/components/form/Form.vue"),
|
|
127
|
-
"utf8",
|
|
128
|
-
);
|
|
129
|
-
|
|
130
|
-
it("offers its fields the submit, its validators and the focus", () => {
|
|
131
|
-
expect(formSource).toMatch(
|
|
132
|
-
/provide\(FORM_HANDLE_KEY, \{\s*submit: async \(\) => \{\s*await form\.value\?\.submit\(\);\s*\},\s*registerValidator,\s*revealField,\s*\}\);/,
|
|
133
|
-
);
|
|
134
|
-
});
|
|
135
|
-
|
|
136
|
-
it("follows the anchor of a field once mounted, a page form only", () => {
|
|
137
|
-
expect(formSource).toMatch(
|
|
138
|
-
/if \(!inFormContainer && !container\) \{\s*const followFieldAnchor = \(\) => \{\s*const fieldId = linkedFieldId\(window\.location\.hash, allFieldIds\.value\);/,
|
|
139
|
-
);
|
|
140
|
-
});
|
|
141
|
-
});
|