@hautechai/sdk 2.16.2 → 2.18.0

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/dist/index.js CHANGED
@@ -10597,6 +10597,7 @@ __export(index_exports, {
10597
10597
  Yolo11xPoseV1OutputKind: () => Yolo11xPoseV1OutputKind,
10598
10598
  Yolo11xPoseV1ResponseKind: () => Yolo11xPoseV1ResponseKind,
10599
10599
  Yolo11xPoseV1ResponseStatus: () => Yolo11xPoseV1ResponseStatus,
10600
+ createDirectorySDK: () => createDirectorySDK,
10600
10601
  createSDK: () => createSDK,
10601
10602
  createTokenSigner: () => createTokenSigner
10602
10603
  });
@@ -10611,6 +10612,10 @@ var getConfig = (options) => ({
10611
10612
  baseUrl: options.baseUrl ?? "https://api.hautech.ai",
10612
10613
  baseWsUrl: options.baseWsUrl ?? options.baseUrl ?? "https://api.hautech.ai"
10613
10614
  });
10615
+ var getDirectoryConfig = (options) => ({
10616
+ baseUrl: options.baseUrl ?? "https://api-directory.hautech.ai",
10617
+ authToken: options.authToken
10618
+ });
10614
10619
 
10615
10620
  // src/api-utils.ts
10616
10621
  var import_axios = __toESM(require("axios"));
@@ -10622,52 +10627,56 @@ var isWrappedFn = (fn) => {
10622
10627
  var isCustomWrappedFn = (fn) => {
10623
10628
  return typeof fn === "function" && fn.__customMethodWrapper === true;
10624
10629
  };
10625
- var wrapApiCall = (fn, config) => {
10626
- const wrapped = async function(...args) {
10627
- const token = await config.authToken();
10628
- const baseOptions = {
10629
- baseURL: config.baseUrl,
10630
- headers: {
10631
- Authorization: `Bearer ${token}`
10632
- }
10633
- };
10634
- const finalArgs = [...args];
10635
- const lastParamIndex = fn.length - 1;
10636
- if (looksLikeAxiosRequestOptions(args[lastParamIndex])) {
10637
- finalArgs[lastParamIndex] = {
10638
- ...args[lastParamIndex],
10639
- ...baseOptions,
10630
+ var createApiCallWrapper = (getBaseURL) => {
10631
+ return (fn, config) => {
10632
+ const wrapped = async function(...args) {
10633
+ const token = await config.authToken();
10634
+ const baseOptions = {
10635
+ baseURL: getBaseURL(config),
10640
10636
  headers: {
10641
- ...args[lastParamIndex]?.headers ?? {},
10642
10637
  Authorization: `Bearer ${token}`
10643
10638
  }
10644
10639
  };
10645
- } else {
10646
- while (finalArgs.length < fn.length - 1) {
10647
- finalArgs.push(void 0);
10648
- }
10649
- finalArgs.push(baseOptions);
10650
- }
10651
- try {
10652
- const res = await fn.call(this, ...finalArgs);
10653
- return typeof res === "object" && "headers" in res ? res.data : res;
10654
- } catch (err) {
10655
- if (import_axios.default.isAxiosError(err)) {
10656
- let responseData;
10657
- try {
10658
- responseData = err.response?.data?.message ?? (typeof err.response?.data === "string" ? err.response.data : JSON.stringify(err.response?.data));
10659
- } catch {
10660
- responseData = "[unserializable data]";
10640
+ const finalArgs = [...args];
10641
+ const lastParamIndex = fn.length - 1;
10642
+ if (looksLikeAxiosRequestOptions(args[lastParamIndex])) {
10643
+ finalArgs[lastParamIndex] = {
10644
+ ...args[lastParamIndex],
10645
+ ...baseOptions,
10646
+ headers: {
10647
+ ...args[lastParamIndex]?.headers ?? {},
10648
+ Authorization: `Bearer ${token}`
10649
+ }
10650
+ };
10651
+ } else {
10652
+ while (finalArgs.length < fn.length - 1) {
10653
+ finalArgs.push(void 0);
10661
10654
  }
10662
- err.message = `Request error: ${err.message || "Unknown error"}.
10655
+ finalArgs.push(baseOptions);
10656
+ }
10657
+ try {
10658
+ const res = await fn.call(this, ...finalArgs);
10659
+ return typeof res === "object" && "headers" in res ? res.data : res;
10660
+ } catch (err) {
10661
+ if (import_axios.default.isAxiosError(err)) {
10662
+ let responseData;
10663
+ try {
10664
+ responseData = err.response?.data?.message ?? (typeof err.response?.data === "string" ? err.response.data : JSON.stringify(err.response?.data));
10665
+ } catch {
10666
+ responseData = "[unserializable data]";
10667
+ }
10668
+ err.message = `Request error: ${err.message || "Unknown error"}.
10663
10669
  ${responseData}`;
10670
+ }
10671
+ throw err;
10664
10672
  }
10665
- throw err;
10666
- }
10673
+ };
10674
+ wrapped.__isWrapped = true;
10675
+ return wrapped;
10667
10676
  };
10668
- wrapped.__isWrapped = true;
10669
- return wrapped;
10670
10677
  };
10678
+ var wrapApiCall = createApiCallWrapper((config) => config.baseUrl);
10679
+ var wrapDirectoryApiCall = createApiCallWrapper((config) => config.baseUrl);
10671
10680
  var wrapApiCallNullable = (fn) => {
10672
10681
  const wrapped = async (...args) => {
10673
10682
  try {
@@ -10692,9 +10701,9 @@ var wrapCustomMethod = (fn) => {
10692
10701
  fn.__customMethodWrapper = true;
10693
10702
  return fn;
10694
10703
  };
10695
- var wrapApiCallDeep = (obj, config, sdkContext) => {
10704
+ var wrapApiCallDeep = (obj, config, sdkContext, wrapper = wrapApiCall) => {
10696
10705
  if (!isWrappedFn(obj) && !isCustomWrappedFn(obj) && typeof obj === "function") {
10697
- const wrapped = wrapApiCall(obj, config);
10706
+ const wrapped = wrapper(obj, config);
10698
10707
  return sdkContext ? wrapped.bind(sdkContext) : wrapped;
10699
10708
  }
10700
10709
  if (typeof obj === "function") {
@@ -10703,12 +10712,13 @@ var wrapApiCallDeep = (obj, config, sdkContext) => {
10703
10712
  if (typeof obj === "object" && obj !== null) {
10704
10713
  const result = {};
10705
10714
  for (const [key, value] of Object.entries(obj)) {
10706
- result[key] = wrapApiCallDeep(value, config, sdkContext);
10715
+ result[key] = wrapApiCallDeep(value, config, sdkContext, wrapper);
10707
10716
  }
10708
10717
  return result;
10709
10718
  }
10710
10719
  return obj;
10711
10720
  };
10721
+ var wrapDirectoryApiCallDeep = (obj, config, sdkContext) => wrapApiCallDeep(obj, config, sdkContext, wrapDirectoryApiCall);
10712
10722
  var axiosMutator = async (config, options) => {
10713
10723
  return import_axios.default.request({
10714
10724
  ...config,
@@ -15772,6 +15782,72 @@ var useLorasApi = () => {
15772
15782
  });
15773
15783
  };
15774
15784
 
15785
+ // src/autogenerated/directory/user-profiles/user-profiles.ts
15786
+ var getUserProfiles = () => {
15787
+ const createUserProfile = (createUserProfileDto, options) => {
15788
+ return axiosMutator(
15789
+ {
15790
+ url: `/api/v1/user-profiles`,
15791
+ method: "POST",
15792
+ headers: { "Content-Type": "application/json" },
15793
+ data: createUserProfileDto
15794
+ },
15795
+ options
15796
+ );
15797
+ };
15798
+ const getUserProfiles2 = (options) => {
15799
+ return axiosMutator(
15800
+ {
15801
+ url: `/api/v1/user-profiles`,
15802
+ method: "GET"
15803
+ },
15804
+ options
15805
+ );
15806
+ };
15807
+ const getSelfProfile = (options) => {
15808
+ return axiosMutator(
15809
+ {
15810
+ url: `/api/v1/user-profiles/self`,
15811
+ method: "GET"
15812
+ },
15813
+ options
15814
+ );
15815
+ };
15816
+ const getByHandle = (handle, options) => {
15817
+ return axiosMutator(
15818
+ {
15819
+ url: `/api/v1/user-profiles/handle/${handle}`,
15820
+ method: "GET"
15821
+ },
15822
+ options
15823
+ );
15824
+ };
15825
+ const updateUserProfile = (id, updateUserProfileDto, options) => {
15826
+ return axiosMutator(
15827
+ {
15828
+ url: `/api/v1/user-profiles/${id}`,
15829
+ method: "PATCH",
15830
+ headers: { "Content-Type": "application/json" },
15831
+ data: updateUserProfileDto
15832
+ },
15833
+ options
15834
+ );
15835
+ };
15836
+ return { createUserProfile, getUserProfiles: getUserProfiles2, getSelfProfile, getByHandle, updateUserProfile };
15837
+ };
15838
+
15839
+ // src/sdk/api-definitions/user-profiles.ts
15840
+ var useUserProfilesApi = () => {
15841
+ const api = getUserProfiles();
15842
+ return useApi({
15843
+ create: api.createUserProfile,
15844
+ list: api.getUserProfiles,
15845
+ self: api.getSelfProfile,
15846
+ getByHandle: wrapApiCallNullable(api.getByHandle),
15847
+ update: api.updateUserProfile
15848
+ });
15849
+ };
15850
+
15775
15851
  // src/sdk/ws-client.ts
15776
15852
  var import_socket = require("socket.io-client");
15777
15853
  var useWsClient = (config) => new WsClient(config);
@@ -15868,6 +15944,9 @@ var apiDefinitions = {
15868
15944
  loras: useLorasApi()
15869
15945
  };
15870
15946
  var pipelineDefinitions = usePipelineDefinitions();
15947
+ var getDirectoryApiDefinitions = () => ({
15948
+ userProfiles: useUserProfilesApi()
15949
+ });
15871
15950
  var getWsClientDefinitions = (config) => ({
15872
15951
  ws: useWsClient(config)
15873
15952
  });
@@ -15894,6 +15973,25 @@ var createSDK = (options) => {
15894
15973
  Object.assign(sdk, wsSdk);
15895
15974
  return sdk;
15896
15975
  };
15976
+ var createDirectorySDK = (options) => {
15977
+ let token = void 0;
15978
+ const config = getDirectoryConfig(options);
15979
+ const authToken = config.authToken;
15980
+ const getAuthToken = async () => {
15981
+ if (token) {
15982
+ const decoded = (0, import_jose.decodeJwt)(token);
15983
+ const currentTime = Math.floor(Date.now() / 1e3);
15984
+ if (decoded.exp && decoded.exp > currentTime) return token;
15985
+ }
15986
+ token = await authToken();
15987
+ return token;
15988
+ };
15989
+ config.authToken = getAuthToken;
15990
+ const sdk = {};
15991
+ const directorySdk = wrapDirectoryApiCallDeep(getDirectoryApiDefinitions(), config, sdk);
15992
+ Object.assign(sdk, directorySdk);
15993
+ return sdk;
15994
+ };
15897
15995
 
15898
15996
  // src/token.ts
15899
15997
  var jose = __toESM(require("jose"));
@@ -15943,7 +16041,8 @@ var createTokenSigner = (options) => {
15943
16041
  payload: {
15944
16042
  iss: options.appId,
15945
16043
  permissions: serializePermissions(props.permissions ?? {}),
15946
- sub: props.accountId
16044
+ sub: props.accountId,
16045
+ kind: props.kind || "core-api"
15947
16046
  }
15948
16047
  }),
15949
16048
  createRootToken: async (props) => createToken({
@@ -15952,7 +16051,8 @@ var createTokenSigner = (options) => {
15952
16051
  expiresInSeconds: props.expiresInSeconds ?? 3600,
15953
16052
  payload: {
15954
16053
  iss: options.appId,
15955
- permissions: ["*"]
16054
+ permissions: ["*"],
16055
+ kind: props.kind || "core-api"
15956
16056
  }
15957
16057
  })
15958
16058
  };
@@ -16241,6 +16341,7 @@ var createTokenSigner = (options) => {
16241
16341
  Yolo11xPoseV1OutputKind,
16242
16342
  Yolo11xPoseV1ResponseKind,
16243
16343
  Yolo11xPoseV1ResponseStatus,
16344
+ createDirectorySDK,
16244
16345
  createSDK,
16245
16346
  createTokenSigner
16246
16347
  });