@osdk/maker 0.12.0-beta.8 → 0.12.0-beta.9

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 (40) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +88 -62
  3. package/build/browser/api/defineAction.js +91 -78
  4. package/build/browser/api/defineAction.js.map +1 -1
  5. package/build/browser/api/defineLink.js +2 -2
  6. package/build/browser/api/defineLink.js.map +1 -1
  7. package/build/browser/api/defineObject.js +6 -2
  8. package/build/browser/api/defineObject.js.map +1 -1
  9. package/build/browser/api/defineOntology.js +2 -2
  10. package/build/browser/api/defineOntology.js.map +1 -1
  11. package/build/browser/api/overall.test.js +1123 -452
  12. package/build/browser/api/overall.test.js.map +1 -1
  13. package/build/browser/api/types.js.map +1 -1
  14. package/build/browser/cli/main.js +1 -1
  15. package/build/browser/index.js.map +1 -1
  16. package/build/cjs/index.cjs +100 -84
  17. package/build/cjs/index.cjs.map +1 -1
  18. package/build/cjs/index.d.cts +23 -14
  19. package/build/esm/api/defineAction.js +91 -78
  20. package/build/esm/api/defineAction.js.map +1 -1
  21. package/build/esm/api/defineLink.js +2 -2
  22. package/build/esm/api/defineLink.js.map +1 -1
  23. package/build/esm/api/defineObject.js +6 -2
  24. package/build/esm/api/defineObject.js.map +1 -1
  25. package/build/esm/api/defineOntology.js +2 -2
  26. package/build/esm/api/defineOntology.js.map +1 -1
  27. package/build/esm/api/overall.test.js +1123 -452
  28. package/build/esm/api/overall.test.js.map +1 -1
  29. package/build/esm/api/types.js.map +1 -1
  30. package/build/esm/cli/main.js +1 -1
  31. package/build/esm/index.js.map +1 -1
  32. package/build/types/api/defineAction.d.ts +6 -6
  33. package/build/types/api/defineAction.d.ts.map +1 -1
  34. package/build/types/api/defineObject.d.ts +2 -2
  35. package/build/types/api/defineObject.d.ts.map +1 -1
  36. package/build/types/api/types.d.ts +15 -6
  37. package/build/types/api/types.d.ts.map +1 -1
  38. package/build/types/index.d.ts +1 -1
  39. package/build/types/index.d.ts.map +1 -1
  40. package/package.json +4 -4
@@ -5479,27 +5479,12 @@ describe("Ontology Defining", () => {
5479
5479
  "bar": {
5480
5480
  type: "parameterId",
5481
5481
  parameterId: "param1"
5482
- },
5483
- "foo": {
5484
- type: "parameterId",
5485
- parameterId: "param2"
5486
5482
  }
5487
5483
  },
5488
5484
  structFieldValues: {}
5489
5485
  }
5490
5486
  }],
5491
5487
  parameters: [{
5492
- id: "param2",
5493
- displayName: "param2",
5494
- type: "string",
5495
- validation: {
5496
- required: true,
5497
- allowedValues: {
5498
- type: "text"
5499
- },
5500
- defaultVisibility: "editable"
5501
- }
5502
- }, {
5503
5488
  id: "param1",
5504
5489
  displayName: "param1",
5505
5490
  type: "boolean",
@@ -5512,21 +5497,8 @@ describe("Ontology Defining", () => {
5512
5497
  conditionalOverrides: [{
5513
5498
  type: "visibility",
5514
5499
  condition: {
5515
- type: "and",
5516
- conditions: [{
5517
- type: "group",
5518
- name: "myGroup"
5519
- }, {
5520
- type: "parameter",
5521
- parameterId: "param2",
5522
- matches: {
5523
- type: "staticValue",
5524
- staticValue: {
5525
- type: "string",
5526
- string: "foobar"
5527
- }
5528
- }
5529
- }]
5500
+ type: "group",
5501
+ name: "myGroup"
5530
5502
  }
5531
5503
  }]
5532
5504
  }
@@ -5561,10 +5533,6 @@ describe("Ontology Defining", () => {
5561
5533
  "parameterId": "param1",
5562
5534
  "type": "parameterId",
5563
5535
  },
5564
- "foo": {
5565
- "parameterId": "param2",
5566
- "type": "parameterId",
5567
- },
5568
5536
  },
5569
5537
  "structFieldValues": {},
5570
5538
  },
@@ -5622,58 +5590,34 @@ describe("Ontology Defining", () => {
5622
5590
  "conditionalOverrides": [
5623
5591
  {
5624
5592
  "condition": {
5625
- "and": {
5626
- "conditions": [
5627
- {
5628
- "comparison": {
5629
- "left": {
5630
- "type": "userProperty",
5631
- "userProperty": {
5632
- "propertyValue": {
5633
- "groupIds": {},
5634
- "type": "groupIds",
5635
- },
5636
- "userId": {
5637
- "currentUser": {},
5638
- "type": "currentUser",
5639
- },
5640
- },
5641
- },
5642
- "operator": "INTERSECTS",
5643
- "right": {
5644
- "staticValue": {
5645
- "stringList": {
5646
- "strings": [
5647
- "myGroup",
5648
- ],
5649
- },
5650
- "type": "stringList",
5651
- },
5652
- "type": "staticValue",
5653
- },
5593
+ "comparison": {
5594
+ "left": {
5595
+ "type": "userProperty",
5596
+ "userProperty": {
5597
+ "propertyValue": {
5598
+ "groupIds": {},
5599
+ "type": "groupIds",
5600
+ },
5601
+ "userId": {
5602
+ "currentUser": {},
5603
+ "type": "currentUser",
5654
5604
  },
5655
- "type": "comparison",
5656
5605
  },
5657
- {
5658
- "comparison": {
5659
- "left": {
5660
- "parameterId": "param2",
5661
- "type": "parameterId",
5662
- },
5663
- "operator": "EQUALS",
5664
- "right": {
5665
- "staticValue": {
5666
- "string": "foobar",
5667
- "type": "string",
5668
- },
5669
- "type": "staticValue",
5670
- },
5606
+ },
5607
+ "operator": "INTERSECTS",
5608
+ "right": {
5609
+ "staticValue": {
5610
+ "stringList": {
5611
+ "strings": [
5612
+ "myGroup",
5613
+ ],
5671
5614
  },
5672
- "type": "comparison",
5615
+ "type": "stringList",
5673
5616
  },
5674
- ],
5617
+ "type": "staticValue",
5618
+ },
5675
5619
  },
5676
- "type": "and",
5620
+ "type": "comparison",
5677
5621
  },
5678
5622
  "parameterBlockOverrides": [
5679
5623
  {
@@ -5714,34 +5658,6 @@ describe("Ontology Defining", () => {
5714
5658
  },
5715
5659
  },
5716
5660
  },
5717
- "param2": {
5718
- "conditionalOverrides": [],
5719
- "defaultValidation": {
5720
- "display": {
5721
- "renderHint": {
5722
- "textInput": {},
5723
- "type": "textInput",
5724
- },
5725
- "visibility": {
5726
- "editable": {},
5727
- "type": "editable",
5728
- },
5729
- },
5730
- "validation": {
5731
- "allowedValues": {
5732
- "text": {
5733
- "text": {},
5734
- "type": "text",
5735
- },
5736
- "type": "text",
5737
- },
5738
- "required": {
5739
- "required": {},
5740
- "type": "required",
5741
- },
5742
- },
5743
- },
5744
- },
5745
5661
  },
5746
5662
  },
5747
5663
  },
@@ -5781,7 +5697,6 @@ describe("Ontology Defining", () => {
5781
5697
  },
5782
5698
  "formContentOrdering": [],
5783
5699
  "parameterOrdering": [
5784
- "param2",
5785
5700
  "param1",
5786
5701
  "objectToModifyParameter",
5787
5702
  ],
@@ -5810,18 +5725,6 @@ describe("Ontology Defining", () => {
5810
5725
  "type": "boolean",
5811
5726
  },
5812
5727
  },
5813
- "param2": {
5814
- "displayMetadata": {
5815
- "description": "",
5816
- "displayName": "param2",
5817
- "typeClasses": [],
5818
- },
5819
- "id": "param2",
5820
- "type": {
5821
- "string": {},
5822
- "type": "string",
5823
- },
5824
- },
5825
5728
  },
5826
5729
  "sections": {},
5827
5730
  "status": {
@@ -5852,263 +5755,36 @@ describe("Ontology Defining", () => {
5852
5755
  }
5853
5756
  `);
5854
5757
  });
5855
- it("Parameter conditions are correctly validated on actions", () => {
5856
- expect(() => defineAction({
5857
- apiName: "foo",
5858
- displayName: "exampleAction",
5859
- status: "active",
5860
- rules: [{
5861
- type: "modifyObjectRule",
5862
- modifyObjectRule: {
5863
- objectToModify: "objectToModifyParameter",
5864
- propertyValues: {
5865
- "bar": {
5866
- type: "parameterId",
5867
- parameterId: "param1"
5868
- },
5869
- "foo": {
5870
- type: "parameterId",
5871
- parameterId: "param2"
5872
- }
5873
- },
5874
- structFieldValues: {}
5875
- }
5876
- }],
5877
- parameters: [{
5878
- id: "param1",
5879
- displayName: "param1",
5880
- type: "boolean",
5881
- validation: {
5882
- required: true,
5883
- allowedValues: {
5884
- type: "boolean"
5885
- },
5886
- defaultVisibility: "editable",
5887
- conditionalOverrides: [{
5888
- type: "visibility",
5889
- condition: {
5890
- type: "and",
5891
- conditions: [{
5892
- type: "group",
5893
- name: "myGroup"
5894
- }, {
5895
- type: "parameter",
5896
- parameterId: "param2",
5897
- matches: {
5898
- type: "staticValue",
5899
- staticValue: {
5900
- type: "string",
5901
- string: "foobar"
5902
- }
5903
- }
5904
- }]
5905
- }
5906
- }]
5907
- }
5908
- }, {
5909
- id: "param2",
5910
- displayName: "param2",
5911
- type: "string",
5912
- validation: {
5913
- required: true,
5914
- allowedValues: {
5915
- type: "text"
5916
- },
5917
- defaultVisibility: "editable"
5918
- }
5919
- }, {
5920
- id: "objectToModifyParameter",
5921
- displayName: "objectToModifyParameter",
5922
- type: "objectTypeReference",
5923
- validation: {
5924
- required: true,
5925
- allowedValues: {
5926
- type: "objectTypeReference",
5927
- interfaceTypes: []
5928
- },
5929
- defaultVisibility: "editable"
5930
- }
5931
- }]
5932
- })).toThrowError(`Invariant failed: Parameter condition on param1 is referencing later parameter param2`);
5933
- expect(() => defineAction({
5758
+ it("Simple concrete actions are properly defined", () => {
5759
+ const exampleObjectType = defineObject({
5760
+ titlePropertyApiName: "bar",
5761
+ displayName: "exampleObjectType",
5762
+ pluralDisplayName: "exampleObjectTypes",
5934
5763
  apiName: "foo",
5935
- displayName: "exampleAction",
5936
- status: "active",
5937
- rules: [{
5938
- type: "modifyObjectRule",
5939
- modifyObjectRule: {
5940
- objectToModify: "objectToModifyParameter",
5941
- propertyValues: {
5942
- "bar": {
5943
- type: "parameterId",
5944
- parameterId: "param1"
5945
- },
5946
- "foo": {
5947
- type: "parameterId",
5948
- parameterId: "param2"
5949
- }
5950
- },
5951
- structFieldValues: {}
5952
- }
5953
- }],
5954
- parameters: [{
5955
- id: "param1",
5956
- displayName: "param1",
5957
- type: "boolean",
5958
- validation: {
5959
- required: true,
5960
- allowedValues: {
5961
- type: "boolean"
5962
- },
5963
- defaultVisibility: "editable",
5964
- conditionalOverrides: [{
5965
- type: "visibility",
5966
- condition: {
5967
- type: "and",
5968
- conditions: [{
5969
- type: "group",
5970
- name: "myGroup"
5971
- }, {
5972
- type: "parameter",
5973
- parameterId: "param1",
5974
- matches: {
5975
- type: "staticValue",
5976
- staticValue: {
5977
- type: "string",
5978
- string: "foobar"
5979
- }
5980
- }
5981
- }]
5764
+ primaryKeyPropertyApiName: "bar",
5765
+ properties: {
5766
+ "bar": {
5767
+ type: "string"
5768
+ },
5769
+ "structProp": {
5770
+ type: {
5771
+ type: "struct",
5772
+ structDefinition: {
5773
+ simpleProperty: "string"
5982
5774
  }
5983
- }]
5984
- }
5985
- }, {
5986
- id: "param2",
5987
- displayName: "param2",
5988
- type: "string",
5989
- validation: {
5990
- required: true,
5991
- allowedValues: {
5992
- type: "text"
5993
- },
5994
- defaultVisibility: "editable"
5995
- }
5996
- }, {
5997
- id: "objectToModifyParameter",
5998
- displayName: "objectToModifyParameter",
5999
- type: "objectTypeReference",
6000
- validation: {
6001
- required: true,
6002
- allowedValues: {
6003
- type: "objectTypeReference",
6004
- interfaceTypes: []
6005
- },
6006
- defaultVisibility: "editable"
6007
- }
6008
- }]
6009
- })).toThrowError(`Invariant failed: Parameter condition on param1 is referencing itself`);
6010
- expect(() => defineAction({
6011
- apiName: "foo",
6012
- displayName: "exampleAction",
6013
- status: "active",
6014
- rules: [{
6015
- type: "modifyObjectRule",
6016
- modifyObjectRule: {
6017
- objectToModify: "objectToModifyParameter",
6018
- propertyValues: {
6019
- "bar": {
6020
- type: "parameterId",
6021
- parameterId: "param1"
6022
- },
6023
- "foo": {
6024
- type: "parameterId",
6025
- parameterId: "param2"
6026
- }
6027
- },
6028
- structFieldValues: {}
6029
- }
6030
- }],
6031
- parameters: [{
6032
- id: "param1",
6033
- displayName: "param1",
6034
- type: "boolean",
6035
- validation: {
6036
- required: true,
6037
- allowedValues: {
6038
- type: "boolean"
6039
- },
6040
- defaultVisibility: "editable",
6041
- conditionalOverrides: [{
6042
- type: "visibility",
6043
- condition: {
6044
- type: "and",
6045
- conditions: [{
6046
- type: "group",
6047
- name: "myGroup"
6048
- }, {
6049
- type: "parameter",
6050
- parameterId: "unknownParam",
6051
- matches: {
6052
- type: "staticValue",
6053
- staticValue: {
6054
- type: "string",
6055
- string: "foobar"
6056
- }
6057
- }
6058
- }]
6059
- }
6060
- }]
6061
- }
6062
- }, {
6063
- id: "param2",
6064
- displayName: "param2",
6065
- type: "string",
6066
- validation: {
6067
- required: true,
6068
- allowedValues: {
6069
- type: "text"
6070
- },
6071
- defaultVisibility: "editable"
6072
- }
6073
- }, {
6074
- id: "objectToModifyParameter",
6075
- displayName: "objectToModifyParameter",
6076
- type: "objectTypeReference",
6077
- validation: {
6078
- required: true,
6079
- allowedValues: {
6080
- type: "objectTypeReference",
6081
- interfaceTypes: []
6082
- },
6083
- defaultVisibility: "editable"
6084
- }
6085
- }]
6086
- })).toThrowError(`Invariant failed: Parameter condition on param1 is referencing unknown parameter unknownParam`);
6087
- });
6088
- it("Simple concrete actions are properly defined", () => {
6089
- const exampleObjectType = defineObject({
6090
- titlePropertyApiName: "bar",
6091
- displayName: "exampleObjectType",
6092
- pluralDisplayName: "exampleObjectTypes",
6093
- apiName: "foo",
6094
- primaryKeyPropertyApiName: "bar",
6095
- properties: {
6096
- "bar": {
6097
- type: "string"
6098
- },
6099
- "structProp": {
6100
- type: {
6101
- type: "struct",
6102
- structDefinition: {
6103
- simpleProperty: "string"
6104
- }
6105
- }
5775
+ }
6106
5776
  }
6107
5777
  }
6108
5778
  });
6109
- defineCreateObjectAction(exampleObjectType);
6110
- defineModifyObjectAction(exampleObjectType);
6111
- defineDeleteObjectAction(exampleObjectType);
5779
+ defineCreateObjectAction({
5780
+ objectType: exampleObjectType
5781
+ });
5782
+ defineModifyObjectAction({
5783
+ objectType: exampleObjectType
5784
+ });
5785
+ defineDeleteObjectAction({
5786
+ objectType: exampleObjectType
5787
+ });
6112
5788
  expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
6113
5789
  {
6114
5790
  "blockData": {
@@ -6389,14 +6065,885 @@ describe("Ontology Defining", () => {
6389
6065
  "true": {},
6390
6066
  "type": "true",
6391
6067
  },
6392
- "displayMetadata": {
6393
- "failureMessage": "",
6394
- "typeClasses": [],
6068
+ "displayMetadata": {
6069
+ "failureMessage": "",
6070
+ "typeClasses": [],
6071
+ },
6072
+ },
6073
+ },
6074
+ },
6075
+ "parameterValidations": {
6076
+ "objectToModifyParameter": {
6077
+ "conditionalOverrides": [],
6078
+ "defaultValidation": {
6079
+ "display": {
6080
+ "renderHint": {
6081
+ "dropdown": {},
6082
+ "type": "dropdown",
6083
+ },
6084
+ "visibility": {
6085
+ "editable": {},
6086
+ "type": "editable",
6087
+ },
6088
+ },
6089
+ "validation": {
6090
+ "allowedValues": {
6091
+ "objectQuery": {
6092
+ "objectQuery": {},
6093
+ "type": "objectQuery",
6094
+ },
6095
+ "type": "objectQuery",
6096
+ },
6097
+ "required": {
6098
+ "required": {},
6099
+ "type": "required",
6100
+ },
6101
+ },
6102
+ },
6103
+ },
6104
+ },
6105
+ },
6106
+ },
6107
+ "metadata": {
6108
+ "apiName": "com.palantir.modify-object-foo",
6109
+ "displayMetadata": {
6110
+ "configuration": {
6111
+ "defaultLayout": "FORM",
6112
+ "displayAndFormat": {
6113
+ "table": {
6114
+ "columnWidthByParameterRid": {},
6115
+ "enableFileImport": true,
6116
+ "fitHorizontally": false,
6117
+ "frozenColumnCount": 0,
6118
+ "rowHeightInLines": 1,
6119
+ },
6120
+ },
6121
+ "enableLayoutUserSwitch": false,
6122
+ },
6123
+ "description": "",
6124
+ "displayName": "Modify exampleObjectType",
6125
+ "icon": {
6126
+ "blueprint": {
6127
+ "color": "#000000",
6128
+ "locator": "edit",
6129
+ },
6130
+ "type": "blueprint",
6131
+ },
6132
+ "successMessage": [],
6133
+ "typeClasses": [],
6134
+ },
6135
+ "entities": {
6136
+ "affectedInterfaceTypes": [],
6137
+ "affectedLinkTypes": [],
6138
+ "affectedObjectTypes": [
6139
+ "com.palantir.foo",
6140
+ ],
6141
+ "typeGroups": [],
6142
+ },
6143
+ "formContentOrdering": [],
6144
+ "parameterOrdering": [
6145
+ "objectToModifyParameter",
6146
+ ],
6147
+ "parameters": {
6148
+ "objectToModifyParameter": {
6149
+ "displayMetadata": {
6150
+ "description": "",
6151
+ "displayName": "Modify object",
6152
+ "typeClasses": [],
6153
+ },
6154
+ "id": "objectToModifyParameter",
6155
+ "type": {
6156
+ "objectReference": {
6157
+ "objectTypeId": "com.palantir.foo",
6158
+ },
6159
+ "type": "objectReference",
6160
+ },
6161
+ },
6162
+ },
6163
+ "sections": {},
6164
+ "status": {
6165
+ "active": {},
6166
+ "type": "active",
6167
+ },
6168
+ },
6169
+ },
6170
+ },
6171
+ },
6172
+ "blockPermissionInformation": {
6173
+ "actionTypes": {},
6174
+ "linkTypes": {},
6175
+ "objectTypes": {},
6176
+ },
6177
+ "interfaceTypes": {},
6178
+ "linkTypes": {},
6179
+ "objectTypes": {
6180
+ "com.palantir.foo": {
6181
+ "datasources": [
6182
+ {
6183
+ "datasource": {
6184
+ "datasetV2": {
6185
+ "datasetRid": "com.palantir.foo",
6186
+ "propertyMapping": {
6187
+ "bar": {
6188
+ "column": "bar",
6189
+ "type": "column",
6190
+ },
6191
+ "structProp": {
6192
+ "struct": {
6193
+ "column": "structProp",
6194
+ "mapping": {
6195
+ "simpleProperty": {
6196
+ "apiName": "simpleProperty",
6197
+ "mappings": {},
6198
+ },
6199
+ },
6200
+ },
6201
+ "type": "struct",
6202
+ },
6203
+ },
6204
+ },
6205
+ "type": "datasetV2",
6206
+ },
6207
+ "editsConfiguration": {
6208
+ "onlyAllowPrivilegedEdits": false,
6209
+ },
6210
+ "redacted": false,
6211
+ "rid": "ri.ontology.main.datasource.com.palantir.foo",
6212
+ },
6213
+ ],
6214
+ "entityMetadata": {
6215
+ "arePatchesEnabled": false,
6216
+ },
6217
+ "objectType": {
6218
+ "allImplementsInterfaces": {},
6219
+ "apiName": "com.palantir.foo",
6220
+ "displayMetadata": {
6221
+ "description": undefined,
6222
+ "displayName": "exampleObjectType",
6223
+ "groupDisplayName": undefined,
6224
+ "icon": {
6225
+ "blueprint": {
6226
+ "color": "#2D72D2",
6227
+ "locator": "cube",
6228
+ },
6229
+ "type": "blueprint",
6230
+ },
6231
+ "pluralDisplayName": "exampleObjectTypes",
6232
+ "visibility": "NORMAL",
6233
+ },
6234
+ "implementsInterfaces2": [],
6235
+ "primaryKeys": [
6236
+ "bar",
6237
+ ],
6238
+ "propertyTypes": {
6239
+ "bar": {
6240
+ "apiName": "bar",
6241
+ "baseFormatter": undefined,
6242
+ "dataConstraints": undefined,
6243
+ "displayMetadata": {
6244
+ "description": undefined,
6245
+ "displayName": "Bar",
6246
+ "visibility": "NORMAL",
6247
+ },
6248
+ "indexedForSearch": true,
6249
+ "inlineAction": undefined,
6250
+ "ruleSetBinding": undefined,
6251
+ "sharedPropertyTypeApiName": undefined,
6252
+ "sharedPropertyTypeRid": undefined,
6253
+ "status": {
6254
+ "active": {},
6255
+ "type": "active",
6256
+ },
6257
+ "type": {
6258
+ "string": {
6259
+ "analyzerOverride": undefined,
6260
+ "enableAsciiFolding": undefined,
6261
+ "isLongText": false,
6262
+ "supportsEfficientLeadingWildcard": false,
6263
+ "supportsExactMatching": true,
6264
+ },
6265
+ "type": "string",
6266
+ },
6267
+ "typeClasses": [
6268
+ {
6269
+ "kind": "render_hint",
6270
+ "name": "SELECTABLE",
6271
+ },
6272
+ {
6273
+ "kind": "render_hint",
6274
+ "name": "SORTABLE",
6275
+ },
6276
+ ],
6277
+ "valueType": undefined,
6278
+ },
6279
+ "structProp": {
6280
+ "apiName": "structProp",
6281
+ "baseFormatter": undefined,
6282
+ "dataConstraints": undefined,
6283
+ "displayMetadata": {
6284
+ "description": undefined,
6285
+ "displayName": "StructProp",
6286
+ "visibility": "NORMAL",
6287
+ },
6288
+ "indexedForSearch": true,
6289
+ "inlineAction": undefined,
6290
+ "ruleSetBinding": undefined,
6291
+ "sharedPropertyTypeApiName": undefined,
6292
+ "sharedPropertyTypeRid": undefined,
6293
+ "status": {
6294
+ "active": {},
6295
+ "type": "active",
6296
+ },
6297
+ "type": {
6298
+ "struct": {
6299
+ "structFields": [
6300
+ {
6301
+ "aliases": [],
6302
+ "apiName": "simpleProperty",
6303
+ "displayMetadata": {
6304
+ "description": undefined,
6305
+ "displayName": "simpleProperty",
6306
+ },
6307
+ "fieldType": {
6308
+ "string": {
6309
+ "analyzerOverride": undefined,
6310
+ "enableAsciiFolding": undefined,
6311
+ "isLongText": false,
6312
+ "supportsEfficientLeadingWildcard": false,
6313
+ "supportsExactMatching": true,
6314
+ },
6315
+ "type": "string",
6316
+ },
6317
+ "typeClasses": [],
6318
+ },
6319
+ ],
6320
+ },
6321
+ "type": "struct",
6322
+ },
6323
+ "typeClasses": [],
6324
+ "valueType": undefined,
6325
+ },
6326
+ },
6327
+ "redacted": false,
6328
+ "status": {
6329
+ "active": {},
6330
+ "type": "active",
6331
+ },
6332
+ "titlePropertyTypeRid": "bar",
6333
+ },
6334
+ },
6335
+ },
6336
+ "sharedPropertyTypes": {},
6337
+ },
6338
+ "importedTypes": {
6339
+ "actionTypes": [],
6340
+ "interfaceTypes": [],
6341
+ "linkTypes": [],
6342
+ "objectTypes": [],
6343
+ "sharedPropertyTypes": [],
6344
+ },
6345
+ }
6346
+ `);
6347
+ });
6348
+ it("Customizations on CRUD actions are properly defined", () => {
6349
+ const exampleObjectType = defineObject({
6350
+ titlePropertyApiName: "bar",
6351
+ displayName: "exampleObjectType",
6352
+ pluralDisplayName: "exampleObjectTypes",
6353
+ apiName: "foo",
6354
+ primaryKeyPropertyApiName: "primary",
6355
+ properties: {
6356
+ "bar": {
6357
+ type: "string"
6358
+ },
6359
+ "fizz": {
6360
+ type: "string"
6361
+ },
6362
+ "buzz": {
6363
+ type: "string"
6364
+ },
6365
+ "primary": {
6366
+ type: "string"
6367
+ }
6368
+ }
6369
+ });
6370
+ defineCreateObjectAction({
6371
+ objectType: exampleObjectType,
6372
+ actionLevelValidation: {
6373
+ condition: {
6374
+ type: "group",
6375
+ name: "actionLevelGroup"
6376
+ }
6377
+ },
6378
+ parameterLevelValidations: {
6379
+ "fizz": {
6380
+ required: false,
6381
+ conditionalOverrides: [{
6382
+ type: "required",
6383
+ condition: {
6384
+ type: "and",
6385
+ conditions: [{
6386
+ type: "group",
6387
+ name: "parameterLevelGroup"
6388
+ }, {
6389
+ type: "parameter",
6390
+ parameterId: "bar",
6391
+ matches: {
6392
+ type: "staticValue",
6393
+ staticValue: {
6394
+ type: "string",
6395
+ string: "bar"
6396
+ }
6397
+ }
6398
+ }]
6399
+ }
6400
+ }]
6401
+ }
6402
+ },
6403
+ excludedProperties: ["buzz"]
6404
+ });
6405
+ defineModifyObjectAction({
6406
+ objectType: exampleObjectType,
6407
+ actionLevelValidation: {
6408
+ condition: {
6409
+ type: "group",
6410
+ name: "actionLevelGroup"
6411
+ }
6412
+ },
6413
+ parameterLevelValidations: {
6414
+ "fizz": {
6415
+ required: false,
6416
+ conditionalOverrides: [{
6417
+ type: "required",
6418
+ condition: {
6419
+ type: "and",
6420
+ conditions: [{
6421
+ type: "group",
6422
+ name: "parameterLevelGroup"
6423
+ }, {
6424
+ type: "parameter",
6425
+ parameterId: "bar",
6426
+ matches: {
6427
+ type: "staticValue",
6428
+ staticValue: {
6429
+ type: "string",
6430
+ string: "bar"
6431
+ }
6432
+ }
6433
+ }]
6434
+ }
6435
+ }]
6436
+ }
6437
+ },
6438
+ excludedProperties: ["buzz"]
6439
+ });
6440
+ expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
6441
+ {
6442
+ "blockData": {
6443
+ "actionTypes": {
6444
+ "com.palantir.create-object-foo": {
6445
+ "actionType": {
6446
+ "actionTypeLogic": {
6447
+ "logic": {
6448
+ "rules": [
6449
+ {
6450
+ "addObjectRule": {
6451
+ "objectTypeId": "com.palantir.foo",
6452
+ "propertyValues": {
6453
+ "bar": {
6454
+ "parameterId": "bar",
6455
+ "type": "parameterId",
6456
+ },
6457
+ "fizz": {
6458
+ "parameterId": "fizz",
6459
+ "type": "parameterId",
6460
+ },
6461
+ "primary": {
6462
+ "parameterId": "primary",
6463
+ "type": "parameterId",
6464
+ },
6465
+ },
6466
+ "structFieldValues": {},
6467
+ },
6468
+ "type": "addObjectRule",
6469
+ },
6470
+ ],
6471
+ },
6472
+ "validation": {
6473
+ "actionTypeLevelValidation": {
6474
+ "rules": {
6475
+ "0": {
6476
+ "condition": {
6477
+ "comparison": {
6478
+ "left": {
6479
+ "type": "userProperty",
6480
+ "userProperty": {
6481
+ "propertyValue": {
6482
+ "groupIds": {},
6483
+ "type": "groupIds",
6484
+ },
6485
+ "userId": {
6486
+ "currentUser": {},
6487
+ "type": "currentUser",
6488
+ },
6489
+ },
6490
+ },
6491
+ "operator": "INTERSECTS",
6492
+ "right": {
6493
+ "staticValue": {
6494
+ "stringList": {
6495
+ "strings": [
6496
+ "actionLevelGroup",
6497
+ ],
6498
+ },
6499
+ "type": "stringList",
6500
+ },
6501
+ "type": "staticValue",
6502
+ },
6503
+ },
6504
+ "type": "comparison",
6505
+ },
6506
+ "displayMetadata": {
6507
+ "failureMessage": "Did not satisfy validation",
6508
+ "typeClasses": [],
6509
+ },
6510
+ },
6511
+ },
6512
+ },
6513
+ "parameterValidations": {
6514
+ "bar": {
6515
+ "conditionalOverrides": [],
6516
+ "defaultValidation": {
6517
+ "display": {
6518
+ "renderHint": {
6519
+ "textInput": {},
6520
+ "type": "textInput",
6521
+ },
6522
+ "visibility": {
6523
+ "editable": {},
6524
+ "type": "editable",
6525
+ },
6526
+ },
6527
+ "validation": {
6528
+ "allowedValues": {
6529
+ "text": {
6530
+ "text": {},
6531
+ "type": "text",
6532
+ },
6533
+ "type": "text",
6534
+ },
6535
+ "required": {
6536
+ "required": {},
6537
+ "type": "required",
6538
+ },
6539
+ },
6540
+ },
6541
+ },
6542
+ "fizz": {
6543
+ "conditionalOverrides": [
6544
+ {
6545
+ "condition": {
6546
+ "and": {
6547
+ "conditions": [
6548
+ {
6549
+ "comparison": {
6550
+ "left": {
6551
+ "type": "userProperty",
6552
+ "userProperty": {
6553
+ "propertyValue": {
6554
+ "groupIds": {},
6555
+ "type": "groupIds",
6556
+ },
6557
+ "userId": {
6558
+ "currentUser": {},
6559
+ "type": "currentUser",
6560
+ },
6561
+ },
6562
+ },
6563
+ "operator": "INTERSECTS",
6564
+ "right": {
6565
+ "staticValue": {
6566
+ "stringList": {
6567
+ "strings": [
6568
+ "parameterLevelGroup",
6569
+ ],
6570
+ },
6571
+ "type": "stringList",
6572
+ },
6573
+ "type": "staticValue",
6574
+ },
6575
+ },
6576
+ "type": "comparison",
6577
+ },
6578
+ {
6579
+ "comparison": {
6580
+ "left": {
6581
+ "parameterId": "bar",
6582
+ "type": "parameterId",
6583
+ },
6584
+ "operator": "EQUALS",
6585
+ "right": {
6586
+ "staticValue": {
6587
+ "string": "bar",
6588
+ "type": "string",
6589
+ },
6590
+ "type": "staticValue",
6591
+ },
6592
+ },
6593
+ "type": "comparison",
6594
+ },
6595
+ ],
6596
+ },
6597
+ "type": "and",
6598
+ },
6599
+ "parameterBlockOverrides": [
6600
+ {
6601
+ "parameterRequired": {
6602
+ "required": {
6603
+ "required": {},
6604
+ "type": "required",
6605
+ },
6606
+ },
6607
+ "type": "parameterRequired",
6608
+ },
6609
+ ],
6610
+ },
6611
+ ],
6612
+ "defaultValidation": {
6613
+ "display": {
6614
+ "renderHint": {
6615
+ "textInput": {},
6616
+ "type": "textInput",
6617
+ },
6618
+ "visibility": {
6619
+ "editable": {},
6620
+ "type": "editable",
6621
+ },
6622
+ },
6623
+ "validation": {
6624
+ "allowedValues": {
6625
+ "text": {
6626
+ "text": {},
6627
+ "type": "text",
6628
+ },
6629
+ "type": "text",
6630
+ },
6631
+ "required": {
6632
+ "notRequired": {},
6633
+ "type": "notRequired",
6634
+ },
6635
+ },
6636
+ },
6637
+ },
6638
+ "primary": {
6639
+ "conditionalOverrides": [],
6640
+ "defaultValidation": {
6641
+ "display": {
6642
+ "renderHint": {
6643
+ "textInput": {},
6644
+ "type": "textInput",
6645
+ },
6646
+ "visibility": {
6647
+ "editable": {},
6648
+ "type": "editable",
6649
+ },
6650
+ },
6651
+ "validation": {
6652
+ "allowedValues": {
6653
+ "text": {
6654
+ "text": {},
6655
+ "type": "text",
6656
+ },
6657
+ "type": "text",
6658
+ },
6659
+ "required": {
6660
+ "required": {},
6661
+ "type": "required",
6662
+ },
6663
+ },
6664
+ },
6665
+ },
6666
+ },
6667
+ },
6668
+ },
6669
+ "metadata": {
6670
+ "apiName": "com.palantir.create-object-foo",
6671
+ "displayMetadata": {
6672
+ "configuration": {
6673
+ "defaultLayout": "FORM",
6674
+ "displayAndFormat": {
6675
+ "table": {
6676
+ "columnWidthByParameterRid": {},
6677
+ "enableFileImport": true,
6678
+ "fitHorizontally": false,
6679
+ "frozenColumnCount": 0,
6680
+ "rowHeightInLines": 1,
6681
+ },
6682
+ },
6683
+ "enableLayoutUserSwitch": false,
6684
+ },
6685
+ "description": "",
6686
+ "displayName": "Create exampleObjectType",
6687
+ "icon": {
6688
+ "blueprint": {
6689
+ "color": "#000000",
6690
+ "locator": "edit",
6691
+ },
6692
+ "type": "blueprint",
6693
+ },
6694
+ "successMessage": [],
6695
+ "typeClasses": [],
6696
+ },
6697
+ "entities": {
6698
+ "affectedInterfaceTypes": [],
6699
+ "affectedLinkTypes": [],
6700
+ "affectedObjectTypes": [
6701
+ "com.palantir.foo",
6702
+ ],
6703
+ "typeGroups": [],
6704
+ },
6705
+ "formContentOrdering": [],
6706
+ "parameterOrdering": [
6707
+ "bar",
6708
+ "fizz",
6709
+ "primary",
6710
+ ],
6711
+ "parameters": {
6712
+ "bar": {
6713
+ "displayMetadata": {
6714
+ "description": "",
6715
+ "displayName": "Bar",
6716
+ "typeClasses": [],
6717
+ },
6718
+ "id": "bar",
6719
+ "type": {
6720
+ "string": {},
6721
+ "type": "string",
6722
+ },
6723
+ },
6724
+ "fizz": {
6725
+ "displayMetadata": {
6726
+ "description": "",
6727
+ "displayName": "Fizz",
6728
+ "typeClasses": [],
6729
+ },
6730
+ "id": "fizz",
6731
+ "type": {
6732
+ "string": {},
6733
+ "type": "string",
6734
+ },
6735
+ },
6736
+ "primary": {
6737
+ "displayMetadata": {
6738
+ "description": "",
6739
+ "displayName": "Primary",
6740
+ "typeClasses": [],
6741
+ },
6742
+ "id": "primary",
6743
+ "type": {
6744
+ "string": {},
6745
+ "type": "string",
6746
+ },
6747
+ },
6748
+ },
6749
+ "sections": {},
6750
+ "status": {
6751
+ "active": {},
6752
+ "type": "active",
6753
+ },
6754
+ },
6755
+ },
6756
+ },
6757
+ "com.palantir.modify-object-foo": {
6758
+ "actionType": {
6759
+ "actionTypeLogic": {
6760
+ "logic": {
6761
+ "rules": [
6762
+ {
6763
+ "modifyObjectRule": {
6764
+ "objectToModify": "objectToModifyParameter",
6765
+ "propertyValues": {
6766
+ "bar": {
6767
+ "parameterId": "bar",
6768
+ "type": "parameterId",
6769
+ },
6770
+ "fizz": {
6771
+ "parameterId": "fizz",
6772
+ "type": "parameterId",
6773
+ },
6774
+ },
6775
+ "structFieldValues": {},
6776
+ },
6777
+ "type": "modifyObjectRule",
6778
+ },
6779
+ ],
6780
+ },
6781
+ "validation": {
6782
+ "actionTypeLevelValidation": {
6783
+ "rules": {
6784
+ "0": {
6785
+ "condition": {
6786
+ "comparison": {
6787
+ "left": {
6788
+ "type": "userProperty",
6789
+ "userProperty": {
6790
+ "propertyValue": {
6791
+ "groupIds": {},
6792
+ "type": "groupIds",
6793
+ },
6794
+ "userId": {
6795
+ "currentUser": {},
6796
+ "type": "currentUser",
6797
+ },
6798
+ },
6799
+ },
6800
+ "operator": "INTERSECTS",
6801
+ "right": {
6802
+ "staticValue": {
6803
+ "stringList": {
6804
+ "strings": [
6805
+ "actionLevelGroup",
6806
+ ],
6807
+ },
6808
+ "type": "stringList",
6809
+ },
6810
+ "type": "staticValue",
6811
+ },
6812
+ },
6813
+ "type": "comparison",
6814
+ },
6815
+ "displayMetadata": {
6816
+ "failureMessage": "Did not satisfy validation",
6817
+ "typeClasses": [],
6818
+ },
6819
+ },
6820
+ },
6821
+ },
6822
+ "parameterValidations": {
6823
+ "bar": {
6824
+ "conditionalOverrides": [],
6825
+ "defaultValidation": {
6826
+ "display": {
6827
+ "renderHint": {
6828
+ "textInput": {},
6829
+ "type": "textInput",
6830
+ },
6831
+ "visibility": {
6832
+ "editable": {},
6833
+ "type": "editable",
6834
+ },
6835
+ },
6836
+ "validation": {
6837
+ "allowedValues": {
6838
+ "text": {
6839
+ "text": {},
6840
+ "type": "text",
6841
+ },
6842
+ "type": "text",
6843
+ },
6844
+ "required": {
6845
+ "notRequired": {},
6846
+ "type": "notRequired",
6847
+ },
6848
+ },
6849
+ },
6850
+ },
6851
+ "fizz": {
6852
+ "conditionalOverrides": [
6853
+ {
6854
+ "condition": {
6855
+ "and": {
6856
+ "conditions": [
6857
+ {
6858
+ "comparison": {
6859
+ "left": {
6860
+ "type": "userProperty",
6861
+ "userProperty": {
6862
+ "propertyValue": {
6863
+ "groupIds": {},
6864
+ "type": "groupIds",
6865
+ },
6866
+ "userId": {
6867
+ "currentUser": {},
6868
+ "type": "currentUser",
6869
+ },
6870
+ },
6871
+ },
6872
+ "operator": "INTERSECTS",
6873
+ "right": {
6874
+ "staticValue": {
6875
+ "stringList": {
6876
+ "strings": [
6877
+ "parameterLevelGroup",
6878
+ ],
6879
+ },
6880
+ "type": "stringList",
6881
+ },
6882
+ "type": "staticValue",
6883
+ },
6884
+ },
6885
+ "type": "comparison",
6886
+ },
6887
+ {
6888
+ "comparison": {
6889
+ "left": {
6890
+ "parameterId": "bar",
6891
+ "type": "parameterId",
6892
+ },
6893
+ "operator": "EQUALS",
6894
+ "right": {
6895
+ "staticValue": {
6896
+ "string": "bar",
6897
+ "type": "string",
6898
+ },
6899
+ "type": "staticValue",
6900
+ },
6901
+ },
6902
+ "type": "comparison",
6903
+ },
6904
+ ],
6905
+ },
6906
+ "type": "and",
6907
+ },
6908
+ "parameterBlockOverrides": [
6909
+ {
6910
+ "parameterRequired": {
6911
+ "required": {
6912
+ "required": {},
6913
+ "type": "required",
6914
+ },
6915
+ },
6916
+ "type": "parameterRequired",
6917
+ },
6918
+ ],
6919
+ },
6920
+ ],
6921
+ "defaultValidation": {
6922
+ "display": {
6923
+ "renderHint": {
6924
+ "textInput": {},
6925
+ "type": "textInput",
6926
+ },
6927
+ "visibility": {
6928
+ "editable": {},
6929
+ "type": "editable",
6930
+ },
6931
+ },
6932
+ "validation": {
6933
+ "allowedValues": {
6934
+ "text": {
6935
+ "text": {},
6936
+ "type": "text",
6937
+ },
6938
+ "type": "text",
6939
+ },
6940
+ "required": {
6941
+ "notRequired": {},
6942
+ "type": "notRequired",
6943
+ },
6395
6944
  },
6396
6945
  },
6397
6946
  },
6398
- },
6399
- "parameterValidations": {
6400
6947
  "objectToModifyParameter": {
6401
6948
  "conditionalOverrides": [],
6402
6949
  "defaultValidation": {
@@ -6467,8 +7014,34 @@ describe("Ontology Defining", () => {
6467
7014
  "formContentOrdering": [],
6468
7015
  "parameterOrdering": [
6469
7016
  "objectToModifyParameter",
7017
+ "bar",
7018
+ "fizz",
6470
7019
  ],
6471
7020
  "parameters": {
7021
+ "bar": {
7022
+ "displayMetadata": {
7023
+ "description": "",
7024
+ "displayName": "Bar",
7025
+ "typeClasses": [],
7026
+ },
7027
+ "id": "bar",
7028
+ "type": {
7029
+ "string": {},
7030
+ "type": "string",
7031
+ },
7032
+ },
7033
+ "fizz": {
7034
+ "displayMetadata": {
7035
+ "description": "",
7036
+ "displayName": "Fizz",
7037
+ "typeClasses": [],
7038
+ },
7039
+ "id": "fizz",
7040
+ "type": {
7041
+ "string": {},
7042
+ "type": "string",
7043
+ },
7044
+ },
6472
7045
  "objectToModifyParameter": {
6473
7046
  "displayMetadata": {
6474
7047
  "description": "",
@@ -6494,7 +7067,22 @@ describe("Ontology Defining", () => {
6494
7067
  },
6495
7068
  },
6496
7069
  "blockPermissionInformation": {
6497
- "actionTypes": {},
7070
+ "actionTypes": {
7071
+ "com.palantir.create-object-foo": {
7072
+ "restrictionStatus": {
7073
+ "hasRolesApplied": true,
7074
+ "ontologyPackageRid": null,
7075
+ "publicProject": false,
7076
+ },
7077
+ },
7078
+ "com.palantir.modify-object-foo": {
7079
+ "restrictionStatus": {
7080
+ "hasRolesApplied": true,
7081
+ "ontologyPackageRid": null,
7082
+ "publicProject": false,
7083
+ },
7084
+ },
7085
+ },
6498
7086
  "linkTypes": {},
6499
7087
  "objectTypes": {},
6500
7088
  },
@@ -6512,17 +7100,17 @@ describe("Ontology Defining", () => {
6512
7100
  "column": "bar",
6513
7101
  "type": "column",
6514
7102
  },
6515
- "structProp": {
6516
- "struct": {
6517
- "column": "structProp",
6518
- "mapping": {
6519
- "simpleProperty": {
6520
- "apiName": "simpleProperty",
6521
- "mappings": {},
6522
- },
6523
- },
6524
- },
6525
- "type": "struct",
7103
+ "buzz": {
7104
+ "column": "buzz",
7105
+ "type": "column",
7106
+ },
7107
+ "fizz": {
7108
+ "column": "fizz",
7109
+ "type": "column",
7110
+ },
7111
+ "primary": {
7112
+ "column": "primary",
7113
+ "type": "column",
6526
7114
  },
6527
7115
  },
6528
7116
  },
@@ -6557,7 +7145,7 @@ describe("Ontology Defining", () => {
6557
7145
  },
6558
7146
  "implementsInterfaces2": [],
6559
7147
  "primaryKeys": [
6560
- "bar",
7148
+ "primary",
6561
7149
  ],
6562
7150
  "propertyTypes": {
6563
7151
  "bar": {
@@ -6600,13 +7188,13 @@ describe("Ontology Defining", () => {
6600
7188
  ],
6601
7189
  "valueType": undefined,
6602
7190
  },
6603
- "structProp": {
6604
- "apiName": "structProp",
7191
+ "buzz": {
7192
+ "apiName": "buzz",
6605
7193
  "baseFormatter": undefined,
6606
7194
  "dataConstraints": undefined,
6607
7195
  "displayMetadata": {
6608
7196
  "description": undefined,
6609
- "displayName": "StructProp",
7197
+ "displayName": "Buzz",
6610
7198
  "visibility": "NORMAL",
6611
7199
  },
6612
7200
  "indexedForSearch": true,
@@ -6619,32 +7207,105 @@ describe("Ontology Defining", () => {
6619
7207
  "type": "active",
6620
7208
  },
6621
7209
  "type": {
6622
- "struct": {
6623
- "structFields": [
6624
- {
6625
- "aliases": [],
6626
- "apiName": "simpleProperty",
6627
- "displayMetadata": {
6628
- "description": undefined,
6629
- "displayName": "simpleProperty",
6630
- },
6631
- "fieldType": {
6632
- "string": {
6633
- "analyzerOverride": undefined,
6634
- "enableAsciiFolding": undefined,
6635
- "isLongText": false,
6636
- "supportsEfficientLeadingWildcard": false,
6637
- "supportsExactMatching": true,
6638
- },
6639
- "type": "string",
6640
- },
6641
- "typeClasses": [],
6642
- },
6643
- ],
7210
+ "string": {
7211
+ "analyzerOverride": undefined,
7212
+ "enableAsciiFolding": undefined,
7213
+ "isLongText": false,
7214
+ "supportsEfficientLeadingWildcard": false,
7215
+ "supportsExactMatching": true,
6644
7216
  },
6645
- "type": "struct",
7217
+ "type": "string",
6646
7218
  },
6647
- "typeClasses": [],
7219
+ "typeClasses": [
7220
+ {
7221
+ "kind": "render_hint",
7222
+ "name": "SELECTABLE",
7223
+ },
7224
+ {
7225
+ "kind": "render_hint",
7226
+ "name": "SORTABLE",
7227
+ },
7228
+ ],
7229
+ "valueType": undefined,
7230
+ },
7231
+ "fizz": {
7232
+ "apiName": "fizz",
7233
+ "baseFormatter": undefined,
7234
+ "dataConstraints": undefined,
7235
+ "displayMetadata": {
7236
+ "description": undefined,
7237
+ "displayName": "Fizz",
7238
+ "visibility": "NORMAL",
7239
+ },
7240
+ "indexedForSearch": true,
7241
+ "inlineAction": undefined,
7242
+ "ruleSetBinding": undefined,
7243
+ "sharedPropertyTypeApiName": undefined,
7244
+ "sharedPropertyTypeRid": undefined,
7245
+ "status": {
7246
+ "active": {},
7247
+ "type": "active",
7248
+ },
7249
+ "type": {
7250
+ "string": {
7251
+ "analyzerOverride": undefined,
7252
+ "enableAsciiFolding": undefined,
7253
+ "isLongText": false,
7254
+ "supportsEfficientLeadingWildcard": false,
7255
+ "supportsExactMatching": true,
7256
+ },
7257
+ "type": "string",
7258
+ },
7259
+ "typeClasses": [
7260
+ {
7261
+ "kind": "render_hint",
7262
+ "name": "SELECTABLE",
7263
+ },
7264
+ {
7265
+ "kind": "render_hint",
7266
+ "name": "SORTABLE",
7267
+ },
7268
+ ],
7269
+ "valueType": undefined,
7270
+ },
7271
+ "primary": {
7272
+ "apiName": "primary",
7273
+ "baseFormatter": undefined,
7274
+ "dataConstraints": undefined,
7275
+ "displayMetadata": {
7276
+ "description": undefined,
7277
+ "displayName": "Primary",
7278
+ "visibility": "NORMAL",
7279
+ },
7280
+ "indexedForSearch": true,
7281
+ "inlineAction": undefined,
7282
+ "ruleSetBinding": undefined,
7283
+ "sharedPropertyTypeApiName": undefined,
7284
+ "sharedPropertyTypeRid": undefined,
7285
+ "status": {
7286
+ "active": {},
7287
+ "type": "active",
7288
+ },
7289
+ "type": {
7290
+ "string": {
7291
+ "analyzerOverride": undefined,
7292
+ "enableAsciiFolding": undefined,
7293
+ "isLongText": false,
7294
+ "supportsEfficientLeadingWildcard": false,
7295
+ "supportsExactMatching": true,
7296
+ },
7297
+ "type": "string",
7298
+ },
7299
+ "typeClasses": [
7300
+ {
7301
+ "kind": "render_hint",
7302
+ "name": "SELECTABLE",
7303
+ },
7304
+ {
7305
+ "kind": "render_hint",
7306
+ "name": "SORTABLE",
7307
+ },
7308
+ ],
6648
7309
  "valueType": undefined,
6649
7310
  },
6650
7311
  },
@@ -7217,10 +7878,13 @@ describe("Ontology Defining", () => {
7217
7878
  }
7218
7879
  }
7219
7880
  });
7220
- defineCreateObjectAction(sampleObject, {
7221
- condition: {
7222
- type: "group",
7223
- name: "testGroup"
7881
+ defineCreateObjectAction({
7882
+ objectType: sampleObject,
7883
+ actionLevelValidation: {
7884
+ condition: {
7885
+ type: "group",
7886
+ name: "testGroup"
7887
+ }
7224
7888
  }
7225
7889
  });
7226
7890
  expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
@@ -7617,34 +8281,37 @@ describe("Ontology Defining", () => {
7617
8281
  }
7618
8282
  }
7619
8283
  });
7620
- defineCreateObjectAction(sampleObject, {
7621
- displayMetadata: {
7622
- failureMessage: "Insufficient permissions. Missing organization membership required to submit action",
7623
- typeClasses: []
7624
- },
7625
- condition: {
7626
- type: "comparison",
7627
- comparison: {
7628
- operator: "INTERSECTS",
7629
- left: {
7630
- type: "userProperty",
7631
- userProperty: {
7632
- userId: {
7633
- type: "currentUser",
7634
- currentUser: {}
7635
- },
7636
- propertyValue: {
7637
- type: "organizationMarkingIds",
7638
- organizationMarkingIds: {}
8284
+ defineCreateObjectAction({
8285
+ objectType: sampleObject,
8286
+ actionLevelValidation: {
8287
+ displayMetadata: {
8288
+ failureMessage: "Insufficient permissions. Missing organization membership required to submit action",
8289
+ typeClasses: []
8290
+ },
8291
+ condition: {
8292
+ type: "comparison",
8293
+ comparison: {
8294
+ operator: "INTERSECTS",
8295
+ left: {
8296
+ type: "userProperty",
8297
+ userProperty: {
8298
+ userId: {
8299
+ type: "currentUser",
8300
+ currentUser: {}
8301
+ },
8302
+ propertyValue: {
8303
+ type: "organizationMarkingIds",
8304
+ organizationMarkingIds: {}
8305
+ }
7639
8306
  }
7640
- }
7641
- },
7642
- right: {
7643
- type: "staticValue",
7644
- staticValue: {
7645
- type: "stringList",
7646
- stringList: {
7647
- strings: ["87ef507e-f954-457e-ad68-e0df71ef7567"]
8307
+ },
8308
+ right: {
8309
+ type: "staticValue",
8310
+ staticValue: {
8311
+ type: "stringList",
8312
+ stringList: {
8313
+ strings: ["87ef507e-f954-457e-ad68-e0df71ef7567"]
8314
+ }
7648
8315
  }
7649
8316
  }
7650
8317
  }
@@ -8053,8 +8720,12 @@ describe("Ontology Defining", () => {
8053
8720
  }
8054
8721
  }
8055
8722
  });
8056
- defineCreateObjectAction(objectWithArrays);
8057
- defineModifyObjectAction(objectWithArrays);
8723
+ defineCreateObjectAction({
8724
+ objectType: objectWithArrays
8725
+ });
8726
+ defineModifyObjectAction({
8727
+ objectType: objectWithArrays
8728
+ });
8058
8729
  expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
8059
8730
  {
8060
8731
  "blockData": {