@antelopejs/interface-dms 0.10.1 → 0.10.2

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 CHANGED
@@ -1,5 +1,33 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.10.2
4
+
5
+ [compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.10.1...v0.10.2)
6
+
7
+ ### 🩹 Fixes
8
+
9
+ - **chart:** Draw only the fetched series that carry their points ([#587](https://github.com/AntelopeJS/dms/pull/587))
10
+ - **store:** Remove the archived CI/CD module from the catalog ([#609](https://github.com/AntelopeJS/dms/pull/609))
11
+ - **tenants:** Resume the default tenant's provisioning after start ([#613](https://github.com/AntelopeJS/dms/pull/613))
12
+ - **dms-ui:** Hydrate keyboard hints with the platform the server rendered ([#442](https://github.com/AntelopeJS/dms/pull/442))
13
+ - **dms-ui:** Print Nuxt UI key hints for the dashboard's keyboard platform ([#541](https://github.com/AntelopeJS/dms/pull/541))
14
+ - **playground:** Declare the playground's frontend, so dev and production include it ([#441](https://github.com/AntelopeJS/dms/pull/441))
15
+ - **frontend:** Unify API error presentation ([#614](https://github.com/AntelopeJS/dms/pull/614))
16
+
17
+ ### 📖 Documentation
18
+
19
+ - **readme:** Restore the realtime updates line and the live preview wording ([#589](https://github.com/AntelopeJS/dms/pull/589))
20
+ - **readme:** Remove the How AntelopeJS makes money section ([#592](https://github.com/AntelopeJS/dms/pull/592))
21
+
22
+ ### 🏡 Chore
23
+
24
+ - **release:** @antelopejs/dms v0.12.1 ([97b7122d](https://github.com/AntelopeJS/dms/commit/97b7122d))
25
+
26
+ ### ❤️ Contributors
27
+
28
+ - Antony Rizzitelli ([@Upd4ting](http://github.com/Upd4ting))
29
+ - Alessandro Aloisio ([@alessaloisio](http://github.com/alessaloisio))
30
+
3
31
  ## v0.10.1
4
32
 
5
33
  [compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.10.0...v0.10.1)
@@ -3,6 +3,8 @@ export declare const tenantsTableName = "tenants";
3
3
  export declare class Tenant extends Table {
4
4
  _id: string;
5
5
  name: string;
6
+ /** True while default tenant provisioning must be retried. Absent means provisioned. */
7
+ provisioningPending?: boolean;
6
8
  createdAt: Date;
7
9
  updatedAt: Date;
8
10
  }
@@ -24,6 +24,10 @@ __decorate([
24
24
  (0, interface_database_decorators_1.Field)("string"),
25
25
  __metadata("design:type", String)
26
26
  ], Tenant.prototype, "name", void 0);
27
+ __decorate([
28
+ (0, interface_database_decorators_1.Field)("boolean"),
29
+ __metadata("design:type", Boolean)
30
+ ], Tenant.prototype, "provisioningPending", void 0);
27
31
  __decorate([
28
32
  (0, interface_database_decorators_1.CreationTime)(),
29
33
  (0, interface_database_decorators_1.Index)(),
@@ -1 +1 @@
1
- {"version":3,"file":"tenants.table.js","sourceRoot":"","sources":["../../../src/db/tables/tenants.table.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6FAOmD;AACnD,+CAAmD;AAEtC,QAAA,gBAAgB,GAAG,SAAS,CAAC;AAGnC,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,qCAAK;CAgBhC,CAAA;AAhBY,wBAAM;AAET;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;mCACI;AAGZ;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;oCACK;AAKb;IAHP,IAAA,4CAAY,GAAE;IACd,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;yCAAC;AAKhB;IAHP,IAAA,0CAAU,GAAE;IACZ,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;yCAAC;iBAfb,MAAM;IADlB,IAAA,6CAAa,EAAC,wBAAgB,EAAE,4BAAgB,CAAC;GACrC,MAAM,CAgBlB"}
1
+ {"version":3,"file":"tenants.table.js","sourceRoot":"","sources":["../../../src/db/tables/tenants.table.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6FAOmD;AACnD,+CAAmD;AAEtC,QAAA,gBAAgB,GAAG,SAAS,CAAC;AAGnC,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,qCAAK;CAoBhC,CAAA;AApBY,wBAAM;AAET;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;mCACI;AAGZ;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;oCACK;AAIb;IADP,IAAA,qCAAK,EAAC,SAAS,CAAC;;mDACqB;AAK9B;IAHP,IAAA,4CAAY,GAAE;IACd,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;yCAAC;AAKhB;IAHP,IAAA,0CAAU,GAAE;IACZ,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;yCAAC;iBAnBb,MAAM;IADlB,IAAA,6CAAa,EAAC,wBAAgB,EAAE,4BAAgB,CAAC;GACrC,MAAM,CAoBlB"}
@@ -6,9 +6,9 @@ import { type TenantProvisioningHookPayload } from "./hooks";
6
6
  * handler, so no handler ever runs before it, whatever order the modules
7
7
  * registered in.
8
8
  *
9
- * Call it once per tenant, at its creation, and fire the hook through it
10
- * only. A handler that throws rejects the call, and the caller unwinds the
11
- * tenant it was creating.
9
+ * Fire the hook only through this function. A handler that throws rejects the
10
+ * call. Signup callers unwind the tenant they were creating. Default tenant
11
+ * provisioning retains its pending row and retries this function after startup.
12
12
  *
13
13
  * @param payload Tenant being provisioned and what the caller carries along
14
14
  */
@@ -12,9 +12,9 @@ const hooks_1 = require("./hooks");
12
12
  * handler, so no handler ever runs before it, whatever order the modules
13
13
  * registered in.
14
14
  *
15
- * Call it once per tenant, at its creation, and fire the hook through it
16
- * only. A handler that throws rejects the call, and the caller unwinds the
17
- * tenant it was creating.
15
+ * Fire the hook only through this function. A handler that throws rejects the
16
+ * call. Signup callers unwind the tenant they were creating. Default tenant
17
+ * provisioning retains its pending row and retries this function after startup.
18
18
  *
19
19
  * @param payload Tenant being provisioned and what the caller carries along
20
20
  */
@@ -544,6 +544,27 @@ export async function construct(): Promise<void> {
544
544
  }
545
545
  ```
546
546
 
547
+ The frontend reads the project, not the backend's registrations: `ajs dms dev`, `ajs dms build` and `ajs dms start` call the module's `frontendModule` function, named as `dmsFrontend` in the module's `package.json` (`"dmsFrontend": "dist/frontend-module.js"`). Keep the registration in that pure function of the module's config, and pass its result to `AddFrontendModule`; a module that only calls `AddFrontendModule` is left out of the frontend, in development as in production.
548
+
549
+ ```typescript
550
+ import path from "node:path";
551
+ import type { FrontendModuleFunction } from "@antelopejs/interface-dms/page";
552
+
553
+ interface BillingConfig {
554
+ prefix?: string;
555
+ }
556
+
557
+ export const frontendModule: FrontendModuleFunction<BillingConfig> = (
558
+ config,
559
+ ) => ({
560
+ name: "@acme/dms-billing",
561
+ sourcePath: path.join(__dirname, "../frontend-vue"),
562
+ renderer: { name: "vue", version: "3" },
563
+ configKey: "dmsBilling",
564
+ options: { prefix: config.prefix ?? "Billing" },
565
+ });
566
+ ```
567
+
547
568
  ### `AddFrontendModuleOptions`
548
569
 
549
570
  | Option | Type | Description |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antelopejs/interface-dms",
3
- "version": "0.10.1",
3
+ "version": "0.10.2",
4
4
  "description": "Public AntelopeJS interfaces of the DMS: pages, components, permissions, tenancy, auth, notifications and HTML rendering.",
5
5
  "keywords": [
6
6
  "antelopejs",