@textrp/briij-js-sdk 43.1.1 → 43.2.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 CHANGED
@@ -1,7 +1,11 @@
1
- Changes in [43.1.0] (Unreleased - Briij JavaScript SDK)
1
+ Changes in [43.2.1] (Unreleased - Briij JavaScript SDK)
2
2
  ==================================================================================================
3
3
  BREAKING CHANGES
4
4
  ----------------
5
+ * Added mCredits endpoints for native monetization
6
+ * Added Admin mCredits emdpoints for package creation/update
7
+ ---
8
+ Changes in [43.0.0]
5
9
  * Added XRPL wallet login and recovery envelope support in the SDK.
6
10
  * Enhanced README with examples and documentation for new features, including wallet-backed encryption recovery.
7
11
  * Introduced new types and methods in the client for mCredits management and admin features.
@@ -0,0 +1,24 @@
1
+ import type { BriijClient } from "./client.ts";
2
+ export interface McreditPackage {
3
+ id: number;
4
+ name: string;
5
+ description?: string;
6
+ credits_amount: number;
7
+ price_usd_cents: number;
8
+ sort_order?: number;
9
+ is_active?: boolean;
10
+ }
11
+ export declare class CreditsClient {
12
+ private matrixClient;
13
+ constructor(matrixClient: BriijClient);
14
+ /**
15
+ * Public endpoint: Get packages available for purchase
16
+ */
17
+ getPackages(): Promise<McreditPackage[]>;
18
+ /**
19
+ * Admin only: Get all packages (including inactive) for admin UI
20
+ * Uses the current Matrix access token for authentication
21
+ */
22
+ getAdminPackages(): Promise<McreditPackage[]>;
23
+ }
24
+ //# sourceMappingURL=credits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credits.d.ts","sourceRoot":"","sources":["../src/credits.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,aAAa;IACZ,OAAO,CAAC,YAAY;gBAAZ,YAAY,EAAE,WAAW;IAE7C;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAgB9C;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;CAqBpD"}
package/lib/credits.js ADDED
@@ -0,0 +1,53 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ export class CreditsClient {
3
+ constructor(matrixClient) {
4
+ this.matrixClient = matrixClient;
5
+ }
6
+
7
+ /**
8
+ * Public endpoint: Get packages available for purchase
9
+ */
10
+ getPackages() {
11
+ var _this = this;
12
+ return _asyncToGenerator(function* () {
13
+ var baseUrl = _this.matrixClient.getHomeserverUrl();
14
+ var response = yield fetch("".concat(baseUrl, "/_briij/credits"), {
15
+ method: "GET",
16
+ headers: {
17
+ "Content-Type": "application/json"
18
+ }
19
+ });
20
+ if (!response.ok) {
21
+ throw new Error("Failed to fetch mCredits packages: ".concat(response.status));
22
+ }
23
+ return response.json();
24
+ })();
25
+ }
26
+
27
+ /**
28
+ * Admin only: Get all packages (including inactive) for admin UI
29
+ * Uses the current Matrix access token for authentication
30
+ */
31
+ getAdminPackages() {
32
+ var _this2 = this;
33
+ return _asyncToGenerator(function* () {
34
+ var baseUrl = _this2.matrixClient.getHomeserverUrl();
35
+ var accessToken = _this2.matrixClient.getAccessToken();
36
+ var response = yield fetch("".concat(baseUrl, "/_briij/admin/credits/packages"), {
37
+ method: "GET",
38
+ headers: {
39
+ "Content-Type": "application/json",
40
+ Authorization: "Bearer ".concat(accessToken)
41
+ }
42
+ });
43
+ if (!response.ok) {
44
+ if (response.status === 403) {
45
+ throw new Error("Admin access required");
46
+ }
47
+ throw new Error("Failed to fetch admin packages: ".concat(response.status));
48
+ }
49
+ return response.json();
50
+ })();
51
+ }
52
+ }
53
+ //# sourceMappingURL=credits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credits.js","names":["CreditsClient","constructor","matrixClient","getPackages","_this","_asyncToGenerator","baseUrl","getHomeserverUrl","response","fetch","concat","method","headers","ok","Error","status","json","getAdminPackages","_this2","accessToken","getAccessToken","Authorization"],"sources":["../src/credits.ts"],"sourcesContent":["import type { BriijClient } from \"./client.ts\";\n\nexport interface McreditPackage {\n id: number;\n name: string;\n description?: string;\n credits_amount: number;\n price_usd_cents: number;\n sort_order?: number;\n is_active?: boolean;\n}\n\nexport class CreditsClient {\n constructor(private matrixClient: BriijClient) {}\n\n /**\n * Public endpoint: Get packages available for purchase\n */\n async getPackages(): Promise<McreditPackage[]> {\n const baseUrl = this.matrixClient.getHomeserverUrl();\n const response = await fetch(`${baseUrl}/_briij/credits`, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n });\n\n if (!response.ok) {\n throw new Error(`Failed to fetch mCredits packages: ${response.status}`);\n }\n\n return response.json();\n }\n\n /**\n * Admin only: Get all packages (including inactive) for admin UI\n * Uses the current Matrix access token for authentication\n */\n async getAdminPackages(): Promise<McreditPackage[]> {\n const baseUrl = this.matrixClient.getHomeserverUrl();\n const accessToken = this.matrixClient.getAccessToken();\n\n const response = await fetch(`${baseUrl}/_briij/admin/credits/packages`, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`,\n },\n });\n\n if (!response.ok) {\n if (response.status === 403) {\n throw new Error(\"Admin access required\");\n }\n throw new Error(`Failed to fetch admin packages: ${response.status}`);\n }\n\n return response.json();\n }\n}\n"],"mappings":";AAYA,OAAO,MAAMA,aAAa,CAAC;EACzBC,WAAWA,CAASC,YAAyB,EAAE;IAAA,KAA3BA,YAAyB,GAAzBA,YAAyB;EAAG;;EAEhD;AACF;AACA;EACQC,WAAWA,CAAA,EAA8B;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MAC7C,IAAMC,OAAO,GAAGF,KAAI,CAACF,YAAY,CAACK,gBAAgB,CAAC,CAAC;MACpD,IAAMC,QAAQ,SAASC,KAAK,IAAAC,MAAA,CAAIJ,OAAO,sBAAmB;QACxDK,MAAM,EAAE,KAAK;QACbC,OAAO,EAAE;UACP,cAAc,EAAE;QAClB;MACF,CAAC,CAAC;MAEF,IAAI,CAACJ,QAAQ,CAACK,EAAE,EAAE;QAChB,MAAM,IAAIC,KAAK,uCAAAJ,MAAA,CAAuCF,QAAQ,CAACO,MAAM,CAAE,CAAC;MAC1E;MAEA,OAAOP,QAAQ,CAACQ,IAAI,CAAC,CAAC;IAAC;EACzB;;EAEA;AACF;AACA;AACA;EACQC,gBAAgBA,CAAA,EAA8B;IAAA,IAAAC,MAAA;IAAA,OAAAb,iBAAA;MAClD,IAAMC,OAAO,GAAGY,MAAI,CAAChB,YAAY,CAACK,gBAAgB,CAAC,CAAC;MACpD,IAAMY,WAAW,GAAGD,MAAI,CAAChB,YAAY,CAACkB,cAAc,CAAC,CAAC;MAEtD,IAAMZ,QAAQ,SAASC,KAAK,IAAAC,MAAA,CAAIJ,OAAO,qCAAkC;QACvEK,MAAM,EAAE,KAAK;QACbC,OAAO,EAAE;UACP,cAAc,EAAE,kBAAkB;UAClCS,aAAa,YAAAX,MAAA,CAAYS,WAAW;QACtC;MACF,CAAC,CAAC;MAEF,IAAI,CAACX,QAAQ,CAACK,EAAE,EAAE;QAChB,IAAIL,QAAQ,CAACO,MAAM,KAAK,GAAG,EAAE;UAC3B,MAAM,IAAID,KAAK,CAAC,uBAAuB,CAAC;QAC1C;QACA,MAAM,IAAIA,KAAK,oCAAAJ,MAAA,CAAoCF,QAAQ,CAACO,MAAM,CAAE,CAAC;MACvE;MAEA,OAAOP,QAAQ,CAACQ,IAAI,CAAC,CAAC;IAAC;EACzB;AACF","ignoreList":[]}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import * as briij from "./briij.ts";
2
2
  export * from "./briij.ts";
3
+ export * from "./credits";
4
+ export { CreditsClient } from "./credits";
3
5
  export default briij;
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAOpC,cAAc,YAAY,CAAC;AAC3B,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAOpC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,eAAe,KAAK,CAAC"}
package/lib/index.js CHANGED
@@ -20,5 +20,7 @@ if (globalThis.__briij_js_sdk_entrypoint) {
20
20
  }
21
21
  globalThis.__briij_js_sdk_entrypoint = true;
22
22
  export * from "./briij.js";
23
+ export * from "./credits";
24
+ export { CreditsClient } from "./credits";
23
25
  export default briij;
24
26
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["briij","globalThis","__briij_js_sdk_entrypoint","Error"],"sources":["../src/index.ts"],"sourcesContent":["/*\nCopyright 2019 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport * as briij from \"./briij.ts\";\n\nif (globalThis.__briij_js_sdk_entrypoint) {\n throw new Error(\"Multiple briij-js-sdk entrypoints detected!\");\n}\nglobalThis.__briij_js_sdk_entrypoint = true;\n\nexport * from \"./briij.ts\";\nexport default briij;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,KAAK,MAAM,YAAY;AAEnC,IAAIC,UAAU,CAACC,yBAAyB,EAAE;EACtC,MAAM,IAAIC,KAAK,CAAC,6CAA6C,CAAC;AAClE;AACAF,UAAU,CAACC,yBAAyB,GAAG,IAAI;AAE3C,cAAc,YAAY;AAC1B,eAAeF,KAAK","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["briij","globalThis","__briij_js_sdk_entrypoint","Error","CreditsClient"],"sources":["../src/index.ts"],"sourcesContent":["/*\nCopyright 2019 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport * as briij from \"./briij.ts\";\n\nif (globalThis.__briij_js_sdk_entrypoint) {\n throw new Error(\"Multiple briij-js-sdk entrypoints detected!\");\n}\nglobalThis.__briij_js_sdk_entrypoint = true;\n\nexport * from \"./briij.ts\";\nexport * from \"./credits\";\nexport { CreditsClient } from \"./credits\";\nexport default briij;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,KAAK,MAAM,YAAY;AAEnC,IAAIC,UAAU,CAACC,yBAAyB,EAAE;EACtC,MAAM,IAAIC,KAAK,CAAC,6CAA6C,CAAC;AAClE;AACAF,UAAU,CAACC,yBAAyB,GAAG,IAAI;AAE3C,cAAc,YAAY;AAC1B,cAAc,WAAW;AACzB,SAASE,aAAa,QAAQ,WAAW;AACzC,eAAeJ,KAAK","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@textrp/briij-js-sdk",
3
- "version": "43.1.1",
3
+ "version": "43.2.1",
4
4
  "description": "Briij Client-Server SDK for JavaScript and TypeScript",
5
5
  "engines": {
6
6
  "node": ">=22.0.0"
package/src/credits.ts ADDED
@@ -0,0 +1,60 @@
1
+ import type { BriijClient } from "./client.ts";
2
+
3
+ export interface McreditPackage {
4
+ id: number;
5
+ name: string;
6
+ description?: string;
7
+ credits_amount: number;
8
+ price_usd_cents: number;
9
+ sort_order?: number;
10
+ is_active?: boolean;
11
+ }
12
+
13
+ export class CreditsClient {
14
+ constructor(private matrixClient: BriijClient) {}
15
+
16
+ /**
17
+ * Public endpoint: Get packages available for purchase
18
+ */
19
+ async getPackages(): Promise<McreditPackage[]> {
20
+ const baseUrl = this.matrixClient.getHomeserverUrl();
21
+ const response = await fetch(`${baseUrl}/_briij/credits`, {
22
+ method: "GET",
23
+ headers: {
24
+ "Content-Type": "application/json",
25
+ },
26
+ });
27
+
28
+ if (!response.ok) {
29
+ throw new Error(`Failed to fetch mCredits packages: ${response.status}`);
30
+ }
31
+
32
+ return response.json();
33
+ }
34
+
35
+ /**
36
+ * Admin only: Get all packages (including inactive) for admin UI
37
+ * Uses the current Matrix access token for authentication
38
+ */
39
+ async getAdminPackages(): Promise<McreditPackage[]> {
40
+ const baseUrl = this.matrixClient.getHomeserverUrl();
41
+ const accessToken = this.matrixClient.getAccessToken();
42
+
43
+ const response = await fetch(`${baseUrl}/_briij/admin/credits/packages`, {
44
+ method: "GET",
45
+ headers: {
46
+ "Content-Type": "application/json",
47
+ Authorization: `Bearer ${accessToken}`,
48
+ },
49
+ });
50
+
51
+ if (!response.ok) {
52
+ if (response.status === 403) {
53
+ throw new Error("Admin access required");
54
+ }
55
+ throw new Error(`Failed to fetch admin packages: ${response.status}`);
56
+ }
57
+
58
+ return response.json();
59
+ }
60
+ }
package/src/index.ts CHANGED
@@ -22,4 +22,6 @@ if (globalThis.__briij_js_sdk_entrypoint) {
22
22
  globalThis.__briij_js_sdk_entrypoint = true;
23
23
 
24
24
  export * from "./briij.ts";
25
+ export * from "./credits";
26
+ export { CreditsClient } from "./credits";
25
27
  export default briij;