@osdk/generator-converters 2.4.2 → 2.5.0-beta.10

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/CHANGELOG.md CHANGED
@@ -1,54 +1,83 @@
1
1
  # @osdk/generator-converters
2
2
 
3
- ## 2.4.2
3
+ ## 2.5.0-beta.10
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - @osdk/api@2.4.2
7
+ - @osdk/api@2.5.0-beta.10
8
8
 
9
- ## 2.4.1
9
+ ## 2.5.0-beta.9
10
10
 
11
11
  ### Patch Changes
12
12
 
13
- - 9cceb0f: Update Platform SDK dependencies
14
- - @osdk/api@2.4.1
13
+ - @osdk/api@2.5.0-beta.9
15
14
 
16
- ## 2.4.0
15
+ ## 2.5.0-beta.8
17
16
 
18
17
  ### Patch Changes
19
18
 
20
- - 322c5bc: Simulated release
21
- - 4bc848b: Add interface link support.
22
- - 8c95154: Add nearestNeighbor support
23
- - 44bbbe0: Add interface query support.
24
- - f277b30: Ensure stable ordering of arrays in code generation for object types and interface types. Sort `implements`, `implementedBy` and `linkTypes` arrays alphabetically for consistent output.
25
- - Updated dependencies [322c5bc]
26
- - Updated dependencies [4bc848b]
27
- - Updated dependencies [9f4fe9e]
28
- - Updated dependencies [29d2ada]
29
- - Updated dependencies [8dd6229]
30
- - Updated dependencies [8c95154]
31
- - Updated dependencies [c32dcf2]
32
- - Updated dependencies [722c89a]
33
- - Updated dependencies [9101bad]
34
- - Updated dependencies [44bbbe0]
35
- - @osdk/api@2.4.0
19
+ - Updated dependencies [ca1fabe]
20
+ - @osdk/api@2.5.0-beta.8
21
+
22
+ ## 2.5.0-beta.7
23
+
24
+ ### Patch Changes
25
+
26
+ - @osdk/api@2.5.0-beta.7
36
27
 
37
- ## 2.4.0-rc.19
28
+ ## 2.5.0-beta.6
29
+
30
+ ### Minor Changes
31
+
32
+ - cbcf2ad: Add branching support
38
33
 
39
34
  ### Patch Changes
40
35
 
41
- - Updated dependencies [8dd6229]
42
- - @osdk/api@2.4.0-rc.19
36
+ - @osdk/api@2.5.0-beta.6
37
+
38
+ ## 2.5.0-beta.5
39
+
40
+ ### Patch Changes
41
+
42
+ - Updated dependencies [052a96b]
43
+ - @osdk/api@2.5.0-beta.5
44
+
45
+ ## 2.5.0-beta.4
46
+
47
+ ### Minor Changes
48
+
49
+ - a00d2ed: Update Platform SDK dependencies
50
+ - a96d89e: Update Platform SDK dependencies
51
+
52
+ ### Patch Changes
53
+
54
+ - @osdk/api@2.5.0-beta.4
55
+
56
+ ## 2.5.0-beta.3
57
+
58
+ ### Minor Changes
59
+
60
+ - 7bdac45: Update Platform SDK dependency
61
+ - 7bdac45: Support value type enum generation for strings and booleans
62
+
63
+ ### Patch Changes
64
+
65
+ - Updated dependencies [7bdac45]
66
+ - Updated dependencies [20962bc]
67
+ - Updated dependencies [e48be06]
68
+ - @osdk/api@2.5.0-beta.3
69
+
70
+ ## 2.5.0-beta.2
71
+
72
+ ### Minor Changes
43
73
 
44
- ## 2.4.0-beta.18
74
+ - 7cdab1d: Update platform sdk dependencies
45
75
 
46
76
  ### Patch Changes
47
77
 
48
- - 44bbbe0: Add interface query support.
49
- - Updated dependencies [722c89a]
50
- - Updated dependencies [44bbbe0]
51
- - @osdk/api@2.4.0-beta.18
78
+ - Updated dependencies [7160276]
79
+ - Updated dependencies [76905f5]
80
+ - @osdk/api@2.5.0-beta.2
52
81
 
53
82
  ## 2.4.0-beta.17
54
83
 
@@ -128,13 +128,16 @@ describe(wireObjectTypeFullMetadataToSdkObjectMetadata, () => {
128
128
  implementsInterfaces: ["InterfaceZ", "InterfaceA", "InterfaceC"],
129
129
  implementsInterfaces2: {
130
130
  "InterfaceZ": {
131
- properties: {}
131
+ properties: {},
132
+ links: {}
132
133
  },
133
134
  "InterfaceA": {
134
- properties: {}
135
+ properties: {},
136
+ links: {}
135
137
  },
136
138
  "InterfaceC": {
137
- properties: {}
139
+ properties: {},
140
+ links: {}
138
141
  }
139
142
  },
140
143
  linkTypes: [],
@@ -1 +1 @@
1
- {"version":3,"file":"wireObjectTypeFullMetadataToSdkObjectMetadata.test.js","names":["describe","expect","expectTypeOf","it","wireObjectTypeFullMetadataToSdkObjectMetadata","result","implementsInterfaces","implementsInterfaces2","linkTypes","objectType","apiName","description","displayName","pluralDisplayName","icon","type","name","color","primaryKey","properties","dataType","otherKey","nullable","rid","defaulted","status","titleProperty","sharedPropertyTypeMapping","toBe","toEqualTypeOf","visibility","toBeUndefined","implements","toEqual","cardinality","objectTypeApiName","linkTypeRid","linkKeys","Object","keys","links"],"sources":["wireObjectTypeFullMetadataToSdkObjectMetadata.test.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectMetadata } from \"@osdk/api\";\nimport { describe, expect, expectTypeOf, it } from \"vitest\";\nimport type {\n supportedIconTypes,\n supportedObjectTypeVisibility,\n supportedReleaseStatus,\n} from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\nimport { wireObjectTypeFullMetadataToSdkObjectMetadata } from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\n\ndescribe(wireObjectTypeFullMetadataToSdkObjectMetadata, () => {\n it(\"handles magic nullable properties\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // PK is never nullable\n expect(result.properties[\"primaryKey\"].nullable).toBe(false);\n\n // was specified above\n expect(result.properties[\"otherKey\"].nullable).toBe(false);\n\n // was unspecified, so should be nullable\n expect(result.properties[\"defaulted\"].nullable).toBe(true);\n });\n\n it(\"Is up to date with the enums from API\", () => {\n type excludedStatuses = \"\";\n expectTypeOf<\n Exclude<\n typeof supportedReleaseStatus[number],\n excludedStatuses\n >\n >()\n .toEqualTypeOf<\n NonNullable<ObjectMetadata[\"status\"]>\n >();\n\n type excludedVisibility = \"\";\n expectTypeOf<\n Exclude<typeof supportedObjectTypeVisibility[number], excludedVisibility>\n >().toEqualTypeOf<\n NonNullable<ObjectMetadata[\"visibility\"]>\n >();\n\n type excludedIconTypes = \"\";\n expectTypeOf<\n Exclude<typeof supportedIconTypes[number], excludedIconTypes>\n >()\n .toEqualTypeOf<\n NonNullable<NonNullable<ObjectMetadata[\"icon\"]>[\"type\"]>\n >();\n });\n\n it(\"does not throw when enums don't match\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: {\n type: \"INVALID_NOT_IN_API\",\n name: \"blueprint\",\n color: \"blue\",\n } as any,\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"INVALID_NOT_IN_API\" as any,\n visibility: \"INVALID_NOT_IN_API\" as any,\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n expect(result.status).toBeUndefined();\n expect(result.visibility).toBeUndefined();\n expect(result.icon).toBeUndefined();\n });\n\n it(\"sorts the implements array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [\"InterfaceZ\", \"InterfaceA\", \"InterfaceC\"],\n implementsInterfaces2: {\n \"InterfaceZ\": { properties: {} },\n \"InterfaceA\": { properties: {} },\n \"InterfaceC\": { properties: {} },\n },\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that the array is sorted alphabetically\n expect(result.implements).toEqual([\n \"InterfaceA\",\n \"InterfaceC\",\n \"InterfaceZ\",\n ]);\n });\n\n it(\"sorts the linkTypes array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [\n {\n apiName: \"linkZ\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetZ\",\n displayName: \"LinkZ\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridZ\",\n },\n {\n apiName: \"linkA\",\n cardinality: \"MANY\",\n objectTypeApiName: \"TargetA\",\n displayName: \"LinkA\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridA\",\n },\n {\n apiName: \"linkC\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetC\",\n displayName: \"LinkC\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridC\",\n },\n ],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Get the link keys in the order they appear in the result\n const linkKeys = Object.keys(result.links);\n\n // Check that the links are sorted alphabetically by apiName\n expect(linkKeys).toEqual([\"linkA\", \"linkC\", \"linkZ\"]);\n });\n\n it(\"preserves empty arrays\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that empty array is preserved\n expect(result.implements).toEqual([]);\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,YAAY,EAAEC,EAAE,QAAQ,QAAQ;AAM3D,SAASC,6CAA6C,QAAQ,oDAAoD;AAElHJ,QAAQ,CAACI,6CAA6C,EAAE,MAAM;EAC5DD,EAAE,CAAC,mCAAmC,EAAE,MAAM;IAC5C,MAAME,MAAM,GAAGD,6CAA6C,CAAC;MAC3DE,oBAAoB,EAAE,EAAE;MACxBC,qBAAqB,EAAE,CAAC,CAAC;MACzBC,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE;QACVC,OAAO,EAAE,SAAS;QAClBC,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,iBAAiB,EAAE,cAAc;QACjCC,IAAI,EAAE;UAAEC,IAAI,EAAE,WAAW;UAAEC,IAAI,EAAE,WAAW;UAAEC,KAAK,EAAE;QAAO,CAAC;QAC7DC,UAAU,EAAE,YAAY;QACxBC,UAAU,EAAE;UACVD,UAAU,EAAE;YAAEE,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAE,KAAK,EAAE;UAAM,CAAC;UAC1DM,QAAQ,EAAE;YACRC,QAAQ,EAAE,KAAK;YACfF,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAC5BQ,GAAG,EAAE;UACP,CAAC;UACDC,SAAS,EAAE;YAAEJ,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAEQ,GAAG,EAAE;UAAM;QACxD,CAAC;QACDA,GAAG,EAAE,KAAK;QACVE,MAAM,EAAE,QAAQ;QAChBC,aAAa,EAAE;MACjB,CAAC;MACDC,yBAAyB,EAAE,CAAC;IAC9B,CAAC,EAAE,IAAI,CAAC;;IAER;IACA1B,MAAM,CAACI,MAAM,CAACc,UAAU,CAAC,YAAY,CAAC,CAACG,QAAQ,CAAC,CAACM,IAAI,CAAC,KAAK,CAAC;;IAE5D;IACA3B,MAAM,CAACI,MAAM,CAACc,UAAU,CAAC,UAAU,CAAC,CAACG,QAAQ,CAAC,CAACM,IAAI,CAAC,KAAK,CAAC;;IAE1D;IACA3B,MAAM,CAACI,MAAM,CAACc,UAAU,CAAC,WAAW,CAAC,CAACG,QAAQ,CAAC,CAACM,IAAI,CAAC,IAAI,CAAC;EAC5D,CAAC,CAAC;EAEFzB,EAAE,CAAC,uCAAuC,EAAE,MAAM;IAEhDD,YAAY,CAKV,CAAC,CACA2B,aAAa,CAEZ,CAAC;IAGL3B,YAAY,CAEV,CAAC,CAAC2B,aAAa,CAEf,CAAC;IAGH3B,YAAY,CAEV,CAAC,CACA2B,aAAa,CAEZ,CAAC;EACP,CAAC,CAAC;EAEF1B,EAAE,CAAC,uCAAuC,EAAE,MAAM;IAChD,MAAME,MAAM,GAAGD,6CAA6C,CAAC;MAC3DE,oBAAoB,EAAE,EAAE;MACxBC,qBAAqB,EAAE,CAAC,CAAC;MACzBC,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE;QACVC,OAAO,EAAE,SAAS;QAClBC,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,iBAAiB,EAAE,cAAc;QACjCC,IAAI,EAAE;UACJC,IAAI,EAAE,oBAAoB;UAC1BC,IAAI,EAAE,WAAW;UACjBC,KAAK,EAAE;QACT,CAAQ;QACRC,UAAU,EAAE,YAAY;QACxBC,UAAU,EAAE;UACVD,UAAU,EAAE;YAAEE,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAE,KAAK,EAAE;UAAM,CAAC;UAC1DM,QAAQ,EAAE;YACRC,QAAQ,EAAE,KAAK;YACfF,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAC5BQ,GAAG,EAAE;UACP,CAAC;UACDC,SAAS,EAAE;YAAEJ,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAEQ,GAAG,EAAE;UAAM;QACxD,CAAC;QACDA,GAAG,EAAE,KAAK;QACVE,MAAM,EAAE,oBAA2B;QACnCK,UAAU,EAAE,oBAA2B;QACvCJ,aAAa,EAAE;MACjB,CAAC;MACDC,yBAAyB,EAAE,CAAC;IAC9B,CAAC,EAAE,IAAI,CAAC;IAER1B,MAAM,CAACI,MAAM,CAACoB,MAAM,CAAC,CAACM,aAAa,CAAC,CAAC;IACrC9B,MAAM,CAACI,MAAM,CAACyB,UAAU,CAAC,CAACC,aAAa,CAAC,CAAC;IACzC9B,MAAM,CAACI,MAAM,CAACS,IAAI,CAAC,CAACiB,aAAa,CAAC,CAAC;EACrC,CAAC,CAAC;EAEF5B,EAAE,CAAC,8CAA8C,EAAE,MAAM;IACvD,MAAME,MAAM,GAAGD,6CAA6C,CAAC;MAC3DE,oBAAoB,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC;MAChEC,qBAAqB,EAAE;QACrB,YAAY,EAAE;UAAEY,UAAU,EAAE,CAAC;QAAE,CAAC;QAChC,YAAY,EAAE;UAAEA,UAAU,EAAE,CAAC;QAAE,CAAC;QAChC,YAAY,EAAE;UAAEA,UAAU,EAAE,CAAC;QAAE;MACjC,CAAC;MACDX,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE;QACVC,OAAO,EAAE,SAAS;QAClBC,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,iBAAiB,EAAE,cAAc;QACjCC,IAAI,EAAE;UAAEC,IAAI,EAAE,WAAW;UAAEC,IAAI,EAAE,WAAW;UAAEC,KAAK,EAAE;QAAO,CAAC;QAC7DC,UAAU,EAAE,YAAY;QACxBC,UAAU,EAAE;UACVD,UAAU,EAAE;YAAEE,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAE,KAAK,EAAE;UAAM;QAC3D,CAAC;QACDQ,GAAG,EAAE,KAAK;QACVE,MAAM,EAAE,QAAQ;QAChBC,aAAa,EAAE;MACjB,CAAC;MACDC,yBAAyB,EAAE,CAAC;IAC9B,CAAC,EAAE,IAAI,CAAC;;IAER;IACA1B,MAAM,CAACI,MAAM,CAAC2B,UAAU,CAAC,CAACC,OAAO,CAAC,CAChC,YAAY,EACZ,YAAY,EACZ,YAAY,CACb,CAAC;EACJ,CAAC,CAAC;EAEF9B,EAAE,CAAC,6CAA6C,EAAE,MAAM;IACtD,MAAME,MAAM,GAAGD,6CAA6C,CAAC;MAC3DE,oBAAoB,EAAE,EAAE;MACxBC,qBAAqB,EAAE,CAAC,CAAC;MACzBC,SAAS,EAAE,CACT;QACEE,OAAO,EAAE,OAAO;QAChBwB,WAAW,EAAE,KAAK;QAClBC,iBAAiB,EAAE,SAAS;QAC5BvB,WAAW,EAAE,OAAO;QACpBa,MAAM,EAAE,QAAQ;QAChBW,WAAW,EAAE;MACf,CAAC,EACD;QACE1B,OAAO,EAAE,OAAO;QAChBwB,WAAW,EAAE,MAAM;QACnBC,iBAAiB,EAAE,SAAS;QAC5BvB,WAAW,EAAE,OAAO;QACpBa,MAAM,EAAE,QAAQ;QAChBW,WAAW,EAAE;MACf,CAAC,EACD;QACE1B,OAAO,EAAE,OAAO;QAChBwB,WAAW,EAAE,KAAK;QAClBC,iBAAiB,EAAE,SAAS;QAC5BvB,WAAW,EAAE,OAAO;QACpBa,MAAM,EAAE,QAAQ;QAChBW,WAAW,EAAE;MACf,CAAC,CACF;MACD3B,UAAU,EAAE;QACVC,OAAO,EAAE,SAAS;QAClBC,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,iBAAiB,EAAE,cAAc;QACjCC,IAAI,EAAE;UAAEC,IAAI,EAAE,WAAW;UAAEC,IAAI,EAAE,WAAW;UAAEC,KAAK,EAAE;QAAO,CAAC;QAC7DC,UAAU,EAAE,YAAY;QACxBC,UAAU,EAAE;UACVD,UAAU,EAAE;YAAEE,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAE,KAAK,EAAE;UAAM;QAC3D,CAAC;QACDQ,GAAG,EAAE,KAAK;QACVE,MAAM,EAAE,QAAQ;QAChBC,aAAa,EAAE;MACjB,CAAC;MACDC,yBAAyB,EAAE,CAAC;IAC9B,CAAC,EAAE,IAAI,CAAC;;IAER;IACA,MAAMU,QAAQ,GAAGC,MAAM,CAACC,IAAI,CAAClC,MAAM,CAACmC,KAAK,CAAC;;IAE1C;IACAvC,MAAM,CAACoC,QAAQ,CAAC,CAACJ,OAAO,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;EACvD,CAAC,CAAC;EAEF9B,EAAE,CAAC,wBAAwB,EAAE,MAAM;IACjC,MAAME,MAAM,GAAGD,6CAA6C,CAAC;MAC3DE,oBAAoB,EAAE,EAAE;MACxBC,qBAAqB,EAAE,CAAC,CAAC;MACzBC,SAAS,EAAE,EAAE;MACbC,UAAU,EAAE;QACVC,OAAO,EAAE,SAAS;QAClBC,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,iBAAiB,EAAE,cAAc;QACjCC,IAAI,EAAE;UAAEC,IAAI,EAAE,WAAW;UAAEC,IAAI,EAAE,WAAW;UAAEC,KAAK,EAAE;QAAO,CAAC;QAC7DC,UAAU,EAAE,YAAY;QACxBC,UAAU,EAAE;UACVD,UAAU,EAAE;YAAEE,QAAQ,EAAE;cAAEL,IAAI,EAAE;YAAS,CAAC;YAAE,KAAK,EAAE;UAAM;QAC3D,CAAC;QACDQ,GAAG,EAAE,KAAK;QACVE,MAAM,EAAE,QAAQ;QAChBC,aAAa,EAAE;MACjB,CAAC;MACDC,yBAAyB,EAAE,CAAC;IAC9B,CAAC,EAAE,IAAI,CAAC;;IAER;IACA1B,MAAM,CAACI,MAAM,CAAC2B,UAAU,CAAC,CAACC,OAAO,CAAC,EAAE,CAAC;EACvC,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"wireObjectTypeFullMetadataToSdkObjectMetadata.test.js","names":["describe","expect","expectTypeOf","it","wireObjectTypeFullMetadataToSdkObjectMetadata","result","implementsInterfaces","implementsInterfaces2","linkTypes","objectType","apiName","description","displayName","pluralDisplayName","icon","type","name","color","primaryKey","properties","dataType","otherKey","nullable","rid","defaulted","status","titleProperty","sharedPropertyTypeMapping","toBe","toEqualTypeOf","visibility","toBeUndefined","links","implements","toEqual","cardinality","objectTypeApiName","linkTypeRid","linkKeys","Object","keys"],"sources":["wireObjectTypeFullMetadataToSdkObjectMetadata.test.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectMetadata } from \"@osdk/api\";\nimport { describe, expect, expectTypeOf, it } from \"vitest\";\nimport type {\n supportedIconTypes,\n supportedObjectTypeVisibility,\n supportedReleaseStatus,\n} from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\nimport { wireObjectTypeFullMetadataToSdkObjectMetadata } from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\n\ndescribe(wireObjectTypeFullMetadataToSdkObjectMetadata, () => {\n it(\"handles magic nullable properties\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // PK is never nullable\n expect(result.properties[\"primaryKey\"].nullable).toBe(false);\n\n // was specified above\n expect(result.properties[\"otherKey\"].nullable).toBe(false);\n\n // was unspecified, so should be nullable\n expect(result.properties[\"defaulted\"].nullable).toBe(true);\n });\n\n it(\"Is up to date with the enums from API\", () => {\n type excludedStatuses = \"\";\n expectTypeOf<\n Exclude<\n typeof supportedReleaseStatus[number],\n excludedStatuses\n >\n >()\n .toEqualTypeOf<\n NonNullable<ObjectMetadata[\"status\"]>\n >();\n\n type excludedVisibility = \"\";\n expectTypeOf<\n Exclude<typeof supportedObjectTypeVisibility[number], excludedVisibility>\n >().toEqualTypeOf<\n NonNullable<ObjectMetadata[\"visibility\"]>\n >();\n\n type excludedIconTypes = \"\";\n expectTypeOf<\n Exclude<typeof supportedIconTypes[number], excludedIconTypes>\n >()\n .toEqualTypeOf<\n NonNullable<NonNullable<ObjectMetadata[\"icon\"]>[\"type\"]>\n >();\n });\n\n it(\"does not throw when enums don't match\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: {\n type: \"INVALID_NOT_IN_API\",\n name: \"blueprint\",\n color: \"blue\",\n } as any,\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"INVALID_NOT_IN_API\" as any,\n visibility: \"INVALID_NOT_IN_API\" as any,\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n expect(result.status).toBeUndefined();\n expect(result.visibility).toBeUndefined();\n expect(result.icon).toBeUndefined();\n });\n\n it(\"sorts the implements array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [\"InterfaceZ\", \"InterfaceA\", \"InterfaceC\"],\n implementsInterfaces2: {\n \"InterfaceZ\": { properties: {}, links: {} },\n \"InterfaceA\": { properties: {}, links: {} },\n \"InterfaceC\": { properties: {}, links: {} },\n },\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that the array is sorted alphabetically\n expect(result.implements).toEqual([\n \"InterfaceA\",\n \"InterfaceC\",\n \"InterfaceZ\",\n ]);\n });\n\n it(\"sorts the linkTypes array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [\n {\n apiName: \"linkZ\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetZ\",\n displayName: \"LinkZ\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridZ\",\n },\n {\n apiName: \"linkA\",\n cardinality: \"MANY\",\n objectTypeApiName: \"TargetA\",\n displayName: \"LinkA\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridA\",\n },\n {\n apiName: \"linkC\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetC\",\n displayName: \"LinkC\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridC\",\n },\n ],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Get the link keys in the order they appear in the result\n const linkKeys = Object.keys(result.links);\n\n // Check that the links are sorted alphabetically by apiName\n expect(linkKeys).toEqual([\"linkA\", \"linkC\", \"linkZ\"]);\n });\n\n it(\"preserves empty arrays\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that empty array is preserved\n expect(result.implements).toEqual([]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -45,7 +45,8 @@ export function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true,
45
45
  multiplicity: false,
46
46
  description: input.description,
47
47
  type: sdkPropDefinition,
48
- nullable: input.nullable == null ? isNullable : input.nullable
48
+ nullable: input.nullable == null ? isNullable : input.nullable,
49
+ valueTypeApiName: input.valueTypeApiName
49
50
  };
50
51
  case "array":
51
52
  {
@@ -54,7 +55,8 @@ export function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true,
54
55
  multiplicity: true,
55
56
  description: input.description,
56
57
  type: sdkPropDefinition,
57
- nullable: true
58
+ nullable: true,
59
+ valueTypeApiName: input.valueTypeApiName
58
60
  };
59
61
  }
60
62
  case "cipherText":
@@ -1 +1 @@
1
- {"version":3,"file":"wirePropertyV2ToSdkPropertyDefinition.js","names":["wirePropertyV2ToSdkPropertyDefinition","input","isNullable","log","sdkPropDefinition","objectPropertyTypeToSdkPropertyDefinition","dataType","undefined","type","displayName","multiplicity","description","nullable","info","JSON","stringify","propertyType","subType","itemType","structFieldTypes","reduce","structMap","structField","apiName"],"sources":["wirePropertyV2ToSdkPropertyDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n BaseWirePropertyTypes,\n ObjectMetadata,\n WirePropertyTypes,\n} from \"@osdk/api\";\nimport type {\n ObjectPropertyType,\n PropertyV2,\n SharedPropertyType,\n} from \"@osdk/foundry.ontologies\";\n\nexport function wirePropertyV2ToSdkPropertyDefinition(\n input: (PropertyV2 | SharedPropertyType) & { nullable?: boolean },\n isNullable: boolean = true,\n log?: { info: (msg: string) => void },\n): ObjectMetadata.Property | undefined {\n const sdkPropDefinition = objectPropertyTypeToSdkPropertyDefinition(\n input.dataType,\n log,\n );\n if (sdkPropDefinition == null) {\n return undefined;\n }\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"mediaReference\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"struct\":\n case \"vector\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: sdkPropDefinition,\n nullable: input.nullable == null ? isNullable : input.nullable,\n };\n case \"array\": {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: sdkPropDefinition,\n nullable: true,\n };\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(input.dataType.type)} is not a supported dataType`,\n );\n\n return undefined;\n }\n\n default:\n const _: never = input.dataType;\n log?.info(\n `${JSON.stringify(input.dataType)} is not a supported dataType`,\n );\n\n return undefined;\n }\n}\n\nfunction objectPropertyTypeToSdkPropertyDefinition(\n propertyType: ObjectPropertyType,\n log?: { info: (msg: string) => void },\n): WirePropertyTypes | undefined {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"vector\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType?.type === \"string\") {\n return \"stringTimeseries\";\n } else if (propertyType.itemType?.type === \"double\") {\n return \"numericTimeseries\";\n } else return \"sensorTimeseries\";\n case \"struct\": {\n return propertyType.structFieldTypes.reduce(\n (structMap: Record<string, BaseWirePropertyTypes>, structField) => {\n structMap[structField.apiName] =\n objectPropertyTypeToSdkPropertyDefinition(\n structField.dataType,\n ) as BaseWirePropertyTypes;\n return structMap;\n },\n {},\n );\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(propertyType.type)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n default: {\n const _: never = propertyType;\n log?.info(\n `${JSON.stringify(propertyType)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"wirePropertyV2ToSdkPropertyDefinition.js","names":["wirePropertyV2ToSdkPropertyDefinition","input","isNullable","log","sdkPropDefinition","objectPropertyTypeToSdkPropertyDefinition","dataType","undefined","type","displayName","multiplicity","description","nullable","valueTypeApiName","info","JSON","stringify","propertyType","subType","itemType","structFieldTypes","reduce","structMap","structField","apiName"],"sources":["wirePropertyV2ToSdkPropertyDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n BaseWirePropertyTypes,\n ObjectMetadata,\n WirePropertyTypes,\n} from \"@osdk/api\";\nimport type {\n ObjectPropertyType,\n PropertyV2,\n SharedPropertyType,\n} from \"@osdk/foundry.ontologies\";\n\nexport function wirePropertyV2ToSdkPropertyDefinition(\n input: (PropertyV2 | SharedPropertyType) & { nullable?: boolean },\n isNullable: boolean = true,\n log?: { info: (msg: string) => void },\n): ObjectMetadata.Property | undefined {\n const sdkPropDefinition = objectPropertyTypeToSdkPropertyDefinition(\n input.dataType,\n log,\n );\n if (sdkPropDefinition == null) {\n return undefined;\n }\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"mediaReference\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"struct\":\n case \"vector\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: sdkPropDefinition,\n nullable: input.nullable == null ? isNullable : input.nullable,\n valueTypeApiName: input.valueTypeApiName,\n };\n case \"array\": {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: sdkPropDefinition,\n nullable: true,\n valueTypeApiName: input.valueTypeApiName,\n };\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(input.dataType.type)} is not a supported dataType`,\n );\n\n return undefined;\n }\n\n default:\n const _: never = input.dataType;\n log?.info(\n `${JSON.stringify(input.dataType)} is not a supported dataType`,\n );\n\n return undefined;\n }\n}\n\nfunction objectPropertyTypeToSdkPropertyDefinition(\n propertyType: ObjectPropertyType,\n log?: { info: (msg: string) => void },\n): WirePropertyTypes | undefined {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"vector\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType?.type === \"string\") {\n return \"stringTimeseries\";\n } else if (propertyType.itemType?.type === \"double\") {\n return \"numericTimeseries\";\n } else return \"sensorTimeseries\";\n case \"struct\": {\n return propertyType.structFieldTypes.reduce(\n (structMap: Record<string, BaseWirePropertyTypes>, structField) => {\n structMap[structField.apiName] =\n objectPropertyTypeToSdkPropertyDefinition(\n structField.dataType,\n ) as BaseWirePropertyTypes;\n return structMap;\n },\n {},\n );\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(propertyType.type)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n default: {\n const _: never = propertyType;\n log?.info(\n `${JSON.stringify(propertyType)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -32,7 +32,8 @@ function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true, log) {
32
32
  multiplicity: false,
33
33
  description: input.description,
34
34
  type: sdkPropDefinition,
35
- nullable: input.nullable == null ? isNullable : input.nullable
35
+ nullable: input.nullable == null ? isNullable : input.nullable,
36
+ valueTypeApiName: input.valueTypeApiName
36
37
  };
37
38
  case "array": {
38
39
  return {
@@ -40,7 +41,8 @@ function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true, log) {
40
41
  multiplicity: true,
41
42
  description: input.description,
42
43
  type: sdkPropDefinition,
43
- nullable: true
44
+ nullable: true,
45
+ valueTypeApiName: input.valueTypeApiName
44
46
  };
45
47
  }
46
48
  case "cipherText": {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/wirePropertyV2ToSdkPropertyDefinition.ts","../../src/__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.ts","../../src/getEditedEntities.ts","../../src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts","../../src/wireObjectTypeFullMetadataToSdkObjectMetadata.ts","../../src/wireActionTypeV2ToSdkActionMetadata.ts","../../src/isNullableQueryDataType.ts","../../src/wireQueryDataTypeToQueryDataTypeDefinition.ts","../../src/wireQueryTypeV2ToSdkQueryMetadata.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true, log) {\n const sdkPropDefinition = objectPropertyTypeToSdkPropertyDefinition(input.dataType, log);\n if (sdkPropDefinition == null) {\n return undefined;\n }\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"mediaReference\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"struct\":\n case \"vector\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: sdkPropDefinition,\n nullable: input.nullable == null ? isNullable : input.nullable\n };\n case \"array\":\n {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: sdkPropDefinition,\n nullable: true\n };\n }\n case \"cipherText\":\n {\n log?.info(`${JSON.stringify(input.dataType.type)} is not a supported dataType`);\n return undefined;\n }\n default:\n const _ = input.dataType;\n log?.info(`${JSON.stringify(input.dataType)} is not a supported dataType`);\n return undefined;\n }\n}\nfunction objectPropertyTypeToSdkPropertyDefinition(propertyType, log) {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"vector\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType?.type === \"string\") {\n return \"stringTimeseries\";\n } else if (propertyType.itemType?.type === \"double\") {\n return \"numericTimeseries\";\n } else return \"sensorTimeseries\";\n case \"struct\":\n {\n return propertyType.structFieldTypes.reduce((structMap, structField) => {\n structMap[structField.apiName] = objectPropertyTypeToSdkPropertyDefinition(structField.dataType);\n return structMap;\n }, {});\n }\n case \"cipherText\":\n {\n log?.info(`${JSON.stringify(propertyType.type)} is not a supported propertyType`);\n return undefined;\n }\n default:\n {\n const _ = propertyType;\n log?.info(`${JSON.stringify(propertyType)} is not a supported propertyType`);\n return undefined;\n }\n }\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2, log) {\n return {\n type: \"interface\",\n rid: interfaceType.rid,\n apiName: interfaceType.apiName,\n displayName: interfaceType.displayName,\n description: interfaceType.description,\n implements: interfaceType.allExtendsInterfaces ? [...interfaceType.allExtendsInterfaces].sort((a, b) => a.localeCompare(b)) : interfaceType.extendsInterfaces ? [...interfaceType.extendsInterfaces].sort((a, b) => a.localeCompare(b)) : undefined,\n properties: Object.fromEntries(Object.entries(interfaceType.allProperties ?? interfaceType.properties).map(([key, value]) => {\n return [key, wirePropertyV2ToSdkPropertyDefinition(value, true, log)];\n }).filter(([_, value]) => value != null)),\n links: Object.fromEntries(Object.entries(interfaceType.allLinks ?? interfaceType.links ?? {}).map(([linkApiName, linkType]) => [linkApiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetTypeApiName: linkType.linkedEntityApiName.apiName,\n targetType: linkType.linkedEntityApiName.type === \"objectTypeApiName\" ? \"object\" : \"interface\"\n }])),\n implementedBy: interfaceType.implementedByObjectTypes ? [...interfaceType.implementedByObjectTypes].sort((a, b) => a.localeCompare(b)) : interfaceType.implementedByObjectTypes\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function getModifiedEntityTypes(action) {\n const addedObjects = new Set();\n const modifiedObjects = new Set();\n for (const operation of action.operations) {\n switch (operation.type) {\n case \"createObject\":\n addedObjects.add(operation.objectTypeApiName);\n break;\n case \"modifyObject\":\n modifiedObjects.add(operation.objectTypeApiName);\n break;\n case \"deleteObject\":\n case \"createLink\":\n case \"deleteLink\":\n case \"createInterfaceObject\":\n case \"modifyInterfaceObject\":\n case \"deleteInterfaceObject\":\n break;\n default:\n const _ = operation;\n }\n }\n return {\n addedObjects,\n modifiedObjects\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"double\":\n case \"string\":\n case \"byte\":\n case \"long\":\n case \"short\":\n case \"timestamp\":\n {\n return input.dataType.type;\n }\n case \"date\":\n {\n return \"datetime\";\n }\n case \"boolean\":\n case \"geopoint\":\n case \"geoshape\":\n case \"decimal\":\n case \"attachment\":\n case \"timeseries\":\n case \"array\":\n case \"marking\":\n case \"float\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"struct\":\n case \"cipherText\":\n case \"vector\":\n throw new Error(`Primary key of type ${input.dataType.type} is not supported`);\n default:\n const _ = input.dataType;\n throw new Error(`Unknown type encountered for primaryKey: ${input.dataType}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPrimaryKeyTypeDefinition } from \"./wirePropertyV2ToSdkPrimaryKeyTypeDefinition.js\";\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function wireObjectTypeFullMetadataToSdkObjectMetadata(objectTypeWithLink, v2, log) {\n if (objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey] === undefined) {\n throw new Error(`Primary key ${objectTypeWithLink.objectType.primaryKey} not found in ${objectTypeWithLink.objectType.apiName}`);\n }\n\n // saved ontology.json files may not have this implementsInterfaces2 so we need to handle\n if (objectTypeWithLink.implementsInterfaces2 == null && objectTypeWithLink.implementsInterfaces != null) {\n throw new Error(\"Your ontology.json file is missing the implementsInterfaces2 field. Please regenerate it.\");\n }\n const interfaceMap = objectTypeWithLink.implementsInterfaces2 ? Object.fromEntries(Object.entries(objectTypeWithLink.implementsInterfaces2).map(([interfaceApiName, impl]) => [interfaceApiName, impl.properties])) : {};\n return {\n type: \"object\",\n apiName: objectTypeWithLink.objectType.apiName,\n description: objectTypeWithLink.objectType.description,\n primaryKeyApiName: objectTypeWithLink.objectType.primaryKey,\n primaryKeyType: wirePropertyV2ToSdkPrimaryKeyTypeDefinition(objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey]),\n links: Object.fromEntries([...objectTypeWithLink.linkTypes].sort((a, b) => a.apiName.localeCompare(b.apiName)).map(linkType => {\n return [linkType.apiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetType: linkType.objectTypeApiName\n }];\n })),\n properties: Object.fromEntries(Object.entries(objectTypeWithLink.objectType.properties).map(([key, value]) => [key, wirePropertyV2ToSdkPropertyDefinition(value, !(v2 && objectTypeWithLink.objectType.primaryKey === key), log)]).filter(([_, value]) => value != null)),\n implements: objectTypeWithLink.implementsInterfaces ? [...objectTypeWithLink.implementsInterfaces].sort((a, b) => a.localeCompare(b)) : objectTypeWithLink.implementsInterfaces,\n interfaceMap,\n inverseInterfaceMap: Object.fromEntries(Object.entries(interfaceMap).map(([interfaceApiName, props]) => [interfaceApiName, invertProps(props)])),\n icon: supportedIconTypes.includes(objectTypeWithLink.objectType.icon.type) ? objectTypeWithLink.objectType.icon : undefined,\n titleProperty: objectTypeWithLink.objectType.titleProperty,\n displayName: objectTypeWithLink.objectType.displayName,\n pluralDisplayName: objectTypeWithLink.objectType.pluralDisplayName,\n status: ensureStringEnumSupportedOrUndefined(objectTypeWithLink.objectType.status, supportedReleaseStatus),\n rid: objectTypeWithLink.objectType.rid,\n visibility: ensureStringEnumSupportedOrUndefined(objectTypeWithLink.objectType.visibility, supportedObjectTypeVisibility)\n };\n}\nfunction invertProps(a) {\n return a ? Object.fromEntries(Object.entries(a).map(([k, v]) => [v, k])) : undefined;\n}\nexport const supportedIconTypes = [\"blueprint\"];\nexport const supportedReleaseStatus = [\"ACTIVE\", \"EXPERIMENTAL\", \"DEPRECATED\", \"ENDORSED\"];\nexport const supportedObjectTypeVisibility = [\"NORMAL\", \"PROMINENT\", \"HIDDEN\"];\nexport function ensureStringEnumSupportedOrUndefined(value, supportedValues) {\n return value && supportedValues.includes(value) ? value : undefined;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { getModifiedEntityTypes } from \"./getEditedEntities.js\";\nimport { ensureStringEnumSupportedOrUndefined, supportedReleaseStatus } from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\nexport function wireActionTypeV2ToSdkActionMetadata(input) {\n const modifiedEntityTypes = getModifiedEntityTypes(input);\n return {\n type: \"action\",\n apiName: input.apiName,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([key, value]) => [key, wireActionParameterV2ToSdkParameterDefinition(value)])),\n displayName: input.displayName,\n description: input.description,\n modifiedEntities: createModifiedEntities(modifiedEntityTypes.addedObjects, modifiedEntityTypes.modifiedObjects),\n rid: input.rid,\n status: ensureStringEnumSupportedOrUndefined(input.status, supportedReleaseStatus)\n };\n}\nfunction wireActionParameterV2ToSdkParameterDefinition(value) {\n return {\n multiplicity: value.dataType.type === \"array\",\n type: actionPropertyToSdkPropertyDefinition(value.dataType.type === \"array\" ? value.dataType.subType : value.dataType),\n nullable: !value.required,\n description: value.description\n };\n}\nfunction actionPropertyToSdkPropertyDefinition(parameterType) {\n switch (parameterType.type) {\n case \"string\":\n case \"boolean\":\n case \"attachment\":\n case \"double\":\n case \"integer\":\n case \"long\":\n case \"timestamp\":\n case \"mediaReference\":\n case \"marking\":\n case \"objectType\":\n case \"geohash\":\n case \"geoshape\":\n return parameterType.type;\n case \"date\":\n return \"datetime\";\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: parameterType.objectTypeApiName\n };\n case \"object\":\n return {\n type: \"object\",\n object: parameterType.objectTypeApiName\n };\n case \"array\":\n return actionPropertyToSdkPropertyDefinition(parameterType.subType);\n case \"interfaceObject\":\n return {\n type: \"interface\",\n interface: parameterType.interfaceTypeApiName\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: parameterType.fields.reduce((structMap, structField) => {\n structMap[structField.name] = actionPropertyToSdkPropertyDefinition(structField.fieldType);\n return structMap;\n }, {})\n };\n default:\n throw new Error(`Unsupported action parameter type: ${JSON.stringify(parameterType)}`);\n }\n}\nfunction createModifiedEntities(addedObjects, modifiedObjects) {\n const entities = {};\n for (const key of addedObjects) {\n entities[key] = {\n created: true,\n modified: false\n };\n }\n for (const key of modifiedObjects) {\n if (entities[key]) {\n entities[key].modified = true;\n } else {\n entities[key] = {\n created: false,\n modified: true\n };\n }\n }\n return entities;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isNullableQueryDataType(input) {\n if (input.type === \"null\") {\n return true;\n }\n if (input.type === \"union\") {\n return input.unionTypes.some(t => isNullableQueryDataType(t));\n }\n return false;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNullableQueryDataType } from \"./isNullableQueryDataType.js\";\nexport function wireQueryDataTypeToQueryDataTypeDefinition(input) {\n switch (input.type) {\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"attachment\":\n case \"boolean\":\n case \"date\":\n case \"string\":\n case \"timestamp\":\n return {\n type: input.type,\n nullable: false\n };\n case \"object\":\n return {\n type: \"object\",\n object: input.objectTypeApiName,\n nullable: false\n };\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: input.objectTypeApiName,\n nullable: false\n };\n case \"interfaceObject\":\n return {\n type: \"interface\",\n interface: input.interfaceTypeApiName,\n nullable: false\n };\n case \"interfaceObjectSet\":\n return {\n type: \"interfaceObjectSet\",\n objectSet: input.interfaceTypeApiName,\n nullable: false\n };\n case \"array\":\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n multiplicity: true\n };\n case \"set\":\n return {\n type: \"set\",\n set: wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n nullable: false\n };\n case \"union\":\n const allowNulls = isNullableQueryDataType(input);\n\n // special case for a union where one half is nullable to skip the union step and just allow nulls directly\n if (allowNulls && input.unionTypes.length === 2) {\n const nonNull = input.unionTypes.find(t => t.type != null);\n if (nonNull) {\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(nonNull),\n nullable: true\n };\n }\n }\n return {\n type: \"union\",\n union: input.unionTypes.reduce((acc, t) => {\n if (t.type === \"null\") {\n return acc;\n }\n acc.push(wireQueryDataTypeToQueryDataTypeDefinition(t));\n return acc;\n }, []),\n nullable: allowNulls\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: Object.fromEntries(input.fields.map(f => [f.name, wireQueryDataTypeToQueryDataTypeDefinition(f.fieldType)])),\n nullable: false\n };\n case \"twoDimensionalAggregation\":\n return {\n type: \"twoDimensionalAggregation\",\n twoDimensionalAggregation: get2DQueryAggregationProps(input),\n nullable: false\n };\n case \"threeDimensionalAggregation\":\n return {\n type: \"threeDimensionalAggregation\",\n threeDimensionalAggregation: get3DQueryAggregationProps(input),\n nullable: false\n };\n case \"entrySet\":\n const keyType = wireQueryDataTypeToQueryDataTypeDefinition(input.keyType);\n if (!validMapKeyTypes.includes(keyType.type)) {\n throw new Error(\"Map types with a key type of \" + keyType.type + \" are not supported\" + validMapKeyTypes.toString());\n }\n if (keyType.multiplicity === true) {\n throw new Error(\"Map types cannot have keys as arrays\");\n }\n return {\n type: \"map\",\n nullable: false,\n keyType,\n valueType: wireQueryDataTypeToQueryDataTypeDefinition(input.valueType)\n };\n case \"null\":\n case \"unsupported\":\n throw new Error(`Unable to process query because the server indicated an unsupported QueryDataType.type: ${input.type}. Please check that your query is using supported types.`);\n default:\n const _ = input;\n throw new Error(`Unsupported QueryDataType.type ${input.type}`);\n }\n}\nfunction get2DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: input.valueType.type\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: input.valueType.type\n };\n }\n throw new Error(`Cannot create 2D aggregation with ${input.keyType.type} as its type`);\n }\n}\nfunction get3DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n }\n throw new Error(`Cannot create 3D aggregation with ${input.keyType.type} as its type`);\n }\n}\n\n/**\n * Guard against aggregation key types that are allowed by the backend types but are illegal to actually use\n */\nfunction guardInvalidKeyTypes(key) {\n return key.type === \"string\" || key.type === \"boolean\";\n}\n\n/**\n * The set of all valid key types for maps. This includes all types that are represented by strings or numbers in the OSDK, and Ontology Objects.\n */\nconst validMapKeyTypes = [\"string\", \"object\", \"double\", \"float\", \"integer\", \"long\", \"date\", \"timestamp\", \"byte\", \"datetime\", \"decimal\", \"marking\", \"short\", \"objectType\"];","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireQueryDataTypeToQueryDataTypeDefinition } from \"./wireQueryDataTypeToQueryDataTypeDefinition.js\";\nexport function wireQueryTypeV2ToSdkQueryMetadata(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([name, parameter]) => [name, wireQueryParameterV2ToQueryParameterDefinition(parameter)])),\n output: wireQueryDataTypeToQueryDataTypeDefinition(input.output),\n rid: input.rid\n };\n}\nexport function wireQueryTypeV2ToSdkQueryDefinitionNoParams(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n rid: input.rid\n };\n}\nexport function wireQueryParameterV2ToQueryParameterDefinition(parameter) {\n return {\n description: parameter.description,\n ...wireQueryDataTypeToQueryDataTypeDefinition(parameter.dataType)\n };\n}"]}
1
+ {"version":3,"sources":["../../src/wirePropertyV2ToSdkPropertyDefinition.ts","../../src/__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.ts","../../src/getEditedEntities.ts","../../src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts","../../src/wireObjectTypeFullMetadataToSdkObjectMetadata.ts","../../src/wireActionTypeV2ToSdkActionMetadata.ts","../../src/isNullableQueryDataType.ts","../../src/wireQueryDataTypeToQueryDataTypeDefinition.ts","../../src/wireQueryTypeV2ToSdkQueryMetadata.ts"],"names":[],"mappings":"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","file":"index.cjs","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true, log) {\n const sdkPropDefinition = objectPropertyTypeToSdkPropertyDefinition(input.dataType, log);\n if (sdkPropDefinition == null) {\n return undefined;\n }\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"mediaReference\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"struct\":\n case \"vector\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: sdkPropDefinition,\n nullable: input.nullable == null ? isNullable : input.nullable,\n valueTypeApiName: input.valueTypeApiName\n };\n case \"array\":\n {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: sdkPropDefinition,\n nullable: true,\n valueTypeApiName: input.valueTypeApiName\n };\n }\n case \"cipherText\":\n {\n log?.info(`${JSON.stringify(input.dataType.type)} is not a supported dataType`);\n return undefined;\n }\n default:\n const _ = input.dataType;\n log?.info(`${JSON.stringify(input.dataType)} is not a supported dataType`);\n return undefined;\n }\n}\nfunction objectPropertyTypeToSdkPropertyDefinition(propertyType, log) {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"vector\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType?.type === \"string\") {\n return \"stringTimeseries\";\n } else if (propertyType.itemType?.type === \"double\") {\n return \"numericTimeseries\";\n } else return \"sensorTimeseries\";\n case \"struct\":\n {\n return propertyType.structFieldTypes.reduce((structMap, structField) => {\n structMap[structField.apiName] = objectPropertyTypeToSdkPropertyDefinition(structField.dataType);\n return structMap;\n }, {});\n }\n case \"cipherText\":\n {\n log?.info(`${JSON.stringify(propertyType.type)} is not a supported propertyType`);\n return undefined;\n }\n default:\n {\n const _ = propertyType;\n log?.info(`${JSON.stringify(propertyType)} is not a supported propertyType`);\n return undefined;\n }\n }\n}","/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2, log) {\n return {\n type: \"interface\",\n rid: interfaceType.rid,\n apiName: interfaceType.apiName,\n displayName: interfaceType.displayName,\n description: interfaceType.description,\n implements: interfaceType.allExtendsInterfaces ? [...interfaceType.allExtendsInterfaces].sort((a, b) => a.localeCompare(b)) : interfaceType.extendsInterfaces ? [...interfaceType.extendsInterfaces].sort((a, b) => a.localeCompare(b)) : undefined,\n properties: Object.fromEntries(Object.entries(interfaceType.allProperties ?? interfaceType.properties).map(([key, value]) => {\n return [key, wirePropertyV2ToSdkPropertyDefinition(value, true, log)];\n }).filter(([_, value]) => value != null)),\n links: Object.fromEntries(Object.entries(interfaceType.allLinks ?? interfaceType.links ?? {}).map(([linkApiName, linkType]) => [linkApiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetTypeApiName: linkType.linkedEntityApiName.apiName,\n targetType: linkType.linkedEntityApiName.type === \"objectTypeApiName\" ? \"object\" : \"interface\"\n }])),\n implementedBy: interfaceType.implementedByObjectTypes ? [...interfaceType.implementedByObjectTypes].sort((a, b) => a.localeCompare(b)) : interfaceType.implementedByObjectTypes\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function getModifiedEntityTypes(action) {\n const addedObjects = new Set();\n const modifiedObjects = new Set();\n for (const operation of action.operations) {\n switch (operation.type) {\n case \"createObject\":\n addedObjects.add(operation.objectTypeApiName);\n break;\n case \"modifyObject\":\n modifiedObjects.add(operation.objectTypeApiName);\n break;\n case \"deleteObject\":\n case \"createLink\":\n case \"deleteLink\":\n case \"createInterfaceObject\":\n case \"modifyInterfaceObject\":\n case \"deleteInterfaceObject\":\n break;\n default:\n const _ = operation;\n }\n }\n return {\n addedObjects,\n modifiedObjects\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"double\":\n case \"string\":\n case \"byte\":\n case \"long\":\n case \"short\":\n case \"timestamp\":\n {\n return input.dataType.type;\n }\n case \"date\":\n {\n return \"datetime\";\n }\n case \"boolean\":\n case \"geopoint\":\n case \"geoshape\":\n case \"decimal\":\n case \"attachment\":\n case \"timeseries\":\n case \"array\":\n case \"marking\":\n case \"float\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"struct\":\n case \"cipherText\":\n case \"vector\":\n throw new Error(`Primary key of type ${input.dataType.type} is not supported`);\n default:\n const _ = input.dataType;\n throw new Error(`Unknown type encountered for primaryKey: ${input.dataType}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPrimaryKeyTypeDefinition } from \"./wirePropertyV2ToSdkPrimaryKeyTypeDefinition.js\";\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function wireObjectTypeFullMetadataToSdkObjectMetadata(objectTypeWithLink, v2, log) {\n if (objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey] === undefined) {\n throw new Error(`Primary key ${objectTypeWithLink.objectType.primaryKey} not found in ${objectTypeWithLink.objectType.apiName}`);\n }\n\n // saved ontology.json files may not have this implementsInterfaces2 so we need to handle\n if (objectTypeWithLink.implementsInterfaces2 == null && objectTypeWithLink.implementsInterfaces != null) {\n throw new Error(\"Your ontology.json file is missing the implementsInterfaces2 field. Please regenerate it.\");\n }\n const interfaceMap = objectTypeWithLink.implementsInterfaces2 ? Object.fromEntries(Object.entries(objectTypeWithLink.implementsInterfaces2).map(([interfaceApiName, impl]) => [interfaceApiName, impl.properties])) : {};\n return {\n type: \"object\",\n apiName: objectTypeWithLink.objectType.apiName,\n description: objectTypeWithLink.objectType.description,\n primaryKeyApiName: objectTypeWithLink.objectType.primaryKey,\n primaryKeyType: wirePropertyV2ToSdkPrimaryKeyTypeDefinition(objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey]),\n links: Object.fromEntries([...objectTypeWithLink.linkTypes].sort((a, b) => a.apiName.localeCompare(b.apiName)).map(linkType => {\n return [linkType.apiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetType: linkType.objectTypeApiName\n }];\n })),\n properties: Object.fromEntries(Object.entries(objectTypeWithLink.objectType.properties).map(([key, value]) => [key, wirePropertyV2ToSdkPropertyDefinition(value, !(v2 && objectTypeWithLink.objectType.primaryKey === key), log)]).filter(([_, value]) => value != null)),\n implements: objectTypeWithLink.implementsInterfaces ? [...objectTypeWithLink.implementsInterfaces].sort((a, b) => a.localeCompare(b)) : objectTypeWithLink.implementsInterfaces,\n interfaceMap,\n inverseInterfaceMap: Object.fromEntries(Object.entries(interfaceMap).map(([interfaceApiName, props]) => [interfaceApiName, invertProps(props)])),\n icon: supportedIconTypes.includes(objectTypeWithLink.objectType.icon.type) ? objectTypeWithLink.objectType.icon : undefined,\n titleProperty: objectTypeWithLink.objectType.titleProperty,\n displayName: objectTypeWithLink.objectType.displayName,\n pluralDisplayName: objectTypeWithLink.objectType.pluralDisplayName,\n status: ensureStringEnumSupportedOrUndefined(objectTypeWithLink.objectType.status, supportedReleaseStatus),\n rid: objectTypeWithLink.objectType.rid,\n visibility: ensureStringEnumSupportedOrUndefined(objectTypeWithLink.objectType.visibility, supportedObjectTypeVisibility)\n };\n}\nfunction invertProps(a) {\n return a ? Object.fromEntries(Object.entries(a).map(([k, v]) => [v, k])) : undefined;\n}\nexport const supportedIconTypes = [\"blueprint\"];\nexport const supportedReleaseStatus = [\"ACTIVE\", \"EXPERIMENTAL\", \"DEPRECATED\", \"ENDORSED\"];\nexport const supportedObjectTypeVisibility = [\"NORMAL\", \"PROMINENT\", \"HIDDEN\"];\nexport function ensureStringEnumSupportedOrUndefined(value, supportedValues) {\n return value && supportedValues.includes(value) ? value : undefined;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { getModifiedEntityTypes } from \"./getEditedEntities.js\";\nimport { ensureStringEnumSupportedOrUndefined, supportedReleaseStatus } from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\nexport function wireActionTypeV2ToSdkActionMetadata(input) {\n const modifiedEntityTypes = getModifiedEntityTypes(input);\n return {\n type: \"action\",\n apiName: input.apiName,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([key, value]) => [key, wireActionParameterV2ToSdkParameterDefinition(value)])),\n displayName: input.displayName,\n description: input.description,\n modifiedEntities: createModifiedEntities(modifiedEntityTypes.addedObjects, modifiedEntityTypes.modifiedObjects),\n rid: input.rid,\n status: ensureStringEnumSupportedOrUndefined(input.status, supportedReleaseStatus)\n };\n}\nfunction wireActionParameterV2ToSdkParameterDefinition(value) {\n return {\n multiplicity: value.dataType.type === \"array\",\n type: actionPropertyToSdkPropertyDefinition(value.dataType.type === \"array\" ? value.dataType.subType : value.dataType),\n nullable: !value.required,\n description: value.description\n };\n}\nfunction actionPropertyToSdkPropertyDefinition(parameterType) {\n switch (parameterType.type) {\n case \"string\":\n case \"boolean\":\n case \"attachment\":\n case \"double\":\n case \"integer\":\n case \"long\":\n case \"timestamp\":\n case \"mediaReference\":\n case \"marking\":\n case \"objectType\":\n case \"geohash\":\n case \"geoshape\":\n return parameterType.type;\n case \"date\":\n return \"datetime\";\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: parameterType.objectTypeApiName\n };\n case \"object\":\n return {\n type: \"object\",\n object: parameterType.objectTypeApiName\n };\n case \"array\":\n return actionPropertyToSdkPropertyDefinition(parameterType.subType);\n case \"interfaceObject\":\n return {\n type: \"interface\",\n interface: parameterType.interfaceTypeApiName\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: parameterType.fields.reduce((structMap, structField) => {\n structMap[structField.name] = actionPropertyToSdkPropertyDefinition(structField.fieldType);\n return structMap;\n }, {})\n };\n default:\n throw new Error(`Unsupported action parameter type: ${JSON.stringify(parameterType)}`);\n }\n}\nfunction createModifiedEntities(addedObjects, modifiedObjects) {\n const entities = {};\n for (const key of addedObjects) {\n entities[key] = {\n created: true,\n modified: false\n };\n }\n for (const key of modifiedObjects) {\n if (entities[key]) {\n entities[key].modified = true;\n } else {\n entities[key] = {\n created: false,\n modified: true\n };\n }\n }\n return entities;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isNullableQueryDataType(input) {\n if (input.type === \"null\") {\n return true;\n }\n if (input.type === \"union\") {\n return input.unionTypes.some(t => isNullableQueryDataType(t));\n }\n return false;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNullableQueryDataType } from \"./isNullableQueryDataType.js\";\nexport function wireQueryDataTypeToQueryDataTypeDefinition(input) {\n switch (input.type) {\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"attachment\":\n case \"boolean\":\n case \"date\":\n case \"string\":\n case \"timestamp\":\n return {\n type: input.type,\n nullable: false\n };\n case \"object\":\n return {\n type: \"object\",\n object: input.objectTypeApiName,\n nullable: false\n };\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: input.objectTypeApiName,\n nullable: false\n };\n case \"interfaceObject\":\n return {\n type: \"interface\",\n interface: input.interfaceTypeApiName,\n nullable: false\n };\n case \"interfaceObjectSet\":\n return {\n type: \"interfaceObjectSet\",\n objectSet: input.interfaceTypeApiName,\n nullable: false\n };\n case \"array\":\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n multiplicity: true\n };\n case \"set\":\n return {\n type: \"set\",\n set: wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n nullable: false\n };\n case \"union\":\n const allowNulls = isNullableQueryDataType(input);\n\n // special case for a union where one half is nullable to skip the union step and just allow nulls directly\n if (allowNulls && input.unionTypes.length === 2) {\n const nonNull = input.unionTypes.find(t => t.type != null);\n if (nonNull) {\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(nonNull),\n nullable: true\n };\n }\n }\n return {\n type: \"union\",\n union: input.unionTypes.reduce((acc, t) => {\n if (t.type === \"null\") {\n return acc;\n }\n acc.push(wireQueryDataTypeToQueryDataTypeDefinition(t));\n return acc;\n }, []),\n nullable: allowNulls\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: Object.fromEntries(input.fields.map(f => [f.name, wireQueryDataTypeToQueryDataTypeDefinition(f.fieldType)])),\n nullable: false\n };\n case \"twoDimensionalAggregation\":\n return {\n type: \"twoDimensionalAggregation\",\n twoDimensionalAggregation: get2DQueryAggregationProps(input),\n nullable: false\n };\n case \"threeDimensionalAggregation\":\n return {\n type: \"threeDimensionalAggregation\",\n threeDimensionalAggregation: get3DQueryAggregationProps(input),\n nullable: false\n };\n case \"entrySet\":\n const keyType = wireQueryDataTypeToQueryDataTypeDefinition(input.keyType);\n if (!validMapKeyTypes.includes(keyType.type)) {\n throw new Error(\"Map types with a key type of \" + keyType.type + \" are not supported\" + validMapKeyTypes.toString());\n }\n if (keyType.multiplicity === true) {\n throw new Error(\"Map types cannot have keys as arrays\");\n }\n return {\n type: \"map\",\n nullable: false,\n keyType,\n valueType: wireQueryDataTypeToQueryDataTypeDefinition(input.valueType)\n };\n case \"null\":\n case \"unsupported\":\n throw new Error(`Unable to process query because the server indicated an unsupported QueryDataType.type: ${input.type}. Please check that your query is using supported types.`);\n default:\n const _ = input;\n throw new Error(`Unsupported QueryDataType.type ${input.type}`);\n }\n}\nfunction get2DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: input.valueType.type\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: input.valueType.type\n };\n }\n throw new Error(`Cannot create 2D aggregation with ${input.keyType.type} as its type`);\n }\n}\nfunction get3DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n }\n throw new Error(`Cannot create 3D aggregation with ${input.keyType.type} as its type`);\n }\n}\n\n/**\n * Guard against aggregation key types that are allowed by the backend types but are illegal to actually use\n */\nfunction guardInvalidKeyTypes(key) {\n return key.type === \"string\" || key.type === \"boolean\";\n}\n\n/**\n * The set of all valid key types for maps. This includes all types that are represented by strings or numbers in the OSDK, and Ontology Objects.\n */\nconst validMapKeyTypes = [\"string\", \"object\", \"double\", \"float\", \"integer\", \"long\", \"date\", \"timestamp\", \"byte\", \"datetime\", \"decimal\", \"marking\", \"short\", \"objectType\"];","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireQueryDataTypeToQueryDataTypeDefinition } from \"./wireQueryDataTypeToQueryDataTypeDefinition.js\";\nexport function wireQueryTypeV2ToSdkQueryMetadata(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([name, parameter]) => [name, wireQueryParameterV2ToQueryParameterDefinition(parameter)])),\n output: wireQueryDataTypeToQueryDataTypeDefinition(input.output),\n rid: input.rid\n };\n}\nexport function wireQueryTypeV2ToSdkQueryDefinitionNoParams(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n rid: input.rid\n };\n}\nexport function wireQueryParameterV2ToQueryParameterDefinition(parameter) {\n return {\n description: parameter.description,\n ...wireQueryDataTypeToQueryDataTypeDefinition(parameter.dataType)\n };\n}"]}
@@ -128,13 +128,16 @@ describe(wireObjectTypeFullMetadataToSdkObjectMetadata, () => {
128
128
  implementsInterfaces: ["InterfaceZ", "InterfaceA", "InterfaceC"],
129
129
  implementsInterfaces2: {
130
130
  "InterfaceZ": {
131
- properties: {}
131
+ properties: {},
132
+ links: {}
132
133
  },
133
134
  "InterfaceA": {
134
- properties: {}
135
+ properties: {},
136
+ links: {}
135
137
  },
136
138
  "InterfaceC": {
137
- properties: {}
139
+ properties: {},
140
+ links: {}
138
141
  }
139
142
  },
140
143
  linkTypes: [],
@@ -1 +1 @@
1
- {"version":3,"file":"wireObjectTypeFullMetadataToSdkObjectMetadata.test.js","names":["describe","expect","expectTypeOf","it","wireObjectTypeFullMetadataToSdkObjectMetadata","result","implementsInterfaces","implementsInterfaces2","linkTypes","objectType","apiName","description","displayName","pluralDisplayName","icon","type","name","color","primaryKey","properties","dataType","otherKey","nullable","rid","defaulted","status","titleProperty","sharedPropertyTypeMapping","toBe","toEqualTypeOf","visibility","toBeUndefined","implements","toEqual","cardinality","objectTypeApiName","linkTypeRid","linkKeys","Object","keys","links"],"sources":["wireObjectTypeFullMetadataToSdkObjectMetadata.test.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectMetadata } from \"@osdk/api\";\nimport { describe, expect, expectTypeOf, it } from \"vitest\";\nimport type {\n supportedIconTypes,\n supportedObjectTypeVisibility,\n supportedReleaseStatus,\n} from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\nimport { wireObjectTypeFullMetadataToSdkObjectMetadata } from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\n\ndescribe(wireObjectTypeFullMetadataToSdkObjectMetadata, () => {\n it(\"handles magic nullable properties\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // PK is never nullable\n expect(result.properties[\"primaryKey\"].nullable).toBe(false);\n\n // was specified above\n expect(result.properties[\"otherKey\"].nullable).toBe(false);\n\n // was unspecified, so should be nullable\n expect(result.properties[\"defaulted\"].nullable).toBe(true);\n });\n\n it(\"Is up to date with the enums from API\", () => {\n type excludedStatuses = \"\";\n expectTypeOf<\n Exclude<\n typeof supportedReleaseStatus[number],\n excludedStatuses\n >\n >()\n .toEqualTypeOf<\n NonNullable<ObjectMetadata[\"status\"]>\n >();\n\n type excludedVisibility = \"\";\n expectTypeOf<\n Exclude<typeof supportedObjectTypeVisibility[number], excludedVisibility>\n >().toEqualTypeOf<\n NonNullable<ObjectMetadata[\"visibility\"]>\n >();\n\n type excludedIconTypes = \"\";\n expectTypeOf<\n Exclude<typeof supportedIconTypes[number], excludedIconTypes>\n >()\n .toEqualTypeOf<\n NonNullable<NonNullable<ObjectMetadata[\"icon\"]>[\"type\"]>\n >();\n });\n\n it(\"does not throw when enums don't match\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: {\n type: \"INVALID_NOT_IN_API\",\n name: \"blueprint\",\n color: \"blue\",\n } as any,\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"INVALID_NOT_IN_API\" as any,\n visibility: \"INVALID_NOT_IN_API\" as any,\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n expect(result.status).toBeUndefined();\n expect(result.visibility).toBeUndefined();\n expect(result.icon).toBeUndefined();\n });\n\n it(\"sorts the implements array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [\"InterfaceZ\", \"InterfaceA\", \"InterfaceC\"],\n implementsInterfaces2: {\n \"InterfaceZ\": { properties: {} },\n \"InterfaceA\": { properties: {} },\n \"InterfaceC\": { properties: {} },\n },\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that the array is sorted alphabetically\n expect(result.implements).toEqual([\n \"InterfaceA\",\n \"InterfaceC\",\n \"InterfaceZ\",\n ]);\n });\n\n it(\"sorts the linkTypes array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [\n {\n apiName: \"linkZ\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetZ\",\n displayName: \"LinkZ\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridZ\",\n },\n {\n apiName: \"linkA\",\n cardinality: \"MANY\",\n objectTypeApiName: \"TargetA\",\n displayName: \"LinkA\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridA\",\n },\n {\n apiName: \"linkC\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetC\",\n displayName: \"LinkC\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridC\",\n },\n ],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Get the link keys in the order they appear in the result\n const linkKeys = Object.keys(result.links);\n\n // Check that the links are sorted alphabetically by apiName\n expect(linkKeys).toEqual([\"linkA\", \"linkC\", \"linkZ\"]);\n });\n\n it(\"preserves empty arrays\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that empty array is preserved\n expect(result.implements).toEqual([]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"wireObjectTypeFullMetadataToSdkObjectMetadata.test.js","names":["describe","expect","expectTypeOf","it","wireObjectTypeFullMetadataToSdkObjectMetadata","result","implementsInterfaces","implementsInterfaces2","linkTypes","objectType","apiName","description","displayName","pluralDisplayName","icon","type","name","color","primaryKey","properties","dataType","otherKey","nullable","rid","defaulted","status","titleProperty","sharedPropertyTypeMapping","toBe","toEqualTypeOf","visibility","toBeUndefined","links","implements","toEqual","cardinality","objectTypeApiName","linkTypeRid","linkKeys","Object","keys"],"sources":["wireObjectTypeFullMetadataToSdkObjectMetadata.test.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { ObjectMetadata } from \"@osdk/api\";\nimport { describe, expect, expectTypeOf, it } from \"vitest\";\nimport type {\n supportedIconTypes,\n supportedObjectTypeVisibility,\n supportedReleaseStatus,\n} from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\nimport { wireObjectTypeFullMetadataToSdkObjectMetadata } from \"./wireObjectTypeFullMetadataToSdkObjectMetadata.js\";\n\ndescribe(wireObjectTypeFullMetadataToSdkObjectMetadata, () => {\n it(\"handles magic nullable properties\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // PK is never nullable\n expect(result.properties[\"primaryKey\"].nullable).toBe(false);\n\n // was specified above\n expect(result.properties[\"otherKey\"].nullable).toBe(false);\n\n // was unspecified, so should be nullable\n expect(result.properties[\"defaulted\"].nullable).toBe(true);\n });\n\n it(\"Is up to date with the enums from API\", () => {\n type excludedStatuses = \"\";\n expectTypeOf<\n Exclude<\n typeof supportedReleaseStatus[number],\n excludedStatuses\n >\n >()\n .toEqualTypeOf<\n NonNullable<ObjectMetadata[\"status\"]>\n >();\n\n type excludedVisibility = \"\";\n expectTypeOf<\n Exclude<typeof supportedObjectTypeVisibility[number], excludedVisibility>\n >().toEqualTypeOf<\n NonNullable<ObjectMetadata[\"visibility\"]>\n >();\n\n type excludedIconTypes = \"\";\n expectTypeOf<\n Exclude<typeof supportedIconTypes[number], excludedIconTypes>\n >()\n .toEqualTypeOf<\n NonNullable<NonNullable<ObjectMetadata[\"icon\"]>[\"type\"]>\n >();\n });\n\n it(\"does not throw when enums don't match\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: {\n type: \"INVALID_NOT_IN_API\",\n name: \"blueprint\",\n color: \"blue\",\n } as any,\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n otherKey: {\n nullable: false,\n dataType: { type: \"string\" },\n rid: \"rid\",\n },\n defaulted: { dataType: { type: \"string\" }, rid: \"rid\" },\n },\n rid: \"rid\",\n status: \"INVALID_NOT_IN_API\" as any,\n visibility: \"INVALID_NOT_IN_API\" as any,\n titleProperty: \"otherKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n expect(result.status).toBeUndefined();\n expect(result.visibility).toBeUndefined();\n expect(result.icon).toBeUndefined();\n });\n\n it(\"sorts the implements array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [\"InterfaceZ\", \"InterfaceA\", \"InterfaceC\"],\n implementsInterfaces2: {\n \"InterfaceZ\": { properties: {}, links: {} },\n \"InterfaceA\": { properties: {}, links: {} },\n \"InterfaceC\": { properties: {}, links: {} },\n },\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that the array is sorted alphabetically\n expect(result.implements).toEqual([\n \"InterfaceA\",\n \"InterfaceC\",\n \"InterfaceZ\",\n ]);\n });\n\n it(\"sorts the linkTypes array for stable output\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [\n {\n apiName: \"linkZ\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetZ\",\n displayName: \"LinkZ\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridZ\",\n },\n {\n apiName: \"linkA\",\n cardinality: \"MANY\",\n objectTypeApiName: \"TargetA\",\n displayName: \"LinkA\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridA\",\n },\n {\n apiName: \"linkC\",\n cardinality: \"ONE\",\n objectTypeApiName: \"TargetC\",\n displayName: \"LinkC\",\n status: \"ACTIVE\",\n linkTypeRid: \"ridC\",\n },\n ],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Get the link keys in the order they appear in the result\n const linkKeys = Object.keys(result.links);\n\n // Check that the links are sorted alphabetically by apiName\n expect(linkKeys).toEqual([\"linkA\", \"linkC\", \"linkZ\"]);\n });\n\n it(\"preserves empty arrays\", () => {\n const result = wireObjectTypeFullMetadataToSdkObjectMetadata({\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName: \"apiName\",\n description: \"description\",\n displayName: \"displayName\",\n pluralDisplayName: \"displayNames\",\n icon: { type: \"blueprint\", name: \"blueprint\", color: \"blue\" },\n primaryKey: \"primaryKey\",\n properties: {\n primaryKey: { dataType: { type: \"string\" }, \"rid\": \"rid\" },\n },\n rid: \"rid\",\n status: \"ACTIVE\",\n titleProperty: \"primaryKey\",\n },\n sharedPropertyTypeMapping: {},\n }, true);\n\n // Check that empty array is preserved\n expect(result.implements).toEqual([]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -45,7 +45,8 @@ export function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true,
45
45
  multiplicity: false,
46
46
  description: input.description,
47
47
  type: sdkPropDefinition,
48
- nullable: input.nullable == null ? isNullable : input.nullable
48
+ nullable: input.nullable == null ? isNullable : input.nullable,
49
+ valueTypeApiName: input.valueTypeApiName
49
50
  };
50
51
  case "array":
51
52
  {
@@ -54,7 +55,8 @@ export function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true,
54
55
  multiplicity: true,
55
56
  description: input.description,
56
57
  type: sdkPropDefinition,
57
- nullable: true
58
+ nullable: true,
59
+ valueTypeApiName: input.valueTypeApiName
58
60
  };
59
61
  }
60
62
  case "cipherText":
@@ -1 +1 @@
1
- {"version":3,"file":"wirePropertyV2ToSdkPropertyDefinition.js","names":["wirePropertyV2ToSdkPropertyDefinition","input","isNullable","log","sdkPropDefinition","objectPropertyTypeToSdkPropertyDefinition","dataType","undefined","type","displayName","multiplicity","description","nullable","info","JSON","stringify","propertyType","subType","itemType","structFieldTypes","reduce","structMap","structField","apiName"],"sources":["wirePropertyV2ToSdkPropertyDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n BaseWirePropertyTypes,\n ObjectMetadata,\n WirePropertyTypes,\n} from \"@osdk/api\";\nimport type {\n ObjectPropertyType,\n PropertyV2,\n SharedPropertyType,\n} from \"@osdk/foundry.ontologies\";\n\nexport function wirePropertyV2ToSdkPropertyDefinition(\n input: (PropertyV2 | SharedPropertyType) & { nullable?: boolean },\n isNullable: boolean = true,\n log?: { info: (msg: string) => void },\n): ObjectMetadata.Property | undefined {\n const sdkPropDefinition = objectPropertyTypeToSdkPropertyDefinition(\n input.dataType,\n log,\n );\n if (sdkPropDefinition == null) {\n return undefined;\n }\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"mediaReference\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"struct\":\n case \"vector\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: sdkPropDefinition,\n nullable: input.nullable == null ? isNullable : input.nullable,\n };\n case \"array\": {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: sdkPropDefinition,\n nullable: true,\n };\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(input.dataType.type)} is not a supported dataType`,\n );\n\n return undefined;\n }\n\n default:\n const _: never = input.dataType;\n log?.info(\n `${JSON.stringify(input.dataType)} is not a supported dataType`,\n );\n\n return undefined;\n }\n}\n\nfunction objectPropertyTypeToSdkPropertyDefinition(\n propertyType: ObjectPropertyType,\n log?: { info: (msg: string) => void },\n): WirePropertyTypes | undefined {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"vector\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType?.type === \"string\") {\n return \"stringTimeseries\";\n } else if (propertyType.itemType?.type === \"double\") {\n return \"numericTimeseries\";\n } else return \"sensorTimeseries\";\n case \"struct\": {\n return propertyType.structFieldTypes.reduce(\n (structMap: Record<string, BaseWirePropertyTypes>, structField) => {\n structMap[structField.apiName] =\n objectPropertyTypeToSdkPropertyDefinition(\n structField.dataType,\n ) as BaseWirePropertyTypes;\n return structMap;\n },\n {},\n );\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(propertyType.type)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n default: {\n const _: never = propertyType;\n log?.info(\n `${JSON.stringify(propertyType)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA,OAAO,SAASA,qCAAqCA,CACnDC,KAAiE,EACjEC,UAAmB,GAAG,IAAI,EAC1BC,GAAqC,EACA;EACrC,MAAMC,iBAAiB,GAAGC,yCAAyC,CACjEJ,KAAK,CAACK,QAAQ,EACdH,GACF,CAAC;EACD,IAAIC,iBAAiB,IAAI,IAAI,EAAE;IAC7B,OAAOG,SAAS;EAClB;EACA,QAAQN,KAAK,CAACK,QAAQ,CAACE,IAAI;IACzB,KAAK,SAAS;IACd,KAAK,QAAQ;IACb,KAAK,MAAM;IACX,KAAK,SAAS;IACd,KAAK,QAAQ;IACb,KAAK,OAAO;IACZ,KAAK,MAAM;IACX,KAAK,OAAO;IACZ,KAAK,SAAS;IACd,KAAK,MAAM;IACX,KAAK,YAAY;IACjB,KAAK,gBAAgB;IACrB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,WAAW;IAChB,KAAK,YAAY;IACjB,KAAK,SAAS;IACd,KAAK,wBAAwB;IAC7B,KAAK,QAAQ;IACb,KAAK,QAAQ;MACX,OAAO;QACLC,WAAW,EAAER,KAAK,CAACQ,WAAW;QAC9BC,YAAY,EAAE,KAAK;QACnBC,WAAW,EAAEV,KAAK,CAACU,WAAW;QAC9BH,IAAI,EAAEJ,iBAAiB;QACvBQ,QAAQ,EAAEX,KAAK,CAACW,QAAQ,IAAI,IAAI,GAAGV,UAAU,GAAGD,KAAK,CAACW;MACxD,CAAC;IACH,KAAK,OAAO;MAAE;QACZ,OAAO;UACLH,WAAW,EAAER,KAAK,CAACQ,WAAW;UAC9BC,YAAY,EAAE,IAAI;UAClBC,WAAW,EAAEV,KAAK,CAACU,WAAW;UAC9BH,IAAI,EAAEJ,iBAAiB;UACvBQ,QAAQ,EAAE;QACZ,CAAC;MACH;IACA,KAAK,YAAY;MAAE;QACjBT,GAAG,EAAEU,IAAI,CACP,GAAGC,IAAI,CAACC,SAAS,CAACd,KAAK,CAACK,QAAQ,CAACE,IAAI,CAAC,8BACxC,CAAC;QAED,OAAOD,SAAS;MAClB;IAEA;MACmBN,KAAK,CAACK,QAAQ;MAC/BH,GAAG,EAAEU,IAAI,CACP,GAAGC,IAAI,CAACC,SAAS,CAACd,KAAK,CAACK,QAAQ,CAAC,8BACnC,CAAC;MAED,OAAOC,SAAS;EACpB;AACF;AAEA,SAASF,yCAAyCA,CAChDW,YAAgC,EAChCb,GAAqC,EACN;EAC/B,QAAQa,YAAY,CAACR,IAAI;IACvB,KAAK,SAAS;IACd,KAAK,QAAQ;IACb,KAAK,MAAM;IACX,KAAK,SAAS;IACd,KAAK,QAAQ;IACb,KAAK,OAAO;IACZ,KAAK,MAAM;IACX,KAAK,OAAO;IACZ,KAAK,SAAS;IACd,KAAK,YAAY;IACjB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,WAAW;IAChB,KAAK,SAAS;IACd,KAAK,wBAAwB;IAC7B,KAAK,gBAAgB;IACrB,KAAK,QAAQ;MACX,OAAOQ,YAAY,CAACR,IAAI;IAC1B,KAAK,MAAM;MACT,OAAO,UAAU;IACnB,KAAK,OAAO;MACV,OAAOH,yCAAyC,CAACW,YAAY,CAACC,OAAO,CAAC;IACxE,KAAK,YAAY;MACf,IAAID,YAAY,CAACE,QAAQ,EAAEV,IAAI,KAAK,QAAQ,EAAE;QAC5C,OAAO,kBAAkB;MAC3B,CAAC,MAAM,IAAIQ,YAAY,CAACE,QAAQ,EAAEV,IAAI,KAAK,QAAQ,EAAE;QACnD,OAAO,mBAAmB;MAC5B,CAAC,MAAM,OAAO,kBAAkB;IAClC,KAAK,QAAQ;MAAE;QACb,OAAOQ,YAAY,CAACG,gBAAgB,CAACC,MAAM,CACzC,CAACC,SAAgD,EAAEC,WAAW,KAAK;UACjED,SAAS,CAACC,WAAW,CAACC,OAAO,CAAC,GAC5BlB,yCAAyC,CACvCiB,WAAW,CAAChB,QACd,CAA0B;UAC5B,OAAOe,SAAS;QAClB,CAAC,EACD,CAAC,CACH,CAAC;MACH;IACA,KAAK,YAAY;MAAE;QACjBlB,GAAG,EAAEU,IAAI,CACP,GAAGC,IAAI,CAACC,SAAS,CAACC,YAAY,CAACR,IAAI,CAAC,kCACtC,CAAC;QAED,OAAOD,SAAS;MAClB;IACA;MAAS;QAEPJ,GAAG,EAAEU,IAAI,CACP,GAAGC,IAAI,CAACC,SAAS,CAACC,YAAY,CAAC,kCACjC,CAAC;QAED,OAAOT,SAAS;MAClB;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"file":"wirePropertyV2ToSdkPropertyDefinition.js","names":["wirePropertyV2ToSdkPropertyDefinition","input","isNullable","log","sdkPropDefinition","objectPropertyTypeToSdkPropertyDefinition","dataType","undefined","type","displayName","multiplicity","description","nullable","valueTypeApiName","info","JSON","stringify","propertyType","subType","itemType","structFieldTypes","reduce","structMap","structField","apiName"],"sources":["wirePropertyV2ToSdkPropertyDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n BaseWirePropertyTypes,\n ObjectMetadata,\n WirePropertyTypes,\n} from \"@osdk/api\";\nimport type {\n ObjectPropertyType,\n PropertyV2,\n SharedPropertyType,\n} from \"@osdk/foundry.ontologies\";\n\nexport function wirePropertyV2ToSdkPropertyDefinition(\n input: (PropertyV2 | SharedPropertyType) & { nullable?: boolean },\n isNullable: boolean = true,\n log?: { info: (msg: string) => void },\n): ObjectMetadata.Property | undefined {\n const sdkPropDefinition = objectPropertyTypeToSdkPropertyDefinition(\n input.dataType,\n log,\n );\n if (sdkPropDefinition == null) {\n return undefined;\n }\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"mediaReference\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"struct\":\n case \"vector\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: sdkPropDefinition,\n nullable: input.nullable == null ? isNullable : input.nullable,\n valueTypeApiName: input.valueTypeApiName,\n };\n case \"array\": {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: sdkPropDefinition,\n nullable: true,\n valueTypeApiName: input.valueTypeApiName,\n };\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(input.dataType.type)} is not a supported dataType`,\n );\n\n return undefined;\n }\n\n default:\n const _: never = input.dataType;\n log?.info(\n `${JSON.stringify(input.dataType)} is not a supported dataType`,\n );\n\n return undefined;\n }\n}\n\nfunction objectPropertyTypeToSdkPropertyDefinition(\n propertyType: ObjectPropertyType,\n log?: { info: (msg: string) => void },\n): WirePropertyTypes | undefined {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n case \"geotimeSeriesReference\":\n case \"mediaReference\":\n case \"vector\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType?.type === \"string\") {\n return \"stringTimeseries\";\n } else if (propertyType.itemType?.type === \"double\") {\n return \"numericTimeseries\";\n } else return \"sensorTimeseries\";\n case \"struct\": {\n return propertyType.structFieldTypes.reduce(\n (structMap: Record<string, BaseWirePropertyTypes>, structField) => {\n structMap[structField.apiName] =\n objectPropertyTypeToSdkPropertyDefinition(\n structField.dataType,\n ) as BaseWirePropertyTypes;\n return structMap;\n },\n {},\n );\n }\n case \"cipherText\": {\n log?.info(\n `${JSON.stringify(propertyType.type)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n default: {\n const _: never = propertyType;\n log?.info(\n `${JSON.stringify(propertyType)} is not a supported propertyType`,\n );\n\n return undefined;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@osdk/generator-converters",
3
- "version": "2.4.2",
3
+ "version": "2.5.0-beta.10",
4
4
  "description": "",
5
5
  "access": "public",
6
6
  "license": "Apache-2.0",
@@ -29,15 +29,15 @@
29
29
  }
30
30
  },
31
31
  "dependencies": {
32
- "@osdk/foundry.ontologies": "2.28.0",
33
- "@osdk/api": "~2.4.2"
32
+ "@osdk/foundry.ontologies": "2.30.0",
33
+ "@osdk/api": "~2.5.0-beta.10"
34
34
  },
35
35
  "devDependencies": {
36
36
  "ts-expect": "^1.3.0",
37
37
  "typescript": "~5.5.4",
38
- "vitest": "^3.0.5",
39
- "@osdk/monorepo.tsconfig": "~0.3.0",
40
- "@osdk/monorepo.api-extractor": "~0.3.0"
38
+ "vitest": "^3.2.4",
39
+ "@osdk/monorepo.tsconfig": "~0.4.0-beta.1",
40
+ "@osdk/monorepo.api-extractor": "~0.4.0-beta.1"
41
41
  },
42
42
  "publishConfig": {
43
43
  "access": "public"