@osdk/maker 0.15.0 → 0.16.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.
Files changed (240) hide show
  1. package/CHANGELOG.md +89 -126
  2. package/README.md +18 -1
  3. package/build/browser/api/cloneDefinition.js +36 -0
  4. package/build/browser/api/cloneDefinition.js.map +1 -0
  5. package/build/browser/api/code-snippets/createCodeSnippets.js +1 -1
  6. package/build/browser/api/code-snippets/createCodeSnippets.js.map +1 -1
  7. package/build/browser/api/defineAction.js +9 -1
  8. package/build/browser/api/defineAction.js.map +1 -1
  9. package/build/browser/api/defineCreateInterfaceObjectAction.js +3 -1
  10. package/build/browser/api/defineCreateInterfaceObjectAction.js.map +1 -1
  11. package/build/browser/api/defineCreateObjectAction.js +3 -1
  12. package/build/browser/api/defineCreateObjectAction.js.map +1 -1
  13. package/build/browser/api/defineCreateOrModifyObjectAction.js +3 -1
  14. package/build/browser/api/defineCreateOrModifyObjectAction.js.map +1 -1
  15. package/build/browser/api/defineDeleteInterfaceObjectAction.js +3 -1
  16. package/build/browser/api/defineDeleteInterfaceObjectAction.js.map +1 -1
  17. package/build/browser/api/defineDeleteObjectAction.js +3 -1
  18. package/build/browser/api/defineDeleteObjectAction.js.map +1 -1
  19. package/build/browser/api/defineFunction.js +61 -0
  20. package/build/browser/api/defineFunction.js.map +1 -0
  21. package/build/browser/api/defineInterface.js +3 -1
  22. package/build/browser/api/defineInterface.js.map +1 -1
  23. package/build/browser/api/defineInterfaceLinkConstraint.js +6 -2
  24. package/build/browser/api/defineInterfaceLinkConstraint.js.map +1 -1
  25. package/build/browser/api/defineLink.js +3 -1
  26. package/build/browser/api/defineLink.js.map +1 -1
  27. package/build/browser/api/defineModifyInterfaceObjectAction.js +3 -1
  28. package/build/browser/api/defineModifyInterfaceObjectAction.js.map +1 -1
  29. package/build/browser/api/defineModifyObjectAction.js +3 -1
  30. package/build/browser/api/defineModifyObjectAction.js.map +1 -1
  31. package/build/browser/api/defineObject.js +29 -10
  32. package/build/browser/api/defineObject.js.map +1 -1
  33. package/build/browser/api/defineOntology.js +29 -0
  34. package/build/browser/api/defineOntology.js.map +1 -1
  35. package/build/browser/api/defineSpt.js +3 -1
  36. package/build/browser/api/defineSpt.js.map +1 -1
  37. package/build/browser/api/defineValueType.js +3 -1
  38. package/build/browser/api/defineValueType.js.map +1 -1
  39. package/build/browser/api/interface/InterfaceType.js.map +1 -1
  40. package/build/browser/api/object/ObjectPropertyType.js.map +1 -1
  41. package/build/browser/api/object/ObjectTypeDatasourceDefinition.js.map +1 -1
  42. package/build/browser/api/properties/PropertyTypeType.js.map +1 -1
  43. package/build/browser/api/properties/ReducerType.js +2 -0
  44. package/build/browser/api/properties/ReducerType.js.map +1 -0
  45. package/build/browser/api/properties/SharedPropertyType.js.map +1 -1
  46. package/build/browser/cli/main.js +1 -1
  47. package/build/browser/cli/main.js.map +1 -1
  48. package/build/browser/conversion/toMarketplace/convertDatasourceDefinition.js +17 -6
  49. package/build/browser/conversion/toMarketplace/convertDatasourceDefinition.js.map +1 -1
  50. package/build/browser/conversion/toMarketplace/convertInterface.js +2 -1
  51. package/build/browser/conversion/toMarketplace/convertInterface.js.map +1 -1
  52. package/build/browser/conversion/toMarketplace/convertMainValue.js +36 -0
  53. package/build/browser/conversion/toMarketplace/convertMainValue.js.map +1 -0
  54. package/build/browser/conversion/toMarketplace/convertObjectPropertyType.js +4 -3
  55. package/build/browser/conversion/toMarketplace/convertObjectPropertyType.js.map +1 -1
  56. package/build/browser/conversion/toMarketplace/convertReducers.js +53 -0
  57. package/build/browser/conversion/toMarketplace/convertReducers.js.map +1 -0
  58. package/build/browser/conversion/toMarketplace/convertSpt.js +5 -3
  59. package/build/browser/conversion/toMarketplace/convertSpt.js.map +1 -1
  60. package/build/browser/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js +4 -2
  61. package/build/browser/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js.map +1 -1
  62. package/build/browser/index.js +5 -2
  63. package/build/browser/index.js.map +1 -1
  64. package/build/cjs/index.cjs +267 -105
  65. package/build/cjs/index.cjs.map +1 -1
  66. package/build/cjs/index.d.cts +214 -164
  67. package/build/esm/api/cloneDefinition.js +36 -0
  68. package/build/esm/api/cloneDefinition.js.map +1 -0
  69. package/build/esm/api/code-snippets/createCodeSnippets.js +1 -1
  70. package/build/esm/api/code-snippets/createCodeSnippets.js.map +1 -1
  71. package/build/esm/api/defineAction.js +9 -1
  72. package/build/esm/api/defineAction.js.map +1 -1
  73. package/build/esm/api/defineCreateInterfaceObjectAction.js +3 -1
  74. package/build/esm/api/defineCreateInterfaceObjectAction.js.map +1 -1
  75. package/build/esm/api/defineCreateObjectAction.js +3 -1
  76. package/build/esm/api/defineCreateObjectAction.js.map +1 -1
  77. package/build/esm/api/defineCreateOrModifyObjectAction.js +3 -1
  78. package/build/esm/api/defineCreateOrModifyObjectAction.js.map +1 -1
  79. package/build/esm/api/defineDeleteInterfaceObjectAction.js +3 -1
  80. package/build/esm/api/defineDeleteInterfaceObjectAction.js.map +1 -1
  81. package/build/esm/api/defineDeleteObjectAction.js +3 -1
  82. package/build/esm/api/defineDeleteObjectAction.js.map +1 -1
  83. package/build/esm/api/defineFunction.js +61 -0
  84. package/build/esm/api/defineFunction.js.map +1 -0
  85. package/build/esm/api/defineInterface.js +3 -1
  86. package/build/esm/api/defineInterface.js.map +1 -1
  87. package/build/esm/api/defineInterfaceLinkConstraint.js +6 -2
  88. package/build/esm/api/defineInterfaceLinkConstraint.js.map +1 -1
  89. package/build/esm/api/defineLink.js +3 -1
  90. package/build/esm/api/defineLink.js.map +1 -1
  91. package/build/esm/api/defineModifyInterfaceObjectAction.js +3 -1
  92. package/build/esm/api/defineModifyInterfaceObjectAction.js.map +1 -1
  93. package/build/esm/api/defineModifyObjectAction.js +3 -1
  94. package/build/esm/api/defineModifyObjectAction.js.map +1 -1
  95. package/build/esm/api/defineObject.js +29 -10
  96. package/build/esm/api/defineObject.js.map +1 -1
  97. package/build/esm/api/defineOntology.js +29 -0
  98. package/build/esm/api/defineOntology.js.map +1 -1
  99. package/build/esm/api/defineSpt.js +3 -1
  100. package/build/esm/api/defineSpt.js.map +1 -1
  101. package/build/esm/api/defineValueType.js +3 -1
  102. package/build/esm/api/defineValueType.js.map +1 -1
  103. package/build/esm/api/interface/InterfaceType.js.map +1 -1
  104. package/build/esm/api/object/ObjectPropertyType.js.map +1 -1
  105. package/build/esm/api/object/ObjectTypeDatasourceDefinition.js.map +1 -1
  106. package/build/esm/api/properties/PropertyTypeType.js.map +1 -1
  107. package/build/esm/api/properties/ReducerType.js +2 -0
  108. package/build/esm/api/properties/ReducerType.js.map +1 -0
  109. package/build/esm/api/properties/SharedPropertyType.js.map +1 -1
  110. package/build/esm/cli/main.js +1 -1
  111. package/build/esm/cli/main.js.map +1 -1
  112. package/build/esm/conversion/toMarketplace/convertDatasourceDefinition.js +17 -6
  113. package/build/esm/conversion/toMarketplace/convertDatasourceDefinition.js.map +1 -1
  114. package/build/esm/conversion/toMarketplace/convertInterface.js +2 -1
  115. package/build/esm/conversion/toMarketplace/convertInterface.js.map +1 -1
  116. package/build/esm/conversion/toMarketplace/convertMainValue.js +36 -0
  117. package/build/esm/conversion/toMarketplace/convertMainValue.js.map +1 -0
  118. package/build/esm/conversion/toMarketplace/convertObjectPropertyType.js +4 -3
  119. package/build/esm/conversion/toMarketplace/convertObjectPropertyType.js.map +1 -1
  120. package/build/esm/conversion/toMarketplace/convertReducers.js +53 -0
  121. package/build/esm/conversion/toMarketplace/convertReducers.js.map +1 -0
  122. package/build/esm/conversion/toMarketplace/convertSpt.js +5 -3
  123. package/build/esm/conversion/toMarketplace/convertSpt.js.map +1 -1
  124. package/build/esm/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js +4 -2
  125. package/build/esm/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js.map +1 -1
  126. package/build/esm/index.js +5 -2
  127. package/build/esm/index.js.map +1 -1
  128. package/build/types/api/cloneDefinition.d.ts +9 -0
  129. package/build/types/api/cloneDefinition.d.ts.map +1 -0
  130. package/build/types/api/defineAction.d.ts +1 -1
  131. package/build/types/api/defineAction.d.ts.map +1 -1
  132. package/build/types/api/defineCreateInterfaceObjectAction.d.ts +1 -1
  133. package/build/types/api/defineCreateInterfaceObjectAction.d.ts.map +1 -1
  134. package/build/types/api/defineCreateObjectAction.d.ts +1 -1
  135. package/build/types/api/defineCreateObjectAction.d.ts.map +1 -1
  136. package/build/types/api/defineCreateOrModifyObjectAction.d.ts +1 -1
  137. package/build/types/api/defineCreateOrModifyObjectAction.d.ts.map +1 -1
  138. package/build/types/api/defineDeleteInterfaceObjectAction.d.ts +1 -1
  139. package/build/types/api/defineDeleteInterfaceObjectAction.d.ts.map +1 -1
  140. package/build/types/api/defineDeleteObjectAction.d.ts +1 -1
  141. package/build/types/api/defineDeleteObjectAction.d.ts.map +1 -1
  142. package/build/types/api/defineFunction.d.ts +19 -0
  143. package/build/types/api/defineFunction.d.ts.map +1 -0
  144. package/build/types/api/defineInterface.d.ts +1 -1
  145. package/build/types/api/defineInterface.d.ts.map +1 -1
  146. package/build/types/api/defineInterfaceLinkConstraint.d.ts +1 -1
  147. package/build/types/api/defineInterfaceLinkConstraint.d.ts.map +1 -1
  148. package/build/types/api/defineLink.d.ts +1 -1
  149. package/build/types/api/defineLink.d.ts.map +1 -1
  150. package/build/types/api/defineModifyInterfaceObjectAction.d.ts +1 -1
  151. package/build/types/api/defineModifyInterfaceObjectAction.d.ts.map +1 -1
  152. package/build/types/api/defineModifyObjectAction.d.ts +1 -1
  153. package/build/types/api/defineModifyObjectAction.d.ts.map +1 -1
  154. package/build/types/api/defineObject.d.ts +1 -1
  155. package/build/types/api/defineObject.d.ts.map +1 -1
  156. package/build/types/api/defineOntology.d.ts +5 -0
  157. package/build/types/api/defineOntology.d.ts.map +1 -1
  158. package/build/types/api/defineSpt.d.ts +3 -1
  159. package/build/types/api/defineSpt.d.ts.map +1 -1
  160. package/build/types/api/defineValueType.d.ts +1 -1
  161. package/build/types/api/defineValueType.d.ts.map +1 -1
  162. package/build/types/api/interface/InterfaceType.d.ts +1 -1
  163. package/build/types/api/interface/InterfaceType.d.ts.map +1 -1
  164. package/build/types/api/object/ObjectPropertyType.d.ts +2 -0
  165. package/build/types/api/object/ObjectPropertyType.d.ts.map +1 -1
  166. package/build/types/api/object/ObjectTypeDatasourceDefinition.d.ts +10 -3
  167. package/build/types/api/object/ObjectTypeDatasourceDefinition.d.ts.map +1 -1
  168. package/build/types/api/properties/PropertyTypeType.d.ts +4 -0
  169. package/build/types/api/properties/PropertyTypeType.d.ts.map +1 -1
  170. package/build/types/api/properties/ReducerType.d.ts +4 -0
  171. package/build/types/api/properties/ReducerType.d.ts.map +1 -0
  172. package/build/types/api/properties/SharedPropertyType.d.ts +2 -0
  173. package/build/types/api/properties/SharedPropertyType.d.ts.map +1 -1
  174. package/build/types/conversion/toMarketplace/convertDatasourceDefinition.d.ts.map +1 -1
  175. package/build/types/conversion/toMarketplace/convertMainValue.d.ts +4 -0
  176. package/build/types/conversion/toMarketplace/convertMainValue.d.ts.map +1 -0
  177. package/build/types/conversion/toMarketplace/convertObjectPropertyType.d.ts.map +1 -1
  178. package/build/types/conversion/toMarketplace/convertReducers.d.ts +6 -0
  179. package/build/types/conversion/toMarketplace/convertReducers.d.ts.map +1 -0
  180. package/build/types/conversion/toMarketplace/convertSpt.d.ts +1 -1
  181. package/build/types/conversion/toMarketplace/convertSpt.d.ts.map +1 -1
  182. package/build/types/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.d.ts +2 -1
  183. package/build/types/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.d.ts.map +1 -1
  184. package/build/types/index.d.ts +14 -6
  185. package/build/types/index.d.ts.map +1 -1
  186. package/package.json +6 -5
  187. package/build/browser/api/test/actions.test.js +0 -14397
  188. package/build/browser/api/test/actions.test.js.map +0 -1
  189. package/build/browser/api/test/interfaces.test.js +0 -1189
  190. package/build/browser/api/test/interfaces.test.js.map +0 -1
  191. package/build/browser/api/test/links.test.js +0 -2019
  192. package/build/browser/api/test/links.test.js.map +0 -1
  193. package/build/browser/api/test/markingconstraint.test.js +0 -134
  194. package/build/browser/api/test/markingconstraint.test.js.map +0 -1
  195. package/build/browser/api/test/misc.test.js +0 -1315
  196. package/build/browser/api/test/misc.test.js.map +0 -1
  197. package/build/browser/api/test/objectStatus.test.js +0 -160
  198. package/build/browser/api/test/objectStatus.test.js.map +0 -1
  199. package/build/browser/api/test/objects.test.js +0 -3856
  200. package/build/browser/api/test/objects.test.js.map +0 -1
  201. package/build/browser/api/test/spt.test.js +0 -722
  202. package/build/browser/api/test/spt.test.js.map +0 -1
  203. package/build/browser/api/test/valueTypes.test.js +0 -307
  204. package/build/browser/api/test/valueTypes.test.js.map +0 -1
  205. package/build/esm/api/test/actions.test.js +0 -14397
  206. package/build/esm/api/test/actions.test.js.map +0 -1
  207. package/build/esm/api/test/interfaces.test.js +0 -1189
  208. package/build/esm/api/test/interfaces.test.js.map +0 -1
  209. package/build/esm/api/test/links.test.js +0 -2019
  210. package/build/esm/api/test/links.test.js.map +0 -1
  211. package/build/esm/api/test/markingconstraint.test.js +0 -134
  212. package/build/esm/api/test/markingconstraint.test.js.map +0 -1
  213. package/build/esm/api/test/misc.test.js +0 -1315
  214. package/build/esm/api/test/misc.test.js.map +0 -1
  215. package/build/esm/api/test/objectStatus.test.js +0 -160
  216. package/build/esm/api/test/objectStatus.test.js.map +0 -1
  217. package/build/esm/api/test/objects.test.js +0 -3856
  218. package/build/esm/api/test/objects.test.js.map +0 -1
  219. package/build/esm/api/test/spt.test.js +0 -722
  220. package/build/esm/api/test/spt.test.js.map +0 -1
  221. package/build/esm/api/test/valueTypes.test.js +0 -307
  222. package/build/esm/api/test/valueTypes.test.js.map +0 -1
  223. package/build/types/api/test/actions.test.d.ts +0 -1
  224. package/build/types/api/test/actions.test.d.ts.map +0 -1
  225. package/build/types/api/test/interfaces.test.d.ts +0 -1
  226. package/build/types/api/test/interfaces.test.d.ts.map +0 -1
  227. package/build/types/api/test/links.test.d.ts +0 -1
  228. package/build/types/api/test/links.test.d.ts.map +0 -1
  229. package/build/types/api/test/markingconstraint.test.d.ts +0 -1
  230. package/build/types/api/test/markingconstraint.test.d.ts.map +0 -1
  231. package/build/types/api/test/misc.test.d.ts +0 -1
  232. package/build/types/api/test/misc.test.d.ts.map +0 -1
  233. package/build/types/api/test/objectStatus.test.d.ts +0 -1
  234. package/build/types/api/test/objectStatus.test.d.ts.map +0 -1
  235. package/build/types/api/test/objects.test.d.ts +0 -1
  236. package/build/types/api/test/objects.test.d.ts.map +0 -1
  237. package/build/types/api/test/spt.test.d.ts +0 -1
  238. package/build/types/api/test/spt.test.d.ts.map +0 -1
  239. package/build/types/api/test/valueTypes.test.d.ts +0 -1
  240. package/build/types/api/test/valueTypes.test.d.ts.map +0 -1
@@ -1,2019 +0,0 @@
1
- /*
2
- * Copyright 2025 Palantir Technologies, Inc. All rights reserved.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- import { beforeEach, describe, expect, it } from "vitest";
18
- import { defineInterface } from "../defineInterface.js";
19
- import { defineInterfaceLinkConstraint } from "../defineInterfaceLinkConstraint.js";
20
- import { defineLink } from "../defineLink.js";
21
- import { defineObject } from "../defineObject.js";
22
- import { defineOntology, dumpOntologyFullMetadata } from "../defineOntology.js";
23
- describe("Link Types", () => {
24
- beforeEach(async () => {
25
- await defineOntology("com.palantir.", () => {}, "/tmp/");
26
- });
27
- describe("Object Links", () => {
28
- it("One To Many Links are properly defined", () => {
29
- const object = defineObject({
30
- titlePropertyApiName: "bar",
31
- displayName: "Foo",
32
- pluralDisplayName: "Foo",
33
- apiName: "foo",
34
- primaryKeyPropertyApiName: "bar",
35
- properties: {
36
- "bar": {
37
- type: "string"
38
- }
39
- }
40
- });
41
- const otherObject = defineObject({
42
- titlePropertyApiName: "fizz",
43
- displayName: "Fizz",
44
- pluralDisplayName: "Fizz",
45
- apiName: "fizz",
46
- primaryKeyPropertyApiName: "fizz",
47
- properties: {
48
- "fizz": {
49
- type: "string"
50
- },
51
- "bar": {
52
- type: "string"
53
- }
54
- }
55
- });
56
- defineLink({
57
- apiName: "fizzToFoo",
58
- one: {
59
- object: object,
60
- metadata: {
61
- apiName: "fizzes",
62
- displayName: "Foo",
63
- pluralDisplayName: "Foos"
64
- }
65
- },
66
- toMany: {
67
- object: otherObject,
68
- metadata: {
69
- displayName: "Fizz",
70
- pluralDisplayName: "Fizzes",
71
- apiName: "foos"
72
- }
73
- },
74
- manyForeignKeyProperty: "bar"
75
- });
76
- expect(dumpOntologyFullMetadata().ontology).toMatchInlineSnapshot(`
77
- {
78
- "actionTypes": {},
79
- "blockPermissionInformation": {
80
- "actionTypes": {},
81
- "linkTypes": {},
82
- "objectTypes": {},
83
- },
84
- "interfaceTypes": {},
85
- "linkTypes": {
86
- "fizz-to-foo": {
87
- "datasources": [],
88
- "entityMetadata": {
89
- "arePatchesEnabled": false,
90
- },
91
- "linkType": {
92
- "definition": {
93
- "oneToMany": {
94
- "cardinalityHint": "ONE_TO_MANY",
95
- "manyToOneLinkMetadata": {
96
- "apiName": "foos",
97
- "displayMetadata": {
98
- "displayName": "Fizz",
99
- "groupDisplayName": "",
100
- "pluralDisplayName": "Fizzes",
101
- "visibility": "NORMAL",
102
- },
103
- "typeClasses": [],
104
- },
105
- "objectTypeRidManySide": "com.palantir.fizz",
106
- "objectTypeRidOneSide": "com.palantir.foo",
107
- "oneSidePrimaryKeyToManySidePropertyMapping": [
108
- {
109
- "from": {
110
- "apiName": "bar",
111
- "object": "com.palantir.foo",
112
- },
113
- "to": {
114
- "apiName": "bar",
115
- "object": "com.palantir.fizz",
116
- },
117
- },
118
- ],
119
- "oneToManyLinkMetadata": {
120
- "apiName": "fizzes",
121
- "displayMetadata": {
122
- "displayName": "Foo",
123
- "groupDisplayName": "",
124
- "pluralDisplayName": "Foos",
125
- "visibility": "NORMAL",
126
- },
127
- "typeClasses": [],
128
- },
129
- },
130
- "type": "oneToMany",
131
- },
132
- "id": "fizz-to-foo",
133
- "redacted": false,
134
- "status": {
135
- "active": {},
136
- "type": "active",
137
- },
138
- },
139
- },
140
- },
141
- "objectTypes": {
142
- "com.palantir.fizz": {
143
- "datasources": [
144
- {
145
- "datasource": {
146
- "datasetV2": {
147
- "datasetRid": "com.palantir.fizz",
148
- "propertyMapping": {
149
- "bar": {
150
- "column": "bar",
151
- "type": "column",
152
- },
153
- "fizz": {
154
- "column": "fizz",
155
- "type": "column",
156
- },
157
- },
158
- },
159
- "type": "datasetV2",
160
- },
161
- "datasourceName": "com.palantir.fizz",
162
- "editsConfiguration": {
163
- "onlyAllowPrivilegedEdits": false,
164
- },
165
- "redacted": false,
166
- },
167
- ],
168
- "entityMetadata": {
169
- "aliases": [],
170
- "arePatchesEnabled": false,
171
- },
172
- "objectType": {
173
- "allImplementsInterfaces": {},
174
- "apiName": "com.palantir.fizz",
175
- "displayMetadata": {
176
- "description": undefined,
177
- "displayName": "Fizz",
178
- "groupDisplayName": undefined,
179
- "icon": {
180
- "blueprint": {
181
- "color": "#2D72D2",
182
- "locator": "cube",
183
- },
184
- "type": "blueprint",
185
- },
186
- "pluralDisplayName": "Fizz",
187
- "visibility": "NORMAL",
188
- },
189
- "implementsInterfaces2": [],
190
- "primaryKeys": [
191
- "fizz",
192
- ],
193
- "propertyTypes": {
194
- "bar": {
195
- "apiName": "bar",
196
- "baseFormatter": undefined,
197
- "dataConstraints": undefined,
198
- "displayMetadata": {
199
- "description": undefined,
200
- "displayName": "Bar",
201
- "visibility": "NORMAL",
202
- },
203
- "indexedForSearch": true,
204
- "inlineAction": undefined,
205
- "ruleSetBinding": undefined,
206
- "sharedPropertyTypeApiName": undefined,
207
- "sharedPropertyTypeRid": undefined,
208
- "status": {
209
- "active": {},
210
- "type": "active",
211
- },
212
- "type": {
213
- "string": {
214
- "analyzerOverride": undefined,
215
- "enableAsciiFolding": undefined,
216
- "isLongText": false,
217
- "supportsEfficientLeadingWildcard": false,
218
- "supportsExactMatching": true,
219
- },
220
- "type": "string",
221
- },
222
- "typeClasses": [
223
- {
224
- "kind": "render_hint",
225
- "name": "SELECTABLE",
226
- },
227
- {
228
- "kind": "render_hint",
229
- "name": "SORTABLE",
230
- },
231
- ],
232
- "valueType": undefined,
233
- },
234
- "fizz": {
235
- "apiName": "fizz",
236
- "baseFormatter": undefined,
237
- "dataConstraints": undefined,
238
- "displayMetadata": {
239
- "description": undefined,
240
- "displayName": "Fizz",
241
- "visibility": "NORMAL",
242
- },
243
- "indexedForSearch": true,
244
- "inlineAction": undefined,
245
- "ruleSetBinding": undefined,
246
- "sharedPropertyTypeApiName": undefined,
247
- "sharedPropertyTypeRid": undefined,
248
- "status": {
249
- "active": {},
250
- "type": "active",
251
- },
252
- "type": {
253
- "string": {
254
- "analyzerOverride": undefined,
255
- "enableAsciiFolding": undefined,
256
- "isLongText": false,
257
- "supportsEfficientLeadingWildcard": false,
258
- "supportsExactMatching": true,
259
- },
260
- "type": "string",
261
- },
262
- "typeClasses": [
263
- {
264
- "kind": "render_hint",
265
- "name": "SELECTABLE",
266
- },
267
- {
268
- "kind": "render_hint",
269
- "name": "SORTABLE",
270
- },
271
- ],
272
- "valueType": undefined,
273
- },
274
- },
275
- "redacted": false,
276
- "status": {
277
- "active": {},
278
- "type": "active",
279
- },
280
- "titlePropertyTypeRid": "fizz",
281
- },
282
- "propertySecurityGroupPackagingVersion": {
283
- "type": "v2",
284
- "v2": {},
285
- },
286
- },
287
- "com.palantir.foo": {
288
- "datasources": [
289
- {
290
- "datasource": {
291
- "datasetV2": {
292
- "datasetRid": "com.palantir.foo",
293
- "propertyMapping": {
294
- "bar": {
295
- "column": "bar",
296
- "type": "column",
297
- },
298
- },
299
- },
300
- "type": "datasetV2",
301
- },
302
- "datasourceName": "com.palantir.foo",
303
- "editsConfiguration": {
304
- "onlyAllowPrivilegedEdits": false,
305
- },
306
- "redacted": false,
307
- },
308
- ],
309
- "entityMetadata": {
310
- "aliases": [],
311
- "arePatchesEnabled": false,
312
- },
313
- "objectType": {
314
- "allImplementsInterfaces": {},
315
- "apiName": "com.palantir.foo",
316
- "displayMetadata": {
317
- "description": undefined,
318
- "displayName": "Foo",
319
- "groupDisplayName": undefined,
320
- "icon": {
321
- "blueprint": {
322
- "color": "#2D72D2",
323
- "locator": "cube",
324
- },
325
- "type": "blueprint",
326
- },
327
- "pluralDisplayName": "Foo",
328
- "visibility": "NORMAL",
329
- },
330
- "implementsInterfaces2": [],
331
- "primaryKeys": [
332
- "bar",
333
- ],
334
- "propertyTypes": {
335
- "bar": {
336
- "apiName": "bar",
337
- "baseFormatter": undefined,
338
- "dataConstraints": undefined,
339
- "displayMetadata": {
340
- "description": undefined,
341
- "displayName": "Bar",
342
- "visibility": "NORMAL",
343
- },
344
- "indexedForSearch": true,
345
- "inlineAction": undefined,
346
- "ruleSetBinding": undefined,
347
- "sharedPropertyTypeApiName": undefined,
348
- "sharedPropertyTypeRid": undefined,
349
- "status": {
350
- "active": {},
351
- "type": "active",
352
- },
353
- "type": {
354
- "string": {
355
- "analyzerOverride": undefined,
356
- "enableAsciiFolding": undefined,
357
- "isLongText": false,
358
- "supportsEfficientLeadingWildcard": false,
359
- "supportsExactMatching": true,
360
- },
361
- "type": "string",
362
- },
363
- "typeClasses": [
364
- {
365
- "kind": "render_hint",
366
- "name": "SELECTABLE",
367
- },
368
- {
369
- "kind": "render_hint",
370
- "name": "SORTABLE",
371
- },
372
- ],
373
- "valueType": undefined,
374
- },
375
- },
376
- "redacted": false,
377
- "status": {
378
- "active": {},
379
- "type": "active",
380
- },
381
- "titlePropertyTypeRid": "bar",
382
- },
383
- "propertySecurityGroupPackagingVersion": {
384
- "type": "v2",
385
- "v2": {},
386
- },
387
- },
388
- },
389
- "sharedPropertyTypes": {},
390
- }
391
- `);
392
- });
393
- it("Many To Many Links are properly defined", () => {
394
- const object = defineObject({
395
- titlePropertyApiName: "bar",
396
- displayName: "Foo",
397
- pluralDisplayName: "Foo",
398
- apiName: "foo",
399
- primaryKeyPropertyApiName: "bar",
400
- properties: {
401
- "bar": {
402
- type: "string"
403
- }
404
- }
405
- });
406
- const otherObject = defineObject({
407
- titlePropertyApiName: "fizz",
408
- displayName: "Fizz",
409
- pluralDisplayName: "Fizz",
410
- apiName: "fizz",
411
- primaryKeyPropertyApiName: "fizz",
412
- properties: {
413
- "fizz": {
414
- type: "string"
415
- },
416
- "bar": {
417
- type: "string"
418
- }
419
- }
420
- });
421
- defineLink({
422
- apiName: "fizzToFoo",
423
- many: {
424
- object: object,
425
- metadata: {
426
- displayName: "Foo",
427
- pluralDisplayName: "Foos",
428
- apiName: "fizzes"
429
- }
430
- },
431
- toMany: {
432
- object: otherObject,
433
- metadata: {
434
- displayName: "Fizz",
435
- pluralDisplayName: "Fizzes",
436
- apiName: "foos"
437
- }
438
- }
439
- });
440
- expect(dumpOntologyFullMetadata().ontology).toMatchInlineSnapshot(`
441
- {
442
- "actionTypes": {},
443
- "blockPermissionInformation": {
444
- "actionTypes": {},
445
- "linkTypes": {},
446
- "objectTypes": {},
447
- },
448
- "interfaceTypes": {},
449
- "linkTypes": {
450
- "fizz-to-foo": {
451
- "datasources": [
452
- {
453
- "datasource": {
454
- "dataset": {
455
- "datasetRid": "link-fizzToFoo",
456
- "objectTypeAPrimaryKeyMapping": [
457
- {
458
- "column": "bar",
459
- "property": {
460
- "apiName": "bar",
461
- "object": "com.palantir.foo",
462
- },
463
- },
464
- ],
465
- "objectTypeBPrimaryKeyMapping": [
466
- {
467
- "column": "fizz",
468
- "property": {
469
- "apiName": "fizz",
470
- "object": "com.palantir.fizz",
471
- },
472
- },
473
- ],
474
- "writebackDatasetRid": undefined,
475
- },
476
- "type": "dataset",
477
- },
478
- "datasourceName": "fizzToFoo",
479
- "editsConfiguration": {
480
- "onlyAllowPrivilegedEdits": false,
481
- },
482
- "redacted": undefined,
483
- },
484
- ],
485
- "entityMetadata": {
486
- "arePatchesEnabled": false,
487
- },
488
- "linkType": {
489
- "definition": {
490
- "manyToMany": {
491
- "objectTypeAPrimaryKeyPropertyMapping": [
492
- {
493
- "from": {
494
- "apiName": "bar",
495
- "object": "com.palantir.foo",
496
- },
497
- "to": {
498
- "apiName": "bar",
499
- "object": "com.palantir.foo",
500
- },
501
- },
502
- ],
503
- "objectTypeAToBLinkMetadata": {
504
- "apiName": "fizzes",
505
- "displayMetadata": {
506
- "displayName": "Foo",
507
- "groupDisplayName": "",
508
- "pluralDisplayName": "Foos",
509
- "visibility": "NORMAL",
510
- },
511
- "typeClasses": [],
512
- },
513
- "objectTypeBPrimaryKeyPropertyMapping": [
514
- {
515
- "from": {
516
- "apiName": "fizz",
517
- "object": "com.palantir.fizz",
518
- },
519
- "to": {
520
- "apiName": "fizz",
521
- "object": "com.palantir.fizz",
522
- },
523
- },
524
- ],
525
- "objectTypeBToALinkMetadata": {
526
- "apiName": "foos",
527
- "displayMetadata": {
528
- "displayName": "Fizz",
529
- "groupDisplayName": "",
530
- "pluralDisplayName": "Fizzes",
531
- "visibility": "NORMAL",
532
- },
533
- "typeClasses": [],
534
- },
535
- "objectTypeRidA": "com.palantir.foo",
536
- "objectTypeRidB": "com.palantir.fizz",
537
- "peeringMetadata": undefined,
538
- },
539
- "type": "manyToMany",
540
- },
541
- "id": "fizz-to-foo",
542
- "redacted": false,
543
- "status": {
544
- "active": {},
545
- "type": "active",
546
- },
547
- },
548
- },
549
- },
550
- "objectTypes": {
551
- "com.palantir.fizz": {
552
- "datasources": [
553
- {
554
- "datasource": {
555
- "datasetV2": {
556
- "datasetRid": "com.palantir.fizz",
557
- "propertyMapping": {
558
- "bar": {
559
- "column": "bar",
560
- "type": "column",
561
- },
562
- "fizz": {
563
- "column": "fizz",
564
- "type": "column",
565
- },
566
- },
567
- },
568
- "type": "datasetV2",
569
- },
570
- "datasourceName": "com.palantir.fizz",
571
- "editsConfiguration": {
572
- "onlyAllowPrivilegedEdits": false,
573
- },
574
- "redacted": false,
575
- },
576
- ],
577
- "entityMetadata": {
578
- "aliases": [],
579
- "arePatchesEnabled": false,
580
- },
581
- "objectType": {
582
- "allImplementsInterfaces": {},
583
- "apiName": "com.palantir.fizz",
584
- "displayMetadata": {
585
- "description": undefined,
586
- "displayName": "Fizz",
587
- "groupDisplayName": undefined,
588
- "icon": {
589
- "blueprint": {
590
- "color": "#2D72D2",
591
- "locator": "cube",
592
- },
593
- "type": "blueprint",
594
- },
595
- "pluralDisplayName": "Fizz",
596
- "visibility": "NORMAL",
597
- },
598
- "implementsInterfaces2": [],
599
- "primaryKeys": [
600
- "fizz",
601
- ],
602
- "propertyTypes": {
603
- "bar": {
604
- "apiName": "bar",
605
- "baseFormatter": undefined,
606
- "dataConstraints": undefined,
607
- "displayMetadata": {
608
- "description": undefined,
609
- "displayName": "Bar",
610
- "visibility": "NORMAL",
611
- },
612
- "indexedForSearch": true,
613
- "inlineAction": undefined,
614
- "ruleSetBinding": undefined,
615
- "sharedPropertyTypeApiName": undefined,
616
- "sharedPropertyTypeRid": undefined,
617
- "status": {
618
- "active": {},
619
- "type": "active",
620
- },
621
- "type": {
622
- "string": {
623
- "analyzerOverride": undefined,
624
- "enableAsciiFolding": undefined,
625
- "isLongText": false,
626
- "supportsEfficientLeadingWildcard": false,
627
- "supportsExactMatching": true,
628
- },
629
- "type": "string",
630
- },
631
- "typeClasses": [
632
- {
633
- "kind": "render_hint",
634
- "name": "SELECTABLE",
635
- },
636
- {
637
- "kind": "render_hint",
638
- "name": "SORTABLE",
639
- },
640
- ],
641
- "valueType": undefined,
642
- },
643
- "fizz": {
644
- "apiName": "fizz",
645
- "baseFormatter": undefined,
646
- "dataConstraints": undefined,
647
- "displayMetadata": {
648
- "description": undefined,
649
- "displayName": "Fizz",
650
- "visibility": "NORMAL",
651
- },
652
- "indexedForSearch": true,
653
- "inlineAction": undefined,
654
- "ruleSetBinding": undefined,
655
- "sharedPropertyTypeApiName": undefined,
656
- "sharedPropertyTypeRid": undefined,
657
- "status": {
658
- "active": {},
659
- "type": "active",
660
- },
661
- "type": {
662
- "string": {
663
- "analyzerOverride": undefined,
664
- "enableAsciiFolding": undefined,
665
- "isLongText": false,
666
- "supportsEfficientLeadingWildcard": false,
667
- "supportsExactMatching": true,
668
- },
669
- "type": "string",
670
- },
671
- "typeClasses": [
672
- {
673
- "kind": "render_hint",
674
- "name": "SELECTABLE",
675
- },
676
- {
677
- "kind": "render_hint",
678
- "name": "SORTABLE",
679
- },
680
- ],
681
- "valueType": undefined,
682
- },
683
- },
684
- "redacted": false,
685
- "status": {
686
- "active": {},
687
- "type": "active",
688
- },
689
- "titlePropertyTypeRid": "fizz",
690
- },
691
- "propertySecurityGroupPackagingVersion": {
692
- "type": "v2",
693
- "v2": {},
694
- },
695
- },
696
- "com.palantir.foo": {
697
- "datasources": [
698
- {
699
- "datasource": {
700
- "datasetV2": {
701
- "datasetRid": "com.palantir.foo",
702
- "propertyMapping": {
703
- "bar": {
704
- "column": "bar",
705
- "type": "column",
706
- },
707
- },
708
- },
709
- "type": "datasetV2",
710
- },
711
- "datasourceName": "com.palantir.foo",
712
- "editsConfiguration": {
713
- "onlyAllowPrivilegedEdits": false,
714
- },
715
- "redacted": false,
716
- },
717
- ],
718
- "entityMetadata": {
719
- "aliases": [],
720
- "arePatchesEnabled": false,
721
- },
722
- "objectType": {
723
- "allImplementsInterfaces": {},
724
- "apiName": "com.palantir.foo",
725
- "displayMetadata": {
726
- "description": undefined,
727
- "displayName": "Foo",
728
- "groupDisplayName": undefined,
729
- "icon": {
730
- "blueprint": {
731
- "color": "#2D72D2",
732
- "locator": "cube",
733
- },
734
- "type": "blueprint",
735
- },
736
- "pluralDisplayName": "Foo",
737
- "visibility": "NORMAL",
738
- },
739
- "implementsInterfaces2": [],
740
- "primaryKeys": [
741
- "bar",
742
- ],
743
- "propertyTypes": {
744
- "bar": {
745
- "apiName": "bar",
746
- "baseFormatter": undefined,
747
- "dataConstraints": undefined,
748
- "displayMetadata": {
749
- "description": undefined,
750
- "displayName": "Bar",
751
- "visibility": "NORMAL",
752
- },
753
- "indexedForSearch": true,
754
- "inlineAction": undefined,
755
- "ruleSetBinding": undefined,
756
- "sharedPropertyTypeApiName": undefined,
757
- "sharedPropertyTypeRid": undefined,
758
- "status": {
759
- "active": {},
760
- "type": "active",
761
- },
762
- "type": {
763
- "string": {
764
- "analyzerOverride": undefined,
765
- "enableAsciiFolding": undefined,
766
- "isLongText": false,
767
- "supportsEfficientLeadingWildcard": false,
768
- "supportsExactMatching": true,
769
- },
770
- "type": "string",
771
- },
772
- "typeClasses": [
773
- {
774
- "kind": "render_hint",
775
- "name": "SELECTABLE",
776
- },
777
- {
778
- "kind": "render_hint",
779
- "name": "SORTABLE",
780
- },
781
- ],
782
- "valueType": undefined,
783
- },
784
- },
785
- "redacted": false,
786
- "status": {
787
- "active": {},
788
- "type": "active",
789
- },
790
- "titlePropertyTypeRid": "bar",
791
- },
792
- "propertySecurityGroupPackagingVersion": {
793
- "type": "v2",
794
- "v2": {},
795
- },
796
- },
797
- },
798
- "sharedPropertyTypes": {},
799
- }
800
- `);
801
- });
802
- it("Intermediary link types are properly defined", () => {
803
- const bar = defineObject({
804
- titlePropertyApiName: "bar",
805
- displayName: "Bar",
806
- pluralDisplayName: "Bar",
807
- apiName: "barObject",
808
- primaryKeyPropertyApiName: "bar",
809
- properties: {
810
- "bar": {
811
- type: "string"
812
- }
813
- }
814
- });
815
- const fizz = defineObject({
816
- titlePropertyApiName: "fizz",
817
- displayName: "Fizz",
818
- pluralDisplayName: "Fizz",
819
- apiName: "fizzObject",
820
- primaryKeyPropertyApiName: "fizz",
821
- properties: {
822
- "fizz": {
823
- type: "string"
824
- }
825
- }
826
- });
827
- const intermediaryObject = defineObject({
828
- titlePropertyApiName: "buzz",
829
- displayName: "Buzz",
830
- pluralDisplayName: "Buzz",
831
- apiName: "buzzObject",
832
- primaryKeyPropertyApiName: "buzz",
833
- properties: {
834
- "buzz": {
835
- type: "string"
836
- },
837
- "barBuzz": {
838
- type: "string"
839
- },
840
- "fizzBuzz": {
841
- type: "string"
842
- }
843
- }
844
- });
845
- const barToBuzz = defineLink({
846
- apiName: "barToBuzz",
847
- manyForeignKeyProperty: "barBuzz",
848
- one: {
849
- object: bar,
850
- metadata: {
851
- displayName: "Buzz",
852
- pluralDisplayName: "Buzz",
853
- apiName: "buzz1"
854
- }
855
- },
856
- toMany: {
857
- object: intermediaryObject,
858
- metadata: {
859
- displayName: "Bar",
860
- pluralDisplayName: "Bars",
861
- apiName: "bars"
862
- }
863
- }
864
- });
865
- const fizzToBuzz = defineLink({
866
- apiName: "fizzToBuzz",
867
- manyForeignKeyProperty: "fizzBuzz",
868
- one: {
869
- object: fizz,
870
- metadata: {
871
- displayName: "Buzz",
872
- pluralDisplayName: "Buzz",
873
- apiName: "buzz2"
874
- }
875
- },
876
- toMany: {
877
- object: intermediaryObject,
878
- metadata: {
879
- displayName: "Fizz",
880
- pluralDisplayName: "Fizzes",
881
- apiName: "fizzes"
882
- }
883
- }
884
- });
885
- defineLink({
886
- apiName: "fizzToBar",
887
- many: {
888
- object: bar,
889
- metadata: {
890
- displayName: "Fizz",
891
- pluralDisplayName: "Fizzes",
892
- apiName: "fizzes1"
893
- },
894
- linkToIntermediary: barToBuzz
895
- },
896
- toMany: {
897
- object: fizz,
898
- metadata: {
899
- displayName: "Bar",
900
- pluralDisplayName: "Bars",
901
- apiName: "bars1"
902
- },
903
- linkToIntermediary: fizzToBuzz
904
- },
905
- intermediaryObjectType: intermediaryObject
906
- });
907
- expect(dumpOntologyFullMetadata().ontology).toMatchInlineSnapshot(`
908
- {
909
- "actionTypes": {},
910
- "blockPermissionInformation": {
911
- "actionTypes": {},
912
- "linkTypes": {},
913
- "objectTypes": {},
914
- },
915
- "interfaceTypes": {},
916
- "linkTypes": {
917
- "bar-to-buzz": {
918
- "datasources": [],
919
- "entityMetadata": {
920
- "arePatchesEnabled": false,
921
- },
922
- "linkType": {
923
- "definition": {
924
- "oneToMany": {
925
- "cardinalityHint": "ONE_TO_MANY",
926
- "manyToOneLinkMetadata": {
927
- "apiName": "bars",
928
- "displayMetadata": {
929
- "displayName": "Bar",
930
- "groupDisplayName": "",
931
- "pluralDisplayName": "Bars",
932
- "visibility": "NORMAL",
933
- },
934
- "typeClasses": [],
935
- },
936
- "objectTypeRidManySide": "com.palantir.buzzObject",
937
- "objectTypeRidOneSide": "com.palantir.barObject",
938
- "oneSidePrimaryKeyToManySidePropertyMapping": [
939
- {
940
- "from": {
941
- "apiName": "bar",
942
- "object": "com.palantir.barObject",
943
- },
944
- "to": {
945
- "apiName": "barBuzz",
946
- "object": "com.palantir.buzzObject",
947
- },
948
- },
949
- ],
950
- "oneToManyLinkMetadata": {
951
- "apiName": "buzz1",
952
- "displayMetadata": {
953
- "displayName": "Buzz",
954
- "groupDisplayName": "",
955
- "pluralDisplayName": "Buzz",
956
- "visibility": "NORMAL",
957
- },
958
- "typeClasses": [],
959
- },
960
- },
961
- "type": "oneToMany",
962
- },
963
- "id": "bar-to-buzz",
964
- "redacted": false,
965
- "status": {
966
- "active": {},
967
- "type": "active",
968
- },
969
- },
970
- },
971
- "fizz-to-bar": {
972
- "datasources": [],
973
- "entityMetadata": {
974
- "arePatchesEnabled": false,
975
- },
976
- "linkType": {
977
- "definition": {
978
- "intermediary": {
979
- "aToIntermediaryLinkTypeRid": "bar-to-buzz",
980
- "intermediaryObjectTypeRid": "com.palantir.buzzObject",
981
- "intermediaryToBLinkTypeRid": "fizz-to-buzz",
982
- "objectTypeAToBLinkMetadata": {
983
- "apiName": "fizzes1",
984
- "displayMetadata": {
985
- "displayName": "Fizz",
986
- "groupDisplayName": "",
987
- "pluralDisplayName": "Fizzes",
988
- "visibility": "NORMAL",
989
- },
990
- "typeClasses": [],
991
- },
992
- "objectTypeBToALinkMetadata": {
993
- "apiName": "bars1",
994
- "displayMetadata": {
995
- "displayName": "Bar",
996
- "groupDisplayName": "",
997
- "pluralDisplayName": "Bars",
998
- "visibility": "NORMAL",
999
- },
1000
- "typeClasses": [],
1001
- },
1002
- "objectTypeRidA": "com.palantir.barObject",
1003
- "objectTypeRidB": "com.palantir.fizzObject",
1004
- },
1005
- "type": "intermediary",
1006
- },
1007
- "id": "fizz-to-bar",
1008
- "redacted": false,
1009
- "status": {
1010
- "active": {},
1011
- "type": "active",
1012
- },
1013
- },
1014
- },
1015
- "fizz-to-buzz": {
1016
- "datasources": [],
1017
- "entityMetadata": {
1018
- "arePatchesEnabled": false,
1019
- },
1020
- "linkType": {
1021
- "definition": {
1022
- "oneToMany": {
1023
- "cardinalityHint": "ONE_TO_MANY",
1024
- "manyToOneLinkMetadata": {
1025
- "apiName": "fizzes",
1026
- "displayMetadata": {
1027
- "displayName": "Fizz",
1028
- "groupDisplayName": "",
1029
- "pluralDisplayName": "Fizzes",
1030
- "visibility": "NORMAL",
1031
- },
1032
- "typeClasses": [],
1033
- },
1034
- "objectTypeRidManySide": "com.palantir.buzzObject",
1035
- "objectTypeRidOneSide": "com.palantir.fizzObject",
1036
- "oneSidePrimaryKeyToManySidePropertyMapping": [
1037
- {
1038
- "from": {
1039
- "apiName": "fizz",
1040
- "object": "com.palantir.fizzObject",
1041
- },
1042
- "to": {
1043
- "apiName": "fizzBuzz",
1044
- "object": "com.palantir.buzzObject",
1045
- },
1046
- },
1047
- ],
1048
- "oneToManyLinkMetadata": {
1049
- "apiName": "buzz2",
1050
- "displayMetadata": {
1051
- "displayName": "Buzz",
1052
- "groupDisplayName": "",
1053
- "pluralDisplayName": "Buzz",
1054
- "visibility": "NORMAL",
1055
- },
1056
- "typeClasses": [],
1057
- },
1058
- },
1059
- "type": "oneToMany",
1060
- },
1061
- "id": "fizz-to-buzz",
1062
- "redacted": false,
1063
- "status": {
1064
- "active": {},
1065
- "type": "active",
1066
- },
1067
- },
1068
- },
1069
- },
1070
- "objectTypes": {
1071
- "com.palantir.barObject": {
1072
- "datasources": [
1073
- {
1074
- "datasource": {
1075
- "datasetV2": {
1076
- "datasetRid": "com.palantir.barObject",
1077
- "propertyMapping": {
1078
- "bar": {
1079
- "column": "bar",
1080
- "type": "column",
1081
- },
1082
- },
1083
- },
1084
- "type": "datasetV2",
1085
- },
1086
- "datasourceName": "com.palantir.barObject",
1087
- "editsConfiguration": {
1088
- "onlyAllowPrivilegedEdits": false,
1089
- },
1090
- "redacted": false,
1091
- },
1092
- ],
1093
- "entityMetadata": {
1094
- "aliases": [],
1095
- "arePatchesEnabled": false,
1096
- },
1097
- "objectType": {
1098
- "allImplementsInterfaces": {},
1099
- "apiName": "com.palantir.barObject",
1100
- "displayMetadata": {
1101
- "description": undefined,
1102
- "displayName": "Bar",
1103
- "groupDisplayName": undefined,
1104
- "icon": {
1105
- "blueprint": {
1106
- "color": "#2D72D2",
1107
- "locator": "cube",
1108
- },
1109
- "type": "blueprint",
1110
- },
1111
- "pluralDisplayName": "Bar",
1112
- "visibility": "NORMAL",
1113
- },
1114
- "implementsInterfaces2": [],
1115
- "primaryKeys": [
1116
- "bar",
1117
- ],
1118
- "propertyTypes": {
1119
- "bar": {
1120
- "apiName": "bar",
1121
- "baseFormatter": undefined,
1122
- "dataConstraints": undefined,
1123
- "displayMetadata": {
1124
- "description": undefined,
1125
- "displayName": "Bar",
1126
- "visibility": "NORMAL",
1127
- },
1128
- "indexedForSearch": true,
1129
- "inlineAction": undefined,
1130
- "ruleSetBinding": undefined,
1131
- "sharedPropertyTypeApiName": undefined,
1132
- "sharedPropertyTypeRid": undefined,
1133
- "status": {
1134
- "active": {},
1135
- "type": "active",
1136
- },
1137
- "type": {
1138
- "string": {
1139
- "analyzerOverride": undefined,
1140
- "enableAsciiFolding": undefined,
1141
- "isLongText": false,
1142
- "supportsEfficientLeadingWildcard": false,
1143
- "supportsExactMatching": true,
1144
- },
1145
- "type": "string",
1146
- },
1147
- "typeClasses": [
1148
- {
1149
- "kind": "render_hint",
1150
- "name": "SELECTABLE",
1151
- },
1152
- {
1153
- "kind": "render_hint",
1154
- "name": "SORTABLE",
1155
- },
1156
- ],
1157
- "valueType": undefined,
1158
- },
1159
- },
1160
- "redacted": false,
1161
- "status": {
1162
- "active": {},
1163
- "type": "active",
1164
- },
1165
- "titlePropertyTypeRid": "bar",
1166
- },
1167
- "propertySecurityGroupPackagingVersion": {
1168
- "type": "v2",
1169
- "v2": {},
1170
- },
1171
- },
1172
- "com.palantir.buzzObject": {
1173
- "datasources": [
1174
- {
1175
- "datasource": {
1176
- "datasetV2": {
1177
- "datasetRid": "com.palantir.buzzObject",
1178
- "propertyMapping": {
1179
- "barBuzz": {
1180
- "column": "barBuzz",
1181
- "type": "column",
1182
- },
1183
- "buzz": {
1184
- "column": "buzz",
1185
- "type": "column",
1186
- },
1187
- "fizzBuzz": {
1188
- "column": "fizzBuzz",
1189
- "type": "column",
1190
- },
1191
- },
1192
- },
1193
- "type": "datasetV2",
1194
- },
1195
- "datasourceName": "com.palantir.buzzObject",
1196
- "editsConfiguration": {
1197
- "onlyAllowPrivilegedEdits": false,
1198
- },
1199
- "redacted": false,
1200
- },
1201
- ],
1202
- "entityMetadata": {
1203
- "aliases": [],
1204
- "arePatchesEnabled": false,
1205
- },
1206
- "objectType": {
1207
- "allImplementsInterfaces": {},
1208
- "apiName": "com.palantir.buzzObject",
1209
- "displayMetadata": {
1210
- "description": undefined,
1211
- "displayName": "Buzz",
1212
- "groupDisplayName": undefined,
1213
- "icon": {
1214
- "blueprint": {
1215
- "color": "#2D72D2",
1216
- "locator": "cube",
1217
- },
1218
- "type": "blueprint",
1219
- },
1220
- "pluralDisplayName": "Buzz",
1221
- "visibility": "NORMAL",
1222
- },
1223
- "implementsInterfaces2": [],
1224
- "primaryKeys": [
1225
- "buzz",
1226
- ],
1227
- "propertyTypes": {
1228
- "barBuzz": {
1229
- "apiName": "barBuzz",
1230
- "baseFormatter": undefined,
1231
- "dataConstraints": undefined,
1232
- "displayMetadata": {
1233
- "description": undefined,
1234
- "displayName": "BarBuzz",
1235
- "visibility": "NORMAL",
1236
- },
1237
- "indexedForSearch": true,
1238
- "inlineAction": undefined,
1239
- "ruleSetBinding": undefined,
1240
- "sharedPropertyTypeApiName": undefined,
1241
- "sharedPropertyTypeRid": undefined,
1242
- "status": {
1243
- "active": {},
1244
- "type": "active",
1245
- },
1246
- "type": {
1247
- "string": {
1248
- "analyzerOverride": undefined,
1249
- "enableAsciiFolding": undefined,
1250
- "isLongText": false,
1251
- "supportsEfficientLeadingWildcard": false,
1252
- "supportsExactMatching": true,
1253
- },
1254
- "type": "string",
1255
- },
1256
- "typeClasses": [
1257
- {
1258
- "kind": "render_hint",
1259
- "name": "SELECTABLE",
1260
- },
1261
- {
1262
- "kind": "render_hint",
1263
- "name": "SORTABLE",
1264
- },
1265
- ],
1266
- "valueType": undefined,
1267
- },
1268
- "buzz": {
1269
- "apiName": "buzz",
1270
- "baseFormatter": undefined,
1271
- "dataConstraints": undefined,
1272
- "displayMetadata": {
1273
- "description": undefined,
1274
- "displayName": "Buzz",
1275
- "visibility": "NORMAL",
1276
- },
1277
- "indexedForSearch": true,
1278
- "inlineAction": undefined,
1279
- "ruleSetBinding": undefined,
1280
- "sharedPropertyTypeApiName": undefined,
1281
- "sharedPropertyTypeRid": undefined,
1282
- "status": {
1283
- "active": {},
1284
- "type": "active",
1285
- },
1286
- "type": {
1287
- "string": {
1288
- "analyzerOverride": undefined,
1289
- "enableAsciiFolding": undefined,
1290
- "isLongText": false,
1291
- "supportsEfficientLeadingWildcard": false,
1292
- "supportsExactMatching": true,
1293
- },
1294
- "type": "string",
1295
- },
1296
- "typeClasses": [
1297
- {
1298
- "kind": "render_hint",
1299
- "name": "SELECTABLE",
1300
- },
1301
- {
1302
- "kind": "render_hint",
1303
- "name": "SORTABLE",
1304
- },
1305
- ],
1306
- "valueType": undefined,
1307
- },
1308
- "fizzBuzz": {
1309
- "apiName": "fizzBuzz",
1310
- "baseFormatter": undefined,
1311
- "dataConstraints": undefined,
1312
- "displayMetadata": {
1313
- "description": undefined,
1314
- "displayName": "FizzBuzz",
1315
- "visibility": "NORMAL",
1316
- },
1317
- "indexedForSearch": true,
1318
- "inlineAction": undefined,
1319
- "ruleSetBinding": undefined,
1320
- "sharedPropertyTypeApiName": undefined,
1321
- "sharedPropertyTypeRid": undefined,
1322
- "status": {
1323
- "active": {},
1324
- "type": "active",
1325
- },
1326
- "type": {
1327
- "string": {
1328
- "analyzerOverride": undefined,
1329
- "enableAsciiFolding": undefined,
1330
- "isLongText": false,
1331
- "supportsEfficientLeadingWildcard": false,
1332
- "supportsExactMatching": true,
1333
- },
1334
- "type": "string",
1335
- },
1336
- "typeClasses": [
1337
- {
1338
- "kind": "render_hint",
1339
- "name": "SELECTABLE",
1340
- },
1341
- {
1342
- "kind": "render_hint",
1343
- "name": "SORTABLE",
1344
- },
1345
- ],
1346
- "valueType": undefined,
1347
- },
1348
- },
1349
- "redacted": false,
1350
- "status": {
1351
- "active": {},
1352
- "type": "active",
1353
- },
1354
- "titlePropertyTypeRid": "buzz",
1355
- },
1356
- "propertySecurityGroupPackagingVersion": {
1357
- "type": "v2",
1358
- "v2": {},
1359
- },
1360
- },
1361
- "com.palantir.fizzObject": {
1362
- "datasources": [
1363
- {
1364
- "datasource": {
1365
- "datasetV2": {
1366
- "datasetRid": "com.palantir.fizzObject",
1367
- "propertyMapping": {
1368
- "fizz": {
1369
- "column": "fizz",
1370
- "type": "column",
1371
- },
1372
- },
1373
- },
1374
- "type": "datasetV2",
1375
- },
1376
- "datasourceName": "com.palantir.fizzObject",
1377
- "editsConfiguration": {
1378
- "onlyAllowPrivilegedEdits": false,
1379
- },
1380
- "redacted": false,
1381
- },
1382
- ],
1383
- "entityMetadata": {
1384
- "aliases": [],
1385
- "arePatchesEnabled": false,
1386
- },
1387
- "objectType": {
1388
- "allImplementsInterfaces": {},
1389
- "apiName": "com.palantir.fizzObject",
1390
- "displayMetadata": {
1391
- "description": undefined,
1392
- "displayName": "Fizz",
1393
- "groupDisplayName": undefined,
1394
- "icon": {
1395
- "blueprint": {
1396
- "color": "#2D72D2",
1397
- "locator": "cube",
1398
- },
1399
- "type": "blueprint",
1400
- },
1401
- "pluralDisplayName": "Fizz",
1402
- "visibility": "NORMAL",
1403
- },
1404
- "implementsInterfaces2": [],
1405
- "primaryKeys": [
1406
- "fizz",
1407
- ],
1408
- "propertyTypes": {
1409
- "fizz": {
1410
- "apiName": "fizz",
1411
- "baseFormatter": undefined,
1412
- "dataConstraints": undefined,
1413
- "displayMetadata": {
1414
- "description": undefined,
1415
- "displayName": "Fizz",
1416
- "visibility": "NORMAL",
1417
- },
1418
- "indexedForSearch": true,
1419
- "inlineAction": undefined,
1420
- "ruleSetBinding": undefined,
1421
- "sharedPropertyTypeApiName": undefined,
1422
- "sharedPropertyTypeRid": undefined,
1423
- "status": {
1424
- "active": {},
1425
- "type": "active",
1426
- },
1427
- "type": {
1428
- "string": {
1429
- "analyzerOverride": undefined,
1430
- "enableAsciiFolding": undefined,
1431
- "isLongText": false,
1432
- "supportsEfficientLeadingWildcard": false,
1433
- "supportsExactMatching": true,
1434
- },
1435
- "type": "string",
1436
- },
1437
- "typeClasses": [
1438
- {
1439
- "kind": "render_hint",
1440
- "name": "SELECTABLE",
1441
- },
1442
- {
1443
- "kind": "render_hint",
1444
- "name": "SORTABLE",
1445
- },
1446
- ],
1447
- "valueType": undefined,
1448
- },
1449
- },
1450
- "redacted": false,
1451
- "status": {
1452
- "active": {},
1453
- "type": "active",
1454
- },
1455
- "titlePropertyTypeRid": "fizz",
1456
- },
1457
- "propertySecurityGroupPackagingVersion": {
1458
- "type": "v2",
1459
- "v2": {},
1460
- },
1461
- },
1462
- },
1463
- "sharedPropertyTypes": {},
1464
- }
1465
- `);
1466
- });
1467
- it("Minimal link definitions are properly defined", () => {
1468
- const object = defineObject({
1469
- titlePropertyApiName: "bar",
1470
- displayName: "Foo",
1471
- pluralDisplayName: "Foo",
1472
- apiName: "foo",
1473
- primaryKeyPropertyApiName: "bar",
1474
- properties: {
1475
- "bar": {
1476
- type: "string"
1477
- }
1478
- }
1479
- });
1480
- const otherObject = defineObject({
1481
- titlePropertyApiName: "fizz",
1482
- displayName: "Fizz",
1483
- pluralDisplayName: "Fizz",
1484
- apiName: "fizz",
1485
- primaryKeyPropertyApiName: "fizz",
1486
- properties: {
1487
- "fizz": {
1488
- type: "string"
1489
- },
1490
- "bar": {
1491
- type: "string"
1492
- }
1493
- }
1494
- });
1495
- defineLink({
1496
- apiName: "fizzToFoo",
1497
- one: {
1498
- object: object,
1499
- metadata: {
1500
- apiName: "fizzes"
1501
- }
1502
- },
1503
- toMany: {
1504
- object: otherObject,
1505
- metadata: {
1506
- apiName: "foos"
1507
- }
1508
- },
1509
- manyForeignKeyProperty: "bar"
1510
- });
1511
- expect(dumpOntologyFullMetadata().ontology).toMatchInlineSnapshot(`
1512
- {
1513
- "actionTypes": {},
1514
- "blockPermissionInformation": {
1515
- "actionTypes": {},
1516
- "linkTypes": {},
1517
- "objectTypes": {},
1518
- },
1519
- "interfaceTypes": {},
1520
- "linkTypes": {
1521
- "fizz-to-foo": {
1522
- "datasources": [],
1523
- "entityMetadata": {
1524
- "arePatchesEnabled": false,
1525
- },
1526
- "linkType": {
1527
- "definition": {
1528
- "oneToMany": {
1529
- "cardinalityHint": "ONE_TO_MANY",
1530
- "manyToOneLinkMetadata": {
1531
- "apiName": "foos",
1532
- "displayMetadata": {
1533
- "displayName": "Foos",
1534
- "groupDisplayName": "",
1535
- "pluralDisplayName": "Foos",
1536
- "visibility": "NORMAL",
1537
- },
1538
- "typeClasses": [],
1539
- },
1540
- "objectTypeRidManySide": "com.palantir.fizz",
1541
- "objectTypeRidOneSide": "com.palantir.foo",
1542
- "oneSidePrimaryKeyToManySidePropertyMapping": [
1543
- {
1544
- "from": {
1545
- "apiName": "bar",
1546
- "object": "com.palantir.foo",
1547
- },
1548
- "to": {
1549
- "apiName": "bar",
1550
- "object": "com.palantir.fizz",
1551
- },
1552
- },
1553
- ],
1554
- "oneToManyLinkMetadata": {
1555
- "apiName": "fizzes",
1556
- "displayMetadata": {
1557
- "displayName": "Fizzes",
1558
- "groupDisplayName": "",
1559
- "pluralDisplayName": "Fizzes",
1560
- "visibility": "NORMAL",
1561
- },
1562
- "typeClasses": [],
1563
- },
1564
- },
1565
- "type": "oneToMany",
1566
- },
1567
- "id": "fizz-to-foo",
1568
- "redacted": false,
1569
- "status": {
1570
- "active": {},
1571
- "type": "active",
1572
- },
1573
- },
1574
- },
1575
- },
1576
- "objectTypes": {
1577
- "com.palantir.fizz": {
1578
- "datasources": [
1579
- {
1580
- "datasource": {
1581
- "datasetV2": {
1582
- "datasetRid": "com.palantir.fizz",
1583
- "propertyMapping": {
1584
- "bar": {
1585
- "column": "bar",
1586
- "type": "column",
1587
- },
1588
- "fizz": {
1589
- "column": "fizz",
1590
- "type": "column",
1591
- },
1592
- },
1593
- },
1594
- "type": "datasetV2",
1595
- },
1596
- "datasourceName": "com.palantir.fizz",
1597
- "editsConfiguration": {
1598
- "onlyAllowPrivilegedEdits": false,
1599
- },
1600
- "redacted": false,
1601
- },
1602
- ],
1603
- "entityMetadata": {
1604
- "aliases": [],
1605
- "arePatchesEnabled": false,
1606
- },
1607
- "objectType": {
1608
- "allImplementsInterfaces": {},
1609
- "apiName": "com.palantir.fizz",
1610
- "displayMetadata": {
1611
- "description": undefined,
1612
- "displayName": "Fizz",
1613
- "groupDisplayName": undefined,
1614
- "icon": {
1615
- "blueprint": {
1616
- "color": "#2D72D2",
1617
- "locator": "cube",
1618
- },
1619
- "type": "blueprint",
1620
- },
1621
- "pluralDisplayName": "Fizz",
1622
- "visibility": "NORMAL",
1623
- },
1624
- "implementsInterfaces2": [],
1625
- "primaryKeys": [
1626
- "fizz",
1627
- ],
1628
- "propertyTypes": {
1629
- "bar": {
1630
- "apiName": "bar",
1631
- "baseFormatter": undefined,
1632
- "dataConstraints": undefined,
1633
- "displayMetadata": {
1634
- "description": undefined,
1635
- "displayName": "Bar",
1636
- "visibility": "NORMAL",
1637
- },
1638
- "indexedForSearch": true,
1639
- "inlineAction": undefined,
1640
- "ruleSetBinding": undefined,
1641
- "sharedPropertyTypeApiName": undefined,
1642
- "sharedPropertyTypeRid": undefined,
1643
- "status": {
1644
- "active": {},
1645
- "type": "active",
1646
- },
1647
- "type": {
1648
- "string": {
1649
- "analyzerOverride": undefined,
1650
- "enableAsciiFolding": undefined,
1651
- "isLongText": false,
1652
- "supportsEfficientLeadingWildcard": false,
1653
- "supportsExactMatching": true,
1654
- },
1655
- "type": "string",
1656
- },
1657
- "typeClasses": [
1658
- {
1659
- "kind": "render_hint",
1660
- "name": "SELECTABLE",
1661
- },
1662
- {
1663
- "kind": "render_hint",
1664
- "name": "SORTABLE",
1665
- },
1666
- ],
1667
- "valueType": undefined,
1668
- },
1669
- "fizz": {
1670
- "apiName": "fizz",
1671
- "baseFormatter": undefined,
1672
- "dataConstraints": undefined,
1673
- "displayMetadata": {
1674
- "description": undefined,
1675
- "displayName": "Fizz",
1676
- "visibility": "NORMAL",
1677
- },
1678
- "indexedForSearch": true,
1679
- "inlineAction": undefined,
1680
- "ruleSetBinding": undefined,
1681
- "sharedPropertyTypeApiName": undefined,
1682
- "sharedPropertyTypeRid": undefined,
1683
- "status": {
1684
- "active": {},
1685
- "type": "active",
1686
- },
1687
- "type": {
1688
- "string": {
1689
- "analyzerOverride": undefined,
1690
- "enableAsciiFolding": undefined,
1691
- "isLongText": false,
1692
- "supportsEfficientLeadingWildcard": false,
1693
- "supportsExactMatching": true,
1694
- },
1695
- "type": "string",
1696
- },
1697
- "typeClasses": [
1698
- {
1699
- "kind": "render_hint",
1700
- "name": "SELECTABLE",
1701
- },
1702
- {
1703
- "kind": "render_hint",
1704
- "name": "SORTABLE",
1705
- },
1706
- ],
1707
- "valueType": undefined,
1708
- },
1709
- },
1710
- "redacted": false,
1711
- "status": {
1712
- "active": {},
1713
- "type": "active",
1714
- },
1715
- "titlePropertyTypeRid": "fizz",
1716
- },
1717
- "propertySecurityGroupPackagingVersion": {
1718
- "type": "v2",
1719
- "v2": {},
1720
- },
1721
- },
1722
- "com.palantir.foo": {
1723
- "datasources": [
1724
- {
1725
- "datasource": {
1726
- "datasetV2": {
1727
- "datasetRid": "com.palantir.foo",
1728
- "propertyMapping": {
1729
- "bar": {
1730
- "column": "bar",
1731
- "type": "column",
1732
- },
1733
- },
1734
- },
1735
- "type": "datasetV2",
1736
- },
1737
- "datasourceName": "com.palantir.foo",
1738
- "editsConfiguration": {
1739
- "onlyAllowPrivilegedEdits": false,
1740
- },
1741
- "redacted": false,
1742
- },
1743
- ],
1744
- "entityMetadata": {
1745
- "aliases": [],
1746
- "arePatchesEnabled": false,
1747
- },
1748
- "objectType": {
1749
- "allImplementsInterfaces": {},
1750
- "apiName": "com.palantir.foo",
1751
- "displayMetadata": {
1752
- "description": undefined,
1753
- "displayName": "Foo",
1754
- "groupDisplayName": undefined,
1755
- "icon": {
1756
- "blueprint": {
1757
- "color": "#2D72D2",
1758
- "locator": "cube",
1759
- },
1760
- "type": "blueprint",
1761
- },
1762
- "pluralDisplayName": "Foo",
1763
- "visibility": "NORMAL",
1764
- },
1765
- "implementsInterfaces2": [],
1766
- "primaryKeys": [
1767
- "bar",
1768
- ],
1769
- "propertyTypes": {
1770
- "bar": {
1771
- "apiName": "bar",
1772
- "baseFormatter": undefined,
1773
- "dataConstraints": undefined,
1774
- "displayMetadata": {
1775
- "description": undefined,
1776
- "displayName": "Bar",
1777
- "visibility": "NORMAL",
1778
- },
1779
- "indexedForSearch": true,
1780
- "inlineAction": undefined,
1781
- "ruleSetBinding": undefined,
1782
- "sharedPropertyTypeApiName": undefined,
1783
- "sharedPropertyTypeRid": undefined,
1784
- "status": {
1785
- "active": {},
1786
- "type": "active",
1787
- },
1788
- "type": {
1789
- "string": {
1790
- "analyzerOverride": undefined,
1791
- "enableAsciiFolding": undefined,
1792
- "isLongText": false,
1793
- "supportsEfficientLeadingWildcard": false,
1794
- "supportsExactMatching": true,
1795
- },
1796
- "type": "string",
1797
- },
1798
- "typeClasses": [
1799
- {
1800
- "kind": "render_hint",
1801
- "name": "SELECTABLE",
1802
- },
1803
- {
1804
- "kind": "render_hint",
1805
- "name": "SORTABLE",
1806
- },
1807
- ],
1808
- "valueType": undefined,
1809
- },
1810
- },
1811
- "redacted": false,
1812
- "status": {
1813
- "active": {},
1814
- "type": "active",
1815
- },
1816
- "titlePropertyTypeRid": "bar",
1817
- },
1818
- "propertySecurityGroupPackagingVersion": {
1819
- "type": "v2",
1820
- "v2": {},
1821
- },
1822
- },
1823
- },
1824
- "sharedPropertyTypes": {},
1825
- }
1826
- `);
1827
- });
1828
- });
1829
- describe("ILTs", () => {
1830
- let a;
1831
- let b;
1832
- beforeEach(() => {
1833
- a = defineInterface({
1834
- apiName: "A"
1835
- });
1836
- b = defineInterface({
1837
- apiName: "B"
1838
- });
1839
- });
1840
- it("single link works", () => {
1841
- expect(a).not.toBeUndefined();
1842
- defineInterfaceLinkConstraint({
1843
- from: a,
1844
- toOne: b,
1845
- apiName: "singleLink"
1846
- });
1847
- expect(dumpOntologyFullMetadata().ontology).toMatchInlineSnapshot(`
1848
- {
1849
- "actionTypes": {},
1850
- "blockPermissionInformation": {
1851
- "actionTypes": {},
1852
- "linkTypes": {},
1853
- "objectTypes": {},
1854
- },
1855
- "interfaceTypes": {
1856
- "com.palantir.A": {
1857
- "interfaceType": {
1858
- "apiName": "com.palantir.A",
1859
- "displayMetadata": {
1860
- "description": "A",
1861
- "displayName": "A",
1862
- "icon": {
1863
- "blueprint": {
1864
- "color": "#4C90F0",
1865
- "locator": "layout-hierarchy",
1866
- },
1867
- "type": "blueprint",
1868
- },
1869
- },
1870
- "extendsInterfaces": [],
1871
- "links": [
1872
- {
1873
- "cardinality": "SINGLE",
1874
- "linkedEntityTypeId": {
1875
- "interfaceType": "com.palantir.B",
1876
- "type": "interfaceType",
1877
- },
1878
- "metadata": {
1879
- "apiName": "com.palantir.singleLink",
1880
- "description": "singleLink",
1881
- "displayName": "singleLink",
1882
- },
1883
- "required": true,
1884
- },
1885
- ],
1886
- "properties": [],
1887
- "propertiesV2": {},
1888
- "propertiesV3": {},
1889
- "searchable": true,
1890
- "status": {
1891
- "active": {},
1892
- "type": "active",
1893
- },
1894
- },
1895
- },
1896
- "com.palantir.B": {
1897
- "interfaceType": {
1898
- "apiName": "com.palantir.B",
1899
- "displayMetadata": {
1900
- "description": "B",
1901
- "displayName": "B",
1902
- "icon": {
1903
- "blueprint": {
1904
- "color": "#4C90F0",
1905
- "locator": "layout-hierarchy",
1906
- },
1907
- "type": "blueprint",
1908
- },
1909
- },
1910
- "extendsInterfaces": [],
1911
- "links": [],
1912
- "properties": [],
1913
- "propertiesV2": {},
1914
- "propertiesV3": {},
1915
- "searchable": true,
1916
- "status": {
1917
- "active": {},
1918
- "type": "active",
1919
- },
1920
- },
1921
- },
1922
- },
1923
- "linkTypes": {},
1924
- "objectTypes": {},
1925
- "sharedPropertyTypes": {},
1926
- }
1927
- `);
1928
- });
1929
- it("many link works", () => {
1930
- defineInterfaceLinkConstraint({
1931
- from: a,
1932
- toMany: b,
1933
- apiName: "manyLink"
1934
- });
1935
- expect(dumpOntologyFullMetadata().ontology).toMatchInlineSnapshot(`
1936
- {
1937
- "actionTypes": {},
1938
- "blockPermissionInformation": {
1939
- "actionTypes": {},
1940
- "linkTypes": {},
1941
- "objectTypes": {},
1942
- },
1943
- "interfaceTypes": {
1944
- "com.palantir.A": {
1945
- "interfaceType": {
1946
- "apiName": "com.palantir.A",
1947
- "displayMetadata": {
1948
- "description": "A",
1949
- "displayName": "A",
1950
- "icon": {
1951
- "blueprint": {
1952
- "color": "#4C90F0",
1953
- "locator": "layout-hierarchy",
1954
- },
1955
- "type": "blueprint",
1956
- },
1957
- },
1958
- "extendsInterfaces": [],
1959
- "links": [
1960
- {
1961
- "cardinality": "MANY",
1962
- "linkedEntityTypeId": {
1963
- "interfaceType": "com.palantir.B",
1964
- "type": "interfaceType",
1965
- },
1966
- "metadata": {
1967
- "apiName": "com.palantir.manyLink",
1968
- "description": "manyLink",
1969
- "displayName": "manyLink",
1970
- },
1971
- "required": true,
1972
- },
1973
- ],
1974
- "properties": [],
1975
- "propertiesV2": {},
1976
- "propertiesV3": {},
1977
- "searchable": true,
1978
- "status": {
1979
- "active": {},
1980
- "type": "active",
1981
- },
1982
- },
1983
- },
1984
- "com.palantir.B": {
1985
- "interfaceType": {
1986
- "apiName": "com.palantir.B",
1987
- "displayMetadata": {
1988
- "description": "B",
1989
- "displayName": "B",
1990
- "icon": {
1991
- "blueprint": {
1992
- "color": "#4C90F0",
1993
- "locator": "layout-hierarchy",
1994
- },
1995
- "type": "blueprint",
1996
- },
1997
- },
1998
- "extendsInterfaces": [],
1999
- "links": [],
2000
- "properties": [],
2001
- "propertiesV2": {},
2002
- "propertiesV3": {},
2003
- "searchable": true,
2004
- "status": {
2005
- "active": {},
2006
- "type": "active",
2007
- },
2008
- },
2009
- },
2010
- },
2011
- "linkTypes": {},
2012
- "objectTypes": {},
2013
- "sharedPropertyTypes": {},
2014
- }
2015
- `);
2016
- });
2017
- });
2018
- });
2019
- //# sourceMappingURL=links.test.js.map