@ominity/api-typescript 0.0.2 → 0.0.3

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.
@@ -4,5 +4,6 @@ export { HTTPClient } from "./lib/http.js";
4
4
  export type { Fetcher, HTTPClientOptions } from "./lib/http.js";
5
5
  export * from "./core.js";
6
6
  export * from "./funcs/index.js";
7
+ export * from "./sdk/modules.js";
7
8
  export * from "./sdk/sdk.js";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
@@ -43,5 +43,6 @@ var http_js_1 = require("./lib/http.js");
43
43
  Object.defineProperty(exports, "HTTPClient", { enumerable: true, get: function () { return http_js_1.HTTPClient; } });
44
44
  __exportStar(require("./core.js"), exports);
45
45
  __exportStar(require("./funcs/index.js"), exports);
46
+ __exportStar(require("./sdk/modules.js"), exports);
46
47
  __exportStar(require("./sdk/sdk.js"), exports);
47
48
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAgC;AAChC,wDAAwC;AACxC,yCAA2C;AAAlC,qGAAA,UAAU,OAAA;AAEnB,4CAA0B;AAC1B,mDAAiC;AACjC,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAgC;AAChC,wDAAwC;AACxC,yCAA2C;AAAlC,qGAAA,UAAU,OAAA;AAEnB,4CAA0B;AAC1B,mDAAiC;AACjC,mDAAiC;AACjC,+CAA6B"}
@@ -42,12 +42,12 @@ export type SDKOptions = {
42
42
  debugLogger?: Logger;
43
43
  };
44
44
  export declare function serverURLFromOptions(options: SDKOptions): URL | null;
45
- export declare const SDK_VERSION = "0.0.2";
45
+ export declare const SDK_VERSION = "0.0.3";
46
46
  export declare const SDK_METADATA: {
47
47
  readonly language: "typescript";
48
48
  readonly openapiDocVersion: "manual";
49
- readonly sdkVersion: "0.0.2";
49
+ readonly sdkVersion: "0.0.3";
50
50
  readonly genVersion: "manual";
51
- readonly userAgent: "ominity-sdk/typescript 0.0.2";
51
+ readonly userAgent: "ominity-sdk/typescript 0.0.3";
52
52
  };
53
53
  //# sourceMappingURL=config.d.ts.map
@@ -23,7 +23,7 @@ function applyApiVersion(url, apiVersion) {
23
23
  url.pathname = `${currentPath}${versionSuffix}`;
24
24
  return url;
25
25
  }
26
- exports.SDK_VERSION = "0.0.2";
26
+ exports.SDK_VERSION = "0.0.3";
27
27
  exports.SDK_METADATA = {
28
28
  language: "typescript",
29
29
  openapiDocVersion: "manual",
@@ -0,0 +1,9 @@
1
+ export interface OminityModules {
2
+ }
3
+ export type OminityModuleDefinition<Client, Name extends string, Mod> = {
4
+ name: Name;
5
+ init(client: Client): Mod;
6
+ };
7
+ export type OminityModuleFactory<Client, Name extends string, Mod> = () => OminityModuleDefinition<Client, Name, Mod>;
8
+ export type OminityModuleInput<Client> = OminityModuleDefinition<Client, string, unknown> | OminityModuleFactory<Client, string, unknown>;
9
+ //# sourceMappingURL=modules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../../../src/sdk/modules.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;CAAG;AAElC,MAAM,MAAM,uBAAuB,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,GAAG,IAAI;IACtE,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,GAAG,IAAI,MAAM,uBAAuB,CAChG,MAAM,EACN,IAAI,EACJ,GAAG,CACJ,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,MAAM,IACjC,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAChD,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../../src/sdk/modules.ts"],"names":[],"mappings":""}
@@ -3,7 +3,15 @@ import { Cms } from "./cms/index.js";
3
3
  import { Commerce } from "./commerce/index.js";
4
4
  import { Http } from "./http.js";
5
5
  import { Settings } from "./settings/index.js";
6
+ import type { SDKOptions } from "../lib/config.js";
7
+ import type { OminityModuleInput, OminityModules } from "./modules.js";
8
+ export type OminityOptions = SDKOptions & {
9
+ modules?: Array<OminityModuleInput<Ominity>> | undefined;
10
+ };
6
11
  export declare class Ominity extends ClientSDK {
12
+ readonly modules: OminityModules;
13
+ constructor(options?: OminityOptions);
14
+ use(mod: OminityModuleInput<Ominity>): this;
7
15
  private _commerce?;
8
16
  get commerce(): Commerce;
9
17
  private _cms?;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,qBAAa,OAAQ,SAAQ,SAAS;IACpC,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;CACF"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,qBAAa,OAAQ,SAAQ,SAAS;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAwB;gBAEnD,OAAO,GAAE,cAAmB;IAWxC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;IAO3C,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;CACF"}
@@ -7,6 +7,22 @@ const index_js_2 = require("./commerce/index.js");
7
7
  const http_js_1 = require("./http.js");
8
8
  const index_js_3 = require("./settings/index.js");
9
9
  class Ominity extends sdks_js_1.ClientSDK {
10
+ constructor(options = {}) {
11
+ const { modules, ...sdkOptions } = options;
12
+ super(sdkOptions);
13
+ this.modules = {};
14
+ if (modules) {
15
+ for (const mod of modules) {
16
+ this.use(mod);
17
+ }
18
+ }
19
+ }
20
+ use(mod) {
21
+ const moduleDef = typeof mod === "function" ? mod() : mod;
22
+ this.modules[moduleDef.name] = moduleDef
23
+ .init(this);
24
+ return this;
25
+ }
10
26
  get commerce() {
11
27
  return (this._commerce ?? (this._commerce = new index_js_2.Commerce(this._options)));
12
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":";;;AACA,4CAA2C;AAC3C,6CAAqC;AACrC,kDAA+C;AAC/C,uCAAiC;AACjC,kDAA+C;AAE/C,MAAa,OAAQ,SAAQ,mBAAS;IAEpC,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,mBAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,GAAG;QACL,OAAO,CAAC,IAAI,CAAC,IAAI,KAAT,IAAI,CAAC,IAAI,GAAK,IAAI,cAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAChD,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,mBAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,KAAK,KAAV,IAAI,CAAC,KAAK,GAAK,IAAI,cAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAClD,CAAC;CACF;AApBD,0BAoBC"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":";;;AACA,4CAA2C;AAC3C,6CAAqC;AACrC,kDAA+C;AAC/C,uCAAiC;AACjC,kDAA+C;AAW/C,MAAa,OAAQ,SAAQ,mBAAS;IAGpC,YAAY,UAA0B,EAAE;QACtC,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,CAAC;QAC3C,KAAK,CAAC,UAAU,CAAC,CAAC;QAJJ,YAAO,GAAmB,EAAoB,CAAC;QAM7D,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IAED,GAAG,CAAC,GAAgC;QAClC,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACzD,IAAI,CAAC,OAAmC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS;aAClE,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,mBAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,GAAG;QACL,OAAO,CAAC,IAAI,CAAC,IAAI,KAAT,IAAI,CAAC,IAAI,GAAK,IAAI,cAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAChD,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,mBAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,KAAK,KAAV,IAAI,CAAC,KAAK,GAAK,IAAI,cAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAClD,CAAC;CACF;AAxCD,0BAwCC"}
@@ -4,5 +4,6 @@ export { HTTPClient } from "./lib/http.js";
4
4
  export type { Fetcher, HTTPClientOptions } from "./lib/http.js";
5
5
  export * from "./core.js";
6
6
  export * from "./funcs/index.js";
7
+ export * from "./sdk/modules.js";
7
8
  export * from "./sdk/sdk.js";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
package/dist/esm/index.js CHANGED
@@ -3,5 +3,6 @@ export * as files from "./lib/files.js";
3
3
  export { HTTPClient } from "./lib/http.js";
4
4
  export * from "./core.js";
5
5
  export * from "./funcs/index.js";
6
+ export * from "./sdk/modules.js";
6
7
  export * from "./sdk/sdk.js";
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
@@ -42,12 +42,12 @@ export type SDKOptions = {
42
42
  debugLogger?: Logger;
43
43
  };
44
44
  export declare function serverURLFromOptions(options: SDKOptions): URL | null;
45
- export declare const SDK_VERSION = "0.0.2";
45
+ export declare const SDK_VERSION = "0.0.3";
46
46
  export declare const SDK_METADATA: {
47
47
  readonly language: "typescript";
48
48
  readonly openapiDocVersion: "manual";
49
- readonly sdkVersion: "0.0.2";
49
+ readonly sdkVersion: "0.0.3";
50
50
  readonly genVersion: "manual";
51
- readonly userAgent: "ominity-sdk/typescript 0.0.2";
51
+ readonly userAgent: "ominity-sdk/typescript 0.0.3";
52
52
  };
53
53
  //# sourceMappingURL=config.d.ts.map
@@ -19,7 +19,7 @@ function applyApiVersion(url, apiVersion) {
19
19
  url.pathname = `${currentPath}${versionSuffix}`;
20
20
  return url;
21
21
  }
22
- export const SDK_VERSION = "0.0.2";
22
+ export const SDK_VERSION = "0.0.3";
23
23
  export const SDK_METADATA = {
24
24
  language: "typescript",
25
25
  openapiDocVersion: "manual",
@@ -0,0 +1,9 @@
1
+ export interface OminityModules {
2
+ }
3
+ export type OminityModuleDefinition<Client, Name extends string, Mod> = {
4
+ name: Name;
5
+ init(client: Client): Mod;
6
+ };
7
+ export type OminityModuleFactory<Client, Name extends string, Mod> = () => OminityModuleDefinition<Client, Name, Mod>;
8
+ export type OminityModuleInput<Client> = OminityModuleDefinition<Client, string, unknown> | OminityModuleFactory<Client, string, unknown>;
9
+ //# sourceMappingURL=modules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../../../src/sdk/modules.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;CAAG;AAElC,MAAM,MAAM,uBAAuB,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,GAAG,IAAI;IACtE,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,GAAG,IAAI,MAAM,uBAAuB,CAChG,MAAM,EACN,IAAI,EACJ,GAAG,CACJ,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,MAAM,IACjC,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAChD,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../../src/sdk/modules.ts"],"names":[],"mappings":""}
@@ -3,7 +3,15 @@ import { Cms } from "./cms/index.js";
3
3
  import { Commerce } from "./commerce/index.js";
4
4
  import { Http } from "./http.js";
5
5
  import { Settings } from "./settings/index.js";
6
+ import type { SDKOptions } from "../lib/config.js";
7
+ import type { OminityModuleInput, OminityModules } from "./modules.js";
8
+ export type OminityOptions = SDKOptions & {
9
+ modules?: Array<OminityModuleInput<Ominity>> | undefined;
10
+ };
6
11
  export declare class Ominity extends ClientSDK {
12
+ readonly modules: OminityModules;
13
+ constructor(options?: OminityOptions);
14
+ use(mod: OminityModuleInput<Ominity>): this;
7
15
  private _commerce?;
8
16
  get commerce(): Commerce;
9
17
  private _cms?;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,qBAAa,OAAQ,SAAQ,SAAS;IACpC,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;CACF"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,qBAAa,OAAQ,SAAQ,SAAS;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAwB;gBAEnD,OAAO,GAAE,cAAmB;IAWxC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;IAO3C,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;CACF"}
@@ -4,6 +4,22 @@ import { Commerce } from "./commerce/index.js";
4
4
  import { Http } from "./http.js";
5
5
  import { Settings } from "./settings/index.js";
6
6
  export class Ominity extends ClientSDK {
7
+ constructor(options = {}) {
8
+ const { modules, ...sdkOptions } = options;
9
+ super(sdkOptions);
10
+ this.modules = {};
11
+ if (modules) {
12
+ for (const mod of modules) {
13
+ this.use(mod);
14
+ }
15
+ }
16
+ }
17
+ use(mod) {
18
+ const moduleDef = typeof mod === "function" ? mod() : mod;
19
+ this.modules[moduleDef.name] = moduleDef
20
+ .init(this);
21
+ return this;
22
+ }
7
23
  get commerce() {
8
24
  return (this._commerce ?? (this._commerce = new Commerce(this._options)));
9
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,MAAM,OAAO,OAAQ,SAAQ,SAAS;IAEpC,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,GAAG;QACL,OAAO,CAAC,IAAI,CAAC,IAAI,KAAT,IAAI,CAAC,IAAI,GAAK,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAChD,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,KAAK,KAAV,IAAI,CAAC,KAAK,GAAK,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAClD,CAAC;CACF"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAW/C,MAAM,OAAO,OAAQ,SAAQ,SAAS;IAGpC,YAAY,UAA0B,EAAE;QACtC,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,CAAC;QAC3C,KAAK,CAAC,UAAU,CAAC,CAAC;QAJJ,YAAO,GAAmB,EAAoB,CAAC;QAM7D,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IAED,GAAG,CAAC,GAAgC;QAClC,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACzD,IAAI,CAAC,OAAmC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS;aAClE,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,GAAG;QACL,OAAO,CAAC,IAAI,CAAC,IAAI,KAAT,IAAI,CAAC,IAAI,GAAK,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAChD,CAAC;IAGD,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,SAAS,KAAd,IAAI,CAAC,SAAS,GAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAC1D,CAAC;IAGD,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,KAAK,KAAV,IAAI,CAAC,KAAK,GAAK,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC;IAClD,CAAC;CACF"}
package/jsr.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ominity-api-typescript",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "exports": {
5
5
  ".": "./src/index.ts",
6
6
  "./models/errors": "./src/models/errors/index.ts",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ominity/api-typescript",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "author": "Ominity",
5
5
  "type": "module",
6
6
  "tshy": {
package/src/index.ts CHANGED
@@ -5,4 +5,5 @@ export { HTTPClient } from "./lib/http.js";
5
5
  export type { Fetcher, HTTPClientOptions } from "./lib/http.js";
6
6
  export * from "./core.js";
7
7
  export * from "./funcs/index.js";
8
+ export * from "./sdk/modules.js";
8
9
  export * from "./sdk/sdk.js";
package/src/lib/config.ts CHANGED
@@ -75,7 +75,7 @@ function applyApiVersion(url: URL, apiVersion: string | undefined): URL {
75
75
  return url;
76
76
  }
77
77
 
78
- export const SDK_VERSION = "0.0.2";
78
+ export const SDK_VERSION = "0.0.3";
79
79
 
80
80
  export const SDK_METADATA = {
81
81
  language: "typescript",
@@ -0,0 +1,16 @@
1
+ export interface OminityModules {}
2
+
3
+ export type OminityModuleDefinition<Client, Name extends string, Mod> = {
4
+ name: Name;
5
+ init(client: Client): Mod;
6
+ };
7
+
8
+ export type OminityModuleFactory<Client, Name extends string, Mod> = () => OminityModuleDefinition<
9
+ Client,
10
+ Name,
11
+ Mod
12
+ >;
13
+
14
+ export type OminityModuleInput<Client> =
15
+ | OminityModuleDefinition<Client, string, unknown>
16
+ | OminityModuleFactory<Client, string, unknown>;
package/src/sdk/sdk.ts CHANGED
@@ -4,8 +4,37 @@ import { Cms } from "./cms/index.js";
4
4
  import { Commerce } from "./commerce/index.js";
5
5
  import { Http } from "./http.js";
6
6
  import { Settings } from "./settings/index.js";
7
+ import type { SDKOptions } from "../lib/config.js";
8
+ import type {
9
+ OminityModuleInput,
10
+ OminityModules,
11
+ } from "./modules.js";
12
+
13
+ export type OminityOptions = SDKOptions & {
14
+ modules?: Array<OminityModuleInput<Ominity>> | undefined;
15
+ };
7
16
 
8
17
  export class Ominity extends ClientSDK {
18
+ public readonly modules: OminityModules = {} as OminityModules;
19
+
20
+ constructor(options: OminityOptions = {}) {
21
+ const { modules, ...sdkOptions } = options;
22
+ super(sdkOptions);
23
+
24
+ if (modules) {
25
+ for (const mod of modules) {
26
+ this.use(mod);
27
+ }
28
+ }
29
+ }
30
+
31
+ use(mod: OminityModuleInput<Ominity>): this {
32
+ const moduleDef = typeof mod === "function" ? mod() : mod;
33
+ (this.modules as Record<string, unknown>)[moduleDef.name] = moduleDef
34
+ .init(this);
35
+ return this;
36
+ }
37
+
9
38
  private _commerce?: Commerce;
10
39
  get commerce(): Commerce {
11
40
  return (this._commerce ??= new Commerce(this._options));