@azure-tools/typespec-java 0.36.0 → 0.36.2

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/src/lib.js CHANGED
@@ -108,6 +108,12 @@ export const $lib = createTypeSpecLibrary({
108
108
  default: "Nested pageItems is not supported in Azure V1.",
109
109
  },
110
110
  },
111
+ "constant-header-in-response-removed": {
112
+ severity: "warning",
113
+ messages: {
114
+ default: paramMessage `Constant header '${"headerName"}' is removed from response headers.`,
115
+ },
116
+ },
111
117
  },
112
118
  emitter: {
113
119
  options: EmitterOptionsSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,6 @@ export declare class ClientContext {
9
9
  ignoredOperations: Set<Operation>;
10
10
  constructor(baseUri: string, hostParameters: Parameter[], globalParameters: Parameter[], apiVersions?: ApiVersions);
11
11
  addGlobalParameter(parameter: Parameter): void;
12
- getAddedVersions(versions: Version[]): string[];
12
+ getAddedVersions(versions: Version[]): string[] | undefined;
13
13
  }
14
14
  //# sourceMappingURL=models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,qBAAa,aAAa;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,gBAAgB,EAAE,SAAS,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iBAAiB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBAGhC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,SAAS,EAAE,EAC3B,gBAAgB,EAAE,SAAS,EAAE,EAC7B,WAAW,CAAC,EAAE,WAAW;IAS3B,kBAAkB,CAAC,SAAS,EAAE,SAAS;IAWvC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE;CAiBhD"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,qBAAa,aAAa;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,gBAAgB,EAAE,SAAS,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iBAAiB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;gBAGhC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,SAAS,EAAE,EAC3B,gBAAgB,EAAE,SAAS,EAAE,EAC7B,WAAW,CAAC,EAAE,WAAW;IAS3B,kBAAkB,CAAC,SAAS,EAAE,SAAS;IAWvC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS;CAuC5D"}
@@ -1,3 +1,4 @@
1
+ import { isVersionEarlierThan, isVersionedByDate } from "./versioning-utils.js";
1
2
  export class ClientContext {
2
3
  baseUri;
3
4
  hostParameters;
@@ -31,8 +32,30 @@ export class ClientContext {
31
32
  addedVersions.push(version);
32
33
  }
33
34
  }
35
+ if (addedVersions.length === 0 && isVersionedByDate(addedVersion)) {
36
+ // try again with versioning by YYYY-MM-DD(-preview)
37
+ let includeVersion = false;
38
+ for (const version of this.apiVersions) {
39
+ if (isVersionedByDate(version) && isVersionEarlierThan(addedVersion, version)) {
40
+ includeVersion = true;
41
+ }
42
+ if (includeVersion) {
43
+ addedVersions.push(version);
44
+ }
45
+ }
46
+ }
47
+ }
48
+ if (addedVersions.length === 0) {
49
+ // could not find matching version in client apiVersions
50
+ return undefined;
51
+ }
52
+ else if (addedVersions.length === this.apiVersions?.length) {
53
+ // it is added in the 1st api-version, this is the default scenario, no need to specify addedVersions
54
+ return undefined;
55
+ }
56
+ else {
57
+ return addedVersions;
34
58
  }
35
- return addedVersions;
36
59
  }
37
60
  }
38
61
  //# sourceMappingURL=models.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,aAAa;IACxB,OAAO,CAAS;IAChB,cAAc,CAAc;IAC5B,gBAAgB,CAAc;IAC9B,WAAW,CAAY;IACvB,iBAAiB,CAAiB;IAElC,YACE,OAAe,EACf,cAA2B,EAC3B,gBAA6B,EAC7B,WAAyB;QAEzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAa,CAAC;IAChD,CAAC;IAED,kBAAkB,CAAC,SAAoB;QACrC,IACE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC1C,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACzB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CACrE,EACD,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,QAAmB;QAClC,yCAAyC;QACzC,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,EAAG,CAAC,KAAK,CAAC;QAC7C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACvC,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;oBAC7B,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;gBACD,IAAI,cAAc,EAAE,CAAC;oBACnB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,OAAO,aAAa;IACxB,OAAO,CAAS;IAChB,cAAc,CAAc;IAC5B,gBAAgB,CAAc;IAC9B,WAAW,CAAY;IACvB,iBAAiB,CAAiB;IAElC,YACE,OAAe,EACf,cAA2B,EAC3B,gBAA6B,EAC7B,WAAyB;QAEzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAa,CAAC;IAChD,CAAC;IAED,kBAAkB,CAAC,SAAoB;QACrC,IACE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC1C,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACzB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CACrE,EACD,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,QAAmB;QAClC,yCAAyC;QACzC,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,EAAG,CAAC,KAAK,CAAC;QAC7C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACvC,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;oBAC7B,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;gBACD,IAAI,cAAc,EAAE,CAAC;oBACnB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClE,oDAAoD;gBACpD,IAAI,cAAc,GAAG,KAAK,CAAC;gBAC3B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACvC,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;wBAC9E,cAAc,GAAG,IAAI,CAAC;oBACxB,CAAC;oBACD,IAAI,cAAc,EAAE,CAAC;wBACnB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC9B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,wDAAwD;YACxD,OAAO,SAAS,CAAC;QACnB,CAAC;aAAM,IAAI,aAAa,CAAC,MAAM,KAAK,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YAC7D,qGAAqG;YACrG,OAAO,SAAS,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,eAAO,MAAM,QAAQ,+BAA+B,CAAC;AAErD,MAAM,WAAW,UAAU;IACzB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAID,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAE5C,aAAa,CAAC,EAAE,UAAU,CAAC;CAC5B;AAED,eAAO,MAAM,oBAAoB,EAAE,cAAc,CAAC,cAAc,CAoN/D,CAAC"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,eAAO,MAAM,QAAQ,+BAA+B,CAAC;AAErD,MAAM,WAAW,UAAU;IACzB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAID,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAE5C,aAAa,CAAC,EAAE,UAAU,CAAC;CAC5B;AAED,eAAO,MAAM,oBAAoB,EAAE,cAAc,CAAC,cAAc,CAkO/D,CAAC"}
@@ -42,6 +42,18 @@ export const EmitterOptionsSchema = {
42
42
  nullable: true,
43
43
  default: false,
44
44
  },
45
+ "float32-as-double": {
46
+ type: "boolean",
47
+ description: "When set to `true`, the emitter generates Java `double` for TypeSpec `float32`; otherwise, the emitter generates `float`. Default value is `true`. This option is for backward-compatibility.",
48
+ nullable: true,
49
+ default: true,
50
+ },
51
+ "uuid-as-string": {
52
+ type: "boolean",
53
+ description: "When set to `true`, the emitter generates Java `String` for TypeSpec `Azure.Core.uuid`; otherwise, the emitter generates `UUID`. Default value is `true`. This option is for backward-compatibility.",
54
+ nullable: true,
55
+ default: true,
56
+ },
45
57
  // customization
46
58
  ...UnbrandedSdkEmitterOptions["generate-protocol-methods"],
47
59
  ...UnbrandedSdkEmitterOptions["generate-convenience-methods"],
@@ -152,7 +164,7 @@ export const EmitterOptionsSchema = {
152
164
  },
153
165
  "service-version-exclude-preview": {
154
166
  type: "boolean",
155
- description: "When set to `true`, the emitter will not include `##-preview` api-versions in ServiceVersion class. Default value is `false`. The option should be set to `true`, if the intended release is SDK of stable version.",
167
+ description: "When set to `true`, the emitter will not include `##-preview` api-versions in ServiceVersion class, if the release targets a stable api-version. Default value is `true`. The option should be set to `true`, if the intended release is SDK of stable version.",
156
168
  nullable: true,
157
169
  default: false,
158
170
  },
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,25 @@ export declare function getServiceApiVersions(program: Program, client: SdkClien
22
22
  */
23
23
  export declare function getFilteredApiVersions(program: Program, pinnedApiVersion: string | undefined, versions: Version[], excludePreview?: boolean): Version[];
24
24
  export declare function isStableApiVersionString(version: string): boolean;
25
+ /**
26
+ * Checks whether a version follows the YYYY-MM-DD(-preview) format.
27
+ * The "-preview" suffix is optional.
28
+ *
29
+ * @param version the version string to validate
30
+ * @returns true if the version follows the YYYY-MM-DD(-preview) format, false otherwise
31
+ */
32
+ export declare function isVersionedByDate(version: string): boolean;
33
+ /**
34
+ * Compares two date-based versions to determine if the first version is earlier than the second.
35
+ * Assumes both versions have already passed isVersionedByDate validation.
36
+ *
37
+ * Comparison logic:
38
+ * 1. Compare by date (YYYY-MM-DD) first
39
+ * 2. If dates are equal, stable version is considered later than preview version
40
+ *
41
+ * @param version the version to check
42
+ * @param compareTo the version to compare against
43
+ * @returns true if version is earlier than compareTo, false otherwise
44
+ */
45
+ export declare function isVersionEarlierThan(version: string, compareTo: string): boolean;
25
46
  //# sourceMappingURL=versioning-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"versioning-utils.d.ts","sourceRoot":"","sources":["../../src/versioning-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC9F,OAAO,EAAa,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAuC,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpF;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACtC,OAAO,EAAE,GAAG,SAAS,CAYvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,cAAc,GAAE,OAAc,GAC7B,OAAO,EAAE,CAQX;AAMD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEjE"}
1
+ {"version":3,"file":"versioning-utils.d.ts","sourceRoot":"","sources":["../../src/versioning-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC9F,OAAO,EAAa,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAuC,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpF;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACtC,OAAO,EAAE,GAAG,SAAS,CAYvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,cAAc,GAAE,OAAc,GAC7B,OAAO,EAAE,CAQX;AAMD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAa1D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAuChF"}
@@ -43,4 +43,68 @@ function isStableApiVersion(program, version) {
43
43
  export function isStableApiVersionString(version) {
44
44
  return !version.toLowerCase().endsWith("-preview");
45
45
  }
46
+ /**
47
+ * Checks whether a version follows the YYYY-MM-DD(-preview) format.
48
+ * The "-preview" suffix is optional.
49
+ *
50
+ * @param version the version string to validate
51
+ * @returns true if the version follows the YYYY-MM-DD(-preview) format, false otherwise
52
+ */
53
+ export function isVersionedByDate(version) {
54
+ if (!version) {
55
+ return false;
56
+ }
57
+ // Regular expression to match YYYY-MM-DD(-preview) format
58
+ // YYYY: 4 digits for year
59
+ // MM: 2 digits for month (01-12)
60
+ // DD: 2 digits for day (01-31)
61
+ // (-preview): optional preview suffix
62
+ const dateVersionRegex = /^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])(-preview)?$/;
63
+ return dateVersionRegex.test(version);
64
+ }
65
+ /**
66
+ * Compares two date-based versions to determine if the first version is earlier than the second.
67
+ * Assumes both versions have already passed isVersionedByDate validation.
68
+ *
69
+ * Comparison logic:
70
+ * 1. Compare by date (YYYY-MM-DD) first
71
+ * 2. If dates are equal, stable version is considered later than preview version
72
+ *
73
+ * @param version the version to check
74
+ * @param compareTo the version to compare against
75
+ * @returns true if version is earlier than compareTo, false otherwise
76
+ */
77
+ export function isVersionEarlierThan(version, compareTo) {
78
+ if (!version || !compareTo) {
79
+ return false;
80
+ }
81
+ // Extract date parts and preview status
82
+ const parseVersion = (ver) => {
83
+ const isPreview = ver.endsWith("-preview");
84
+ const datePart = isPreview ? ver.slice(0, -8) : ver; // Remove "-preview" if present
85
+ const [year, month, day] = datePart.split("-").map(Number);
86
+ return { year, month, day, isPreview };
87
+ };
88
+ const versionParts = parseVersion(version);
89
+ const compareToParts = parseVersion(compareTo);
90
+ // Compare by year first
91
+ if (versionParts.year !== compareToParts.year) {
92
+ return versionParts.year < compareToParts.year;
93
+ }
94
+ // Compare by month if years are equal
95
+ if (versionParts.month !== compareToParts.month) {
96
+ return versionParts.month < compareToParts.month;
97
+ }
98
+ // Compare by day if years and months are equal
99
+ if (versionParts.day !== compareToParts.day) {
100
+ return versionParts.day < compareToParts.day;
101
+ }
102
+ // If dates are identical, compare preview status
103
+ // Preview version is considered earlier than stable version
104
+ if (versionParts.isPreview !== compareToParts.isPreview) {
105
+ return versionParts.isPreview && !compareToParts.isPreview;
106
+ }
107
+ // Versions are identical
108
+ return false;
109
+ }
46
110
  //# sourceMappingURL=versioning-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"versioning-utils.js","sourceRoot":"","sources":["../../src/versioning-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGpE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAW,MAAM,sBAAsB,CAAC;AAEpF;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAgB,EAChB,MAAuC;IAEvC,oEAAoE;IACpE,qHAAqH;IACrH,IAAI,WAAkC,CAAC;IACvC,MAAM,kBAAkB,GAA0B,sBAAsB,CACtE,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,OAAO,CACrB,CAAC;IACF,IAAI,kBAAkB,EAAE,CAAC;QACvB,WAAW,GAAG,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3E,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAgB,EAChB,gBAAoC,EACpC,QAAmB,EACnB,iBAA0B,IAAI;IAE9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,wBAAwB,GAAG,cAAc,IAAI,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IAC9F,OAAO,QAAQ;SACZ,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,gBAAgB,CAAC,GAAG,CAAC,CAAC;SACvE,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,wBAAwB,IAAI,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAgB,EAAE,OAAgB;IAC5D,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAe;IACtD,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"versioning-utils.js","sourceRoot":"","sources":["../../src/versioning-utils.ts"],"names":[],"mappings":"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"}