modal 0.11.1-dev.15 → 0.11.1-dev.16

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.cjs CHANGED
@@ -36230,7 +36230,7 @@ var ImageListTagsItem = {
36230
36230
  }
36231
36231
  };
36232
36232
  function createBaseImageListTagsRequest() {
36233
- return { environmentName: "", tagPrefix: "", maxObjects: 0, pageToken: "" };
36233
+ return { environmentName: "", tagPrefix: "", maxObjects: 0, pageToken: "", imageId: "" };
36234
36234
  }
36235
36235
  var ImageListTagsRequest = {
36236
36236
  encode(message, writer = new BinaryWriter()) {
@@ -36246,6 +36246,9 @@ var ImageListTagsRequest = {
36246
36246
  if (message.pageToken !== "") {
36247
36247
  writer.uint32(34).string(message.pageToken);
36248
36248
  }
36249
+ if (message.imageId !== "") {
36250
+ writer.uint32(42).string(message.imageId);
36251
+ }
36249
36252
  return writer;
36250
36253
  },
36251
36254
  decode(input, length) {
@@ -36283,6 +36286,13 @@ var ImageListTagsRequest = {
36283
36286
  message.pageToken = reader.string();
36284
36287
  continue;
36285
36288
  }
36289
+ case 5: {
36290
+ if (tag !== 42) {
36291
+ break;
36292
+ }
36293
+ message.imageId = reader.string();
36294
+ continue;
36295
+ }
36286
36296
  }
36287
36297
  if ((tag & 7) === 4 || tag === 0) {
36288
36298
  break;
@@ -36296,7 +36306,8 @@ var ImageListTagsRequest = {
36296
36306
  environmentName: isSet5(object.environmentName) ? globalThis.String(object.environmentName) : "",
36297
36307
  tagPrefix: isSet5(object.tagPrefix) ? globalThis.String(object.tagPrefix) : "",
36298
36308
  maxObjects: isSet5(object.maxObjects) ? globalThis.Number(object.maxObjects) : 0,
36299
- pageToken: isSet5(object.pageToken) ? globalThis.String(object.pageToken) : ""
36309
+ pageToken: isSet5(object.pageToken) ? globalThis.String(object.pageToken) : "",
36310
+ imageId: isSet5(object.imageId) ? globalThis.String(object.imageId) : ""
36300
36311
  };
36301
36312
  },
36302
36313
  toJSON(message) {
@@ -36313,6 +36324,9 @@ var ImageListTagsRequest = {
36313
36324
  if (message.pageToken !== "") {
36314
36325
  obj.pageToken = message.pageToken;
36315
36326
  }
36327
+ if (message.imageId !== "") {
36328
+ obj.imageId = message.imageId;
36329
+ }
36316
36330
  return obj;
36317
36331
  },
36318
36332
  create(base) {
@@ -36324,6 +36338,7 @@ var ImageListTagsRequest = {
36324
36338
  message.tagPrefix = object.tagPrefix ?? "";
36325
36339
  message.maxObjects = object.maxObjects ?? 0;
36326
36340
  message.pageToken = object.pageToken ?? "";
36341
+ message.imageId = object.imageId ?? "";
36327
36342
  return message;
36328
36343
  }
36329
36344
  };
@@ -36617,6 +36632,57 @@ var ImageMetadata_PythonPackagesEntry = {
36617
36632
  return message;
36618
36633
  }
36619
36634
  };
36635
+ function createBaseImageNameDeleteRequest() {
36636
+ return { tag: "" };
36637
+ }
36638
+ var ImageNameDeleteRequest = {
36639
+ encode(message, writer = new BinaryWriter()) {
36640
+ if (message.tag !== "") {
36641
+ writer.uint32(10).string(message.tag);
36642
+ }
36643
+ return writer;
36644
+ },
36645
+ decode(input, length) {
36646
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
36647
+ let end = length === void 0 ? reader.len : reader.pos + length;
36648
+ const message = createBaseImageNameDeleteRequest();
36649
+ while (reader.pos < end) {
36650
+ const tag = reader.uint32();
36651
+ switch (tag >>> 3) {
36652
+ case 1: {
36653
+ if (tag !== 10) {
36654
+ break;
36655
+ }
36656
+ message.tag = reader.string();
36657
+ continue;
36658
+ }
36659
+ }
36660
+ if ((tag & 7) === 4 || tag === 0) {
36661
+ break;
36662
+ }
36663
+ reader.skip(tag & 7);
36664
+ }
36665
+ return message;
36666
+ },
36667
+ fromJSON(object) {
36668
+ return { tag: isSet5(object.tag) ? globalThis.String(object.tag) : "" };
36669
+ },
36670
+ toJSON(message) {
36671
+ const obj = {};
36672
+ if (message.tag !== "") {
36673
+ obj.tag = message.tag;
36674
+ }
36675
+ return obj;
36676
+ },
36677
+ create(base) {
36678
+ return ImageNameDeleteRequest.fromPartial(base ?? {});
36679
+ },
36680
+ fromPartial(object) {
36681
+ const message = createBaseImageNameDeleteRequest();
36682
+ message.tag = object.tag ?? "";
36683
+ return message;
36684
+ }
36685
+ };
36620
36686
  function createBaseImagePublishRequest() {
36621
36687
  return { imageId: "", tag: "", environmentName: "", allowPublic: false };
36622
36688
  }
@@ -66435,6 +66501,14 @@ var ModalClientDefinition = {
66435
66501
  responseStream: false,
66436
66502
  options: {}
66437
66503
  },
66504
+ imageNameDelete: {
66505
+ name: "ImageNameDelete",
66506
+ requestType: ImageNameDeleteRequest,
66507
+ requestStream: false,
66508
+ responseType: Empty,
66509
+ responseStream: false,
66510
+ options: {}
66511
+ },
66438
66512
  imagePublish: {
66439
66513
  name: "ImagePublish",
66440
66514
  requestType: ImagePublishRequest,
@@ -75996,6 +76070,21 @@ var import_uuid = require("uuid");
75996
76070
 
75997
76071
  // src/volume.ts
75998
76072
  var import_nice_grpc11 = require("nice-grpc");
76073
+ function volumeFsVersionProto(version) {
76074
+ switch (version) {
76075
+ case void 0:
76076
+ return 0 /* VOLUME_FS_VERSION_UNSPECIFIED */;
76077
+ case 1:
76078
+ return 1 /* VOLUME_FS_VERSION_V1 */;
76079
+ case 2:
76080
+ return 2 /* VOLUME_FS_VERSION_V2 */;
76081
+ default:
76082
+ throw new InvalidError("VolumeFS version must be either 1 or 2");
76083
+ }
76084
+ }
76085
+ function normalizeVolumeFsVersion(version) {
76086
+ return version === 0 /* VOLUME_FS_VERSION_UNSPECIFIED */ ? 1 /* VOLUME_FS_VERSION_V1 */ : version;
76087
+ }
75999
76088
  var VolumeService = class {
76000
76089
  #client;
76001
76090
  constructor(client) {
@@ -76005,12 +76094,25 @@ var VolumeService = class {
76005
76094
  * Reference a {@link Volume} by its name.
76006
76095
  */
76007
76096
  async fromName(name, params) {
76097
+ const requestedVersion = volumeFsVersionProto(params?.version);
76008
76098
  try {
76009
76099
  const resp = await this.#client.cpClient.volumeGetOrCreate({
76010
76100
  deploymentName: name,
76011
76101
  environmentName: this.#client.environmentName(params?.environment),
76012
- objectCreationType: params?.createIfMissing ? 1 /* OBJECT_CREATION_TYPE_CREATE_IF_MISSING */ : 0 /* OBJECT_CREATION_TYPE_UNSPECIFIED */
76102
+ objectCreationType: params?.createIfMissing ? 1 /* OBJECT_CREATION_TYPE_CREATE_IF_MISSING */ : 0 /* OBJECT_CREATION_TYPE_UNSPECIFIED */,
76103
+ version: requestedVersion
76013
76104
  });
76105
+ if (params?.version !== void 0) {
76106
+ const actualVersion = normalizeVolumeFsVersion(
76107
+ resp.metadata?.version ?? 0 /* VOLUME_FS_VERSION_UNSPECIFIED */
76108
+ );
76109
+ const normalizedRequestedVersion = normalizeVolumeFsVersion(requestedVersion);
76110
+ if (actualVersion !== normalizedRequestedVersion) {
76111
+ throw new InvalidError(
76112
+ `Volume '${name}' exists but has version v${actualVersion}, not v${normalizedRequestedVersion} as requested. To access this Volume, either omit the version parameter or use the correct version.`
76113
+ );
76114
+ }
76115
+ }
76014
76116
  this.#client.logger.debug(
76015
76117
  "Retrieved Volume",
76016
76118
  "volume_id",
@@ -79044,7 +79146,7 @@ var AuthTokenManager = class {
79044
79146
  };
79045
79147
 
79046
79148
  // src/version.ts
79047
- var SDK_VERSION = "0.11.1-dev.15";
79149
+ var SDK_VERSION = "0.11.1-dev.16";
79048
79150
  function getSDKVersion() {
79049
79151
  return SDK_VERSION;
79050
79152
  }
package/dist/index.d.cts CHANGED
@@ -3138,6 +3138,8 @@ interface ImageListTagsRequest {
3138
3138
  /** Defaults to 100. Values above 100 are rejected by the server. */
3139
3139
  maxObjects: number;
3140
3140
  pageToken: string;
3141
+ /** Returns only the tags that currently point at this image. Optional. */
3142
+ imageId: string;
3141
3143
  }
3142
3144
  declare const ImageListTagsRequest: MessageFns$1<ImageListTagsRequest>;
3143
3145
  interface ImageListTagsResponse {
@@ -3170,6 +3172,11 @@ interface ImageMetadata {
3170
3172
  imageBuilderVersion?: string | undefined;
3171
3173
  }
3172
3174
  declare const ImageMetadata: MessageFns$1<ImageMetadata>;
3175
+ interface ImageNameDeleteRequest {
3176
+ /** Named image reference: "[environment/]name[:tag]". */
3177
+ tag: string;
3178
+ }
3179
+ declare const ImageNameDeleteRequest: MessageFns$1<ImageNameDeleteRequest>;
3173
3180
  interface ImagePublishRequest {
3174
3181
  imageId: string;
3175
3182
  /**
@@ -6610,6 +6617,14 @@ declare const ModalClientDefinition: {
6610
6617
  readonly responseStream: false;
6611
6618
  readonly options: {};
6612
6619
  };
6620
+ readonly imageNameDelete: {
6621
+ readonly name: "ImageNameDelete";
6622
+ readonly requestType: MessageFns$1<ImageNameDeleteRequest>;
6623
+ readonly requestStream: false;
6624
+ readonly responseType: MessageFns$2<Empty>;
6625
+ readonly responseStream: false;
6626
+ readonly options: {};
6627
+ };
6613
6628
  readonly imagePublish: {
6614
6629
  readonly name: "ImagePublish";
6615
6630
  readonly requestType: MessageFns$1<ImagePublishRequest>;
@@ -8307,6 +8322,8 @@ declare class EphemeralHeartbeatManager {
8307
8322
  type VolumeFromNameParams = {
8308
8323
  environment?: string;
8309
8324
  createIfMissing?: boolean;
8325
+ /** Experimental VolumeFS version; omit to accept either version. */
8326
+ version?: 1 | 2;
8310
8327
  };
8311
8328
  /** Optional parameters for {@link VolumeService#ephemeral client.volumes.ephemeral()}. */
8312
8329
  type VolumeEphemeralParams = {
package/dist/index.d.ts CHANGED
@@ -3138,6 +3138,8 @@ interface ImageListTagsRequest {
3138
3138
  /** Defaults to 100. Values above 100 are rejected by the server. */
3139
3139
  maxObjects: number;
3140
3140
  pageToken: string;
3141
+ /** Returns only the tags that currently point at this image. Optional. */
3142
+ imageId: string;
3141
3143
  }
3142
3144
  declare const ImageListTagsRequest: MessageFns$1<ImageListTagsRequest>;
3143
3145
  interface ImageListTagsResponse {
@@ -3170,6 +3172,11 @@ interface ImageMetadata {
3170
3172
  imageBuilderVersion?: string | undefined;
3171
3173
  }
3172
3174
  declare const ImageMetadata: MessageFns$1<ImageMetadata>;
3175
+ interface ImageNameDeleteRequest {
3176
+ /** Named image reference: "[environment/]name[:tag]". */
3177
+ tag: string;
3178
+ }
3179
+ declare const ImageNameDeleteRequest: MessageFns$1<ImageNameDeleteRequest>;
3173
3180
  interface ImagePublishRequest {
3174
3181
  imageId: string;
3175
3182
  /**
@@ -6610,6 +6617,14 @@ declare const ModalClientDefinition: {
6610
6617
  readonly responseStream: false;
6611
6618
  readonly options: {};
6612
6619
  };
6620
+ readonly imageNameDelete: {
6621
+ readonly name: "ImageNameDelete";
6622
+ readonly requestType: MessageFns$1<ImageNameDeleteRequest>;
6623
+ readonly requestStream: false;
6624
+ readonly responseType: MessageFns$2<Empty>;
6625
+ readonly responseStream: false;
6626
+ readonly options: {};
6627
+ };
6613
6628
  readonly imagePublish: {
6614
6629
  readonly name: "ImagePublish";
6615
6630
  readonly requestType: MessageFns$1<ImagePublishRequest>;
@@ -8307,6 +8322,8 @@ declare class EphemeralHeartbeatManager {
8307
8322
  type VolumeFromNameParams = {
8308
8323
  environment?: string;
8309
8324
  createIfMissing?: boolean;
8325
+ /** Experimental VolumeFS version; omit to accept either version. */
8326
+ version?: 1 | 2;
8310
8327
  };
8311
8328
  /** Optional parameters for {@link VolumeService#ephemeral client.volumes.ephemeral()}. */
8312
8329
  type VolumeEphemeralParams = {
package/dist/index.js CHANGED
@@ -36130,7 +36130,7 @@ var ImageListTagsItem = {
36130
36130
  }
36131
36131
  };
36132
36132
  function createBaseImageListTagsRequest() {
36133
- return { environmentName: "", tagPrefix: "", maxObjects: 0, pageToken: "" };
36133
+ return { environmentName: "", tagPrefix: "", maxObjects: 0, pageToken: "", imageId: "" };
36134
36134
  }
36135
36135
  var ImageListTagsRequest = {
36136
36136
  encode(message, writer = new BinaryWriter()) {
@@ -36146,6 +36146,9 @@ var ImageListTagsRequest = {
36146
36146
  if (message.pageToken !== "") {
36147
36147
  writer.uint32(34).string(message.pageToken);
36148
36148
  }
36149
+ if (message.imageId !== "") {
36150
+ writer.uint32(42).string(message.imageId);
36151
+ }
36149
36152
  return writer;
36150
36153
  },
36151
36154
  decode(input, length) {
@@ -36183,6 +36186,13 @@ var ImageListTagsRequest = {
36183
36186
  message.pageToken = reader.string();
36184
36187
  continue;
36185
36188
  }
36189
+ case 5: {
36190
+ if (tag !== 42) {
36191
+ break;
36192
+ }
36193
+ message.imageId = reader.string();
36194
+ continue;
36195
+ }
36186
36196
  }
36187
36197
  if ((tag & 7) === 4 || tag === 0) {
36188
36198
  break;
@@ -36196,7 +36206,8 @@ var ImageListTagsRequest = {
36196
36206
  environmentName: isSet5(object.environmentName) ? globalThis.String(object.environmentName) : "",
36197
36207
  tagPrefix: isSet5(object.tagPrefix) ? globalThis.String(object.tagPrefix) : "",
36198
36208
  maxObjects: isSet5(object.maxObjects) ? globalThis.Number(object.maxObjects) : 0,
36199
- pageToken: isSet5(object.pageToken) ? globalThis.String(object.pageToken) : ""
36209
+ pageToken: isSet5(object.pageToken) ? globalThis.String(object.pageToken) : "",
36210
+ imageId: isSet5(object.imageId) ? globalThis.String(object.imageId) : ""
36200
36211
  };
36201
36212
  },
36202
36213
  toJSON(message) {
@@ -36213,6 +36224,9 @@ var ImageListTagsRequest = {
36213
36224
  if (message.pageToken !== "") {
36214
36225
  obj.pageToken = message.pageToken;
36215
36226
  }
36227
+ if (message.imageId !== "") {
36228
+ obj.imageId = message.imageId;
36229
+ }
36216
36230
  return obj;
36217
36231
  },
36218
36232
  create(base) {
@@ -36224,6 +36238,7 @@ var ImageListTagsRequest = {
36224
36238
  message.tagPrefix = object.tagPrefix ?? "";
36225
36239
  message.maxObjects = object.maxObjects ?? 0;
36226
36240
  message.pageToken = object.pageToken ?? "";
36241
+ message.imageId = object.imageId ?? "";
36227
36242
  return message;
36228
36243
  }
36229
36244
  };
@@ -36517,6 +36532,57 @@ var ImageMetadata_PythonPackagesEntry = {
36517
36532
  return message;
36518
36533
  }
36519
36534
  };
36535
+ function createBaseImageNameDeleteRequest() {
36536
+ return { tag: "" };
36537
+ }
36538
+ var ImageNameDeleteRequest = {
36539
+ encode(message, writer = new BinaryWriter()) {
36540
+ if (message.tag !== "") {
36541
+ writer.uint32(10).string(message.tag);
36542
+ }
36543
+ return writer;
36544
+ },
36545
+ decode(input, length) {
36546
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
36547
+ let end = length === void 0 ? reader.len : reader.pos + length;
36548
+ const message = createBaseImageNameDeleteRequest();
36549
+ while (reader.pos < end) {
36550
+ const tag = reader.uint32();
36551
+ switch (tag >>> 3) {
36552
+ case 1: {
36553
+ if (tag !== 10) {
36554
+ break;
36555
+ }
36556
+ message.tag = reader.string();
36557
+ continue;
36558
+ }
36559
+ }
36560
+ if ((tag & 7) === 4 || tag === 0) {
36561
+ break;
36562
+ }
36563
+ reader.skip(tag & 7);
36564
+ }
36565
+ return message;
36566
+ },
36567
+ fromJSON(object) {
36568
+ return { tag: isSet5(object.tag) ? globalThis.String(object.tag) : "" };
36569
+ },
36570
+ toJSON(message) {
36571
+ const obj = {};
36572
+ if (message.tag !== "") {
36573
+ obj.tag = message.tag;
36574
+ }
36575
+ return obj;
36576
+ },
36577
+ create(base) {
36578
+ return ImageNameDeleteRequest.fromPartial(base ?? {});
36579
+ },
36580
+ fromPartial(object) {
36581
+ const message = createBaseImageNameDeleteRequest();
36582
+ message.tag = object.tag ?? "";
36583
+ return message;
36584
+ }
36585
+ };
36520
36586
  function createBaseImagePublishRequest() {
36521
36587
  return { imageId: "", tag: "", environmentName: "", allowPublic: false };
36522
36588
  }
@@ -66335,6 +66401,14 @@ var ModalClientDefinition = {
66335
66401
  responseStream: false,
66336
66402
  options: {}
66337
66403
  },
66404
+ imageNameDelete: {
66405
+ name: "ImageNameDelete",
66406
+ requestType: ImageNameDeleteRequest,
66407
+ requestStream: false,
66408
+ responseType: Empty,
66409
+ responseStream: false,
66410
+ options: {}
66411
+ },
66338
66412
  imagePublish: {
66339
66413
  name: "ImagePublish",
66340
66414
  requestType: ImagePublishRequest,
@@ -75909,6 +75983,21 @@ import { v4 as uuidv4 } from "uuid";
75909
75983
 
75910
75984
  // src/volume.ts
75911
75985
  import { ClientError as ClientError10, Status as Status10 } from "nice-grpc";
75986
+ function volumeFsVersionProto(version) {
75987
+ switch (version) {
75988
+ case void 0:
75989
+ return 0 /* VOLUME_FS_VERSION_UNSPECIFIED */;
75990
+ case 1:
75991
+ return 1 /* VOLUME_FS_VERSION_V1 */;
75992
+ case 2:
75993
+ return 2 /* VOLUME_FS_VERSION_V2 */;
75994
+ default:
75995
+ throw new InvalidError("VolumeFS version must be either 1 or 2");
75996
+ }
75997
+ }
75998
+ function normalizeVolumeFsVersion(version) {
75999
+ return version === 0 /* VOLUME_FS_VERSION_UNSPECIFIED */ ? 1 /* VOLUME_FS_VERSION_V1 */ : version;
76000
+ }
75912
76001
  var VolumeService = class {
75913
76002
  #client;
75914
76003
  constructor(client) {
@@ -75918,12 +76007,25 @@ var VolumeService = class {
75918
76007
  * Reference a {@link Volume} by its name.
75919
76008
  */
75920
76009
  async fromName(name, params) {
76010
+ const requestedVersion = volumeFsVersionProto(params?.version);
75921
76011
  try {
75922
76012
  const resp = await this.#client.cpClient.volumeGetOrCreate({
75923
76013
  deploymentName: name,
75924
76014
  environmentName: this.#client.environmentName(params?.environment),
75925
- objectCreationType: params?.createIfMissing ? 1 /* OBJECT_CREATION_TYPE_CREATE_IF_MISSING */ : 0 /* OBJECT_CREATION_TYPE_UNSPECIFIED */
76015
+ objectCreationType: params?.createIfMissing ? 1 /* OBJECT_CREATION_TYPE_CREATE_IF_MISSING */ : 0 /* OBJECT_CREATION_TYPE_UNSPECIFIED */,
76016
+ version: requestedVersion
75926
76017
  });
76018
+ if (params?.version !== void 0) {
76019
+ const actualVersion = normalizeVolumeFsVersion(
76020
+ resp.metadata?.version ?? 0 /* VOLUME_FS_VERSION_UNSPECIFIED */
76021
+ );
76022
+ const normalizedRequestedVersion = normalizeVolumeFsVersion(requestedVersion);
76023
+ if (actualVersion !== normalizedRequestedVersion) {
76024
+ throw new InvalidError(
76025
+ `Volume '${name}' exists but has version v${actualVersion}, not v${normalizedRequestedVersion} as requested. To access this Volume, either omit the version parameter or use the correct version.`
76026
+ );
76027
+ }
76028
+ }
75927
76029
  this.#client.logger.debug(
75928
76030
  "Retrieved Volume",
75929
76031
  "volume_id",
@@ -78957,7 +79059,7 @@ var AuthTokenManager = class {
78957
79059
  };
78958
79060
 
78959
79061
  // src/version.ts
78960
- var SDK_VERSION = "0.11.1-dev.15";
79062
+ var SDK_VERSION = "0.11.1-dev.16";
78961
79063
  function getSDKVersion() {
78962
79064
  return SDK_VERSION;
78963
79065
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "modal",
3
- "version": "0.11.1-dev.15",
3
+ "version": "0.11.1-dev.16",
4
4
  "description": "Modal SDK for JavaScript/TypeScript",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://modal.com/docs/guide/sdk-javascript-go",