@osdk/maker 0.15.0-beta.9 → 0.16.0-beta.1

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 (71) hide show
  1. package/README.md +49 -0
  2. package/build/browser/api/defineAction.js +4 -0
  3. package/build/browser/api/defineAction.js.map +1 -1
  4. package/build/browser/api/object/ObjectTypeDatasourceDefinition.js.map +1 -1
  5. package/build/browser/api/object/SecurityCondition.js +2 -0
  6. package/build/browser/api/object/SecurityCondition.js.map +1 -0
  7. package/build/browser/api/properties/PropertyTypeType.js.map +1 -1
  8. package/build/browser/api/propertyConversionUtils.js +5 -1
  9. package/build/browser/api/propertyConversionUtils.js.map +1 -1
  10. package/build/browser/api/test/actions.test.js +52 -0
  11. package/build/browser/api/test/actions.test.js.map +1 -1
  12. package/build/browser/api/test/links.test.js +36 -0
  13. package/build/browser/api/test/links.test.js.map +1 -1
  14. package/build/browser/api/test/misc.test.js +4 -0
  15. package/build/browser/api/test/misc.test.js.map +1 -1
  16. package/build/browser/api/test/objects.test.js +804 -0
  17. package/build/browser/api/test/objects.test.js.map +1 -1
  18. package/build/browser/cli/main.js +1 -1
  19. package/build/browser/conversion/toMarketplace/convertDatasourceDefinition.js +179 -0
  20. package/build/browser/conversion/toMarketplace/convertDatasourceDefinition.js.map +1 -1
  21. package/build/browser/conversion/toMarketplace/convertNullabilityToDataConstraint.js +0 -1
  22. package/build/browser/conversion/toMarketplace/convertNullabilityToDataConstraint.js.map +1 -1
  23. package/build/browser/conversion/toMarketplace/convertObject.js +4 -0
  24. package/build/browser/conversion/toMarketplace/convertObject.js.map +1 -1
  25. package/build/browser/conversion/toMarketplace/convertObjectPropertyType.js +2 -2
  26. package/build/browser/conversion/toMarketplace/convertObjectPropertyType.js.map +1 -1
  27. package/build/browser/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js +5 -0
  28. package/build/browser/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js.map +1 -1
  29. package/build/cjs/index.cjs +265 -73
  30. package/build/cjs/index.cjs.map +1 -1
  31. package/build/cjs/index.d.cts +33 -2
  32. package/build/esm/api/defineAction.js +4 -0
  33. package/build/esm/api/defineAction.js.map +1 -1
  34. package/build/esm/api/object/ObjectTypeDatasourceDefinition.js.map +1 -1
  35. package/build/esm/api/object/SecurityCondition.js +2 -0
  36. package/build/esm/api/object/SecurityCondition.js.map +1 -0
  37. package/build/esm/api/properties/PropertyTypeType.js.map +1 -1
  38. package/build/esm/api/propertyConversionUtils.js +5 -1
  39. package/build/esm/api/propertyConversionUtils.js.map +1 -1
  40. package/build/esm/api/test/actions.test.js +52 -0
  41. package/build/esm/api/test/actions.test.js.map +1 -1
  42. package/build/esm/api/test/links.test.js +36 -0
  43. package/build/esm/api/test/links.test.js.map +1 -1
  44. package/build/esm/api/test/misc.test.js +4 -0
  45. package/build/esm/api/test/misc.test.js.map +1 -1
  46. package/build/esm/api/test/objects.test.js +804 -0
  47. package/build/esm/api/test/objects.test.js.map +1 -1
  48. package/build/esm/cli/main.js +1 -1
  49. package/build/esm/conversion/toMarketplace/convertDatasourceDefinition.js +179 -0
  50. package/build/esm/conversion/toMarketplace/convertDatasourceDefinition.js.map +1 -1
  51. package/build/esm/conversion/toMarketplace/convertNullabilityToDataConstraint.js +0 -1
  52. package/build/esm/conversion/toMarketplace/convertNullabilityToDataConstraint.js.map +1 -1
  53. package/build/esm/conversion/toMarketplace/convertObject.js +4 -0
  54. package/build/esm/conversion/toMarketplace/convertObject.js.map +1 -1
  55. package/build/esm/conversion/toMarketplace/convertObjectPropertyType.js +2 -2
  56. package/build/esm/conversion/toMarketplace/convertObjectPropertyType.js.map +1 -1
  57. package/build/esm/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js +5 -0
  58. package/build/esm/conversion/toMarketplace/propertyTypeTypeToOntologyIrType.js.map +1 -1
  59. package/build/types/api/defineAction.d.ts.map +1 -1
  60. package/build/types/api/object/ObjectTypeDatasourceDefinition.d.ts +15 -1
  61. package/build/types/api/object/ObjectTypeDatasourceDefinition.d.ts.map +1 -1
  62. package/build/types/api/object/SecurityCondition.d.ts +18 -0
  63. package/build/types/api/object/SecurityCondition.d.ts.map +1 -0
  64. package/build/types/api/properties/PropertyTypeType.d.ts +1 -1
  65. package/build/types/api/properties/PropertyTypeType.d.ts.map +1 -1
  66. package/build/types/api/propertyConversionUtils.d.ts +1 -0
  67. package/build/types/api/propertyConversionUtils.d.ts.map +1 -1
  68. package/build/types/conversion/toMarketplace/convertDatasourceDefinition.d.ts.map +1 -1
  69. package/build/types/conversion/toMarketplace/convertObject.d.ts.map +1 -1
  70. package/build/types/conversion/toMarketplace/convertObjectPropertyType.d.ts.map +1 -1
  71. package/package.json +5 -5
package/README.md CHANGED
@@ -467,6 +467,55 @@ const eventObject = defineObject({
467
467
  });
468
468
  ```
469
469
 
470
+ ### Object with Property Security Groups
471
+
472
+ ```typescript
473
+ const object = defineObject({
474
+ apiName: "person",
475
+ displayName: "Person",
476
+ pluralDisplayName: "Persons",
477
+ titlePropertyApiName: "name",
478
+ primaryKeyPropertyApiName: "name",
479
+ properties: {
480
+ "name": { type: "string", displayName: "Name" },
481
+ "protectedProperty": { type: "string", displayName: "Event Name" },
482
+ "markingProperty": {
483
+ type: {
484
+ type: "marking",
485
+ markingType: "MANDATORY",
486
+ markingInputGroupName: "myMarking",
487
+ },
488
+ },
489
+ },
490
+ datasources: [{
491
+ type: "dataset",
492
+ // you can optionally define an objectSecurityPolicy here as well
493
+ propertySecurityGroups: [
494
+ {
495
+ name: "myPsg",
496
+ properties: ["protectedProperty"],
497
+ granularPolicy: {
498
+ type: "and",
499
+ conditions: [
500
+ {
501
+ type: "markingProperty",
502
+ property: "markingProperty",
503
+ },
504
+ {
505
+ type: "group",
506
+ name: "myInputGroup",
507
+ },
508
+ ],
509
+ },
510
+ additionalMandatoryMarkings: {
511
+ "myCbacMarking": "CBAC",
512
+ },
513
+ },
514
+ ],
515
+ }],
516
+ });
517
+ ```
518
+
470
519
  ## Defining Links
471
520
 
472
521
  Links define relationships between objects.
@@ -542,6 +542,10 @@ function extractAllowedValuesFromPropertyType(type) {
542
542
  return {
543
543
  type: "geotimeSeriesReference"
544
544
  };
545
+ case "attachment":
546
+ return {
547
+ type: "attachment"
548
+ };
545
549
  default:
546
550
  switch (type.type) {
547
551
  case "marking":
@@ -1 +1 @@
1
- {"version":3,"file":"defineAction.js","names":["invariant","convertConditionDefinition","isActionParameterTypePrimitive","OntologyEntityTypeEnum","uppercaseFirstLetter","addNamespaceIfNone","importedTypes","namespace","ontologyDefinition","updateOntology","withoutNamespace","getFlattenedInterfaceProperties","getInterfacePropertyTypeType","isInterfaceSharedPropertyType","isStruct","MODIFY_OBJECT_PARAMETER","CREATE_OR_MODIFY_OBJECT_PARAMETER","DELETE_OBJECT_PARAMETER","CREATE_INTERFACE_OBJECT_PARAMETER","MODIFY_INTERFACE_OBJECT_PARAMETER","defineAction","actionDef","apiName","parameterIds","parameters","map","p","id","ACTION_TYPE","undefined","Error","test","process","env","NODE_ENV","parameterIdsSet","Set","size","length","parameterIdsNotFound","Array","from","referencedParameterIds","filter","has","JSON","stringify","definedSectionIds","Object","keys","sections","undefinedSectionsInOrdering","formContentOrdering","flatMap","s","type","sectionId","sId","rules","forEach","rule","some","modifyObjectRule","objectToModify","deleteObjectRule","objectToDelete","interfaceParam","find","modifyInterfaceRule","interfaceObjectToModifyParameter","interfaceReference","interfaceTypeRid","interfaceReferenceList","INTERFACE_TYPE","interfaceType","sharedPropertyValues","spt","includes","addInterfaceRule","interfaceApiName","fullAction","entities","affectedInterfaceTypes","affectedObjectTypes","affectedLinkTypes","typeGroups","__type","validateActionConfiguration","isPropertyParameter","def","name","nonParameterMappings","excludedProperties","objectType","properties","createParameters","propertyMap","parameterSet","requiredMap","targetParams","getTargetParameters","propertyMetadata","sharedPropertyType","displayName","parameterConfiguration","customParameterType","extractActionParameterType","validation","allowedValues","extractAllowedValuesFromActionParameterType","extractAllowedValuesFromPropertyType","required","nullability","noNulls","array","listLength","noEmptyCollections","min","defaultValue","description","renderHint","push","objectReferenceList","objectTypeId","objectReference","delete","maybeCreateObjectOption","autoGenerated","primaryKeyOption","userInput","objectTypeReference","interfaceTypeRids","interfaceTypes","oneOf","label","value","values","pId","add","item","parameterId","sanitize","objectTypeParameter","entries","k","v","addObjectRule","propertyValues","addOrModifyObjectRuleV2","staticValue","integer","max","markingType","pt","typeType","maybeAddList","kebab","replace","toLowerCase","convertValidationRule","actionValidation","actionParameters","condition","displayMetadata","failureMessage","typeClasses","action","seenParameterIds","parameterMap","reduce","acc","param","orderedParameters","parameterOrdering","conditionalOverrides","override","validateParameterCondition","validateParameterPrefill","currentParameterId","overrideParamId","conditions","c","objectParameterPropertyValue","validateActionParameters","isTargetParameter","createDefaultParameterOrdering","priorityId","validateParameterOrdering","actionApiName","orderingSet","missingParameters","extraneousParameters","addNamespaceToActionDefinition","fromEntries","config","getInterfaceParameterName","section","parameter","useNonNamespacedParameters","getNonNamespacedParameterName","propertiesV2","conflictingParameterOverrides","split","pop","createInterfacePropertyLogicRuleValue","structLogicRuleValue","structDefinition","fieldValue","structListParameterFieldValue","structFieldApiName","structParameterFieldValue","logicRuleValue"],"sources":["defineAction.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n OntologyIrInterfacePropertyLogicRuleValue,\n OntologyIrParameterPrefill,\n ParameterId,\n} from \"@osdk/client.unstable\";\nimport invariant from \"tiny-invariant\";\nimport { convertConditionDefinition } from \"../conversion/toMarketplace/convertConditionDefinition.js\";\nimport type { ActionLevelValidationDefinition } from \"./action/ActionLevelValidationDefinition.js\";\nimport { type ActionParameter } from \"./action/ActionParameter.js\";\nimport type { ActionParameterAllowedValues } from \"./action/ActionParameterAllowedValues.js\";\nimport type { ActionParameterConfiguration } from \"./action/ActionParameterConfiguration.js\";\nimport {\n type ActionParameterType,\n type ActionParameterTypePrimitive,\n isActionParameterTypePrimitive,\n} from \"./action/ActionParameterType.js\";\nimport type { ActionSection } from \"./action/ActionSection.js\";\nimport type { ActionStatus } from \"./action/ActionStatus.js\";\nimport { type ActionType } from \"./action/ActionType.js\";\nimport type { ActionValidationRule } from \"./action/ActionValidationRule.js\";\nimport type { ConditionDefinition } from \"./action/ConditionDefinition.js\";\nimport type { DefaultFormat } from \"./action/DefaultFormat.js\";\nimport type { MappingValue } from \"./action/MappingValue.js\";\nimport type { SubmissionMetadata } from \"./action/SubmissionMetadata.js\";\nimport type { TableConfiguration } from \"./action/TableConfiguration.js\";\nimport type { BlueprintIcon } from \"./common/BlueprintIcons.js\";\nimport { OntologyEntityTypeEnum } from \"./common/OntologyEntityTypeEnum.js\";\nimport { uppercaseFirstLetter } from \"./defineObject.js\";\nimport {\n addNamespaceIfNone,\n importedTypes,\n namespace,\n ontologyDefinition,\n updateOntology,\n withoutNamespace,\n} from \"./defineOntology.js\";\nimport { getFlattenedInterfaceProperties } from \"./interface/getFlattenedInterfaceProperties.js\";\nimport {\n getInterfacePropertyTypeType,\n type InterfaceDefinedProperty,\n type InterfacePropertyType,\n isInterfaceSharedPropertyType,\n} from \"./interface/InterfacePropertyType.js\";\nimport type { InterfaceType } from \"./interface/InterfaceType.js\";\nimport type { ObjectPropertyType } from \"./object/ObjectPropertyType.js\";\nimport type { ObjectPropertyTypeUserDefinition } from \"./object/ObjectPropertyTypeUserDefinition.js\";\nimport type { ObjectTypeDefinition } from \"./object/ObjectTypeDefinition.js\";\nimport {\n isStruct,\n type PropertyTypeType,\n} from \"./properties/PropertyTypeType.js\";\n\nexport const MODIFY_OBJECT_PARAMETER: string = \"objectToModifyParameter\";\n\nexport const CREATE_OR_MODIFY_OBJECT_PARAMETER: string =\n \"objectToCreateOrModifyParameter\";\n\nexport const DELETE_OBJECT_PARAMETER: string = \"objectToDeleteParameter\";\n\nexport const CREATE_INTERFACE_OBJECT_PARAMETER: string = \"objectTypeParameter\";\n\nexport const MODIFY_INTERFACE_OBJECT_PARAMETER: string =\n \"interfaceObjectToModifyParameter\";\n\nexport type ActionTypeDefinition = Omit<ActionType, \"__type\">;\n\nexport type ActionTypeUserDefinition = {\n objectType: ObjectTypeDefinition;\n apiName?: string;\n displayName?: string;\n status?: ActionStatus;\n parameterConfiguration?: Record<string, ActionParameterConfiguration>;\n nonParameterMappings?: Record<string, MappingValue>;\n actionLevelValidation?: ActionLevelValidationDefinition;\n excludedProperties?: Array<ParameterId>;\n sections?: Array<ActionSection>;\n defaultFormat?: DefaultFormat;\n enableLayoutSwitch?: boolean;\n tableConfiguration?: TableConfiguration;\n parameterOrdering?: Array<string>;\n submissionMetadata?: SubmissionMetadata;\n // Used for Create or Modify actions\n primaryKeyOption?: \"autoGenerated\" | \"userInput\";\n icon?: { locator: BlueprintIcon; color: string };\n};\n\nexport type InterfaceActionTypeUserDefinition = {\n interfaceType: InterfaceType;\n objectType?: ObjectTypeDefinition;\n apiName?: string;\n displayName?: string;\n status?: ActionStatus;\n parameterConfiguration?: Record<string, ActionParameterConfiguration>;\n nonParameterMappings?: Record<string, MappingValue>;\n actionLevelValidation?: ActionLevelValidationDefinition;\n excludedProperties?: Array<string>;\n sections?: Array<ActionSection>;\n defaultFormat?: DefaultFormat;\n enableLayoutSwitch?: boolean;\n tableConfiguration?: TableConfiguration;\n parameterOrdering?: Array<string>;\n submissionMetadata?: SubmissionMetadata;\n // Use the below options for Java OSDK compatibility\n useNonNamespacedParameters?: boolean;\n conflictingParameterOverrides?: Record<string, string>;\n icon?: { locator: BlueprintIcon; color: string };\n};\n\nexport function defineAction(actionDef: ActionTypeDefinition): ActionType {\n const apiName = namespace + actionDef.apiName;\n const parameterIds = (actionDef.parameters ?? []).map(p => p.id);\n\n if (\n ontologyDefinition[OntologyEntityTypeEnum.ACTION_TYPE][apiName]\n !== undefined\n ) {\n throw new Error(\n `Action type with apiName ${actionDef.apiName} is already defined`,\n );\n }\n invariant(\n /^[a-z0-9]+(-[a-z0-9]+)*$/.test(actionDef.apiName),\n `Action type apiName \"${actionDef.apiName}\" must be alphanumeric, lowercase, and kebab-case`,\n );\n\n const parameterIdsSet = new Set(parameterIds);\n invariant(\n parameterIdsSet.size === parameterIds.length,\n `Parameter ids must be unique`,\n );\n\n const parameterIdsNotFound = Array.from(referencedParameterIds(actionDef))\n .filter(p => !parameterIdsSet.has(p));\n invariant(\n parameterIdsNotFound.length === 0,\n `Parameters ${\n JSON.stringify(parameterIdsNotFound)\n } were referenced but not defined`,\n );\n\n const definedSectionIds = new Set(Object.keys(actionDef.sections ?? []));\n const undefinedSectionsInOrdering = (actionDef.formContentOrdering ?? [])\n .flatMap(\n s => s.type === \"parameterId\" ? [] : [s.sectionId],\n ).filter(sId => !definedSectionIds.has(sId));\n invariant(\n undefinedSectionsInOrdering.length === 0,\n `Sections [${undefinedSectionsInOrdering}] were referenced in content ordering but not defined`,\n );\n\n invariant(\n actionDef.rules.length > 0,\n `Action type ${actionDef.apiName} must have at least one logic rule`,\n );\n actionDef.rules.forEach(rule => {\n if (rule.type === \"modifyObjectRule\") {\n invariant(\n parameterIds.some(id => id === rule.modifyObjectRule.objectToModify),\n `Object to modify parameter must be defined in parameters`,\n );\n }\n if (rule.type === \"deleteObjectRule\") {\n invariant(\n parameterIds.some(id => id === rule.deleteObjectRule.objectToDelete),\n `Object to delete parameter must be defined in parameters`,\n );\n }\n if (rule.type === \"modifyInterfaceRule\") {\n // The there must be a parameter for the interface, and the interface there must exist\n const interfaceParam = actionDef.parameters!.find(p =>\n p.id === rule.modifyInterfaceRule.interfaceObjectToModifyParameter\n );\n invariant(\n interfaceParam !== undefined && typeof interfaceParam.type === \"object\"\n && (interfaceParam.type.type === \"interfaceReference\"\n || interfaceParam.type.type === \"interfaceReferenceList\"),\n `Interface object to modify parameter must be an interface reference`,\n );\n const interfaceReference =\n interfaceParam.type.type === \"interfaceReference\"\n ? interfaceParam.type.interfaceReference.interfaceTypeRid\n : interfaceParam.type.interfaceReferenceList.interfaceTypeRid;\n invariant(\n ontologyDefinition.INTERFACE_TYPE[interfaceReference] !== undefined\n || importedTypes.INTERFACE_TYPE[interfaceReference] !== undefined,\n `Interface type ${interfaceReference} does not exist`,\n );\n\n // All referenced SPTs must exist on the interface\n const interfaceType =\n ontologyDefinition.INTERFACE_TYPE[interfaceReference];\n Object.keys(rule.modifyInterfaceRule.sharedPropertyValues).forEach(\n spt => {\n invariant(\n Object.keys(getFlattenedInterfaceProperties(interfaceType))\n .includes(spt),\n `Shared property type ${spt} does not exist in interface type ${interfaceReference}`,\n );\n },\n );\n }\n if (rule.type === \"addInterfaceRule\") {\n // The referenced interface must exist globally\n const interfaceType = ontologyDefinition\n .INTERFACE_TYPE[rule.addInterfaceRule.interfaceApiName]\n ?? importedTypes.INTERFACE_TYPE[rule.addInterfaceRule.interfaceApiName];\n invariant(\n interfaceType !== undefined,\n `Interface type ${rule.addInterfaceRule.interfaceApiName} does not exist`,\n );\n\n // All referenced SPTs must exist on the interface\n Object.keys(rule.addInterfaceRule.sharedPropertyValues).forEach(spt => {\n invariant(\n Object.keys(getFlattenedInterfaceProperties(interfaceType)).includes(\n spt,\n ),\n `Shared property type ${spt} does not exist in interface type ${interfaceType.apiName}`,\n );\n });\n }\n });\n\n const fullAction = {\n ...actionDef,\n apiName: apiName,\n entities: actionDef.entities ?? {\n affectedInterfaceTypes: [],\n affectedObjectTypes: [],\n affectedLinkTypes: [],\n typeGroups: [],\n },\n __type: OntologyEntityTypeEnum.ACTION_TYPE,\n } as ActionType;\n validateActionConfiguration(fullAction);\n updateOntology(fullAction);\n return fullAction;\n}\n\nexport function isPropertyParameter(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n name: string,\n type: PropertyTypeType,\n): boolean {\n if (\"interfaceType\" in def) {\n return (Object.keys(getFlattenedInterfaceProperties(def.interfaceType))\n .includes(name)\n && !Object.keys(def.nonParameterMappings ?? {}).includes(name)\n && !isStruct(type)\n && !def.excludedProperties?.includes(name));\n }\n return (\n Object.keys(def.objectType.properties ?? {}).includes(name)\n && !Object.keys(def.nonParameterMappings ?? {}).includes(name)\n && !isStruct(type)\n && !def.excludedProperties?.includes(name)\n );\n}\n\nexport function createParameters(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n propertyMap:\n | Record<string, ObjectPropertyTypeUserDefinition>\n | Record<string, InterfacePropertyType>,\n parameterSet: Set<string>,\n requiredMap?: Record<string, boolean>,\n): Array<ActionParameter> {\n const targetParams = getTargetParameters(def, parameterSet);\n return [\n ...targetParams,\n ...Array.from(parameterSet).map(\n id => {\n let propertyMetadata = undefined;\n if (id in propertyMap) {\n propertyMetadata = \"sharedPropertyType\" in propertyMap[id]\n ? propertyMap[id].sharedPropertyType\n : propertyMap[id];\n }\n return {\n id,\n displayName: def.parameterConfiguration?.[id]?.displayName\n ?? propertyMetadata?.displayName\n ?? uppercaseFirstLetter(id),\n type: def.parameterConfiguration?.[id]?.customParameterType\n ?? extractActionParameterType(propertyMetadata!),\n validation: (def.parameterConfiguration?.[id] !== undefined)\n ? {\n ...def.parameterConfiguration?.[id],\n allowedValues: def.parameterConfiguration?.[id].allowedValues\n ?? (def.parameterConfiguration?.[id].customParameterType\n ? extractAllowedValuesFromActionParameterType(\n def.parameterConfiguration?.[id].customParameterType,\n )\n : extractAllowedValuesFromPropertyType(\n propertyMetadata!.type,\n )),\n required: def.parameterConfiguration?.[id].required\n ?? (propertyMetadata?.nullability?.noNulls\n ?? false),\n }\n : {\n required: (propertyMetadata!.array ?? false)\n ? {\n listLength: propertyMetadata!.nullability\n ?.noEmptyCollections\n ? { min: 1 }\n : {},\n }\n : requiredMap?.[id]\n ?? propertyMetadata?.nullability?.noNulls\n ?? false,\n allowedValues: extractAllowedValuesFromPropertyType(\n propertyMetadata?.type!,\n ),\n },\n defaultValue: def.parameterConfiguration?.[id]?.defaultValue,\n description: def.parameterConfiguration?.[id]?.description,\n renderHint: def.parameterConfiguration?.[id]?.renderHint,\n };\n },\n ),\n ];\n}\n\nfunction getTargetParameters(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n parameterSet: Set<string>,\n): Array<ActionParameter> {\n const targetParams: Array<ActionParameter> = [];\n parameterSet.forEach(name => {\n if (name === MODIFY_OBJECT_PARAMETER) {\n targetParams.push({\n id: MODIFY_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Modify object\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"objectReferenceList\",\n objectReferenceList: { objectTypeId: def.objectType!.apiName },\n }\n : {\n type: \"objectReference\",\n objectReference: { objectTypeId: def.objectType!.apiName },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n allowedValues: { type: \"objectQuery\" },\n required: def.parameterConfiguration?.[name]?.required ?? true,\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(MODIFY_OBJECT_PARAMETER);\n }\n if (name === CREATE_OR_MODIFY_OBJECT_PARAMETER) {\n targetParams.push({\n id: CREATE_OR_MODIFY_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Create or modify object\",\n type: {\n type: \"objectReference\",\n objectReference: {\n objectTypeId: def.objectType!.apiName,\n maybeCreateObjectOption: !(\"primaryKeyOption\" in def)\n ? {\n type: \"autoGenerated\",\n autoGenerated: {},\n }\n : (def.primaryKeyOption === \"autoGenerated\")\n ? {\n type: \"autoGenerated\",\n autoGenerated: {},\n }\n : {\n type: \"userInput\",\n userInput: {},\n },\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n allowedValues: { type: \"objectQuery\" },\n required: def.parameterConfiguration?.[name]?.required ?? true,\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(CREATE_OR_MODIFY_OBJECT_PARAMETER);\n }\n if (name === DELETE_OBJECT_PARAMETER && !(\"interfaceType\" in def)) {\n targetParams.push({\n id: DELETE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Delete object\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"objectReferenceList\",\n objectReferenceList: { objectTypeId: def.objectType!.apiName },\n }\n : {\n type: \"objectReference\",\n objectReference: { objectTypeId: def.objectType!.apiName },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n allowedValues: { type: \"objectQuery\" },\n required: def.parameterConfiguration?.[name]?.required ?? true,\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(DELETE_OBJECT_PARAMETER);\n }\n if (name === CREATE_INTERFACE_OBJECT_PARAMETER && \"interfaceType\" in def) {\n targetParams.push({\n id: CREATE_INTERFACE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Object type to create\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"objectReferenceList\",\n objectReferenceList: { objectTypeId: def.objectType!.apiName },\n }\n : {\n type: \"objectTypeReference\",\n objectTypeReference: {\n interfaceTypeRids: [def.interfaceType.apiName],\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n required: true,\n allowedValues: def.objectType === undefined\n ? {\n type: \"objectTypeReference\",\n interfaceTypes: [def.interfaceType.apiName],\n }\n : {\n type: \"oneOf\",\n oneOf: [{\n label: def.objectType.displayName,\n value: {\n type: \"objectType\",\n objectType: { objectTypeId: def.objectType.apiName },\n },\n }],\n },\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(CREATE_INTERFACE_OBJECT_PARAMETER);\n }\n if (name === MODIFY_INTERFACE_OBJECT_PARAMETER && \"interfaceType\" in def) {\n targetParams.push({\n id: MODIFY_INTERFACE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Object type to modify\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"interfaceReferenceList\",\n interfaceReferenceList: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n }\n : {\n type: \"interfaceReference\",\n interfaceReference: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n required: true,\n allowedValues: def.objectType === undefined\n ? { type: \"interfaceObjectQuery\" }\n : {\n type: \"oneOf\",\n oneOf: [{\n label: def.objectType.displayName,\n value: {\n type: \"objectType\",\n objectType: { objectTypeId: def.objectType.apiName },\n },\n }],\n },\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(MODIFY_INTERFACE_OBJECT_PARAMETER);\n }\n if (name === DELETE_OBJECT_PARAMETER && \"interfaceType\" in def) {\n targetParams.push({\n id: DELETE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Delete Object\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"interfaceReferenceList\",\n interfaceReferenceList: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n }\n : {\n type: \"interfaceReference\",\n interfaceReference: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n required: true,\n allowedValues: def.objectType === undefined\n ? { type: \"interfaceObjectQuery\" }\n : {\n type: \"oneOf\",\n oneOf: [{\n label: def.objectType.displayName,\n value: {\n type: \"objectType\",\n objectType: { objectTypeId: def.objectType.apiName },\n },\n }],\n },\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(DELETE_OBJECT_PARAMETER);\n }\n });\n return targetParams;\n}\n\nfunction referencedParameterIds(\n actionDef: ActionTypeDefinition,\n): Set<ParameterId> {\n const parameterIds: Set<ParameterId> = new Set();\n\n // section definitions\n Object.values(actionDef.sections ?? {})\n .flatMap(p => p.parameters).forEach(pId => parameterIds.add(pId));\n\n // form content ordering\n (actionDef.formContentOrdering ?? []).forEach(item => {\n if (item.type === \"parameterId\") {\n parameterIds.add(item.parameterId);\n }\n });\n\n // logic rules\n actionDef.rules.forEach(rule => {\n // when visiting each rule, we also do drive-by namespace prefixing\n switch (rule.type) {\n case \"addInterfaceRule\":\n rule.addInterfaceRule.interfaceApiName = sanitize(\n rule.addInterfaceRule.interfaceApiName,\n );\n parameterIds.add(rule.addInterfaceRule.objectTypeParameter);\n Object.entries(rule.addInterfaceRule.sharedPropertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n delete rule.addInterfaceRule.sharedPropertyValues[k];\n rule.addInterfaceRule.sharedPropertyValues[sanitize(k)] = v;\n },\n );\n break;\n case \"modifyInterfaceRule\":\n parameterIds.add(\n rule.modifyInterfaceRule.interfaceObjectToModifyParameter,\n );\n Object.entries(rule.modifyInterfaceRule.sharedPropertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n delete rule.modifyInterfaceRule.sharedPropertyValues[k];\n rule.modifyInterfaceRule.sharedPropertyValues[sanitize(k)] = v;\n },\n );\n break;\n case \"addObjectRule\":\n Object.entries(rule.addObjectRule.propertyValues).forEach(([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n });\n break;\n case \"modifyObjectRule\":\n Object.entries(rule.modifyObjectRule.propertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n },\n );\n break;\n case \"addOrModifyObjectRuleV2\":\n Object.entries(rule.addOrModifyObjectRuleV2.propertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n },\n );\n break;\n }\n });\n return parameterIds;\n}\n\nfunction extractAllowedValuesFromActionParameterType(\n type: ActionParameterType,\n): ActionParameterAllowedValues {\n if (typeof type === \"object\") {\n switch (type.type) {\n case \"objectReference\":\n case \"objectReferenceList\":\n return { type: \"objectQuery\" };\n case \"struct\":\n case \"structList\":\n throw new Error(\"Structs are not supported yet\");\n default:\n throw new Error(\n `Inferred allowed values for ${type.type} not yet supported. Please explicitly provide allowed values.`,\n );\n }\n }\n switch (type) {\n case \"boolean\":\n case \"booleanList\":\n return { type: \"boolean\" };\n case \"integer\":\n case \"integerList\":\n case \"decimal\":\n case \"decimalList\":\n case \"double\":\n case \"doubleList\":\n case \"long\":\n case \"longList\":\n return { type: \"range\" };\n case \"timestamp\":\n case \"timestampList\":\n case \"date\":\n case \"dateList\":\n return { type: \"datetime\" };\n case \"string\":\n case \"stringList\":\n return { type: \"text\" };\n case \"geohash\":\n case \"geohashList\":\n return { type: \"geohash\" };\n case \"geoshape\":\n case \"geoshapeList\":\n return { type: \"geoshape\" };\n case \"mediaReference\":\n case \"mediaReferenceList\":\n return { type: \"mediaReference\" };\n case \"geotimeSeriesReference\":\n case \"geotimeSeriesReferenceList\":\n return { type: \"geotimeSeriesReference\" };\n case \"attachment\":\n case \"attachmentList\":\n return { type: \"attachment\" };\n default:\n throw new Error(\n `Inferred allowed values for ${type} not yet supported. Please explicitly provide allowed values.`,\n );\n }\n}\n\nfunction extractAllowedValuesFromPropertyType(\n type: PropertyTypeType,\n): ActionParameterAllowedValues {\n switch (type) {\n case \"boolean\":\n return { type: \"boolean\" };\n case \"byte\":\n return {\n type: \"range\",\n min: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 0 },\n },\n max: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 255 },\n },\n };\n case \"timestamp\":\n case \"date\":\n return { type: \"datetime\" };\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n return { type: \"range\" };\n case \"short\":\n return {\n type: \"range\",\n min: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 0 },\n },\n max: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 65535 },\n },\n };\n case \"string\":\n return { type: \"text\" };\n case \"geopoint\":\n return { type: \"geohash\" };\n case \"geoshape\":\n return { type: \"geoshape\" };\n case \"mediaReference\":\n return { type: \"mediaReference\" };\n case \"geotimeSeries\":\n return { type: \"geotimeSeriesReference\" };\n default:\n switch (type.type) {\n case \"marking\":\n return type.markingType === \"CBAC\"\n ? { type: \"cbacMarking\" }\n : { type: \"mandatoryMarking\" };\n case \"string\":\n return { type: \"text\" };\n case \"struct\":\n throw new Error(\"Structs are not supported yet\");\n default:\n throw new Error(\"Unknown type\");\n }\n break;\n }\n}\n\nfunction extractActionParameterType(\n pt:\n | InterfaceDefinedProperty\n | ObjectPropertyType\n | ObjectPropertyTypeUserDefinition,\n): ActionParameterType {\n const typeType = pt.type;\n if (typeof typeType === \"object\") {\n switch (typeType.type) {\n case \"marking\":\n return maybeAddList(\"marking\", pt);\n case \"string\":\n return maybeAddList(\"string\", pt);\n case \"struct\":\n throw new Error(\"Structs are not supported yet\");\n default:\n throw new Error(`Unknown type`);\n }\n }\n if (\n typeof typeType === \"string\" && isActionParameterTypePrimitive(typeType)\n ) {\n return maybeAddList(typeType, pt);\n }\n switch (typeType) {\n case \"byte\":\n case \"short\":\n return maybeAddList(\"integer\", pt);\n case \"geopoint\":\n return maybeAddList(\"geohash\", pt);\n case \"float\":\n return maybeAddList(\"double\", pt);\n case \"geotimeSeries\":\n return maybeAddList(\"geotimeSeriesReference\", pt);\n default:\n throw new Error(\"Unknown type\");\n }\n}\n\nfunction maybeAddList(\n type: ActionParameterTypePrimitive,\n pt:\n | InterfaceDefinedProperty\n | ObjectPropertyType\n | ObjectPropertyTypeUserDefinition,\n): ActionParameterType {\n return ((pt.array ?? false) ? type + \"List\" : type) as ActionParameterType;\n}\n\nexport function kebab(s: string): string {\n return s\n .replace(/([a-z])([A-Z])/g, \"$1-$2\")\n .replace(/([A-Z])([A-Z][a-z])/g, \"$1-$2\")\n .replace(/\\./g, \"-\")\n .toLowerCase();\n}\n\nfunction sanitize(s: string): string {\n return s.includes(\".\") ? s : namespace + s;\n}\n\nexport function convertValidationRule(\n actionValidation: ActionLevelValidationDefinition,\n actionParameters?: ActionParameter[],\n): Array<ActionValidationRule> {\n return actionValidation.map(rule => {\n return {\n condition: convertConditionDefinition(rule.condition, actionParameters),\n displayMetadata: rule.displayMetadata ?? {\n failureMessage: \"Did not satisfy validation\",\n typeClasses: [],\n },\n };\n });\n}\n\nfunction validateActionConfiguration(action: ActionType): void {\n const seenParameterIds = new Set<ParameterId>();\n const parameterMap: Record<string, ActionParameter> =\n action.parameters?.reduce((acc, param) => {\n acc[param.id] = param;\n return acc;\n }, {} as Record<string, ActionParameter>) ?? {};\n const orderedParameters =\n action.parameterOrdering?.map(id => parameterMap[id]) ?? action.parameters;\n orderedParameters?.forEach(param => {\n param.validation.conditionalOverrides?.forEach(override => {\n validateParameterCondition(\n override.condition,\n param.id,\n seenParameterIds,\n action.parameters,\n );\n });\n validateParameterPrefill(\n param.id,\n seenParameterIds,\n action.parameters,\n param.defaultValue,\n );\n seenParameterIds.add(param.id);\n });\n}\n\nfunction validateParameterCondition(\n condition: ConditionDefinition,\n currentParameterId: ParameterId,\n seenParameterIds: Set<ParameterId>,\n parameters?: ActionParameter[],\n): void {\n switch (condition.type) {\n case \"parameter\":\n const overrideParamId = condition.parameterId;\n invariant(\n parameters?.some(p => p.id === overrideParamId),\n `Parameter condition on ${currentParameterId} is referencing unknown parameter ${overrideParamId}`,\n );\n invariant(\n overrideParamId !== currentParameterId,\n `Parameter condition on ${currentParameterId} is referencing itself`,\n );\n invariant(\n seenParameterIds.has(overrideParamId),\n `Parameter condition on ${currentParameterId} is referencing later parameter ${overrideParamId}`,\n );\n break;\n case \"and\":\n // this will not catch the niche edge case where users use the full syntax for unions\n if (\"conditions\" in condition) {\n condition.conditions.forEach(c =>\n validateParameterCondition(\n c,\n currentParameterId,\n seenParameterIds,\n parameters,\n )\n );\n }\n break;\n case \"or\":\n if (\"conditions\" in condition) {\n condition.conditions.forEach(c =>\n validateParameterCondition(\n c,\n currentParameterId,\n seenParameterIds,\n parameters,\n )\n );\n }\n break;\n case \"comparison\":\n case \"group\":\n case \"not\":\n case \"markings\":\n case \"regex\":\n case \"redacted\":\n case \"true\":\n break;\n default:\n throw new Error(\n `Unknown condition type on parameter ${currentParameterId}`,\n );\n }\n}\n\nfunction validateParameterPrefill(\n currentParameterId: ParameterId,\n seenParameterIds: Set<ParameterId>,\n parameters?: ActionParameter[],\n defaultValue?: OntologyIrParameterPrefill,\n): void {\n if (!defaultValue) return;\n switch (defaultValue.type) {\n case \"objectParameterPropertyValue\":\n invariant(\n parameters?.some(p =>\n p.id === defaultValue.objectParameterPropertyValue.parameterId\n ),\n `Default value for parameter ${currentParameterId} is referencing unknown parameter ${defaultValue.objectParameterPropertyValue.parameterId}`,\n );\n invariant(\n seenParameterIds.has(\n defaultValue.objectParameterPropertyValue.parameterId,\n ),\n `Default value for parameter ${currentParameterId} is referencing later parameter ${defaultValue.objectParameterPropertyValue.parameterId}`,\n );\n break;\n case \"staticValue\":\n invariant(\n defaultValue.staticValue.type\n === parameters?.find(p => p.id === currentParameterId)?.type,\n `Default static value for parameter ${currentParameterId} does not match type`,\n );\n break;\n case \"staticObject\":\n case \"interfaceParameterPropertyValue\":\n case \"objectQueryPrefill\":\n case \"objectQueryPropertyValue\":\n case \"objectSetRidPrefill\":\n case \"redacted\":\n break;\n default:\n throw new Error(\n `Unknown default value type for parameter ${currentParameterId}`,\n );\n }\n}\n\nexport function validateActionParameters(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n properties: Array<string>,\n name: string,\n): void {\n // validates that parameters either exist as object properties or have a type defined\n [\n ...Object.keys(def.parameterConfiguration ?? {}),\n ].forEach(id => {\n invariant(\n properties.includes(id)\n || properties.includes(addNamespaceIfNone(id))\n || (def.parameterConfiguration?.[id].customParameterType !== undefined)\n || isTargetParameter(id),\n `Parameter ${id} does not exist as a property on ${name} and its type is not explicitly defined`,\n );\n });\n [\n ...Object.keys(def.nonParameterMappings ?? {}),\n ...def.excludedProperties ?? [],\n ].forEach(id => {\n invariant(\n properties.includes(id)\n || properties.includes(addNamespaceIfNone(id))\n || properties.includes(withoutNamespace(id)),\n `Property ${id} does not exist as a property on ${name}`,\n );\n });\n}\n\n// Parameters with configurations will be ordered first in the order they were defined\n// followed by the rest of the parameters in the order they were defined on the object type.\nexport function createDefaultParameterOrdering(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n properties: Array<string>,\n parameters: ActionParameter[],\n priorityId?: string,\n): string[] {\n return [\n ...priorityId ? [priorityId] : [],\n ...Object.keys(def.parameterConfiguration ?? {}).filter(id =>\n id !== priorityId\n ),\n ...properties.filter(id =>\n !def.parameterConfiguration?.[id] && parameters.some(p => p.id === id)\n ),\n ];\n}\n\nexport function validateParameterOrdering(\n parameterOrdering: string[],\n parameterSet: Set<string>,\n actionApiName: string,\n): void {\n const orderingSet = new Set(parameterOrdering);\n const missingParameters = [...parameterSet].filter(\n param => !orderingSet.has(param),\n );\n const extraneousParameters = parameterOrdering.filter(param =>\n !parameterSet.has(param)\n );\n invariant(\n extraneousParameters.length === 0\n && missingParameters.length === 0,\n `Action parameter ordering for ${actionApiName} does not match expected parameters. Extraneous parameters in ordering: {${extraneousParameters}}, Missing parameters in ordering: {${missingParameters}}`,\n );\n}\n\nexport function isTargetParameter(parameterId: string): boolean {\n return parameterId === MODIFY_OBJECT_PARAMETER\n || parameterId === CREATE_OR_MODIFY_OBJECT_PARAMETER\n || parameterId === CREATE_INTERFACE_OBJECT_PARAMETER\n || parameterId === MODIFY_INTERFACE_OBJECT_PARAMETER;\n}\n\nexport function addNamespaceToActionDefinition(\n def: InterfaceActionTypeUserDefinition,\n): void {\n def.parameterConfiguration = Object.fromEntries(\n Object.entries(def.parameterConfiguration ?? {})\n .map((\n [id, config],\n ) => [getInterfaceParameterName(def, id), config]),\n );\n def.nonParameterMappings = Object.fromEntries(\n Object.entries(def.nonParameterMappings ?? {})\n .map(([id, value]) => [addNamespaceIfNone(id), value]),\n );\n def.excludedProperties = (def.excludedProperties\n ?? []).map(id => addNamespaceIfNone(id));\n def.sections = def.sections?.map(section => ({\n ...section,\n parameters: section.parameters.map(p => getInterfaceParameterName(def, p)),\n }));\n}\n\n// Adds a namespace to an interface parameter name if it is supposed to be namespaced\nexport function getInterfaceParameterName(\n def: InterfaceActionTypeUserDefinition,\n parameter: string,\n): string {\n if (def.useNonNamespacedParameters) {\n return getNonNamespacedParameterName(def, parameter);\n }\n return (isTargetParameter(parameter)\n || !Object.keys(def.interfaceType.propertiesV2).includes(\n addNamespaceIfNone(parameter),\n ))\n ? parameter\n : addNamespaceIfNone(parameter);\n}\n\nexport function getNonNamespacedParameterName(\n def: InterfaceActionTypeUserDefinition,\n parameter: string,\n): string {\n return def.conflictingParameterOverrides?.[parameter]\n ?? (parameter.split(\".\").pop() || parameter);\n}\n\nexport function createInterfacePropertyLogicRuleValue(\n id: string,\n def: InterfacePropertyType,\n actionDef: InterfaceActionTypeUserDefinition,\n): OntologyIrInterfacePropertyLogicRuleValue {\n const type = getInterfacePropertyTypeType(def);\n const array = isInterfaceSharedPropertyType(def)\n ? def.sharedPropertyType.array\n : def.array;\n const parameterId = actionDef.useNonNamespacedParameters\n ? getNonNamespacedParameterName(actionDef, id)\n : id;\n if (isStruct(type)) {\n return {\n type: \"structLogicRuleValue\",\n structLogicRuleValue: Object.fromEntries(\n Object.entries(type.structDefinition).map(([apiName, fieldValue]) => {\n return [\n apiName,\n array\n ? {\n type: \"structListParameterFieldValue\",\n structListParameterFieldValue: {\n parameterId: parameterId,\n structFieldApiName: apiName,\n },\n }\n : {\n type: \"structParameterFieldValue\",\n structParameterFieldValue: {\n parameterId: parameterId,\n structFieldApiName: apiName,\n },\n },\n ];\n }),\n ),\n };\n }\n return {\n type: \"logicRuleValue\",\n logicRuleValue: {\n type: \"parameterId\",\n parameterId: parameterId,\n },\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"defineAction.js","names":["invariant","convertConditionDefinition","isActionParameterTypePrimitive","OntologyEntityTypeEnum","uppercaseFirstLetter","addNamespaceIfNone","importedTypes","namespace","ontologyDefinition","updateOntology","withoutNamespace","getFlattenedInterfaceProperties","getInterfacePropertyTypeType","isInterfaceSharedPropertyType","isStruct","MODIFY_OBJECT_PARAMETER","CREATE_OR_MODIFY_OBJECT_PARAMETER","DELETE_OBJECT_PARAMETER","CREATE_INTERFACE_OBJECT_PARAMETER","MODIFY_INTERFACE_OBJECT_PARAMETER","defineAction","actionDef","apiName","parameterIds","parameters","map","p","id","ACTION_TYPE","undefined","Error","test","process","env","NODE_ENV","parameterIdsSet","Set","size","length","parameterIdsNotFound","Array","from","referencedParameterIds","filter","has","JSON","stringify","definedSectionIds","Object","keys","sections","undefinedSectionsInOrdering","formContentOrdering","flatMap","s","type","sectionId","sId","rules","forEach","rule","some","modifyObjectRule","objectToModify","deleteObjectRule","objectToDelete","interfaceParam","find","modifyInterfaceRule","interfaceObjectToModifyParameter","interfaceReference","interfaceTypeRid","interfaceReferenceList","INTERFACE_TYPE","interfaceType","sharedPropertyValues","spt","includes","addInterfaceRule","interfaceApiName","fullAction","entities","affectedInterfaceTypes","affectedObjectTypes","affectedLinkTypes","typeGroups","__type","validateActionConfiguration","isPropertyParameter","def","name","nonParameterMappings","excludedProperties","objectType","properties","createParameters","propertyMap","parameterSet","requiredMap","targetParams","getTargetParameters","propertyMetadata","sharedPropertyType","displayName","parameterConfiguration","customParameterType","extractActionParameterType","validation","allowedValues","extractAllowedValuesFromActionParameterType","extractAllowedValuesFromPropertyType","required","nullability","noNulls","array","listLength","noEmptyCollections","min","defaultValue","description","renderHint","push","objectReferenceList","objectTypeId","objectReference","delete","maybeCreateObjectOption","autoGenerated","primaryKeyOption","userInput","objectTypeReference","interfaceTypeRids","interfaceTypes","oneOf","label","value","values","pId","add","item","parameterId","sanitize","objectTypeParameter","entries","k","v","addObjectRule","propertyValues","addOrModifyObjectRuleV2","staticValue","integer","max","markingType","pt","typeType","maybeAddList","kebab","replace","toLowerCase","convertValidationRule","actionValidation","actionParameters","condition","displayMetadata","failureMessage","typeClasses","action","seenParameterIds","parameterMap","reduce","acc","param","orderedParameters","parameterOrdering","conditionalOverrides","override","validateParameterCondition","validateParameterPrefill","currentParameterId","overrideParamId","conditions","c","objectParameterPropertyValue","validateActionParameters","isTargetParameter","createDefaultParameterOrdering","priorityId","validateParameterOrdering","actionApiName","orderingSet","missingParameters","extraneousParameters","addNamespaceToActionDefinition","fromEntries","config","getInterfaceParameterName","section","parameter","useNonNamespacedParameters","getNonNamespacedParameterName","propertiesV2","conflictingParameterOverrides","split","pop","createInterfacePropertyLogicRuleValue","structLogicRuleValue","structDefinition","fieldValue","structListParameterFieldValue","structFieldApiName","structParameterFieldValue","logicRuleValue"],"sources":["defineAction.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n OntologyIrInterfacePropertyLogicRuleValue,\n OntologyIrParameterPrefill,\n ParameterId,\n} from \"@osdk/client.unstable\";\nimport invariant from \"tiny-invariant\";\nimport { convertConditionDefinition } from \"../conversion/toMarketplace/convertConditionDefinition.js\";\nimport type { ActionLevelValidationDefinition } from \"./action/ActionLevelValidationDefinition.js\";\nimport { type ActionParameter } from \"./action/ActionParameter.js\";\nimport type { ActionParameterAllowedValues } from \"./action/ActionParameterAllowedValues.js\";\nimport type { ActionParameterConfiguration } from \"./action/ActionParameterConfiguration.js\";\nimport {\n type ActionParameterType,\n type ActionParameterTypePrimitive,\n isActionParameterTypePrimitive,\n} from \"./action/ActionParameterType.js\";\nimport type { ActionSection } from \"./action/ActionSection.js\";\nimport type { ActionStatus } from \"./action/ActionStatus.js\";\nimport { type ActionType } from \"./action/ActionType.js\";\nimport type { ActionValidationRule } from \"./action/ActionValidationRule.js\";\nimport type { ConditionDefinition } from \"./action/ConditionDefinition.js\";\nimport type { DefaultFormat } from \"./action/DefaultFormat.js\";\nimport type { MappingValue } from \"./action/MappingValue.js\";\nimport type { SubmissionMetadata } from \"./action/SubmissionMetadata.js\";\nimport type { TableConfiguration } from \"./action/TableConfiguration.js\";\nimport type { BlueprintIcon } from \"./common/BlueprintIcons.js\";\nimport { OntologyEntityTypeEnum } from \"./common/OntologyEntityTypeEnum.js\";\nimport { uppercaseFirstLetter } from \"./defineObject.js\";\nimport {\n addNamespaceIfNone,\n importedTypes,\n namespace,\n ontologyDefinition,\n updateOntology,\n withoutNamespace,\n} from \"./defineOntology.js\";\nimport { getFlattenedInterfaceProperties } from \"./interface/getFlattenedInterfaceProperties.js\";\nimport {\n getInterfacePropertyTypeType,\n type InterfaceDefinedProperty,\n type InterfacePropertyType,\n isInterfaceSharedPropertyType,\n} from \"./interface/InterfacePropertyType.js\";\nimport type { InterfaceType } from \"./interface/InterfaceType.js\";\nimport type { ObjectPropertyType } from \"./object/ObjectPropertyType.js\";\nimport type { ObjectPropertyTypeUserDefinition } from \"./object/ObjectPropertyTypeUserDefinition.js\";\nimport type { ObjectTypeDefinition } from \"./object/ObjectTypeDefinition.js\";\nimport {\n isStruct,\n type PropertyTypeType,\n} from \"./properties/PropertyTypeType.js\";\n\nexport const MODIFY_OBJECT_PARAMETER: string = \"objectToModifyParameter\";\n\nexport const CREATE_OR_MODIFY_OBJECT_PARAMETER: string =\n \"objectToCreateOrModifyParameter\";\n\nexport const DELETE_OBJECT_PARAMETER: string = \"objectToDeleteParameter\";\n\nexport const CREATE_INTERFACE_OBJECT_PARAMETER: string = \"objectTypeParameter\";\n\nexport const MODIFY_INTERFACE_OBJECT_PARAMETER: string =\n \"interfaceObjectToModifyParameter\";\n\nexport type ActionTypeDefinition = Omit<ActionType, \"__type\">;\n\nexport type ActionTypeUserDefinition = {\n objectType: ObjectTypeDefinition;\n apiName?: string;\n displayName?: string;\n status?: ActionStatus;\n parameterConfiguration?: Record<string, ActionParameterConfiguration>;\n nonParameterMappings?: Record<string, MappingValue>;\n actionLevelValidation?: ActionLevelValidationDefinition;\n excludedProperties?: Array<ParameterId>;\n sections?: Array<ActionSection>;\n defaultFormat?: DefaultFormat;\n enableLayoutSwitch?: boolean;\n tableConfiguration?: TableConfiguration;\n parameterOrdering?: Array<string>;\n submissionMetadata?: SubmissionMetadata;\n // Used for Create or Modify actions\n primaryKeyOption?: \"autoGenerated\" | \"userInput\";\n icon?: { locator: BlueprintIcon; color: string };\n};\n\nexport type InterfaceActionTypeUserDefinition = {\n interfaceType: InterfaceType;\n objectType?: ObjectTypeDefinition;\n apiName?: string;\n displayName?: string;\n status?: ActionStatus;\n parameterConfiguration?: Record<string, ActionParameterConfiguration>;\n nonParameterMappings?: Record<string, MappingValue>;\n actionLevelValidation?: ActionLevelValidationDefinition;\n excludedProperties?: Array<string>;\n sections?: Array<ActionSection>;\n defaultFormat?: DefaultFormat;\n enableLayoutSwitch?: boolean;\n tableConfiguration?: TableConfiguration;\n parameterOrdering?: Array<string>;\n submissionMetadata?: SubmissionMetadata;\n // Use the below options for Java OSDK compatibility\n useNonNamespacedParameters?: boolean;\n conflictingParameterOverrides?: Record<string, string>;\n icon?: { locator: BlueprintIcon; color: string };\n};\n\nexport function defineAction(actionDef: ActionTypeDefinition): ActionType {\n const apiName = namespace + actionDef.apiName;\n const parameterIds = (actionDef.parameters ?? []).map(p => p.id);\n\n if (\n ontologyDefinition[OntologyEntityTypeEnum.ACTION_TYPE][apiName]\n !== undefined\n ) {\n throw new Error(\n `Action type with apiName ${actionDef.apiName} is already defined`,\n );\n }\n invariant(\n /^[a-z0-9]+(-[a-z0-9]+)*$/.test(actionDef.apiName),\n `Action type apiName \"${actionDef.apiName}\" must be alphanumeric, lowercase, and kebab-case`,\n );\n\n const parameterIdsSet = new Set(parameterIds);\n invariant(\n parameterIdsSet.size === parameterIds.length,\n `Parameter ids must be unique`,\n );\n\n const parameterIdsNotFound = Array.from(referencedParameterIds(actionDef))\n .filter(p => !parameterIdsSet.has(p));\n invariant(\n parameterIdsNotFound.length === 0,\n `Parameters ${\n JSON.stringify(parameterIdsNotFound)\n } were referenced but not defined`,\n );\n\n const definedSectionIds = new Set(Object.keys(actionDef.sections ?? []));\n const undefinedSectionsInOrdering = (actionDef.formContentOrdering ?? [])\n .flatMap(\n s => s.type === \"parameterId\" ? [] : [s.sectionId],\n ).filter(sId => !definedSectionIds.has(sId));\n invariant(\n undefinedSectionsInOrdering.length === 0,\n `Sections [${undefinedSectionsInOrdering}] were referenced in content ordering but not defined`,\n );\n\n invariant(\n actionDef.rules.length > 0,\n `Action type ${actionDef.apiName} must have at least one logic rule`,\n );\n actionDef.rules.forEach(rule => {\n if (rule.type === \"modifyObjectRule\") {\n invariant(\n parameterIds.some(id => id === rule.modifyObjectRule.objectToModify),\n `Object to modify parameter must be defined in parameters`,\n );\n }\n if (rule.type === \"deleteObjectRule\") {\n invariant(\n parameterIds.some(id => id === rule.deleteObjectRule.objectToDelete),\n `Object to delete parameter must be defined in parameters`,\n );\n }\n if (rule.type === \"modifyInterfaceRule\") {\n // The there must be a parameter for the interface, and the interface there must exist\n const interfaceParam = actionDef.parameters!.find(p =>\n p.id === rule.modifyInterfaceRule.interfaceObjectToModifyParameter\n );\n invariant(\n interfaceParam !== undefined && typeof interfaceParam.type === \"object\"\n && (interfaceParam.type.type === \"interfaceReference\"\n || interfaceParam.type.type === \"interfaceReferenceList\"),\n `Interface object to modify parameter must be an interface reference`,\n );\n const interfaceReference =\n interfaceParam.type.type === \"interfaceReference\"\n ? interfaceParam.type.interfaceReference.interfaceTypeRid\n : interfaceParam.type.interfaceReferenceList.interfaceTypeRid;\n invariant(\n ontologyDefinition.INTERFACE_TYPE[interfaceReference] !== undefined\n || importedTypes.INTERFACE_TYPE[interfaceReference] !== undefined,\n `Interface type ${interfaceReference} does not exist`,\n );\n\n // All referenced SPTs must exist on the interface\n const interfaceType =\n ontologyDefinition.INTERFACE_TYPE[interfaceReference];\n Object.keys(rule.modifyInterfaceRule.sharedPropertyValues).forEach(\n spt => {\n invariant(\n Object.keys(getFlattenedInterfaceProperties(interfaceType))\n .includes(spt),\n `Shared property type ${spt} does not exist in interface type ${interfaceReference}`,\n );\n },\n );\n }\n if (rule.type === \"addInterfaceRule\") {\n // The referenced interface must exist globally\n const interfaceType = ontologyDefinition\n .INTERFACE_TYPE[rule.addInterfaceRule.interfaceApiName]\n ?? importedTypes.INTERFACE_TYPE[rule.addInterfaceRule.interfaceApiName];\n invariant(\n interfaceType !== undefined,\n `Interface type ${rule.addInterfaceRule.interfaceApiName} does not exist`,\n );\n\n // All referenced SPTs must exist on the interface\n Object.keys(rule.addInterfaceRule.sharedPropertyValues).forEach(spt => {\n invariant(\n Object.keys(getFlattenedInterfaceProperties(interfaceType)).includes(\n spt,\n ),\n `Shared property type ${spt} does not exist in interface type ${interfaceType.apiName}`,\n );\n });\n }\n });\n\n const fullAction = {\n ...actionDef,\n apiName: apiName,\n entities: actionDef.entities ?? {\n affectedInterfaceTypes: [],\n affectedObjectTypes: [],\n affectedLinkTypes: [],\n typeGroups: [],\n },\n __type: OntologyEntityTypeEnum.ACTION_TYPE,\n } as ActionType;\n validateActionConfiguration(fullAction);\n updateOntology(fullAction);\n return fullAction;\n}\n\nexport function isPropertyParameter(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n name: string,\n type: PropertyTypeType,\n): boolean {\n if (\"interfaceType\" in def) {\n return (Object.keys(getFlattenedInterfaceProperties(def.interfaceType))\n .includes(name)\n && !Object.keys(def.nonParameterMappings ?? {}).includes(name)\n && !isStruct(type)\n && !def.excludedProperties?.includes(name));\n }\n return (\n Object.keys(def.objectType.properties ?? {}).includes(name)\n && !Object.keys(def.nonParameterMappings ?? {}).includes(name)\n && !isStruct(type)\n && !def.excludedProperties?.includes(name)\n );\n}\n\nexport function createParameters(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n propertyMap:\n | Record<string, ObjectPropertyTypeUserDefinition>\n | Record<string, InterfacePropertyType>,\n parameterSet: Set<string>,\n requiredMap?: Record<string, boolean>,\n): Array<ActionParameter> {\n const targetParams = getTargetParameters(def, parameterSet);\n return [\n ...targetParams,\n ...Array.from(parameterSet).map(\n id => {\n let propertyMetadata = undefined;\n if (id in propertyMap) {\n propertyMetadata = \"sharedPropertyType\" in propertyMap[id]\n ? propertyMap[id].sharedPropertyType\n : propertyMap[id];\n }\n return {\n id,\n displayName: def.parameterConfiguration?.[id]?.displayName\n ?? propertyMetadata?.displayName\n ?? uppercaseFirstLetter(id),\n type: def.parameterConfiguration?.[id]?.customParameterType\n ?? extractActionParameterType(propertyMetadata!),\n validation: (def.parameterConfiguration?.[id] !== undefined)\n ? {\n ...def.parameterConfiguration?.[id],\n allowedValues: def.parameterConfiguration?.[id].allowedValues\n ?? (def.parameterConfiguration?.[id].customParameterType\n ? extractAllowedValuesFromActionParameterType(\n def.parameterConfiguration?.[id].customParameterType,\n )\n : extractAllowedValuesFromPropertyType(\n propertyMetadata!.type,\n )),\n required: def.parameterConfiguration?.[id].required\n ?? (propertyMetadata?.nullability?.noNulls\n ?? false),\n }\n : {\n required: (propertyMetadata!.array ?? false)\n ? {\n listLength: propertyMetadata!.nullability\n ?.noEmptyCollections\n ? { min: 1 }\n : {},\n }\n : requiredMap?.[id]\n ?? propertyMetadata?.nullability?.noNulls\n ?? false,\n allowedValues: extractAllowedValuesFromPropertyType(\n propertyMetadata?.type!,\n ),\n },\n defaultValue: def.parameterConfiguration?.[id]?.defaultValue,\n description: def.parameterConfiguration?.[id]?.description,\n renderHint: def.parameterConfiguration?.[id]?.renderHint,\n };\n },\n ),\n ];\n}\n\nfunction getTargetParameters(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n parameterSet: Set<string>,\n): Array<ActionParameter> {\n const targetParams: Array<ActionParameter> = [];\n parameterSet.forEach(name => {\n if (name === MODIFY_OBJECT_PARAMETER) {\n targetParams.push({\n id: MODIFY_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Modify object\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"objectReferenceList\",\n objectReferenceList: { objectTypeId: def.objectType!.apiName },\n }\n : {\n type: \"objectReference\",\n objectReference: { objectTypeId: def.objectType!.apiName },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n allowedValues: { type: \"objectQuery\" },\n required: def.parameterConfiguration?.[name]?.required ?? true,\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(MODIFY_OBJECT_PARAMETER);\n }\n if (name === CREATE_OR_MODIFY_OBJECT_PARAMETER) {\n targetParams.push({\n id: CREATE_OR_MODIFY_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Create or modify object\",\n type: {\n type: \"objectReference\",\n objectReference: {\n objectTypeId: def.objectType!.apiName,\n maybeCreateObjectOption: !(\"primaryKeyOption\" in def)\n ? {\n type: \"autoGenerated\",\n autoGenerated: {},\n }\n : (def.primaryKeyOption === \"autoGenerated\")\n ? {\n type: \"autoGenerated\",\n autoGenerated: {},\n }\n : {\n type: \"userInput\",\n userInput: {},\n },\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n allowedValues: { type: \"objectQuery\" },\n required: def.parameterConfiguration?.[name]?.required ?? true,\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(CREATE_OR_MODIFY_OBJECT_PARAMETER);\n }\n if (name === DELETE_OBJECT_PARAMETER && !(\"interfaceType\" in def)) {\n targetParams.push({\n id: DELETE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Delete object\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"objectReferenceList\",\n objectReferenceList: { objectTypeId: def.objectType!.apiName },\n }\n : {\n type: \"objectReference\",\n objectReference: { objectTypeId: def.objectType!.apiName },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n allowedValues: { type: \"objectQuery\" },\n required: def.parameterConfiguration?.[name]?.required ?? true,\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(DELETE_OBJECT_PARAMETER);\n }\n if (name === CREATE_INTERFACE_OBJECT_PARAMETER && \"interfaceType\" in def) {\n targetParams.push({\n id: CREATE_INTERFACE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Object type to create\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"objectReferenceList\",\n objectReferenceList: { objectTypeId: def.objectType!.apiName },\n }\n : {\n type: \"objectTypeReference\",\n objectTypeReference: {\n interfaceTypeRids: [def.interfaceType.apiName],\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n required: true,\n allowedValues: def.objectType === undefined\n ? {\n type: \"objectTypeReference\",\n interfaceTypes: [def.interfaceType.apiName],\n }\n : {\n type: \"oneOf\",\n oneOf: [{\n label: def.objectType.displayName,\n value: {\n type: \"objectType\",\n objectType: { objectTypeId: def.objectType.apiName },\n },\n }],\n },\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(CREATE_INTERFACE_OBJECT_PARAMETER);\n }\n if (name === MODIFY_INTERFACE_OBJECT_PARAMETER && \"interfaceType\" in def) {\n targetParams.push({\n id: MODIFY_INTERFACE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Object type to modify\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"interfaceReferenceList\",\n interfaceReferenceList: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n }\n : {\n type: \"interfaceReference\",\n interfaceReference: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n required: true,\n allowedValues: def.objectType === undefined\n ? { type: \"interfaceObjectQuery\" }\n : {\n type: \"oneOf\",\n oneOf: [{\n label: def.objectType.displayName,\n value: {\n type: \"objectType\",\n objectType: { objectTypeId: def.objectType.apiName },\n },\n }],\n },\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(MODIFY_INTERFACE_OBJECT_PARAMETER);\n }\n if (name === DELETE_OBJECT_PARAMETER && \"interfaceType\" in def) {\n targetParams.push({\n id: DELETE_OBJECT_PARAMETER,\n displayName: def.parameterConfiguration?.[name]?.displayName\n ?? \"Delete Object\",\n type: (typeof def.parameterConfiguration?.[name]?.required === \"object\"\n && \"listLength\" in def.parameterConfiguration?.[name]?.required)\n ? {\n type: \"interfaceReferenceList\",\n interfaceReferenceList: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n }\n : {\n type: \"interfaceReference\",\n interfaceReference: {\n interfaceTypeRid: def.interfaceType.apiName,\n },\n },\n validation: {\n ...def.parameterConfiguration?.[name],\n required: true,\n allowedValues: def.objectType === undefined\n ? { type: \"interfaceObjectQuery\" }\n : {\n type: \"oneOf\",\n oneOf: [{\n label: def.objectType.displayName,\n value: {\n type: \"objectType\",\n objectType: { objectTypeId: def.objectType.apiName },\n },\n }],\n },\n },\n defaultValue: def.parameterConfiguration?.[name]?.defaultValue,\n description: def.parameterConfiguration?.[name]?.description,\n });\n parameterSet.delete(DELETE_OBJECT_PARAMETER);\n }\n });\n return targetParams;\n}\n\nfunction referencedParameterIds(\n actionDef: ActionTypeDefinition,\n): Set<ParameterId> {\n const parameterIds: Set<ParameterId> = new Set();\n\n // section definitions\n Object.values(actionDef.sections ?? {})\n .flatMap(p => p.parameters).forEach(pId => parameterIds.add(pId));\n\n // form content ordering\n (actionDef.formContentOrdering ?? []).forEach(item => {\n if (item.type === \"parameterId\") {\n parameterIds.add(item.parameterId);\n }\n });\n\n // logic rules\n actionDef.rules.forEach(rule => {\n // when visiting each rule, we also do drive-by namespace prefixing\n switch (rule.type) {\n case \"addInterfaceRule\":\n rule.addInterfaceRule.interfaceApiName = sanitize(\n rule.addInterfaceRule.interfaceApiName,\n );\n parameterIds.add(rule.addInterfaceRule.objectTypeParameter);\n Object.entries(rule.addInterfaceRule.sharedPropertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n delete rule.addInterfaceRule.sharedPropertyValues[k];\n rule.addInterfaceRule.sharedPropertyValues[sanitize(k)] = v;\n },\n );\n break;\n case \"modifyInterfaceRule\":\n parameterIds.add(\n rule.modifyInterfaceRule.interfaceObjectToModifyParameter,\n );\n Object.entries(rule.modifyInterfaceRule.sharedPropertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n delete rule.modifyInterfaceRule.sharedPropertyValues[k];\n rule.modifyInterfaceRule.sharedPropertyValues[sanitize(k)] = v;\n },\n );\n break;\n case \"addObjectRule\":\n Object.entries(rule.addObjectRule.propertyValues).forEach(([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n });\n break;\n case \"modifyObjectRule\":\n Object.entries(rule.modifyObjectRule.propertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n },\n );\n break;\n case \"addOrModifyObjectRuleV2\":\n Object.entries(rule.addOrModifyObjectRuleV2.propertyValues).forEach(\n ([k, v]) => {\n if (v.type === \"parameterId\") {\n parameterIds.add(v.parameterId);\n }\n },\n );\n break;\n }\n });\n return parameterIds;\n}\n\nfunction extractAllowedValuesFromActionParameterType(\n type: ActionParameterType,\n): ActionParameterAllowedValues {\n if (typeof type === \"object\") {\n switch (type.type) {\n case \"objectReference\":\n case \"objectReferenceList\":\n return { type: \"objectQuery\" };\n case \"struct\":\n case \"structList\":\n throw new Error(\"Structs are not supported yet\");\n default:\n throw new Error(\n `Inferred allowed values for ${type.type} not yet supported. Please explicitly provide allowed values.`,\n );\n }\n }\n switch (type) {\n case \"boolean\":\n case \"booleanList\":\n return { type: \"boolean\" };\n case \"integer\":\n case \"integerList\":\n case \"decimal\":\n case \"decimalList\":\n case \"double\":\n case \"doubleList\":\n case \"long\":\n case \"longList\":\n return { type: \"range\" };\n case \"timestamp\":\n case \"timestampList\":\n case \"date\":\n case \"dateList\":\n return { type: \"datetime\" };\n case \"string\":\n case \"stringList\":\n return { type: \"text\" };\n case \"geohash\":\n case \"geohashList\":\n return { type: \"geohash\" };\n case \"geoshape\":\n case \"geoshapeList\":\n return { type: \"geoshape\" };\n case \"mediaReference\":\n case \"mediaReferenceList\":\n return { type: \"mediaReference\" };\n case \"geotimeSeriesReference\":\n case \"geotimeSeriesReferenceList\":\n return { type: \"geotimeSeriesReference\" };\n case \"attachment\":\n case \"attachmentList\":\n return { type: \"attachment\" };\n default:\n throw new Error(\n `Inferred allowed values for ${type} not yet supported. Please explicitly provide allowed values.`,\n );\n }\n}\n\nfunction extractAllowedValuesFromPropertyType(\n type: PropertyTypeType,\n): ActionParameterAllowedValues {\n switch (type) {\n case \"boolean\":\n return { type: \"boolean\" };\n case \"byte\":\n return {\n type: \"range\",\n min: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 0 },\n },\n max: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 255 },\n },\n };\n case \"timestamp\":\n case \"date\":\n return { type: \"datetime\" };\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n return { type: \"range\" };\n case \"short\":\n return {\n type: \"range\",\n min: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 0 },\n },\n max: {\n type: \"staticValue\",\n staticValue: { type: \"integer\", integer: 65535 },\n },\n };\n case \"string\":\n return { type: \"text\" };\n case \"geopoint\":\n return { type: \"geohash\" };\n case \"geoshape\":\n return { type: \"geoshape\" };\n case \"mediaReference\":\n return { type: \"mediaReference\" };\n case \"geotimeSeries\":\n return { type: \"geotimeSeriesReference\" };\n case \"attachment\":\n return { type: \"attachment\" };\n default:\n switch (type.type) {\n case \"marking\":\n return type.markingType === \"CBAC\"\n ? { type: \"cbacMarking\" }\n : { type: \"mandatoryMarking\" };\n case \"string\":\n return { type: \"text\" };\n case \"struct\":\n throw new Error(\"Structs are not supported yet\");\n default:\n throw new Error(\"Unknown type\");\n }\n break;\n }\n}\n\nfunction extractActionParameterType(\n pt:\n | InterfaceDefinedProperty\n | ObjectPropertyType\n | ObjectPropertyTypeUserDefinition,\n): ActionParameterType {\n const typeType = pt.type;\n if (typeof typeType === \"object\") {\n switch (typeType.type) {\n case \"marking\":\n return maybeAddList(\"marking\", pt);\n case \"string\":\n return maybeAddList(\"string\", pt);\n case \"struct\":\n throw new Error(\"Structs are not supported yet\");\n default:\n throw new Error(`Unknown type`);\n }\n }\n if (\n typeof typeType === \"string\" && isActionParameterTypePrimitive(typeType)\n ) {\n return maybeAddList(typeType, pt);\n }\n switch (typeType) {\n case \"byte\":\n case \"short\":\n return maybeAddList(\"integer\", pt);\n case \"geopoint\":\n return maybeAddList(\"geohash\", pt);\n case \"float\":\n return maybeAddList(\"double\", pt);\n case \"geotimeSeries\":\n return maybeAddList(\"geotimeSeriesReference\", pt);\n default:\n throw new Error(\"Unknown type\");\n }\n}\n\nfunction maybeAddList(\n type: ActionParameterTypePrimitive,\n pt:\n | InterfaceDefinedProperty\n | ObjectPropertyType\n | ObjectPropertyTypeUserDefinition,\n): ActionParameterType {\n return ((pt.array ?? false) ? type + \"List\" : type) as ActionParameterType;\n}\n\nexport function kebab(s: string): string {\n return s\n .replace(/([a-z])([A-Z])/g, \"$1-$2\")\n .replace(/([A-Z])([A-Z][a-z])/g, \"$1-$2\")\n .replace(/\\./g, \"-\")\n .toLowerCase();\n}\n\nfunction sanitize(s: string): string {\n return s.includes(\".\") ? s : namespace + s;\n}\n\nexport function convertValidationRule(\n actionValidation: ActionLevelValidationDefinition,\n actionParameters?: ActionParameter[],\n): Array<ActionValidationRule> {\n return actionValidation.map(rule => {\n return {\n condition: convertConditionDefinition(rule.condition, actionParameters),\n displayMetadata: rule.displayMetadata ?? {\n failureMessage: \"Did not satisfy validation\",\n typeClasses: [],\n },\n };\n });\n}\n\nfunction validateActionConfiguration(action: ActionType): void {\n const seenParameterIds = new Set<ParameterId>();\n const parameterMap: Record<string, ActionParameter> =\n action.parameters?.reduce((acc, param) => {\n acc[param.id] = param;\n return acc;\n }, {} as Record<string, ActionParameter>) ?? {};\n const orderedParameters =\n action.parameterOrdering?.map(id => parameterMap[id]) ?? action.parameters;\n orderedParameters?.forEach(param => {\n param.validation.conditionalOverrides?.forEach(override => {\n validateParameterCondition(\n override.condition,\n param.id,\n seenParameterIds,\n action.parameters,\n );\n });\n validateParameterPrefill(\n param.id,\n seenParameterIds,\n action.parameters,\n param.defaultValue,\n );\n seenParameterIds.add(param.id);\n });\n}\n\nfunction validateParameterCondition(\n condition: ConditionDefinition,\n currentParameterId: ParameterId,\n seenParameterIds: Set<ParameterId>,\n parameters?: ActionParameter[],\n): void {\n switch (condition.type) {\n case \"parameter\":\n const overrideParamId = condition.parameterId;\n invariant(\n parameters?.some(p => p.id === overrideParamId),\n `Parameter condition on ${currentParameterId} is referencing unknown parameter ${overrideParamId}`,\n );\n invariant(\n overrideParamId !== currentParameterId,\n `Parameter condition on ${currentParameterId} is referencing itself`,\n );\n invariant(\n seenParameterIds.has(overrideParamId),\n `Parameter condition on ${currentParameterId} is referencing later parameter ${overrideParamId}`,\n );\n break;\n case \"and\":\n // this will not catch the niche edge case where users use the full syntax for unions\n if (\"conditions\" in condition) {\n condition.conditions.forEach(c =>\n validateParameterCondition(\n c,\n currentParameterId,\n seenParameterIds,\n parameters,\n )\n );\n }\n break;\n case \"or\":\n if (\"conditions\" in condition) {\n condition.conditions.forEach(c =>\n validateParameterCondition(\n c,\n currentParameterId,\n seenParameterIds,\n parameters,\n )\n );\n }\n break;\n case \"comparison\":\n case \"group\":\n case \"not\":\n case \"markings\":\n case \"regex\":\n case \"redacted\":\n case \"true\":\n break;\n default:\n throw new Error(\n `Unknown condition type on parameter ${currentParameterId}`,\n );\n }\n}\n\nfunction validateParameterPrefill(\n currentParameterId: ParameterId,\n seenParameterIds: Set<ParameterId>,\n parameters?: ActionParameter[],\n defaultValue?: OntologyIrParameterPrefill,\n): void {\n if (!defaultValue) return;\n switch (defaultValue.type) {\n case \"objectParameterPropertyValue\":\n invariant(\n parameters?.some(p =>\n p.id === defaultValue.objectParameterPropertyValue.parameterId\n ),\n `Default value for parameter ${currentParameterId} is referencing unknown parameter ${defaultValue.objectParameterPropertyValue.parameterId}`,\n );\n invariant(\n seenParameterIds.has(\n defaultValue.objectParameterPropertyValue.parameterId,\n ),\n `Default value for parameter ${currentParameterId} is referencing later parameter ${defaultValue.objectParameterPropertyValue.parameterId}`,\n );\n break;\n case \"staticValue\":\n invariant(\n defaultValue.staticValue.type\n === parameters?.find(p => p.id === currentParameterId)?.type,\n `Default static value for parameter ${currentParameterId} does not match type`,\n );\n break;\n case \"staticObject\":\n case \"interfaceParameterPropertyValue\":\n case \"objectQueryPrefill\":\n case \"objectQueryPropertyValue\":\n case \"objectSetRidPrefill\":\n case \"redacted\":\n break;\n default:\n throw new Error(\n `Unknown default value type for parameter ${currentParameterId}`,\n );\n }\n}\n\nexport function validateActionParameters(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n properties: Array<string>,\n name: string,\n): void {\n // validates that parameters either exist as object properties or have a type defined\n [\n ...Object.keys(def.parameterConfiguration ?? {}),\n ].forEach(id => {\n invariant(\n properties.includes(id)\n || properties.includes(addNamespaceIfNone(id))\n || (def.parameterConfiguration?.[id].customParameterType !== undefined)\n || isTargetParameter(id),\n `Parameter ${id} does not exist as a property on ${name} and its type is not explicitly defined`,\n );\n });\n [\n ...Object.keys(def.nonParameterMappings ?? {}),\n ...def.excludedProperties ?? [],\n ].forEach(id => {\n invariant(\n properties.includes(id)\n || properties.includes(addNamespaceIfNone(id))\n || properties.includes(withoutNamespace(id)),\n `Property ${id} does not exist as a property on ${name}`,\n );\n });\n}\n\n// Parameters with configurations will be ordered first in the order they were defined\n// followed by the rest of the parameters in the order they were defined on the object type.\nexport function createDefaultParameterOrdering(\n def: ActionTypeUserDefinition | InterfaceActionTypeUserDefinition,\n properties: Array<string>,\n parameters: ActionParameter[],\n priorityId?: string,\n): string[] {\n return [\n ...priorityId ? [priorityId] : [],\n ...Object.keys(def.parameterConfiguration ?? {}).filter(id =>\n id !== priorityId\n ),\n ...properties.filter(id =>\n !def.parameterConfiguration?.[id] && parameters.some(p => p.id === id)\n ),\n ];\n}\n\nexport function validateParameterOrdering(\n parameterOrdering: string[],\n parameterSet: Set<string>,\n actionApiName: string,\n): void {\n const orderingSet = new Set(parameterOrdering);\n const missingParameters = [...parameterSet].filter(\n param => !orderingSet.has(param),\n );\n const extraneousParameters = parameterOrdering.filter(param =>\n !parameterSet.has(param)\n );\n invariant(\n extraneousParameters.length === 0\n && missingParameters.length === 0,\n `Action parameter ordering for ${actionApiName} does not match expected parameters. Extraneous parameters in ordering: {${extraneousParameters}}, Missing parameters in ordering: {${missingParameters}}`,\n );\n}\n\nexport function isTargetParameter(parameterId: string): boolean {\n return parameterId === MODIFY_OBJECT_PARAMETER\n || parameterId === CREATE_OR_MODIFY_OBJECT_PARAMETER\n || parameterId === CREATE_INTERFACE_OBJECT_PARAMETER\n || parameterId === MODIFY_INTERFACE_OBJECT_PARAMETER;\n}\n\nexport function addNamespaceToActionDefinition(\n def: InterfaceActionTypeUserDefinition,\n): void {\n def.parameterConfiguration = Object.fromEntries(\n Object.entries(def.parameterConfiguration ?? {})\n .map((\n [id, config],\n ) => [getInterfaceParameterName(def, id), config]),\n );\n def.nonParameterMappings = Object.fromEntries(\n Object.entries(def.nonParameterMappings ?? {})\n .map(([id, value]) => [addNamespaceIfNone(id), value]),\n );\n def.excludedProperties = (def.excludedProperties\n ?? []).map(id => addNamespaceIfNone(id));\n def.sections = def.sections?.map(section => ({\n ...section,\n parameters: section.parameters.map(p => getInterfaceParameterName(def, p)),\n }));\n}\n\n// Adds a namespace to an interface parameter name if it is supposed to be namespaced\nexport function getInterfaceParameterName(\n def: InterfaceActionTypeUserDefinition,\n parameter: string,\n): string {\n if (def.useNonNamespacedParameters) {\n return getNonNamespacedParameterName(def, parameter);\n }\n return (isTargetParameter(parameter)\n || !Object.keys(def.interfaceType.propertiesV2).includes(\n addNamespaceIfNone(parameter),\n ))\n ? parameter\n : addNamespaceIfNone(parameter);\n}\n\nexport function getNonNamespacedParameterName(\n def: InterfaceActionTypeUserDefinition,\n parameter: string,\n): string {\n return def.conflictingParameterOverrides?.[parameter]\n ?? (parameter.split(\".\").pop() || parameter);\n}\n\nexport function createInterfacePropertyLogicRuleValue(\n id: string,\n def: InterfacePropertyType,\n actionDef: InterfaceActionTypeUserDefinition,\n): OntologyIrInterfacePropertyLogicRuleValue {\n const type = getInterfacePropertyTypeType(def);\n const array = isInterfaceSharedPropertyType(def)\n ? def.sharedPropertyType.array\n : def.array;\n const parameterId = actionDef.useNonNamespacedParameters\n ? getNonNamespacedParameterName(actionDef, id)\n : id;\n if (isStruct(type)) {\n return {\n type: \"structLogicRuleValue\",\n structLogicRuleValue: Object.fromEntries(\n Object.entries(type.structDefinition).map(([apiName, fieldValue]) => {\n return [\n apiName,\n array\n ? {\n type: \"structListParameterFieldValue\",\n structListParameterFieldValue: {\n parameterId: parameterId,\n structFieldApiName: apiName,\n },\n }\n : {\n type: \"structParameterFieldValue\",\n structParameterFieldValue: {\n parameterId: parameterId,\n structFieldApiName: apiName,\n },\n },\n ];\n }),\n ),\n };\n }\n return {\n type: \"logicRuleValue\",\n logicRuleValue: {\n type: \"parameterId\",\n parameterId: parameterId,\n },\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectTypeDatasourceDefinition.js","names":[],"sources":["ObjectTypeDatasourceDefinition.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n DerivedPropertyLinkTypeSide,\n ObjectTypeFieldApiName,\n} from \"@osdk/client.unstable\";\nimport type { LinkType } from \"../links/LinkType.js\";\n\nexport type ObjectTypeDatasourceDefinition =\n | ObjectTypeDatasourceDefinition_stream\n | ObjectTypeDatasourceDefinition_dataset\n | ObjectTypeDatasourceDefinition_restrictedView\n | ObjectTypeDatasourceDefinition_derived;\n\nexport interface ObjectTypeDatasourceDefinition_dataset {\n type: \"dataset\";\n}\n\nexport interface ObjectTypeDatasourceDefinition_stream {\n type: \"stream\";\n // Retention period must be in ISO 8601 duration format\n retentionPeriod?: string;\n}\n\nexport interface ObjectTypeDatasourceDefinition_restrictedView {\n type: \"restrictedView\";\n}\n\nexport interface ObjectTypeDatasourceDefinition_derived {\n type: \"derived\";\n linkDefinition: Array<DerivedPropertiesLinkDefinition>;\n // property->property is linkedProperties, property->aggregation is aggregatedProperties\n propertyMapping:\n | Record<ObjectTypeFieldApiName, ObjectTypeFieldApiName>\n | Record<ObjectTypeFieldApiName, DerivedPropertyAggregation>;\n}\nexport interface DerivedPropertiesLinkDefinition {\n linkType: LinkType;\n side?: DerivedPropertyLinkTypeSide;\n}\n\n// if the property is null on the object, it is ignored in aggregations\nexport type DerivedPropertyAggregation =\n | { type: \"count\" } // total count of objects\n | { type: \"avg\"; property: ObjectTypeFieldApiName }\n | { type: \"sum\"; property: ObjectTypeFieldApiName }\n | { type: \"min\"; property: ObjectTypeFieldApiName }\n | { type: \"max\"; property: ObjectTypeFieldApiName }\n | { type: \"approximateCardinality\"; property: ObjectTypeFieldApiName }\n | { type: \"exactCardinality\"; property: ObjectTypeFieldApiName }\n | { type: \"collectList\"; property: ObjectTypeFieldApiName; limit: number } // max limit is 100\n | { type: \"collectSet\"; property: ObjectTypeFieldApiName; limit: number }; // max limit is 100\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"ObjectTypeDatasourceDefinition.js","names":[],"sources":["ObjectTypeDatasourceDefinition.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n DerivedPropertyLinkTypeSide,\n MarkingType,\n ObjectTypeFieldApiName,\n} from \"@osdk/client.unstable\";\nimport type { LinkType } from \"../links/LinkType.js\";\nimport type { SecurityConditionDefinition } from \"./SecurityCondition.js\";\n\nexport type ObjectTypeDatasourceDefinition =\n | ObjectTypeDatasourceDefinition_stream\n | ObjectTypeDatasourceDefinition_dataset\n | ObjectTypeDatasourceDefinition_restrictedView\n | ObjectTypeDatasourceDefinition_derived;\n\nexport interface ObjectTypeDatasourceDefinition_dataset {\n type: \"dataset\";\n objectSecurityPolicy?: ObjectSecurityPolicy;\n propertySecurityGroups?: Array<PropertySecurityGroup>;\n}\n\nexport interface ObjectSecurityPolicy {\n name: string;\n granularPolicy?: SecurityConditionDefinition;\n additionalMandatoryMarkings?: Record<string, MarkingType>;\n}\n\nexport interface PropertySecurityGroup {\n name: string;\n properties: Array<string>;\n granularPolicy?: SecurityConditionDefinition;\n additionalMandatoryMarkings?: Record<string, MarkingType>;\n}\n\nexport interface ObjectTypeDatasourceDefinition_stream {\n type: \"stream\";\n // Retention period must be in ISO 8601 duration format\n retentionPeriod?: string;\n}\n\nexport interface ObjectTypeDatasourceDefinition_restrictedView {\n type: \"restrictedView\";\n}\n\nexport interface ObjectTypeDatasourceDefinition_derived {\n type: \"derived\";\n linkDefinition: Array<DerivedPropertiesLinkDefinition>;\n // property->property is linkedProperties, property->aggregation is aggregatedProperties\n propertyMapping:\n | Record<ObjectTypeFieldApiName, ObjectTypeFieldApiName>\n | Record<ObjectTypeFieldApiName, DerivedPropertyAggregation>;\n}\nexport interface DerivedPropertiesLinkDefinition {\n linkType: LinkType;\n side?: DerivedPropertyLinkTypeSide;\n}\n\n// if the property is null on the object, it is ignored in aggregations\nexport type DerivedPropertyAggregation =\n | { type: \"count\" } // total count of objects\n | { type: \"avg\"; property: ObjectTypeFieldApiName }\n | { type: \"sum\"; property: ObjectTypeFieldApiName }\n | { type: \"min\"; property: ObjectTypeFieldApiName }\n | { type: \"max\"; property: ObjectTypeFieldApiName }\n | { type: \"approximateCardinality\"; property: ObjectTypeFieldApiName }\n | { type: \"exactCardinality\"; property: ObjectTypeFieldApiName }\n | { type: \"collectList\"; property: ObjectTypeFieldApiName; limit: number } // max limit is 100\n | { type: \"collectSet\"; property: ObjectTypeFieldApiName; limit: number }; // max limit is 100\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=SecurityCondition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityCondition.js","names":[],"sources":["SecurityCondition.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n OntologyIrSecurityGroupGranularCondition,\n} from \"@osdk/client.unstable\";\n\nexport type SecurityConditionDefinition =\n | SecurityUnionCondition\n | OntologyIrSecurityGroupGranularCondition\n | SecurityGroupValidationRule\n | SecurityGroupPropertyValidationRule\n | SecurityMarkingPropertyRule;\n\nexport type SecurityUnionCondition = {\n type: \"and\" | \"or\";\n conditions: Array<SecurityConditionDefinition>;\n};\n\n// checks if user is part of a static group id\nexport type SecurityGroupValidationRule = {\n type: \"group\";\n name: string;\n};\n\n// checks if user's group ids matches a property\nexport type SecurityGroupPropertyValidationRule = {\n type: \"groupProperty\";\n property: string;\n};\n\nexport type SecurityMarkingPropertyRule = {\n type: \"markingProperty\";\n property: string;\n};\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyTypeType.js","names":["isPropertyTypeType","v","type","isExotic","undefined","includes","isStruct"],"sources":["PropertyTypeType.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { StructFieldType } from \"@osdk/client.unstable\";\n\nexport type PropertyTypeType =\n | PropertyTypeTypePrimitive\n | PropertyTypeTypeExotic;\n\nexport type PropertyTypeTypePrimitive =\n | \"boolean\"\n | \"byte\"\n | \"date\"\n | \"decimal\"\n | \"double\"\n | \"float\"\n | \"integer\"\n | \"long\"\n | \"short\"\n | \"string\"\n | \"timestamp\";\n\nexport type PropertyTypeTypeExotic =\n | \"geopoint\"\n | \"geoshape\"\n | \"mediaReference\"\n | \"geotimeSeries\"\n | PropertyTypeTypeMarking\n | PropertyTypeTypeStruct\n | PropertyTypeTypeString\n | PropertyTypeTypeDecimal;\n\ntype PropertyTypeTypeMarking = {\n type: \"marking\";\n markingType: \"MANDATORY\" | \"CBAC\";\n markingInputGroupName: string;\n};\n\nexport type PropertyTypeTypeStruct = {\n type: \"struct\";\n structDefinition: {\n [api_name: string]:\n | StructPropertyType\n | Exclude<PropertyTypeTypesWithoutStruct, PropertyTypeTypeMarking>;\n };\n};\n\ntype PropertyTypeTypeString = {\n type: \"string\";\n isLongText?: boolean;\n supportsEfficientLeadingWildcard?: boolean;\n supportsExactMatching?: boolean;\n supportsFullTextRegex?: boolean;\n enableAsciiFolding?: boolean;\n};\n\ntype PropertyTypeTypeDecimal = {\n type: \"decimal\";\n precision?: number;\n scale?: number;\n};\n\nexport type PropertyTypeTypesWithoutStruct = Exclude<\n PropertyTypeType,\n PropertyTypeTypeStruct\n>;\nexport function isPropertyTypeType(\n v: PropertyTypeType,\n): v is PropertyTypeType {\n return v === \"boolean\" || v === \"byte\"\n || v === \"date\" || v === \"decimal\" || v === \"double\"\n || v === \"float\" || v === \"geopoint\" || v === \"geoshape\"\n || v === \"integer\" || v === \"long\"\n || (typeof v === \"object\" && v.type === \"marking\")\n || v === \"short\" || v === \"string\"\n || v === \"timestamp\";\n}\nexport function isExotic(\n type: PropertyTypeType | undefined,\n): type is PropertyTypeTypeExotic {\n if (type === undefined) {\n return false;\n }\n if (typeof type === \"string\") {\n return [\"geopoint\", \"geoshape\", \"mediaReference\", \"geotimeSeries\"].includes(\n type,\n );\n } else if (typeof type === \"object\" && type != null) {\n return type.type === \"marking\" || type.type === \"struct\"\n || type.type === \"string\"\n || type.type === \"decimal\";\n }\n return false;\n}\nexport function isStruct(\n type: PropertyTypeType,\n): type is PropertyTypeTypeStruct {\n return typeof type === \"object\" && type.type === \"struct\";\n}\n\ntype Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;\n\nexport interface StructPropertyType extends\n Optional<\n Omit<\n StructFieldType,\n \"fieldType\" | \"structFieldRid\" | \"apiName\"\n >,\n \"typeClasses\" | \"aliases\"\n >\n{\n fieldType: PropertyTypeTypesWithoutStruct;\n requireImplementation?: boolean;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAiEA,OAAO,SAASA,kBAAkBA,CAChCC,CAAmB,EACI;EACvB,OAAOA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,MAAM,IACjCA,CAAC,KAAK,MAAM,IAAIA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,QAAQ,IACjDA,CAAC,KAAK,OAAO,IAAIA,CAAC,KAAK,UAAU,IAAIA,CAAC,KAAK,UAAU,IACrDA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,MAAM,IAC9B,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,CAACC,IAAI,KAAK,SAAU,IAC/CD,CAAC,KAAK,OAAO,IAAIA,CAAC,KAAK,QAAQ,IAC/BA,CAAC,KAAK,WAAW;AACxB;AACA,OAAO,SAASE,QAAQA,CACtBD,IAAkC,EACF;EAChC,IAAIA,IAAI,KAAKE,SAAS,EAAE;IACtB,OAAO,KAAK;EACd;EACA,IAAI,OAAOF,IAAI,KAAK,QAAQ,EAAE;IAC5B,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAACG,QAAQ,CACzEH,IACF,CAAC;EACH,CAAC,MAAM,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,IAAI,IAAI,EAAE;IACnD,OAAOA,IAAI,CAACA,IAAI,KAAK,SAAS,IAAIA,IAAI,CAACA,IAAI,KAAK,QAAQ,IACnDA,IAAI,CAACA,IAAI,KAAK,QAAQ,IACtBA,IAAI,CAACA,IAAI,KAAK,SAAS;EAC9B;EACA,OAAO,KAAK;AACd;AACA,OAAO,SAASI,QAAQA,CACtBJ,IAAsB,EACU;EAChC,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,CAACA,IAAI,KAAK,QAAQ;AAC3D","ignoreList":[]}
1
+ {"version":3,"file":"PropertyTypeType.js","names":["isPropertyTypeType","v","type","isExotic","undefined","includes","isStruct"],"sources":["PropertyTypeType.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { StructFieldType } from \"@osdk/client.unstable\";\n\nexport type PropertyTypeType =\n | PropertyTypeTypePrimitive\n | PropertyTypeTypeExotic;\n\nexport type PropertyTypeTypePrimitive =\n | \"boolean\"\n | \"byte\"\n | \"date\"\n | \"decimal\"\n | \"double\"\n | \"float\"\n | \"integer\"\n | \"long\"\n | \"short\"\n | \"string\"\n | \"timestamp\"\n | \"attachment\";\n\nexport type PropertyTypeTypeExotic =\n | \"geopoint\"\n | \"geoshape\"\n | \"mediaReference\"\n | \"geotimeSeries\"\n | PropertyTypeTypeMarking\n | PropertyTypeTypeStruct\n | PropertyTypeTypeString\n | PropertyTypeTypeDecimal;\n\ntype PropertyTypeTypeMarking = {\n type: \"marking\";\n markingType: \"MANDATORY\" | \"CBAC\";\n markingInputGroupName: string;\n};\n\nexport type PropertyTypeTypeStruct = {\n type: \"struct\";\n structDefinition: {\n [api_name: string]:\n | StructPropertyType\n | Exclude<PropertyTypeTypesWithoutStruct, PropertyTypeTypeMarking>;\n };\n};\n\ntype PropertyTypeTypeString = {\n type: \"string\";\n isLongText?: boolean;\n supportsEfficientLeadingWildcard?: boolean;\n supportsExactMatching?: boolean;\n supportsFullTextRegex?: boolean;\n enableAsciiFolding?: boolean;\n};\n\ntype PropertyTypeTypeDecimal = {\n type: \"decimal\";\n precision?: number;\n scale?: number;\n};\n\nexport type PropertyTypeTypesWithoutStruct = Exclude<\n PropertyTypeType,\n PropertyTypeTypeStruct\n>;\nexport function isPropertyTypeType(\n v: PropertyTypeType,\n): v is PropertyTypeType {\n return v === \"boolean\" || v === \"byte\"\n || v === \"date\" || v === \"decimal\" || v === \"double\"\n || v === \"float\" || v === \"geopoint\" || v === \"geoshape\"\n || v === \"integer\" || v === \"long\"\n || (typeof v === \"object\" && v.type === \"marking\")\n || v === \"short\" || v === \"string\"\n || v === \"timestamp\";\n}\nexport function isExotic(\n type: PropertyTypeType | undefined,\n): type is PropertyTypeTypeExotic {\n if (type === undefined) {\n return false;\n }\n if (typeof type === \"string\") {\n return [\"geopoint\", \"geoshape\", \"mediaReference\", \"geotimeSeries\"].includes(\n type,\n );\n } else if (typeof type === \"object\" && type != null) {\n return type.type === \"marking\" || type.type === \"struct\"\n || type.type === \"string\"\n || type.type === \"decimal\";\n }\n return false;\n}\nexport function isStruct(\n type: PropertyTypeType,\n): type is PropertyTypeTypeStruct {\n return typeof type === \"object\" && type.type === \"struct\";\n}\n\ntype Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;\n\nexport interface StructPropertyType extends\n Optional<\n Omit<\n StructFieldType,\n \"fieldType\" | \"structFieldRid\" | \"apiName\"\n >,\n \"typeClasses\" | \"aliases\"\n >\n{\n fieldType: PropertyTypeTypesWithoutStruct;\n requireImplementation?: boolean;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAkEA,OAAO,SAASA,kBAAkBA,CAChCC,CAAmB,EACI;EACvB,OAAOA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,MAAM,IACjCA,CAAC,KAAK,MAAM,IAAIA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,QAAQ,IACjDA,CAAC,KAAK,OAAO,IAAIA,CAAC,KAAK,UAAU,IAAIA,CAAC,KAAK,UAAU,IACrDA,CAAC,KAAK,SAAS,IAAIA,CAAC,KAAK,MAAM,IAC9B,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,CAACC,IAAI,KAAK,SAAU,IAC/CD,CAAC,KAAK,OAAO,IAAIA,CAAC,KAAK,QAAQ,IAC/BA,CAAC,KAAK,WAAW;AACxB;AACA,OAAO,SAASE,QAAQA,CACtBD,IAAkC,EACF;EAChC,IAAIA,IAAI,KAAKE,SAAS,EAAE;IACtB,OAAO,KAAK;EACd;EACA,IAAI,OAAOF,IAAI,KAAK,QAAQ,EAAE;IAC5B,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAACG,QAAQ,CACzEH,IACF,CAAC;EACH,CAAC,MAAM,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,IAAI,IAAI,EAAE;IACnD,OAAOA,IAAI,CAACA,IAAI,KAAK,SAAS,IAAIA,IAAI,CAACA,IAAI,KAAK,QAAQ,IACnDA,IAAI,CAACA,IAAI,KAAK,QAAQ,IACtBA,IAAI,CAACA,IAAI,KAAK,SAAS;EAC9B;EACA,OAAO,KAAK;AACd;AACA,OAAO,SAASI,QAAQA,CACtBJ,IAAsB,EACU;EAChC,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,CAACA,IAAI,KAAK,QAAQ;AAC3D","ignoreList":[]}
@@ -24,7 +24,7 @@ export const defaultTypeClasses = [{
24
24
 
25
25
  // ExperimentalTimeDependentV1 and Attachment types should be included here once supported
26
26
  export function shouldNotHaveRenderHints(type) {
27
- return ["struct", "mediaReference", "geotimeSeries"].includes(getPropertyTypeName(type));
27
+ return ["struct", "mediaReference", "geotimeSeries", "attachment"].includes(getPropertyTypeName(type));
28
28
  }
29
29
  export function hasRenderHints(typeClasses) {
30
30
  return (typeClasses ?? []).some(tc => tc.kind.toLowerCase() === "render_hint");
@@ -32,4 +32,8 @@ export function hasRenderHints(typeClasses) {
32
32
  export function getPropertyTypeName(type) {
33
33
  return typeof type === "object" ? type.type : type;
34
34
  }
35
+ export function shouldBeIndexedForSearch(type) {
36
+ getPropertyTypeName(type);
37
+ return !["attachment"].includes(getPropertyTypeName(type));
38
+ }
35
39
  //# sourceMappingURL=propertyConversionUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"propertyConversionUtils.js","names":["defaultTypeClasses","kind","name","shouldNotHaveRenderHints","type","includes","getPropertyTypeName","hasRenderHints","typeClasses","some","tc","toLowerCase"],"sources":["propertyConversionUtils.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { TypeClass } from \"./common/TypeClass.js\";\nimport type { PropertyTypeType } from \"./properties/PropertyTypeType.js\";\n\nexport const defaultTypeClasses: TypeClass[] = [{\n kind: \"render_hint\",\n name: \"SELECTABLE\",\n}, { kind: \"render_hint\", name: \"SORTABLE\" }];\n\n// ExperimentalTimeDependentV1 and Attachment types should be included here once supported\nexport function shouldNotHaveRenderHints(type: PropertyTypeType): boolean {\n return [\"struct\", \"mediaReference\", \"geotimeSeries\"].includes(\n getPropertyTypeName(type),\n );\n}\n\nexport function hasRenderHints(typeClasses: TypeClass[] | undefined): boolean {\n return (typeClasses ?? []).some(tc =>\n tc.kind.toLowerCase() === \"render_hint\"\n );\n}\n\nexport function getPropertyTypeName(type: PropertyTypeType): string {\n return typeof type === \"object\" ? type.type : type;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA,OAAO,MAAMA,kBAA+B,GAAG,CAAC;EAC9CC,IAAI,EAAE,aAAa;EACnBC,IAAI,EAAE;AACR,CAAC,EAAE;EAAED,IAAI,EAAE,aAAa;EAAEC,IAAI,EAAE;AAAW,CAAC,CAAC;;AAE7C;AACA,OAAO,SAASC,wBAAwBA,CAACC,IAAsB,EAAW;EACxE,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAACC,QAAQ,CAC3DC,mBAAmB,CAACF,IAAI,CAC1B,CAAC;AACH;AAEA,OAAO,SAASG,cAAcA,CAACC,WAAoC,EAAW;EAC5E,OAAO,CAACA,WAAW,IAAI,EAAE,EAAEC,IAAI,CAACC,EAAE,IAChCA,EAAE,CAACT,IAAI,CAACU,WAAW,CAAC,CAAC,KAAK,aAC5B,CAAC;AACH;AAEA,OAAO,SAASL,mBAAmBA,CAACF,IAAsB,EAAU;EAClE,OAAO,OAAOA,IAAI,KAAK,QAAQ,GAAGA,IAAI,CAACA,IAAI,GAAGA,IAAI;AACpD","ignoreList":[]}
1
+ {"version":3,"file":"propertyConversionUtils.js","names":["defaultTypeClasses","kind","name","shouldNotHaveRenderHints","type","includes","getPropertyTypeName","hasRenderHints","typeClasses","some","tc","toLowerCase","shouldBeIndexedForSearch"],"sources":["propertyConversionUtils.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { TypeClass } from \"./common/TypeClass.js\";\nimport type { PropertyTypeType } from \"./properties/PropertyTypeType.js\";\n\nexport const defaultTypeClasses: TypeClass[] = [{\n kind: \"render_hint\",\n name: \"SELECTABLE\",\n}, { kind: \"render_hint\", name: \"SORTABLE\" }];\n\n// ExperimentalTimeDependentV1 and Attachment types should be included here once supported\nexport function shouldNotHaveRenderHints(type: PropertyTypeType): boolean {\n return [\"struct\", \"mediaReference\", \"geotimeSeries\", \"attachment\"].includes(\n getPropertyTypeName(type),\n );\n}\n\nexport function hasRenderHints(typeClasses: TypeClass[] | undefined): boolean {\n return (typeClasses ?? []).some(tc =>\n tc.kind.toLowerCase() === \"render_hint\"\n );\n}\n\nexport function getPropertyTypeName(type: PropertyTypeType): string {\n return typeof type === \"object\" ? type.type : type;\n}\n\nexport function shouldBeIndexedForSearch(\n type: PropertyTypeType,\n): boolean {\n const typeName = getPropertyTypeName(type);\n return ![\"attachment\"].includes(\n getPropertyTypeName(type),\n );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA,OAAO,MAAMA,kBAA+B,GAAG,CAAC;EAC9CC,IAAI,EAAE,aAAa;EACnBC,IAAI,EAAE;AACR,CAAC,EAAE;EAAED,IAAI,EAAE,aAAa;EAAEC,IAAI,EAAE;AAAW,CAAC,CAAC;;AAE7C;AACA,OAAO,SAASC,wBAAwBA,CAACC,IAAsB,EAAW;EACxE,OAAO,CAAC,QAAQ,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,CAAC,CAACC,QAAQ,CACzEC,mBAAmB,CAACF,IAAI,CAC1B,CAAC;AACH;AAEA,OAAO,SAASG,cAAcA,CAACC,WAAoC,EAAW;EAC5E,OAAO,CAACA,WAAW,IAAI,EAAE,EAAEC,IAAI,CAACC,EAAE,IAChCA,EAAE,CAACT,IAAI,CAACU,WAAW,CAAC,CAAC,KAAK,aAC5B,CAAC;AACH;AAEA,OAAO,SAASL,mBAAmBA,CAACF,IAAsB,EAAU;EAClE,OAAO,OAAOA,IAAI,KAAK,QAAQ,GAAGA,IAAI,CAACA,IAAI,GAAGA,IAAI;AACpD;AAEA,OAAO,SAASQ,wBAAwBA,CACtCR,IAAsB,EACb;EACQE,mBAAmB,CAACF,IAAI,CAAC;EAC1C,OAAO,CAAC,CAAC,YAAY,CAAC,CAACC,QAAQ,CAC7BC,mBAAmB,CAACF,IAAI,CAC1B,CAAC;AACH","ignoreList":[]}