@ignos/api-client 20260812.220.1 → 20260813.222.1-alpha

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.
@@ -2873,6 +2873,69 @@ export declare class InspectMatchSpecificationsClient extends AuthorizedApiBase
2873
2873
  listSpecifications(): Promise<ImaSpecificationLiteDto[]>;
2874
2874
  protected processListSpecifications(response: Response): Promise<ImaSpecificationLiteDto[]>;
2875
2875
  }
2876
+ export interface IInspectSchemaCreatorClient {
2877
+ getSchemaCreatorState(id: string): Promise<SchemaCreatorStateDto>;
2878
+ /**
2879
+ * Creates the initial creator state for a schema version. Returns 409 if
2880
+ state already exists; the caller should re-fetch it instead of writing.
2881
+ */
2882
+ createSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto>;
2883
+ updateSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto>;
2884
+ /**
2885
+ * Starts a full drawing AI parse: clears every element and locks the
2886
+ schema for every viewer until it completes. If one is already in
2887
+ progress, returns that instead of starting a second one.
2888
+ */
2889
+ requestFullDrawingParse(id: string): Promise<SchemaCreatorStateDto>;
2890
+ /**
2891
+ * Stamps the creator state's balloons onto the schema's drawing PDF and
2892
+ returns a temporary download link.
2893
+ */
2894
+ exportSchemaCreatorDrawing(id: string): Promise<DownloadDto>;
2895
+ /**
2896
+ * Starts an async snip resolve; the result is delivered through the
2897
+ SchemaCreatorSnipResolved SignalR notification.
2898
+ * @param image (optional)
2899
+ */
2900
+ resolveSchemaCreatorSnip(id: string, elementId: string, image: FileParameter | null | undefined): Promise<FileResponse>;
2901
+ }
2902
+ export declare class InspectSchemaCreatorClient extends AuthorizedApiBase implements IInspectSchemaCreatorClient {
2903
+ private http;
2904
+ private baseUrl;
2905
+ constructor(configuration: IApiClientConfig, baseUrl?: string, http?: {
2906
+ fetch(url: RequestInfo, init?: RequestInit): Promise<Response>;
2907
+ });
2908
+ getSchemaCreatorState(id: string): Promise<SchemaCreatorStateDto>;
2909
+ protected processGetSchemaCreatorState(response: Response): Promise<SchemaCreatorStateDto>;
2910
+ /**
2911
+ * Creates the initial creator state for a schema version. Returns 409 if
2912
+ state already exists; the caller should re-fetch it instead of writing.
2913
+ */
2914
+ createSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto>;
2915
+ protected processCreateSchemaCreatorState(response: Response): Promise<SchemaCreatorStateDto>;
2916
+ updateSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto>;
2917
+ protected processUpdateSchemaCreatorState(response: Response): Promise<SchemaCreatorStateDto>;
2918
+ /**
2919
+ * Starts a full drawing AI parse: clears every element and locks the
2920
+ schema for every viewer until it completes. If one is already in
2921
+ progress, returns that instead of starting a second one.
2922
+ */
2923
+ requestFullDrawingParse(id: string): Promise<SchemaCreatorStateDto>;
2924
+ protected processRequestFullDrawingParse(response: Response): Promise<SchemaCreatorStateDto>;
2925
+ /**
2926
+ * Stamps the creator state's balloons onto the schema's drawing PDF and
2927
+ returns a temporary download link.
2928
+ */
2929
+ exportSchemaCreatorDrawing(id: string): Promise<DownloadDto>;
2930
+ protected processExportSchemaCreatorDrawing(response: Response): Promise<DownloadDto>;
2931
+ /**
2932
+ * Starts an async snip resolve; the result is delivered through the
2933
+ SchemaCreatorSnipResolved SignalR notification.
2934
+ * @param image (optional)
2935
+ */
2936
+ resolveSchemaCreatorSnip(id: string, elementId: string, image: FileParameter | null | undefined): Promise<FileResponse>;
2937
+ protected processResolveSchemaCreatorSnip(response: Response): Promise<FileResponse>;
2938
+ }
2876
2939
  export interface IMeasurementFormSchemasAdminClient {
2877
2940
  getArchivedMeasurementFormSchema(id: string): Promise<MeasurementFormSchemaDto>;
2878
2941
  createMeasurementForm(request: CreateMeasurementFormSchema): Promise<MeasurementFormDto>;
@@ -9107,6 +9170,83 @@ export interface ImaSpecificationLiteDto {
9107
9170
  updated: Date;
9108
9171
  isDeleted: boolean;
9109
9172
  }
9173
+ export interface SchemaCreatorStateDto {
9174
+ settings: SchemaCreatorSettingsDto;
9175
+ elements: SchemaCreatorElementDto[];
9176
+ fullParse?: SchemaCreatorFullParseStatusDto | null;
9177
+ }
9178
+ export interface SchemaCreatorSettingsDto {
9179
+ unit?: UnitOfMeasureDto;
9180
+ tolerance?: GeneralToleranceDto;
9181
+ balloonSize?: number;
9182
+ }
9183
+ export type UnitOfMeasureDto = "Millimeter" | "Inch";
9184
+ export type GeneralToleranceDto = "NotSet" | "Fine" | "Medium" | "Coarse" | "VeryCoarse";
9185
+ export interface SchemaCreatorElementDto {
9186
+ id: string;
9187
+ kind: SchemaCreatorElementKindDto;
9188
+ drawings: SchemaCreatorElementDrawingsDto;
9189
+ isDirty?: boolean | null;
9190
+ values?: SchemaCreatorElementValuesDto | null;
9191
+ parseResult?: SchemaCreatorSnipResultDto | null;
9192
+ }
9193
+ export type SchemaCreatorElementKindDto = "Pending" | "Auto" | "Manual";
9194
+ export interface SchemaCreatorElementDrawingsDto {
9195
+ square: SchemaCreatorDrawingDto;
9196
+ circle: SchemaCreatorDrawingDto;
9197
+ textId: string;
9198
+ }
9199
+ export interface SchemaCreatorDrawingDto {
9200
+ rect: SchemaCreatorRectDto;
9201
+ pageIndex: number;
9202
+ annotationId: string;
9203
+ rotation?: number | null;
9204
+ unrotatedRect?: SchemaCreatorRectDto | null;
9205
+ }
9206
+ export interface SchemaCreatorRectDto {
9207
+ origin: SchemaCreatorPointDto;
9208
+ size: SchemaCreatorSizeDto;
9209
+ }
9210
+ export interface SchemaCreatorPointDto {
9211
+ x: number;
9212
+ y: number;
9213
+ }
9214
+ export interface SchemaCreatorSizeDto {
9215
+ width: number;
9216
+ height: number;
9217
+ }
9218
+ export interface SchemaCreatorElementValuesDto {
9219
+ reference: number;
9220
+ nominal?: number | null;
9221
+ nominalText?: string | null;
9222
+ plusTolerance?: number | null;
9223
+ minusTolerance?: number | null;
9224
+ coatingThickness?: number | null;
9225
+ measurementFrequency: MeasurementFrequency;
9226
+ measurementFrequencyParameter?: number | null;
9227
+ type?: string | null;
9228
+ count?: number | null;
9229
+ comment?: string | null;
9230
+ canCopy: boolean;
9231
+ visibleToCustomer: boolean;
9232
+ isDocumentedExternally: boolean;
9233
+ }
9234
+ export type MeasurementFrequency = "All" | "FirstArticle" | "NFirst" | "NPercent" | "ISO2859" | "Nth" | "FirstAndLast" | "None";
9235
+ export interface SchemaCreatorSnipResultDto {
9236
+ nominal?: number | null;
9237
+ nominalText?: string | null;
9238
+ plusTolerance?: number | null;
9239
+ minusTolerance?: number | null;
9240
+ coatingThickness?: number | null;
9241
+ count?: number | null;
9242
+ }
9243
+ export interface SchemaCreatorFullParseStatusDto {
9244
+ inProgress: boolean;
9245
+ startedAt?: Date | null;
9246
+ errorType?: SchemaCreatorParseErrorTypeDto | null;
9247
+ errorMessage?: string | null;
9248
+ }
9249
+ export type SchemaCreatorParseErrorTypeDto = "Timeout" | "ParseError";
9110
9250
  export interface MeasurementFormSchemaDto {
9111
9251
  id: string;
9112
9252
  versionId: number;
@@ -9138,9 +9278,7 @@ export interface MeasurementFormSchemaDto {
9138
9278
  }
9139
9279
  export type MeasurementFormStatus = "Draft" | "Released" | "Revoked";
9140
9280
  export type MeasurementFormSource = "Unknown" | "InspectionXpert" | "Excel" | "Manual";
9141
- export type UnitOfMeasureDto = "Millimeter" | "Inch";
9142
9281
  export type DimensionSettingDto = "Tolerance" | "MinMaxDimension";
9143
- export type GeneralToleranceDto = "NotSet" | "Fine" | "Medium" | "Coarse" | "VeryCoarse";
9144
9282
  export interface MeasurementFormSchemaAttachmentDto {
9145
9283
  url: string;
9146
9284
  title: string;
@@ -9189,7 +9327,6 @@ export interface MeasurementFormGroupedElementDto {
9189
9327
  isValid: boolean;
9190
9328
  validationErrorMessage?: string | null;
9191
9329
  }
9192
- export type MeasurementFrequency = "All" | "FirstArticle" | "NFirst" | "NPercent" | "ISO2859" | "Nth" | "FirstAndLast" | "None";
9193
9330
  export type MeasurementFormValueType = "None" | "Bool" | "Decimal" | "String";
9194
9331
  export type BonusType = "None" | "Positive" | "PositiveAndNegative";
9195
9332
  export interface MeasurementFormLinkedSchemaDto {
@@ -23737,6 +23737,291 @@ export class InspectMatchSpecificationsClient extends AuthorizedApiBase {
23737
23737
  return Promise.resolve(null);
23738
23738
  }
23739
23739
  }
23740
+ export class InspectSchemaCreatorClient extends AuthorizedApiBase {
23741
+ constructor(configuration, baseUrl, http) {
23742
+ super(configuration);
23743
+ this.http = http ? http : window;
23744
+ this.baseUrl = baseUrl !== null && baseUrl !== void 0 ? baseUrl : "";
23745
+ }
23746
+ getSchemaCreatorState(id) {
23747
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate";
23748
+ if (id === undefined || id === null)
23749
+ throw new globalThis.Error("The parameter 'id' must be defined.");
23750
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
23751
+ url_ = url_.replace(/[?&]$/, "");
23752
+ let options_ = {
23753
+ method: "GET",
23754
+ headers: {
23755
+ "Accept": "application/json"
23756
+ }
23757
+ };
23758
+ return this.transformOptions(options_).then(transformedOptions_ => {
23759
+ return this.http.fetch(url_, transformedOptions_);
23760
+ }).then((_response) => {
23761
+ return this.processGetSchemaCreatorState(_response);
23762
+ });
23763
+ }
23764
+ processGetSchemaCreatorState(response) {
23765
+ const status = response.status;
23766
+ let _headers = {};
23767
+ if (response.headers && response.headers.forEach) {
23768
+ response.headers.forEach((v, k) => _headers[k] = v);
23769
+ }
23770
+ ;
23771
+ if (status === 200) {
23772
+ return response.text().then((_responseText) => {
23773
+ let result200 = null;
23774
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
23775
+ return result200;
23776
+ });
23777
+ }
23778
+ else if (status !== 200 && status !== 204) {
23779
+ return response.text().then((_responseText) => {
23780
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
23781
+ });
23782
+ }
23783
+ return Promise.resolve(null);
23784
+ }
23785
+ /**
23786
+ * Creates the initial creator state for a schema version. Returns 409 if
23787
+ state already exists; the caller should re-fetch it instead of writing.
23788
+ */
23789
+ createSchemaCreatorState(id, state) {
23790
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate";
23791
+ if (id === undefined || id === null)
23792
+ throw new globalThis.Error("The parameter 'id' must be defined.");
23793
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
23794
+ url_ = url_.replace(/[?&]$/, "");
23795
+ const content_ = JSON.stringify(state);
23796
+ let options_ = {
23797
+ body: content_,
23798
+ method: "POST",
23799
+ headers: {
23800
+ "Content-Type": "application/json",
23801
+ "Accept": "application/json"
23802
+ }
23803
+ };
23804
+ return this.transformOptions(options_).then(transformedOptions_ => {
23805
+ return this.http.fetch(url_, transformedOptions_);
23806
+ }).then((_response) => {
23807
+ return this.processCreateSchemaCreatorState(_response);
23808
+ });
23809
+ }
23810
+ processCreateSchemaCreatorState(response) {
23811
+ const status = response.status;
23812
+ let _headers = {};
23813
+ if (response.headers && response.headers.forEach) {
23814
+ response.headers.forEach((v, k) => _headers[k] = v);
23815
+ }
23816
+ ;
23817
+ if (status === 201) {
23818
+ return response.text().then((_responseText) => {
23819
+ let result201 = null;
23820
+ result201 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
23821
+ return result201;
23822
+ });
23823
+ }
23824
+ else if (status === 409) {
23825
+ return response.text().then((_responseText) => {
23826
+ let result409 = null;
23827
+ result409 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
23828
+ return throwException("A server side error occurred.", status, _responseText, _headers, result409);
23829
+ });
23830
+ }
23831
+ else if (status !== 200 && status !== 204) {
23832
+ return response.text().then((_responseText) => {
23833
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
23834
+ });
23835
+ }
23836
+ return Promise.resolve(null);
23837
+ }
23838
+ updateSchemaCreatorState(id, state) {
23839
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate";
23840
+ if (id === undefined || id === null)
23841
+ throw new globalThis.Error("The parameter 'id' must be defined.");
23842
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
23843
+ url_ = url_.replace(/[?&]$/, "");
23844
+ const content_ = JSON.stringify(state);
23845
+ let options_ = {
23846
+ body: content_,
23847
+ method: "PUT",
23848
+ headers: {
23849
+ "Content-Type": "application/json",
23850
+ "Accept": "application/json"
23851
+ }
23852
+ };
23853
+ return this.transformOptions(options_).then(transformedOptions_ => {
23854
+ return this.http.fetch(url_, transformedOptions_);
23855
+ }).then((_response) => {
23856
+ return this.processUpdateSchemaCreatorState(_response);
23857
+ });
23858
+ }
23859
+ processUpdateSchemaCreatorState(response) {
23860
+ const status = response.status;
23861
+ let _headers = {};
23862
+ if (response.headers && response.headers.forEach) {
23863
+ response.headers.forEach((v, k) => _headers[k] = v);
23864
+ }
23865
+ ;
23866
+ if (status === 200) {
23867
+ return response.text().then((_responseText) => {
23868
+ let result200 = null;
23869
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
23870
+ return result200;
23871
+ });
23872
+ }
23873
+ else if (status !== 200 && status !== 204) {
23874
+ return response.text().then((_responseText) => {
23875
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
23876
+ });
23877
+ }
23878
+ return Promise.resolve(null);
23879
+ }
23880
+ /**
23881
+ * Starts a full drawing AI parse: clears every element and locks the
23882
+ schema for every viewer until it completes. If one is already in
23883
+ progress, returns that instead of starting a second one.
23884
+ */
23885
+ requestFullDrawingParse(id) {
23886
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate/fullparse";
23887
+ if (id === undefined || id === null)
23888
+ throw new globalThis.Error("The parameter 'id' must be defined.");
23889
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
23890
+ url_ = url_.replace(/[?&]$/, "");
23891
+ let options_ = {
23892
+ method: "POST",
23893
+ headers: {
23894
+ "Accept": "application/json"
23895
+ }
23896
+ };
23897
+ return this.transformOptions(options_).then(transformedOptions_ => {
23898
+ return this.http.fetch(url_, transformedOptions_);
23899
+ }).then((_response) => {
23900
+ return this.processRequestFullDrawingParse(_response);
23901
+ });
23902
+ }
23903
+ processRequestFullDrawingParse(response) {
23904
+ const status = response.status;
23905
+ let _headers = {};
23906
+ if (response.headers && response.headers.forEach) {
23907
+ response.headers.forEach((v, k) => _headers[k] = v);
23908
+ }
23909
+ ;
23910
+ if (status === 200) {
23911
+ return response.text().then((_responseText) => {
23912
+ let result200 = null;
23913
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
23914
+ return result200;
23915
+ });
23916
+ }
23917
+ else if (status !== 200 && status !== 204) {
23918
+ return response.text().then((_responseText) => {
23919
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
23920
+ });
23921
+ }
23922
+ return Promise.resolve(null);
23923
+ }
23924
+ /**
23925
+ * Stamps the creator state's balloons onto the schema's drawing PDF and
23926
+ returns a temporary download link.
23927
+ */
23928
+ exportSchemaCreatorDrawing(id) {
23929
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate/download";
23930
+ if (id === undefined || id === null)
23931
+ throw new globalThis.Error("The parameter 'id' must be defined.");
23932
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
23933
+ url_ = url_.replace(/[?&]$/, "");
23934
+ let options_ = {
23935
+ method: "POST",
23936
+ headers: {
23937
+ "Accept": "application/json"
23938
+ }
23939
+ };
23940
+ return this.transformOptions(options_).then(transformedOptions_ => {
23941
+ return this.http.fetch(url_, transformedOptions_);
23942
+ }).then((_response) => {
23943
+ return this.processExportSchemaCreatorDrawing(_response);
23944
+ });
23945
+ }
23946
+ processExportSchemaCreatorDrawing(response) {
23947
+ const status = response.status;
23948
+ let _headers = {};
23949
+ if (response.headers && response.headers.forEach) {
23950
+ response.headers.forEach((v, k) => _headers[k] = v);
23951
+ }
23952
+ ;
23953
+ if (status === 200) {
23954
+ return response.text().then((_responseText) => {
23955
+ let result200 = null;
23956
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
23957
+ return result200;
23958
+ });
23959
+ }
23960
+ else if (status !== 200 && status !== 204) {
23961
+ return response.text().then((_responseText) => {
23962
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
23963
+ });
23964
+ }
23965
+ return Promise.resolve(null);
23966
+ }
23967
+ /**
23968
+ * Starts an async snip resolve; the result is delivered through the
23969
+ SchemaCreatorSnipResolved SignalR notification.
23970
+ * @param image (optional)
23971
+ */
23972
+ resolveSchemaCreatorSnip(id, elementId, image) {
23973
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate/elements/{elementId}/resolvesnip";
23974
+ if (id === undefined || id === null)
23975
+ throw new globalThis.Error("The parameter 'id' must be defined.");
23976
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
23977
+ if (elementId === undefined || elementId === null)
23978
+ throw new globalThis.Error("The parameter 'elementId' must be defined.");
23979
+ url_ = url_.replace("{elementId}", encodeURIComponent("" + elementId));
23980
+ url_ = url_.replace(/[?&]$/, "");
23981
+ const content_ = new FormData();
23982
+ if (image !== null && image !== undefined)
23983
+ content_.append("image", image.data, image.fileName ? image.fileName : "image");
23984
+ let options_ = {
23985
+ body: content_,
23986
+ method: "POST",
23987
+ headers: {
23988
+ "Accept": "application/octet-stream"
23989
+ }
23990
+ };
23991
+ return this.transformOptions(options_).then(transformedOptions_ => {
23992
+ return this.http.fetch(url_, transformedOptions_);
23993
+ }).then((_response) => {
23994
+ return this.processResolveSchemaCreatorSnip(_response);
23995
+ });
23996
+ }
23997
+ processResolveSchemaCreatorSnip(response) {
23998
+ const status = response.status;
23999
+ let _headers = {};
24000
+ if (response.headers && response.headers.forEach) {
24001
+ response.headers.forEach((v, k) => _headers[k] = v);
24002
+ }
24003
+ ;
24004
+ if (status === 200 || status === 206) {
24005
+ const contentDisposition = response.headers ? response.headers.get("content-disposition") : undefined;
24006
+ let fileNameMatch = contentDisposition ? /filename\*=(?:(\\?['"])(.*?)\1|(?:[^\s]+'.*?')?([^;\n]*))/g.exec(contentDisposition) : undefined;
24007
+ let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;
24008
+ if (fileName) {
24009
+ fileName = decodeURIComponent(fileName);
24010
+ }
24011
+ else {
24012
+ fileNameMatch = contentDisposition ? /filename="?([^"]*?)"?(;|$)/g.exec(contentDisposition) : undefined;
24013
+ fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;
24014
+ }
24015
+ return response.blob().then(blob => { return { fileName: fileName, data: blob, status: status, headers: _headers }; });
24016
+ }
24017
+ else if (status !== 200 && status !== 204) {
24018
+ return response.text().then((_responseText) => {
24019
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
24020
+ });
24021
+ }
24022
+ return Promise.resolve(null);
24023
+ }
24024
+ }
23740
24025
  export class MeasurementFormSchemasAdminClient extends AuthorizedApiBase {
23741
24026
  constructor(configuration, baseUrl, http) {
23742
24027
  super(configuration);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ignos/api-client",
3
- "version": "20260812.220.1",
3
+ "version": "20260813.222.1-alpha",
4
4
  "description": "IGNOS API Client",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
@@ -25394,6 +25394,323 @@ export class InspectMatchSpecificationsClient extends AuthorizedApiBase implemen
25394
25394
  }
25395
25395
  }
25396
25396
 
25397
+ export interface IInspectSchemaCreatorClient {
25398
+
25399
+ getSchemaCreatorState(id: string): Promise<SchemaCreatorStateDto>;
25400
+
25401
+ /**
25402
+ * Creates the initial creator state for a schema version. Returns 409 if
25403
+ state already exists; the caller should re-fetch it instead of writing.
25404
+ */
25405
+ createSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto>;
25406
+
25407
+ updateSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto>;
25408
+
25409
+ /**
25410
+ * Starts a full drawing AI parse: clears every element and locks the
25411
+ schema for every viewer until it completes. If one is already in
25412
+ progress, returns that instead of starting a second one.
25413
+ */
25414
+ requestFullDrawingParse(id: string): Promise<SchemaCreatorStateDto>;
25415
+
25416
+ /**
25417
+ * Stamps the creator state's balloons onto the schema's drawing PDF and
25418
+ returns a temporary download link.
25419
+ */
25420
+ exportSchemaCreatorDrawing(id: string): Promise<DownloadDto>;
25421
+
25422
+ /**
25423
+ * Starts an async snip resolve; the result is delivered through the
25424
+ SchemaCreatorSnipResolved SignalR notification.
25425
+ * @param image (optional)
25426
+ */
25427
+ resolveSchemaCreatorSnip(id: string, elementId: string, image: FileParameter | null | undefined): Promise<FileResponse>;
25428
+ }
25429
+
25430
+ export class InspectSchemaCreatorClient extends AuthorizedApiBase implements IInspectSchemaCreatorClient {
25431
+ private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };
25432
+ private baseUrl: string;
25433
+
25434
+ constructor(configuration: IApiClientConfig, baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {
25435
+ super(configuration);
25436
+ this.http = http ? http : window as any;
25437
+ this.baseUrl = baseUrl ?? "";
25438
+ }
25439
+
25440
+ getSchemaCreatorState(id: string): Promise<SchemaCreatorStateDto> {
25441
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate";
25442
+ if (id === undefined || id === null)
25443
+ throw new globalThis.Error("The parameter 'id' must be defined.");
25444
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
25445
+ url_ = url_.replace(/[?&]$/, "");
25446
+
25447
+ let options_: RequestInit = {
25448
+ method: "GET",
25449
+ headers: {
25450
+ "Accept": "application/json"
25451
+ }
25452
+ };
25453
+
25454
+ return this.transformOptions(options_).then(transformedOptions_ => {
25455
+ return this.http.fetch(url_, transformedOptions_);
25456
+ }).then((_response: Response) => {
25457
+ return this.processGetSchemaCreatorState(_response);
25458
+ });
25459
+ }
25460
+
25461
+ protected processGetSchemaCreatorState(response: Response): Promise<SchemaCreatorStateDto> {
25462
+ const status = response.status;
25463
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
25464
+ if (status === 200) {
25465
+ return response.text().then((_responseText) => {
25466
+ let result200: any = null;
25467
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver) as SchemaCreatorStateDto;
25468
+ return result200;
25469
+ });
25470
+ } else if (status !== 200 && status !== 204) {
25471
+ return response.text().then((_responseText) => {
25472
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
25473
+ });
25474
+ }
25475
+ return Promise.resolve<SchemaCreatorStateDto>(null as any);
25476
+ }
25477
+
25478
+ /**
25479
+ * Creates the initial creator state for a schema version. Returns 409 if
25480
+ state already exists; the caller should re-fetch it instead of writing.
25481
+ */
25482
+ createSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto> {
25483
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate";
25484
+ if (id === undefined || id === null)
25485
+ throw new globalThis.Error("The parameter 'id' must be defined.");
25486
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
25487
+ url_ = url_.replace(/[?&]$/, "");
25488
+
25489
+ const content_ = JSON.stringify(state);
25490
+
25491
+ let options_: RequestInit = {
25492
+ body: content_,
25493
+ method: "POST",
25494
+ headers: {
25495
+ "Content-Type": "application/json",
25496
+ "Accept": "application/json"
25497
+ }
25498
+ };
25499
+
25500
+ return this.transformOptions(options_).then(transformedOptions_ => {
25501
+ return this.http.fetch(url_, transformedOptions_);
25502
+ }).then((_response: Response) => {
25503
+ return this.processCreateSchemaCreatorState(_response);
25504
+ });
25505
+ }
25506
+
25507
+ protected processCreateSchemaCreatorState(response: Response): Promise<SchemaCreatorStateDto> {
25508
+ const status = response.status;
25509
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
25510
+ if (status === 201) {
25511
+ return response.text().then((_responseText) => {
25512
+ let result201: any = null;
25513
+ result201 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver) as SchemaCreatorStateDto;
25514
+ return result201;
25515
+ });
25516
+ } else if (status === 409) {
25517
+ return response.text().then((_responseText) => {
25518
+ let result409: any = null;
25519
+ result409 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver) as ProblemDetails;
25520
+ return throwException("A server side error occurred.", status, _responseText, _headers, result409);
25521
+ });
25522
+ } else if (status !== 200 && status !== 204) {
25523
+ return response.text().then((_responseText) => {
25524
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
25525
+ });
25526
+ }
25527
+ return Promise.resolve<SchemaCreatorStateDto>(null as any);
25528
+ }
25529
+
25530
+ updateSchemaCreatorState(id: string, state: SchemaCreatorStateDto): Promise<SchemaCreatorStateDto> {
25531
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate";
25532
+ if (id === undefined || id === null)
25533
+ throw new globalThis.Error("The parameter 'id' must be defined.");
25534
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
25535
+ url_ = url_.replace(/[?&]$/, "");
25536
+
25537
+ const content_ = JSON.stringify(state);
25538
+
25539
+ let options_: RequestInit = {
25540
+ body: content_,
25541
+ method: "PUT",
25542
+ headers: {
25543
+ "Content-Type": "application/json",
25544
+ "Accept": "application/json"
25545
+ }
25546
+ };
25547
+
25548
+ return this.transformOptions(options_).then(transformedOptions_ => {
25549
+ return this.http.fetch(url_, transformedOptions_);
25550
+ }).then((_response: Response) => {
25551
+ return this.processUpdateSchemaCreatorState(_response);
25552
+ });
25553
+ }
25554
+
25555
+ protected processUpdateSchemaCreatorState(response: Response): Promise<SchemaCreatorStateDto> {
25556
+ const status = response.status;
25557
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
25558
+ if (status === 200) {
25559
+ return response.text().then((_responseText) => {
25560
+ let result200: any = null;
25561
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver) as SchemaCreatorStateDto;
25562
+ return result200;
25563
+ });
25564
+ } else if (status !== 200 && status !== 204) {
25565
+ return response.text().then((_responseText) => {
25566
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
25567
+ });
25568
+ }
25569
+ return Promise.resolve<SchemaCreatorStateDto>(null as any);
25570
+ }
25571
+
25572
+ /**
25573
+ * Starts a full drawing AI parse: clears every element and locks the
25574
+ schema for every viewer until it completes. If one is already in
25575
+ progress, returns that instead of starting a second one.
25576
+ */
25577
+ requestFullDrawingParse(id: string): Promise<SchemaCreatorStateDto> {
25578
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate/fullparse";
25579
+ if (id === undefined || id === null)
25580
+ throw new globalThis.Error("The parameter 'id' must be defined.");
25581
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
25582
+ url_ = url_.replace(/[?&]$/, "");
25583
+
25584
+ let options_: RequestInit = {
25585
+ method: "POST",
25586
+ headers: {
25587
+ "Accept": "application/json"
25588
+ }
25589
+ };
25590
+
25591
+ return this.transformOptions(options_).then(transformedOptions_ => {
25592
+ return this.http.fetch(url_, transformedOptions_);
25593
+ }).then((_response: Response) => {
25594
+ return this.processRequestFullDrawingParse(_response);
25595
+ });
25596
+ }
25597
+
25598
+ protected processRequestFullDrawingParse(response: Response): Promise<SchemaCreatorStateDto> {
25599
+ const status = response.status;
25600
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
25601
+ if (status === 200) {
25602
+ return response.text().then((_responseText) => {
25603
+ let result200: any = null;
25604
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver) as SchemaCreatorStateDto;
25605
+ return result200;
25606
+ });
25607
+ } else if (status !== 200 && status !== 204) {
25608
+ return response.text().then((_responseText) => {
25609
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
25610
+ });
25611
+ }
25612
+ return Promise.resolve<SchemaCreatorStateDto>(null as any);
25613
+ }
25614
+
25615
+ /**
25616
+ * Stamps the creator state's balloons onto the schema's drawing PDF and
25617
+ returns a temporary download link.
25618
+ */
25619
+ exportSchemaCreatorDrawing(id: string): Promise<DownloadDto> {
25620
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate/download";
25621
+ if (id === undefined || id === null)
25622
+ throw new globalThis.Error("The parameter 'id' must be defined.");
25623
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
25624
+ url_ = url_.replace(/[?&]$/, "");
25625
+
25626
+ let options_: RequestInit = {
25627
+ method: "POST",
25628
+ headers: {
25629
+ "Accept": "application/json"
25630
+ }
25631
+ };
25632
+
25633
+ return this.transformOptions(options_).then(transformedOptions_ => {
25634
+ return this.http.fetch(url_, transformedOptions_);
25635
+ }).then((_response: Response) => {
25636
+ return this.processExportSchemaCreatorDrawing(_response);
25637
+ });
25638
+ }
25639
+
25640
+ protected processExportSchemaCreatorDrawing(response: Response): Promise<DownloadDto> {
25641
+ const status = response.status;
25642
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
25643
+ if (status === 200) {
25644
+ return response.text().then((_responseText) => {
25645
+ let result200: any = null;
25646
+ result200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver) as DownloadDto;
25647
+ return result200;
25648
+ });
25649
+ } else if (status !== 200 && status !== 204) {
25650
+ return response.text().then((_responseText) => {
25651
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
25652
+ });
25653
+ }
25654
+ return Promise.resolve<DownloadDto>(null as any);
25655
+ }
25656
+
25657
+ /**
25658
+ * Starts an async snip resolve; the result is delivered through the
25659
+ SchemaCreatorSnipResolved SignalR notification.
25660
+ * @param image (optional)
25661
+ */
25662
+ resolveSchemaCreatorSnip(id: string, elementId: string, image: FileParameter | null | undefined): Promise<FileResponse> {
25663
+ let url_ = this.baseUrl + "/measurementforms/schemas/{id}/creatorstate/elements/{elementId}/resolvesnip";
25664
+ if (id === undefined || id === null)
25665
+ throw new globalThis.Error("The parameter 'id' must be defined.");
25666
+ url_ = url_.replace("{id}", encodeURIComponent("" + id));
25667
+ if (elementId === undefined || elementId === null)
25668
+ throw new globalThis.Error("The parameter 'elementId' must be defined.");
25669
+ url_ = url_.replace("{elementId}", encodeURIComponent("" + elementId));
25670
+ url_ = url_.replace(/[?&]$/, "");
25671
+
25672
+ const content_ = new FormData();
25673
+ if (image !== null && image !== undefined)
25674
+ content_.append("image", image.data, image.fileName ? image.fileName : "image");
25675
+
25676
+ let options_: RequestInit = {
25677
+ body: content_,
25678
+ method: "POST",
25679
+ headers: {
25680
+ "Accept": "application/octet-stream"
25681
+ }
25682
+ };
25683
+
25684
+ return this.transformOptions(options_).then(transformedOptions_ => {
25685
+ return this.http.fetch(url_, transformedOptions_);
25686
+ }).then((_response: Response) => {
25687
+ return this.processResolveSchemaCreatorSnip(_response);
25688
+ });
25689
+ }
25690
+
25691
+ protected processResolveSchemaCreatorSnip(response: Response): Promise<FileResponse> {
25692
+ const status = response.status;
25693
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
25694
+ if (status === 200 || status === 206) {
25695
+ const contentDisposition = response.headers ? response.headers.get("content-disposition") : undefined;
25696
+ let fileNameMatch = contentDisposition ? /filename\*=(?:(\\?['"])(.*?)\1|(?:[^\s]+'.*?')?([^;\n]*))/g.exec(contentDisposition) : undefined;
25697
+ let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;
25698
+ if (fileName) {
25699
+ fileName = decodeURIComponent(fileName);
25700
+ } else {
25701
+ fileNameMatch = contentDisposition ? /filename="?([^"]*?)"?(;|$)/g.exec(contentDisposition) : undefined;
25702
+ fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;
25703
+ }
25704
+ return response.blob().then(blob => { return { fileName: fileName, data: blob, status: status, headers: _headers }; });
25705
+ } else if (status !== 200 && status !== 204) {
25706
+ return response.text().then((_responseText) => {
25707
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
25708
+ });
25709
+ }
25710
+ return Promise.resolve<FileResponse>(null as any);
25711
+ }
25712
+ }
25713
+
25397
25714
  export interface IMeasurementFormSchemasAdminClient {
25398
25715
 
25399
25716
  getArchivedMeasurementFormSchema(id: string): Promise<MeasurementFormSchemaDto>;
@@ -37655,6 +37972,99 @@ export interface ImaSpecificationLiteDto {
37655
37972
  isDeleted: boolean;
37656
37973
  }
37657
37974
 
37975
+ export interface SchemaCreatorStateDto {
37976
+ settings: SchemaCreatorSettingsDto;
37977
+ elements: SchemaCreatorElementDto[];
37978
+ fullParse?: SchemaCreatorFullParseStatusDto | null;
37979
+ }
37980
+
37981
+ export interface SchemaCreatorSettingsDto {
37982
+ unit?: UnitOfMeasureDto;
37983
+ tolerance?: GeneralToleranceDto;
37984
+ balloonSize?: number;
37985
+ }
37986
+
37987
+ export type UnitOfMeasureDto = "Millimeter" | "Inch";
37988
+
37989
+ export type GeneralToleranceDto = "NotSet" | "Fine" | "Medium" | "Coarse" | "VeryCoarse";
37990
+
37991
+ export interface SchemaCreatorElementDto {
37992
+ id: string;
37993
+ kind: SchemaCreatorElementKindDto;
37994
+ drawings: SchemaCreatorElementDrawingsDto;
37995
+ isDirty?: boolean | null;
37996
+ values?: SchemaCreatorElementValuesDto | null;
37997
+ parseResult?: SchemaCreatorSnipResultDto | null;
37998
+ }
37999
+
38000
+ export type SchemaCreatorElementKindDto = "Pending" | "Auto" | "Manual";
38001
+
38002
+ export interface SchemaCreatorElementDrawingsDto {
38003
+ square: SchemaCreatorDrawingDto;
38004
+ circle: SchemaCreatorDrawingDto;
38005
+ textId: string;
38006
+ }
38007
+
38008
+ export interface SchemaCreatorDrawingDto {
38009
+ rect: SchemaCreatorRectDto;
38010
+ pageIndex: number;
38011
+ annotationId: string;
38012
+ rotation?: number | null;
38013
+ unrotatedRect?: SchemaCreatorRectDto | null;
38014
+ }
38015
+
38016
+ export interface SchemaCreatorRectDto {
38017
+ origin: SchemaCreatorPointDto;
38018
+ size: SchemaCreatorSizeDto;
38019
+ }
38020
+
38021
+ export interface SchemaCreatorPointDto {
38022
+ x: number;
38023
+ y: number;
38024
+ }
38025
+
38026
+ export interface SchemaCreatorSizeDto {
38027
+ width: number;
38028
+ height: number;
38029
+ }
38030
+
38031
+ export interface SchemaCreatorElementValuesDto {
38032
+ reference: number;
38033
+ nominal?: number | null;
38034
+ nominalText?: string | null;
38035
+ plusTolerance?: number | null;
38036
+ minusTolerance?: number | null;
38037
+ coatingThickness?: number | null;
38038
+ measurementFrequency: MeasurementFrequency;
38039
+ measurementFrequencyParameter?: number | null;
38040
+ type?: string | null;
38041
+ count?: number | null;
38042
+ comment?: string | null;
38043
+ canCopy: boolean;
38044
+ visibleToCustomer: boolean;
38045
+ isDocumentedExternally: boolean;
38046
+ }
38047
+
38048
+ export type MeasurementFrequency = "All" | "FirstArticle" | "NFirst" | "NPercent" | "ISO2859" | "Nth" | "FirstAndLast" | "None";
38049
+
38050
+ export interface SchemaCreatorSnipResultDto {
38051
+ nominal?: number | null;
38052
+ nominalText?: string | null;
38053
+ plusTolerance?: number | null;
38054
+ minusTolerance?: number | null;
38055
+ coatingThickness?: number | null;
38056
+ count?: number | null;
38057
+ }
38058
+
38059
+ export interface SchemaCreatorFullParseStatusDto {
38060
+ inProgress: boolean;
38061
+ startedAt?: Date | null;
38062
+ errorType?: SchemaCreatorParseErrorTypeDto | null;
38063
+ errorMessage?: string | null;
38064
+ }
38065
+
38066
+ export type SchemaCreatorParseErrorTypeDto = "Timeout" | "ParseError";
38067
+
37658
38068
  export interface MeasurementFormSchemaDto {
37659
38069
  id: string;
37660
38070
  versionId: number;
@@ -37689,12 +38099,8 @@ export type MeasurementFormStatus = "Draft" | "Released" | "Revoked";
37689
38099
 
37690
38100
  export type MeasurementFormSource = "Unknown" | "InspectionXpert" | "Excel" | "Manual";
37691
38101
 
37692
- export type UnitOfMeasureDto = "Millimeter" | "Inch";
37693
-
37694
38102
  export type DimensionSettingDto = "Tolerance" | "MinMaxDimension";
37695
38103
 
37696
- export type GeneralToleranceDto = "NotSet" | "Fine" | "Medium" | "Coarse" | "VeryCoarse";
37697
-
37698
38104
  export interface MeasurementFormSchemaAttachmentDto {
37699
38105
  url: string;
37700
38106
  title: string;
@@ -37745,8 +38151,6 @@ export interface MeasurementFormGroupedElementDto {
37745
38151
  validationErrorMessage?: string | null;
37746
38152
  }
37747
38153
 
37748
- export type MeasurementFrequency = "All" | "FirstArticle" | "NFirst" | "NPercent" | "ISO2859" | "Nth" | "FirstAndLast" | "None";
37749
-
37750
38154
  export type MeasurementFormValueType = "None" | "Bool" | "Decimal" | "String";
37751
38155
 
37752
38156
  export type BonusType = "None" | "Positive" | "PositiveAndNegative";