@antelopejs/dms 0.4.2 → 0.4.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.
Files changed (51) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/dist/pages/settings/users/invites.js +6 -5
  3. package/dist/pages/settings/users/invites.js.map +1 -1
  4. package/dist/pages/settings/users/members.d.ts +1 -0
  5. package/dist/pages/settings/users/members.js +12 -3
  6. package/dist/pages/settings/users/members.js.map +1 -1
  7. package/dist/test/unit/interfaces/dms-base/form-catalog.test.d.ts +1 -0
  8. package/dist/test/unit/interfaces/dms-base/form-catalog.test.js +62 -0
  9. package/dist/test/unit/interfaces/dms-base/form-catalog.test.js.map +1 -0
  10. package/dist/test/unit/interfaces/dms-base/period-selector-catalog.test.d.ts +1 -0
  11. package/dist/test/unit/interfaces/dms-base/period-selector-catalog.test.js +36 -0
  12. package/dist/test/unit/interfaces/dms-base/period-selector-catalog.test.js.map +1 -0
  13. package/dist/test/unit/interfaces/dms-base/resource-form.test.d.ts +1 -0
  14. package/dist/test/unit/interfaces/dms-base/resource-form.test.js +117 -0
  15. package/dist/test/unit/interfaces/dms-base/resource-form.test.js.map +1 -0
  16. package/dist/test/unit/interfaces/dms-base/table-and-card-catalog.test.d.ts +1 -0
  17. package/dist/test/unit/interfaces/dms-base/table-and-card-catalog.test.js +62 -0
  18. package/dist/test/unit/interfaces/dms-base/table-and-card-catalog.test.js.map +1 -0
  19. package/frontend-vue/dms.frontend.ts +2 -0
  20. package/frontend-vue/layers/dms-layout/app/build/components/layout/DashboardHeader.vue +4 -2
  21. package/frontend-vue/layers/dms-layout/app/composables/general/types/index.ts +7 -0
  22. package/frontend-vue/layers/dms-layout/app/composables/general/useColorModePreference.ts +17 -0
  23. package/frontend-vue/layers/dms-layout/app/custom-pages/settings/appearance.vue +6 -6
  24. package/frontend-vue/layers/dms-layout/app/plugins/color-mode.ts +100 -0
  25. package/frontend-vue/layers/dms-ui/app/components/Placeholder.vue +17 -5
  26. package/frontend-vue/layers/dms-ui/app/components/chart/ChartCard.vue +14 -9
  27. package/frontend-vue/layers/dms-ui/app/components/form/Form.vue +49 -6
  28. package/frontend-vue/layers/dms-ui/app/components/form/components/Calendar.vue +49 -26
  29. package/frontend-vue/layers/dms-ui/app/components/form/components/DatePicker.vue +77 -32
  30. package/frontend-vue/layers/dms-ui/app/components/grid/Grid.vue +15 -5
  31. package/frontend-vue/layers/dms-ui/app/components/grid/GridRow.vue +7 -4
  32. package/frontend-vue/layers/dms-ui/app/components/grid/constants.ts +8 -1
  33. package/frontend-vue/layers/dms-ui/app/components/kpi/KpiCard.vue +14 -9
  34. package/frontend-vue/layers/dms-ui/app/composables/chart/formatValue.ts +15 -0
  35. package/frontend-vue/layers/dms-ui/app/composables/chart/types.ts +4 -2
  36. package/frontend-vue/layers/dms-ui/app/composables/chart/useThemeRevision.ts +0 -22
  37. package/frontend-vue/layers/dms-ui/app/composables/form/types/props.ts +2 -0
  38. package/frontend-vue/layers/dms-ui/app/composables/form/useForm.ts +76 -4
  39. package/frontend-vue/layers/dms-ui/app/composables/tree/useTree.ts +5 -7
  40. package/frontend-vue/layers/dms-ui/i18n/locales/ui-en-GB.json +2 -0
  41. package/frontend-vue/layers/dms-ui/i18n/locales/ui-fr-FR.json +2 -0
  42. package/frontend-vue/package.json +2 -2
  43. package/frontend-vue/pnpm-lock.yaml +7 -33
  44. package/frontend-vue/tests/chart-absent-value.test.ts +78 -0
  45. package/frontend-vue/tests/color-mode-server-render.test.ts +84 -0
  46. package/frontend-vue/tests/color-mode-sync.test.ts +320 -0
  47. package/frontend-vue/tests/form-actions.test.ts +27 -0
  48. package/frontend-vue/tests/form-required-fields.test.ts +44 -0
  49. package/frontend-vue/tests/form-submit-target.test.ts +28 -0
  50. package/frontend-vue/tests/tree-without-source.test.ts +79 -0
  51. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,48 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.4.4
4
+
5
+ [compare changes](https://github.com/AntelopeJS/dms/compare/v0.4.3...v0.4.4)
6
+
7
+ ### 🚀 Enhancements
8
+
9
+ - **base:** Declare where a block's data comes from, and arrange the answer ([#15](https://github.com/AntelopeJS/dms/pull/15))
10
+
11
+ ### 🏡 Chore
12
+
13
+ - **release:** @antelopejs/interface-dms v0.2.3 ([726ddbb](https://github.com/AntelopeJS/dms/commit/726ddbb))
14
+
15
+ ### ❤️ Contributors
16
+
17
+ - Fabrice Cst <fabrice@altab.be>
18
+
19
+ ## v0.4.3
20
+
21
+ [compare changes](https://github.com/AntelopeJS/dms/compare/v0.4.2...v0.4.3)
22
+
23
+ ### 🚀 Enhancements
24
+
25
+ - **form:** Mark required fields and add a required legend ([#46](https://github.com/AntelopeJS/dms/pull/46))
26
+ - **settings:** Reach pending invites from the members page ([#47](https://github.com/AntelopeJS/dms/pull/47))
27
+
28
+ ### 🩹 Fixes
29
+
30
+ - **playground:** Build the dms and the playground before starting ([ce1e7bd](https://github.com/AntelopeJS/dms/commit/ce1e7bd))
31
+ - **form:** Handle partial ranges and show range and multiple dates in the date picker ([b12efcf](https://github.com/AntelopeJS/dms/commit/b12efcf))
32
+ - **form:** Emit ISO strings for multiple dates in the calendar and date picker ([327ebc2](https://github.com/AntelopeJS/dms/commit/327ebc2))
33
+ - **layout:** Keep the current page in the breadcrumb when the URL has a query ([#53](https://github.com/AntelopeJS/dms/pull/53))
34
+ - **layout:** Keep the color-mode preference in a dms-color-mode cookie ([#56](https://github.com/AntelopeJS/dms/pull/56))
35
+
36
+ ### 🏡 Chore
37
+
38
+ - **release:** @antelopejs/interface-dms v0.2.2 ([2be2aba](https://github.com/AntelopeJS/dms/commit/2be2aba))
39
+ - **playground:** Add sibling pages whose slugs share a prefix ([#49](https://github.com/AntelopeJS/dms/pull/49))
40
+
41
+ ### ❤️ Contributors
42
+
43
+ - Alessandro Aloisio ([@alessaloisio](http://github.com/alessaloisio))
44
+ - Antony Rizzitelli <rizzitelli.antony@pm.me>
45
+
3
46
  ## v0.4.2
4
47
 
5
48
  [compare changes](https://github.com/AntelopeJS/dms/compare/v0.4.1...v0.4.2)
@@ -30,9 +30,9 @@ const default_types_1 = require("@antelopejs/interface-dms/base/data-types/defau
30
30
  const status_type_1 = require("@antelopejs/interface-dms/base/data-types/status-type");
31
31
  const types_1 = require("@antelopejs/interface-dms/base/types");
32
32
  const fire_and_forget_1 = require("@antelopejs/interface-dms/utils/fire-and-forget");
33
- const category_1 = require("./category");
34
33
  const member_invite_form_1 = require("./member-invite-form");
35
34
  const members_1 = require("./members");
35
+ const INVITES_PERMISSION_ID = "settings.user.invites";
36
36
  let inviteSettingDataAPI = class inviteSettingDataAPI extends (0, interface_data_api_1.DataController)(db_1.UserInvite, {
37
37
  list: base_1.TableViewRoutes.List,
38
38
  get: base_1.TableViewRoutes.Get,
@@ -188,9 +188,10 @@ exports.inviteSettingDataAPI = inviteSettingDataAPI = __decorate([
188
188
  ], inviteSettingDataAPI);
189
189
  let InvitesSettingsController = class InvitesSettingsController extends (0, page_1.PageController)("invites", {
190
190
  displayName: "$menu.invites",
191
- category: category_1.userCategory,
191
+ category: members_1.MembersSettingsController,
192
+ permission: { id: INVITES_PERMISSION_ID },
193
+ hidden: true,
192
194
  icon: "i-ph-envelope-simple",
193
- order: 5,
194
195
  description: "$page.settings.description.invites",
195
196
  }) {
196
197
  static table = (0, base_1.TableView)(inviteSettingDataAPI, {
@@ -225,7 +226,7 @@ let InvitesSettingsController = class InvitesSettingsController extends (0, page
225
226
  icon: "i-ph-arrow-clockwise",
226
227
  target: {
227
228
  type: "api",
228
- url: "/settings/user/invites/{_id}/resend",
229
+ url: `${members_1.INVITES_PAGE_PATH}/{_id}/resend`,
229
230
  method: "POST",
230
231
  successMessage: "$page.settings.invites.action.resend_success",
231
232
  confirm: {
@@ -240,7 +241,7 @@ let InvitesSettingsController = class InvitesSettingsController extends (0, page
240
241
  icon: "i-ph-trash",
241
242
  target: {
242
243
  type: "api",
243
- url: "/settings/user/invites/{_id}/cancel",
244
+ url: `${members_1.INVITES_PAGE_PATH}/{_id}/cancel`,
244
245
  method: "DELETE",
245
246
  successMessage: "$page.settings.invites.action.cancel_success",
246
247
  confirm: {
@@ -1 +1 @@
1
- {"version":3,"file":"invites.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/invites.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invites.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/invites.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type RequestContext } from "@antelopejs/interface-api";
2
2
  import type { Action } from "@antelopejs/interface-dms/component";
3
3
  import { type User, UserModel } from "@antelopejs/interface-dms/auth/db";
4
+ export declare const INVITES_PAGE_PATH = "/settings/user/members/invites";
4
5
  export declare const membersTable: import("@antelopejs/interface-dms").ComponentBuilder<import("@antelopejs/interface-dms/base").TableViewOptionsSerialized>;
5
6
  export declare const membersTableAddAction: Action;
6
7
  declare const MembersSettingsController_base: {
@@ -12,7 +12,7 @@ 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 = void 0;
15
+ exports.MembersSettingsController = exports.membersTableAddAction = exports.membersTable = exports.INVITES_PAGE_PATH = void 0;
16
16
  const interface_api_1 = require("@antelopejs/interface-api");
17
17
  const interface_api_util_1 = require("@antelopejs/interface-api-util");
18
18
  const interface_data_api_1 = require("@antelopejs/interface-data-api");
@@ -28,13 +28,14 @@ const request_tenant_1 = require("@antelopejs/interface-dms/request-tenant");
28
28
  const tenant_ownership_1 = require("@antelopejs/interface-dms/tenant-ownership");
29
29
  const db_2 = require("@antelopejs/interface-dms/auth/db");
30
30
  const base_1 = require("@antelopejs/interface-dms/base");
31
+ const types_1 = require("@antelopejs/interface-dms/base/types");
31
32
  const saas_mode_1 = require("@antelopejs/interface-dms/utils/saas-mode");
32
33
  const member_invite_schema_1 = require("../../../validation/member-invite.schema");
33
34
  const category_1 = require("./category");
34
35
  const member_invite_form_1 = require("./member-invite-form");
35
36
  (0, interface_data_api_1.RegisterDataController)()(data_controllers_1.memberSettingDataAPI);
36
37
  const MEMBERS_PAGE_PATH = "/settings/user/members";
37
- const INVITES_PAGE_PATH = "/settings/user/invites";
38
+ exports.INVITES_PAGE_PATH = `${MEMBERS_PAGE_PATH}/invites`;
38
39
  function detectOwnerChange(current, body) {
39
40
  if (body.isTenantOwner === undefined)
40
41
  return null;
@@ -93,6 +94,14 @@ exports.membersTable = (0, base_1.TableView)(data_controllers_1.memberSettingDat
93
94
  ],
94
95
  },
95
96
  customButtons: [
97
+ {
98
+ label: "$menu.invites",
99
+ icon: "i-ph-envelope-simple",
100
+ color: "neutral",
101
+ variant: types_1.ButtonVariant.outline,
102
+ permission: "add",
103
+ target: { type: "page", url: exports.INVITES_PAGE_PATH },
104
+ },
96
105
  {
97
106
  label: "$page.settings.members.invite.button",
98
107
  icon: "i-ph-user-plus",
@@ -180,7 +189,7 @@ let MembersSettingsController = class MembersSettingsController extends (0, page
180
189
  extensions,
181
190
  });
182
191
  return {
183
- redirectPath: result.kind === "added" ? MEMBERS_PAGE_PATH : INVITES_PAGE_PATH,
192
+ redirectPath: result.kind === "added" ? MEMBERS_PAGE_PATH : exports.INVITES_PAGE_PATH,
184
193
  };
185
194
  }
186
195
  async validateMemberEmail(ctx, memberId, userModel) {
@@ -1 +1 @@
1
- {"version":3,"file":"members.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/members.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"members.js","sourceRoot":"","sources":["../../../../src/pages/settings/users/members.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const chai_1 = require("chai");
4
+ const block_types_1 = require("@antelopejs/interface-dms/base/block-types");
5
+ describe("[unit] interfaces/dms-base/form — its catalog entry", () => {
6
+ function entryBranches() {
7
+ const declared = (0, block_types_1.ListBlockTypes)().find((block) => block.type === "Form");
8
+ return declared?.config.fields?.items?.oneOf ?? [];
9
+ }
10
+ it("names both kinds of entry a form's fields can hold", () => {
11
+ (0, chai_1.expect)(entryBranches().map((branch) => branch.ui?.label)).to.deep.equal([
12
+ "Group",
13
+ "Field",
14
+ ]);
15
+ });
16
+ it("says a field's key and a group's can be derived from their label", () => {
17
+ const [group, field] = entryBranches();
18
+ (0, chai_1.expect)(field?.properties?.id?.ui?.derivedFrom).to.equal("label");
19
+ (0, chai_1.expect)(group?.properties?.id?.ui?.derivedFrom).to.equal("label");
20
+ });
21
+ it("says a field's default takes the field's own type", () => {
22
+ const [, field] = entryBranches();
23
+ (0, chai_1.expect)(field?.properties?.defaultValue?.ui?.typedBy).to.equal("type");
24
+ });
25
+ it("is placed showing its buttons, a setting of the advanced view", () => {
26
+ const config = (0, block_types_1.ListBlockTypes)().find((block) => block.type === "Form")?.config;
27
+ (0, chai_1.expect)(config?.showActions?.ui).to.include({
28
+ initial: true,
29
+ advanced: true,
30
+ });
31
+ });
32
+ it("leaves its addresses and methods to the advanced view", () => {
33
+ const config = (0, block_types_1.ListBlockTypes)().find((block) => block.type === "Form")?.config;
34
+ for (const key of [
35
+ "fetchUrl",
36
+ "fetchUrlMethod",
37
+ "submitUrl",
38
+ "submitUrlMethod",
39
+ ]) {
40
+ (0, chai_1.expect)(config?.[key]?.ui?.advanced, key).to.equal(true);
41
+ }
42
+ });
43
+ it("names what a group of fields is set up with", () => {
44
+ const [group] = entryBranches();
45
+ (0, chai_1.expect)(group?.properties?.label?.ui?.label).to.equal("Title");
46
+ (0, chai_1.expect)(group?.properties?.fields?.ui?.label).to.equal("Fields");
47
+ });
48
+ for (const type of ["Form", "ResourceForm"]) {
49
+ it(`puts the submit messages of a ${type} behind one switch`, () => {
50
+ const config = (0, block_types_1.ListBlockTypes)().find((block) => block.type === type)?.config;
51
+ (0, chai_1.expect)(config?.successMessage?.ui).to.include({
52
+ optIn: "Custom submit messages",
53
+ placeholder: "Data has been successfully saved",
54
+ });
55
+ (0, chai_1.expect)(config?.errorMessage?.ui).to.include({
56
+ optIn: "Custom submit messages",
57
+ placeholder: "An unknown error occurred",
58
+ });
59
+ });
60
+ }
61
+ });
62
+ //# sourceMappingURL=form-catalog.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-catalog.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/interfaces/dms-base/form-catalog.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const chai_1 = require("chai");
4
+ const block_types_1 = require("@antelopejs/interface-dms/base/block-types");
5
+ function periodSelectorConfig() {
6
+ const declared = (0, block_types_1.ListBlockTypes)().find((block) => block.type === "PeriodSelector");
7
+ (0, chai_1.expect)(declared, "PeriodSelector is declared").to.not.equal(undefined);
8
+ return declared.config;
9
+ }
10
+ describe("[unit] interfaces/dms-base/period-selector — its catalog entry", () => {
11
+ it("names the ranges a range label can be given for", () => {
12
+ const labels = periodSelectorConfig().presetLabels;
13
+ (0, chai_1.expect)(labels?.type).to.equal("record");
14
+ (0, chai_1.expect)(labels?.ui?.widget, "no longer a JSON box").to.equal(undefined);
15
+ (0, chai_1.expect)(labels?.keys?.enum).to.include("last-30-days");
16
+ (0, chai_1.expect)(labels?.keys?.ui?.valueLabels?.["ytd"]).to.equal("Year to date");
17
+ (0, chai_1.expect)(labels?.values?.type).to.equal("string");
18
+ });
19
+ it("names the comparisons a comparison label can be given for", () => {
20
+ const labels = periodSelectorConfig().comparisonLabels;
21
+ (0, chai_1.expect)(labels?.keys?.enum).to.deep.equal([
22
+ "none",
23
+ "previous-period",
24
+ "previous-year",
25
+ "custom",
26
+ ]);
27
+ (0, chai_1.expect)(labels?.keys?.ui?.valueLabels?.["previous-period"]).to.equal("vs previous period");
28
+ });
29
+ it("names the values of the pickers that choose a range", () => {
30
+ const config = periodSelectorConfig();
31
+ (0, chai_1.expect)(config.defaultPreset?.ui?.label, "its own hints still apply").to.equal("Default range");
32
+ (0, chai_1.expect)(config.defaultPreset?.ui?.valueLabels?.["last-7-days"]).to.equal("Last 7 days");
33
+ (0, chai_1.expect)(config.presets?.items?.ui?.valueLabels?.["today"]).to.equal("Today");
34
+ });
35
+ });
36
+ //# sourceMappingURL=period-selector-catalog.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"period-selector-catalog.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/interfaces/dms-base/period-selector-catalog.test.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,4EAA4E;AAE5E,SAAS,oBAAoB;IAC3B,MAAM,QAAQ,GAAG,IAAA,4BAAc,GAAE,CAAC,IAAI,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAC3C,CAAC;IACF,IAAA,aAAM,EAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACvE,OAAO,QAAS,CAAC,MAAM,CAAC;AAC1B,CAAC;AAOD,QAAQ,CAAC,gEAAgE,EAAE,GAAG,EAAE;IAC9E,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC,YAAY,CAAC;QAEnD,IAAA,aAAM,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAA,aAAM,EAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvE,IAAA,aAAM,EAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtD,IAAA,aAAM,EAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACxE,IAAA,aAAM,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC,gBAAgB,CAAC;QAEvD,IAAA,aAAM,EAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACvC,MAAM;YACN,iBAAiB;YACjB,eAAe;YACf,QAAQ;SACT,CAAC,CAAC;QACH,IAAA,aAAM,EAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CACjE,oBAAoB,CACrB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC;QAEtC,IAAA,aAAM,EACJ,MAAM,CAAC,aAAa,EAAE,EAAE,EAAE,KAAK,EAC/B,2BAA2B,CAC5B,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC5B,IAAA,aAAM,EAAC,MAAM,CAAC,aAAa,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CACrE,aAAa,CACd,CAAC;QACF,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const interface_api_1 = require("@antelopejs/interface-api");
13
+ const interface_data_api_1 = require("@antelopejs/interface-data-api");
14
+ const metadata_1 = require("@antelopejs/interface-data-api/metadata");
15
+ const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
16
+ const chai_1 = require("chai");
17
+ const block_types_1 = require("@antelopejs/interface-dms/base/block-types");
18
+ const default_types_1 = require("@antelopejs/interface-dms/base/data-types/default-types");
19
+ const factory_1 = require("@antelopejs/interface-dms/base/table-view/factory");
20
+ const meta_1 = require("@antelopejs/interface-dms/base/table-view/meta");
21
+ const resource_form_1 = require("@antelopejs/interface-dms/base/table-view/resource-form");
22
+ const routes_1 = require("@antelopejs/interface-dms/base/table-view/routes");
23
+ const http_1 = require("@antelopejs/interface-dms/base/types/http");
24
+ const SCHEMA = "resource-form-test";
25
+ const TABLE = "tickets";
26
+ const LOCATION = "/resource-form-test";
27
+ let Ticket = class Ticket extends interface_database_decorators_1.Table {
28
+ };
29
+ __decorate([
30
+ (0, interface_database_decorators_1.Field)("string"),
31
+ __metadata("design:type", String)
32
+ ], Ticket.prototype, "title", void 0);
33
+ __decorate([
34
+ (0, interface_database_decorators_1.Field)("string"),
35
+ __metadata("design:type", String)
36
+ ], Ticket.prototype, "reference", void 0);
37
+ Ticket = __decorate([
38
+ (0, interface_database_decorators_1.RegisterTable)(TABLE, SCHEMA)
39
+ ], Ticket);
40
+ class TicketModel extends (0, interface_database_decorators_1.BasicDataModel)(Ticket, TABLE) {
41
+ }
42
+ let TicketAPI = class TicketAPI extends (0, interface_data_api_1.DataController)(Ticket, routes_1.TableViewRoutes.All, (0, interface_api_1.Controller)(LOCATION)) {
43
+ };
44
+ __decorate([
45
+ (0, metadata_1.ModelReference)(),
46
+ (0, interface_database_decorators_1.Model)(TicketModel),
47
+ __metadata("design:type", TicketModel)
48
+ ], TicketAPI.prototype, "model", void 0);
49
+ __decorate([
50
+ (0, meta_1.Column)({ name: "Title", type: new default_types_1.DefaultDataTypes.StringType() }),
51
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadWrite),
52
+ __metadata("design:type", String)
53
+ ], TicketAPI.prototype, "title", void 0);
54
+ __decorate([
55
+ (0, meta_1.Column)({ name: "Reference", type: new default_types_1.DefaultDataTypes.StringType() }),
56
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadOnly),
57
+ __metadata("design:type", String)
58
+ ], TicketAPI.prototype, "reference", void 0);
59
+ TicketAPI = __decorate([
60
+ (0, interface_data_api_1.RegisterDataController)()
61
+ ], TicketAPI);
62
+ function optionsOf(builder) {
63
+ return builder.serializeSync().options;
64
+ }
65
+ function fieldIds(options) {
66
+ return options.fields.map((field) => field.id);
67
+ }
68
+ describe("[unit] interfaces/dms-base/resource-form — a form derived from its table", () => {
69
+ it("is the form a TableView opens for the mode", () => {
70
+ const table = (0, factory_1.TableView)(TicketAPI).serializeSync()
71
+ .options;
72
+ const created = optionsOf((0, resource_form_1.ResourceForm)(TicketAPI, { mode: "new" }));
73
+ (0, chai_1.expect)(created.submitUrl).to.equal(`${LOCATION}/new`);
74
+ (0, chai_1.expect)(created.submitUrlMethod).to.equal(http_1.HttpMethod.post);
75
+ const opened = table.formComponents.new?.options;
76
+ (0, chai_1.expect)(created.fetchUrl).to.equal(opened.fetchUrl);
77
+ (0, chai_1.expect)(fieldIds(created)).to.deep.equal(fieldIds(opened));
78
+ });
79
+ it("opens the row the page's query string names, in edit and view", () => {
80
+ const edited = optionsOf((0, resource_form_1.ResourceForm)(TicketAPI, { mode: "edit" }));
81
+ const shown = optionsOf((0, resource_form_1.ResourceForm)(TicketAPI, { mode: "view" }));
82
+ (0, chai_1.expect)(edited.fetchUrl).to.match(new RegExp(`^${LOCATION}/get\\?id=\\{\\{query\\.id\\}\\}&`));
83
+ (0, chai_1.expect)(edited.submitUrl).to.equal(`${LOCATION}/edit?id={{query.id}}`);
84
+ (0, chai_1.expect)(edited.submitUrlMethod).to.equal(http_1.HttpMethod.put);
85
+ (0, chai_1.expect)(shown.fetchUrl).to.equal(`${LOCATION}/get?id={{query.id}}`);
86
+ });
87
+ it("keeps the TableView's own pages on their :id segment", () => {
88
+ const table = (0, factory_1.TableView)(TicketAPI).serializeSync()
89
+ .options;
90
+ const opened = table.formComponents.edit?.options;
91
+ (0, chai_1.expect)(opened.submitUrl).to.equal(`${LOCATION}/edit?id={{params.id}}`);
92
+ });
93
+ it("reads a row without offering anywhere to send it", () => {
94
+ const shown = optionsOf((0, resource_form_1.ResourceForm)(TicketAPI, { mode: "view" }));
95
+ (0, chai_1.expect)(shown.submitUrl).to.equal(undefined);
96
+ (0, chai_1.expect)(shown.fields.every((field) => field.disabled)).to.equal(true);
97
+ });
98
+ it("carries its own wording and the row it was pointed at", () => {
99
+ const edited = optionsOf((0, resource_form_1.ResourceForm)(TicketAPI, {
100
+ mode: "edit",
101
+ title: "Edit the ticket",
102
+ submitLabel: "Save the ticket",
103
+ rowId: "{{params.ticket}}",
104
+ }));
105
+ (0, chai_1.expect)(edited.title).to.equal("Edit the ticket");
106
+ (0, chai_1.expect)(edited.submitLabel).to.equal("Save the ticket");
107
+ (0, chai_1.expect)(edited.submitUrl).to.equal(`${LOCATION}/edit?id={{params.ticket}}`);
108
+ (0, chai_1.expect)(edited, "the row token is the form's to resolve, not an option").to.not.have.property("rowId");
109
+ });
110
+ it("is declared as a block over a table, picked by mode", () => {
111
+ const declared = (0, block_types_1.ListBlockTypes)().find((block) => block.type === "ResourceForm");
112
+ (0, chai_1.expect)(declared?.controllerArg).to.equal(true);
113
+ (0, chai_1.expect)(declared?.config.mode?.enum).to.deep.equal(["new", "edit", "view"]);
114
+ (0, chai_1.expect)(declared?.config.fields, "fields come from the table").to.equal(undefined);
115
+ });
116
+ });
117
+ //# sourceMappingURL=resource-form.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-form.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/interfaces/dms-base/resource-form.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const chai_1 = require("chai");
4
+ const block_types_1 = require("@antelopejs/interface-dms/base/block-types");
5
+ function configOf(type) {
6
+ const declared = (0, block_types_1.ListBlockTypes)().find((block) => block.type === type);
7
+ (0, chai_1.expect)(declared, `${type} is declared`).to.not.equal(undefined);
8
+ return declared.config;
9
+ }
10
+ describe("[unit] interfaces/dms-base/table-view — its row actions in the catalog", () => {
11
+ const actions = () => configOf("TableView").rowActions?.properties ?? {};
12
+ it("says the actions a table offers by itself are on", () => {
13
+ for (const action of ["add", "edit", "delete", "duplicate", "copyLink"]) {
14
+ (0, chai_1.expect)(actions()[action]?.default, action).to.equal(true);
15
+ }
16
+ });
17
+ it("says when an action depends on another one", () => {
18
+ (0, chai_1.expect)(actions().details?.default).to.equal(undefined);
19
+ (0, chai_1.expect)(actions().details?.description).to.match(/editing is off/);
20
+ (0, chai_1.expect)(actions().archive?.default).to.equal(true);
21
+ (0, chai_1.expect)(actions().archive?.description).to.match(/ghost delete/);
22
+ });
23
+ it("leaves row selection off until it is turned on", () => {
24
+ (0, chai_1.expect)(actions().hasSelection?.default).to.equal(undefined);
25
+ });
26
+ });
27
+ describe("[unit] interfaces/dms-base/chart-card — the chart it wraps, in the catalog", () => {
28
+ it("names the options of its chart it supplies itself", () => {
29
+ const supplied = configOf("ChartCard").chart?.ui?.supplies;
30
+ (0, chai_1.expect)(supplied).to.include.members([
31
+ "fetchUrl",
32
+ "fetchUrlMethod",
33
+ "periodScope",
34
+ "title",
35
+ ]);
36
+ });
37
+ it("keeps a chart's backend-only settings for the advanced view", () => {
38
+ const chart = configOf("ChartLine");
39
+ (0, chai_1.expect)(chart.realtimeTopic?.ui?.advanced).to.equal(true);
40
+ (0, chai_1.expect)(chart.syncGroup?.ui?.advanced).to.equal(true);
41
+ (0, chai_1.expect)(chart.annotations?.ui?.advanced).to.equal(true);
42
+ (0, chai_1.expect)(chart.showGrid?.ui?.advanced, "a setting anyone reads").to.equal(undefined);
43
+ });
44
+ });
45
+ describe("[unit] interfaces/dms-base/chart-card — the switches it draws on", () => {
46
+ it("says a card shows its variation and its legend", () => {
47
+ const card = configOf("ChartCard");
48
+ (0, chai_1.expect)(card.showDelta?.default).to.equal(true);
49
+ (0, chai_1.expect)(card.showLegend?.default).to.equal(true);
50
+ });
51
+ it("says a chart shows what it draws unless told not to", () => {
52
+ const chart = configOf("ChartColumn");
53
+ for (const option of ["showTooltip", "showGrid", "roundedCorners"]) {
54
+ (0, chai_1.expect)(chart[option]?.default, option).to.equal(true);
55
+ }
56
+ (0, chai_1.expect)(configOf("ChartLine").smooth?.default).to.equal(true);
57
+ });
58
+ it("leaves what it only does when asked unset", () => {
59
+ (0, chai_1.expect)(configOf("ChartColumn").stacked?.default).to.equal(undefined);
60
+ });
61
+ });
62
+ //# sourceMappingURL=table-and-card-catalog.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-and-card-catalog.test.js","sourceRoot":"","sources":["../../../../../src/test/unit/interfaces/dms-base/table-and-card-catalog.test.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import authMiddleware from "./layers/dms-auth/app/middleware/auth";
9
9
  import homepageRedirectMiddleware from "./layers/dms-layout/app/middleware/homepage-redirect.global";
10
10
  import moduleRoutingMiddleware from "./layers/dms-layout/app/middleware/module-routing.global";
11
11
  import pageLeaveGuardMiddleware from "./layers/dms-layout/app/middleware/page-leave-guard.global";
12
+ import colorModePlugin from "./layers/dms-layout/app/plugins/color-mode";
12
13
  import interfaceScalePlugin from "./layers/dms-layout/app/plugins/interface-scale";
13
14
  import languageSyncPlugin from "./layers/dms-layout/app/plugins/language-sync";
14
15
  import seoPlugin from "./layers/dms-layout/app/plugins/seo";
@@ -143,6 +144,7 @@ function registerPlugins(sdk: Parameters<DmsFrontendModule["setup"]>[0]): void {
143
144
  await plugin.default(context);
144
145
  }, clientOnly);
145
146
  }
147
+ sdk.registerPlugin(colorModePlugin);
146
148
  sdk.registerPlugin(interfaceScalePlugin);
147
149
  sdk.registerPlugin(languageSyncPlugin);
148
150
  sdk.registerPlugin(seoPlugin);
@@ -93,11 +93,13 @@ const toggleCurrentPageFavorite = () => {
93
93
  const breadcrumb = computed((): BreadcrumbItem[] => {
94
94
  const base: BreadcrumbItem[] = [{ label: "home", to: homepage || "/" }];
95
95
 
96
- if (route.fullPath === (homepage || "/")) {
96
+ // The path only: with the query, the last segment ("data?table=x") matched
97
+ // no route and the current page dropped out of the breadcrumb.
98
+ if (route.path === (homepage || "/")) {
97
99
  return base;
98
100
  }
99
101
 
100
- const paths = route.fullPath.split("/").filter((path) => path);
102
+ const paths = route.path.split("/").filter((path) => path);
101
103
 
102
104
  return base.concat(
103
105
  paths
@@ -6,6 +6,13 @@ export interface ScaleOption {
6
6
  hint: string;
7
7
  }
8
8
 
9
+ export type ColorModePreference = "light" | "dark" | "system";
10
+
11
+ export interface ColorModeOption {
12
+ value: ColorModePreference;
13
+ label: string;
14
+ }
15
+
9
16
  export interface SystemStateMeta {
10
17
  title: string;
11
18
  description: string;
@@ -0,0 +1,17 @@
1
+ import type { ColorModePreference } from "./types";
2
+
3
+ export const COLOR_MODE_COOKIE = "dms-color-mode";
4
+ const COLOR_MODE_COOKIE_MAX_AGE = 60 * 60 * 24 * 365;
5
+ const DEFAULT_COLOR_MODE_PREFERENCE: ColorModePreference = "system";
6
+
7
+ /**
8
+ * The user's color mode as a cookie ref shared by every caller: assign it to
9
+ * change the theme. The server reads the same cookie, so an explicit `light`
10
+ * or `dark` is already in the rendered HTML; `system` resolves in the browser.
11
+ */
12
+ export const useColorModePreference = () => {
13
+ return useDmsCookie<ColorModePreference>(COLOR_MODE_COOKIE, {
14
+ default: () => DEFAULT_COLOR_MODE_PREFERENCE,
15
+ maxAge: COLOR_MODE_COOKIE_MAX_AGE,
16
+ });
17
+ };