@osdk/api 2.2.0-beta.5 → 2.2.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/build/browser/actions/ActionResults.js.map +1 -1
- package/build/browser/actions/Actions.js.map +1 -1
- package/build/browser/derivedProperties/DerivedProperty.js.map +1 -1
- package/build/browser/groupby/GroupByClause.js.map +1 -1
- package/build/browser/objectSet/ObjectSet.test.js +26 -1
- package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
- package/build/browser/ontology/ObjectTypeDefinition.js.map +1 -1
- package/build/cjs/{FilteredPropertyKeys-C9I_dd7u.d.cts → FilteredPropertyKeys-DQJEjgBE.d.cts} +8 -2
- package/build/cjs/index.d.cts +7 -3
- package/build/cjs/public/unstable.d.cts +2 -2
- package/build/esm/actions/ActionResults.js.map +1 -1
- package/build/esm/actions/Actions.js.map +1 -1
- package/build/esm/derivedProperties/DerivedProperty.js.map +1 -1
- package/build/esm/groupby/GroupByClause.js.map +1 -1
- package/build/esm/objectSet/ObjectSet.test.js +26 -1
- package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
- package/build/esm/ontology/ObjectTypeDefinition.js.map +1 -1
- package/build/types/actions/ActionResults.d.ts +4 -0
- package/build/types/actions/ActionResults.d.ts.map +1 -1
- package/build/types/actions/Actions.d.ts +1 -1
- package/build/types/actions/Actions.d.ts.map +1 -1
- package/build/types/derivedProperties/DerivedProperty.d.ts +1 -1
- package/build/types/derivedProperties/DerivedProperty.d.ts.map +1 -1
- package/build/types/groupby/GroupByClause.d.ts +6 -0
- package/build/types/groupby/GroupByClause.d.ts.map +1 -1
- package/build/types/ontology/ObjectTypeDefinition.d.ts +1 -1
- package/build/types/ontology/ObjectTypeDefinition.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @osdk/api
|
|
2
2
|
|
|
3
|
+
## 2.2.0-beta.7
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 7416ce4: Adds deleted objects and links returned from applyAction
|
|
8
|
+
- 7416ce4: Update Platform SDK Dependencies
|
|
9
|
+
- 805df40: Fix interface action types.
|
|
10
|
+
|
|
11
|
+
## 2.2.0-beta.6
|
|
12
|
+
|
|
13
|
+
### Minor Changes
|
|
14
|
+
|
|
15
|
+
- cddfbf9: Adds default value option to group by
|
|
16
|
+
- a6e5f89: Changes count, exactDistinct, and approximateDistinct to be non-nullable
|
|
17
|
+
|
|
3
18
|
## 2.2.0-beta.5
|
|
4
19
|
|
|
5
20
|
## 2.2.0-beta.4
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionResults.js","names":[],"sources":["ActionResults.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\n// These are migrated from @osdk/foundry.internal to avoid coupling the apis\n\nexport type ActionResults =\n & (\n | ObjectEdits\n | LargeScaleObjectEdits\n )\n & { editedObjectTypes: Array<String> };\n\ninterface ObjectEdits {\n type: \"edits\";\n addedObjects: Array<ObjectReference>;\n modifiedObjects: Array<ObjectReference>;\n addedLinks: Array<LinkReference>;\n deletedObjectsCount: number;\n deletedLinksCount: number;\n}\ninterface LargeScaleObjectEdits {\n type: \"largeScaleEdits\";\n addedObjects?: never;\n modifiedObjects?: never;\n addedLinks?: never;\n deletedObjectsCount?: never;\n deletedLinksCount?: never;\n}\n\ntype LinkReference = {\n linkTypeApiNameAtoB: string;\n linkTypeApiNameBtoA: string;\n aSideObject: ObjectReference;\n bSideObject: ObjectReference;\n};\ninterface ObjectReference {\n primaryKey: string | number;\n objectType: string;\n}\nexport interface ValidateActionResponseV2 {\n result: \"VALID\" | \"INVALID\";\n submissionCriteria: Array<{\n configuredFailureMessage?: string;\n result: \"VALID\" | \"INVALID\";\n }>;\n parameters: Record<string, {\n result: \"VALID\" | \"INVALID\";\n evaluatedConstraints: Array<ParameterEvaluatedConstraint>;\n required: boolean;\n }>;\n}\ntype ParameterEvaluatedConstraint =\n | { type: \"arraySize\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"groupMember\" }\n | { type: \"objectPropertyValue\" }\n | { type: \"objectQueryResult\" }\n | {\n type: \"oneOf\";\n options: Array<{\n displayName?: string;\n value?: any;\n }>;\n otherValuesAllowed: boolean;\n }\n | { type: \"range\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"stringLength\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | {\n type: \"stringRegexMatch\";\n regex: string;\n configuredFailureMessage?: string;\n }\n | { type: \"unevaluable\" };\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ActionResults.js","names":[],"sources":["ActionResults.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\n// These are migrated from @osdk/foundry.internal to avoid coupling the apis\n\nexport type ActionResults =\n & (\n | ObjectEdits\n | LargeScaleObjectEdits\n )\n & { editedObjectTypes: Array<String> };\n\ninterface ObjectEdits {\n type: \"edits\";\n addedObjects: Array<ObjectReference>;\n modifiedObjects: Array<ObjectReference>;\n deletedObjects?: Array<ObjectReference>;\n addedLinks: Array<LinkReference>;\n deletedLinks?: Array<LinkReference>;\n deletedObjectsCount: number;\n deletedLinksCount: number;\n}\ninterface LargeScaleObjectEdits {\n type: \"largeScaleEdits\";\n addedObjects?: never;\n modifiedObjects?: never;\n deletedObjects?: never;\n addedLinks?: never;\n deletedLinks?: never;\n deletedObjectsCount?: never;\n deletedLinksCount?: never;\n}\n\ntype LinkReference = {\n linkTypeApiNameAtoB: string;\n linkTypeApiNameBtoA: string;\n aSideObject: ObjectReference;\n bSideObject: ObjectReference;\n};\ninterface ObjectReference {\n primaryKey: string | number;\n objectType: string;\n}\nexport interface ValidateActionResponseV2 {\n result: \"VALID\" | \"INVALID\";\n submissionCriteria: Array<{\n configuredFailureMessage?: string;\n result: \"VALID\" | \"INVALID\";\n }>;\n parameters: Record<string, {\n result: \"VALID\" | \"INVALID\";\n evaluatedConstraints: Array<ParameterEvaluatedConstraint>;\n required: boolean;\n }>;\n}\ntype ParameterEvaluatedConstraint =\n | { type: \"arraySize\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"groupMember\" }\n | { type: \"objectPropertyValue\" }\n | { type: \"objectQueryResult\" }\n | {\n type: \"oneOf\";\n options: Array<{\n displayName?: string;\n value?: any;\n }>;\n otherValuesAllowed: boolean;\n }\n | { type: \"range\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"stringLength\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | {\n type: \"stringRegexMatch\";\n regex: string;\n configuredFailureMessage?: string;\n }\n | { type: \"unevaluable\" };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Actions.js","names":["ActionParam"],"sources":["Actions.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { DataValueClientToWire } from \"../mapping/DataValueMapping.js\";\nimport type { ObjectSet } from \"../objectSet/ObjectSet.js\";\nimport type { InterfaceDefinition } from \"../ontology/InterfaceDefinition.js\";\nimport type { ObjectTypeDefinition } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { OsdkBase } from \"../OsdkBase.js\";\nimport type { OsdkObjectPrimaryKeyType } from \"../OsdkObjectPrimaryKeyType.js\";\n\nimport type {\n ActionResults,\n ValidateActionResponseV2,\n} from \"./ActionResults.js\";\n\nexport type ApplyActionOptions =\n | { $returnEdits?: true; $validateOnly?: false }\n | {\n $validateOnly?: true;\n $returnEdits?: false;\n };\n\nexport type ApplyBatchActionOptions = { $returnEdits?: boolean };\n\n/**\n * Helper types for converting action definition parameter types to typescript types\n */\nexport namespace ActionParam {\n /**\n * Helper type to convert action definition parameter primitives to typescript types\n */\n export type PrimitiveType<T extends keyof DataValueClientToWire> =\n DataValueClientToWire[T];\n\n /**\n * Helper type to convert action definition parameter object types to typescript types\n */\n export type ObjectType<T extends ObjectTypeDefinition> =\n | OsdkBase<T>\n | OsdkObjectPrimaryKeyType<T>;\n\n /**\n * Helper type to convert action definition parameter object sets to typescript types\n */\n export type ObjectSetType<T extends ObjectTypeDefinition> = ObjectSet<T>;\n\n /**\n * Helper type to convert action definition parameter interface types to typescript types\n */\n export type InterfaceType<T extends InterfaceDefinition> = {\n $objectType: NonNullable<T[\"__DefinitionMetadata\"]> extends\n { implementedBy: infer U }
|
|
1
|
+
{"version":3,"file":"Actions.js","names":["ActionParam"],"sources":["Actions.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { DataValueClientToWire } from \"../mapping/DataValueMapping.js\";\nimport type { ObjectSet } from \"../objectSet/ObjectSet.js\";\nimport type { InterfaceDefinition } from \"../ontology/InterfaceDefinition.js\";\nimport type { ObjectTypeDefinition } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { OsdkBase } from \"../OsdkBase.js\";\nimport type { OsdkObjectPrimaryKeyType } from \"../OsdkObjectPrimaryKeyType.js\";\n\nimport type {\n ActionResults,\n ValidateActionResponseV2,\n} from \"./ActionResults.js\";\n\nexport type ApplyActionOptions =\n | { $returnEdits?: true; $validateOnly?: false }\n | {\n $validateOnly?: true;\n $returnEdits?: false;\n };\n\nexport type ApplyBatchActionOptions = { $returnEdits?: boolean };\n\n/**\n * Helper types for converting action definition parameter types to typescript types\n */\nexport namespace ActionParam {\n /**\n * Helper type to convert action definition parameter primitives to typescript types\n */\n export type PrimitiveType<T extends keyof DataValueClientToWire> =\n DataValueClientToWire[T];\n\n /**\n * Helper type to convert action definition parameter object types to typescript types\n */\n export type ObjectType<T extends ObjectTypeDefinition> =\n | OsdkBase<T>\n | OsdkObjectPrimaryKeyType<T>;\n\n /**\n * Helper type to convert action definition parameter object sets to typescript types\n */\n export type ObjectSetType<T extends ObjectTypeDefinition> = ObjectSet<T>;\n\n /**\n * Helper type to convert action definition parameter interface types to typescript types\n */\n export type InterfaceType<T extends InterfaceDefinition> = {\n $objectType: NonNullable<T[\"__DefinitionMetadata\"]> extends\n { implementedBy: infer U } ? (U extends ReadonlyArray<never> ? string\n : U extends ReadonlyArray<string> ? U[number]\n : string)\n : string;\n $primaryKey: string | number;\n };\n\n export type StructType<\n T extends Record<string, keyof DataValueClientToWire>,\n > = { [K in keyof T]: DataValueClientToWire[T[K]] };\n}\n\nexport type ActionEditResponse = ActionResults;\nexport type ActionValidationResponse = ValidateActionResponseV2;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAuBA;AACA;AACA;AAFA,WAGiBA,WAAW","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DerivedProperty.js","names":["DerivedProperty"],"sources":["DerivedProperty.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 { ValidAggregationKeys } from \"../aggregate/AggregatableKeys.js\";\nimport type { WhereClause } from \"../aggregate/WhereClause.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { SimplePropertyDef } from \"../ontology/SimplePropertyDef.js\";\nimport type { LinkedType, LinkNames } from \"../util/LinkUtils.js\";\nimport type { CollectWithPropAggregations } from \"./WithPropertiesAggregationOptions.js\";\n\nexport namespace DerivedProperty {\n export type SelectorResult<\n T extends SimplePropertyDef,\n > = {\n type: T;\n };\n\n export type Clause<\n Q extends ObjectOrInterfaceDefinition,\n > = {\n [key: string]: Selector<Q, SimplePropertyDef>;\n };\n\n export type Selector<\n Q extends ObjectOrInterfaceDefinition,\n T extends SimplePropertyDef,\n > = (\n baseObjectSet: DerivedProperty.Builder<Q, false>,\n ) => SelectorResult<T>;\n\n export interface Builder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Filterable<Q, CONSTRAINED>, Pivotable<Q, CONSTRAINED> {\n }\n\n export interface AggregateBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Builder<Q, CONSTRAINED>, Aggregatable<Q> {\n }\n\n export interface SelectPropertyBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends AggregateBuilder<Q, CONSTRAINED>, Selectable<Q> {\n }\n}\n\ntype BuilderTypeFromConstraint<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = CONSTRAINED extends true ? DerivedProperty.AggregateBuilder<Q, true>\n : DerivedProperty.SelectPropertyBuilder<Q, false>;\n\ntype Filterable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly where: (\n clause: WhereClause<Q>,\n ) => BuilderTypeFromConstraint<Q, CONSTRAINED>;\n};\n\ntype Pivotable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly pivotTo: <L extends LinkNames<Q>>(\n type: L,\n ) => CONSTRAINED extends true\n ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : NonNullable<CompileTimeMetadata<Q>[\"links\"][L][\"multiplicity\"]> extends\n true ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : DerivedProperty.SelectPropertyBuilder<LinkedType<Q, L>, false>;\n};\n\ntype Aggregatable<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n readonly aggregate: <\n V extends ValidAggregationKeys<\n Q,\n \"withPropertiesAggregate\"\n >,\n >(\n aggregationSpecifier: V,\n opts?: V extends `${any}:${infer P}`\n ? P extends CollectWithPropAggregations ? { limit: number }\n : P extends \"approximatePercentile\" ? { percentile: number }\n : never\n : never,\n ) => DerivedProperty.SelectorResult<\n V extends `${infer N}:${infer P}`\n ? P extends CollectWithPropAggregations\n ? Array<CompileTimeMetadata<Q>[\"properties\"][N][\"type\"]> | undefined\n : P extends \"approximateDistinct\" | \"exactDistinct\" | \"$count\"
|
|
1
|
+
{"version":3,"file":"DerivedProperty.js","names":["DerivedProperty"],"sources":["DerivedProperty.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 { ValidAggregationKeys } from \"../aggregate/AggregatableKeys.js\";\nimport type { WhereClause } from \"../aggregate/WhereClause.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { SimplePropertyDef } from \"../ontology/SimplePropertyDef.js\";\nimport type { LinkedType, LinkNames } from \"../util/LinkUtils.js\";\nimport type { CollectWithPropAggregations } from \"./WithPropertiesAggregationOptions.js\";\n\nexport namespace DerivedProperty {\n export type SelectorResult<\n T extends SimplePropertyDef,\n > = {\n type: T;\n };\n\n export type Clause<\n Q extends ObjectOrInterfaceDefinition,\n > = {\n [key: string]: Selector<Q, SimplePropertyDef>;\n };\n\n export type Selector<\n Q extends ObjectOrInterfaceDefinition,\n T extends SimplePropertyDef,\n > = (\n baseObjectSet: DerivedProperty.Builder<Q, false>,\n ) => SelectorResult<T>;\n\n export interface Builder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Filterable<Q, CONSTRAINED>, Pivotable<Q, CONSTRAINED> {\n }\n\n export interface AggregateBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Builder<Q, CONSTRAINED>, Aggregatable<Q> {\n }\n\n export interface SelectPropertyBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends AggregateBuilder<Q, CONSTRAINED>, Selectable<Q> {\n }\n}\n\ntype BuilderTypeFromConstraint<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = CONSTRAINED extends true ? DerivedProperty.AggregateBuilder<Q, true>\n : DerivedProperty.SelectPropertyBuilder<Q, false>;\n\ntype Filterable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly where: (\n clause: WhereClause<Q>,\n ) => BuilderTypeFromConstraint<Q, CONSTRAINED>;\n};\n\ntype Pivotable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly pivotTo: <L extends LinkNames<Q>>(\n type: L,\n ) => CONSTRAINED extends true\n ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : NonNullable<CompileTimeMetadata<Q>[\"links\"][L][\"multiplicity\"]> extends\n true ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : DerivedProperty.SelectPropertyBuilder<LinkedType<Q, L>, false>;\n};\n\ntype Aggregatable<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n readonly aggregate: <\n V extends ValidAggregationKeys<\n Q,\n \"withPropertiesAggregate\"\n >,\n >(\n aggregationSpecifier: V,\n opts?: V extends `${any}:${infer P}`\n ? P extends CollectWithPropAggregations ? { limit: number }\n : P extends \"approximatePercentile\" ? { percentile: number }\n : never\n : never,\n ) => DerivedProperty.SelectorResult<\n V extends `${infer N}:${infer P}`\n ? P extends CollectWithPropAggregations\n ? Array<CompileTimeMetadata<Q>[\"properties\"][N][\"type\"]> | undefined\n : P extends \"approximateDistinct\" | \"exactDistinct\" | \"$count\" ? \"integer\"\n : \"double\" | undefined\n : V extends \"$count\" ? \"integer\"\n : never\n >;\n};\n\ntype Selectable<Q extends ObjectOrInterfaceDefinition> = {\n readonly selectProperty: <R extends PropertyKeys<Q>>(\n propertyName: R,\n ) => DerivedProperty.SelectorResult<\n SimplePropertyDef.Make<\n CompileTimeMetadata<Q>[\"properties\"][R][\"type\"],\n CompileTimeMetadata<Q>[\"properties\"][R][\"nullable\"],\n CompileTimeMetadata<Q>[\"properties\"][R][\"multiplicity\"]\n >\n >;\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WA2BiBA,eAAe","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupByClause.js","names":["TimeDurationMapping","DurationMapping"],"sources":["GroupByClause.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { AggregatableKeys } from \"../aggregate/AggregatableKeys.js\";\nimport { TimeDurationMapping } from \"../mapping/DurationMapping.js\";\nimport type { ObjectOrInterfaceDefinition } from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { GroupByMapper } from \"./GroupByMapper.js\";\n\nexport type GroupByClause<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n [P in AggregatableKeys<Q>]?: GroupByEntry<Q, P>;\n};\n\ntype BaseGroupByValue
|
|
1
|
+
{"version":3,"file":"GroupByClause.js","names":["TimeDurationMapping","DurationMapping"],"sources":["GroupByClause.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { AggregatableKeys } from \"../aggregate/AggregatableKeys.js\";\nimport { TimeDurationMapping } from \"../mapping/DurationMapping.js\";\nimport type { ObjectOrInterfaceDefinition } from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { GroupByMapper } from \"./GroupByMapper.js\";\n\nexport type GroupByClause<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n [P in AggregatableKeys<Q>]?: GroupByEntry<Q, P>;\n};\n\ntype BaseGroupByValue =\n | \"exact\"\n | { $exactWithLimit: number }\n | ExactGroupByWithOptions;\n\ntype ExactGroupByWithOptions = {\n $exact: { $limit?: number; $defaultValue?: string };\n};\n\nexport type GroupByRange<T> = [T, T];\n\nexport type StringGroupByValue = BaseGroupByValue;\n\nexport type NumericGroupByValue = BaseGroupByValue | {\n $fixedWidth: number;\n} | { $ranges: GroupByRange<number>[] };\n\nexport type TimestampGroupByValue =\n | BaseGroupByValue\n | { $ranges: GroupByRange<string>[] }\n | { $duration: TimestampDurationGroupBy };\n\nexport type DateGroupByValue =\n | BaseGroupByValue\n | { $ranges: GroupByRange<string>[] }\n | { $duration: DatetimeDurationGroupBy };\n\nexport type BooleanGroupByValue = BaseGroupByValue;\n\nexport type TimestampTimeUnits =\n | DateTimeUnits\n | \"SECONDS\"\n | \"MINUTES\"\n | \"HOURS\";\n\nexport type DateTimeUnits = \"DAYS\" | \"WEEKS\" | \"MONTHS\" | \"YEARS\" | \"QUARTERS\";\nexport const DurationMapping: {\n quarter: \"QUARTERS\";\n quarters: \"QUARTERS\";\n sec: \"SECONDS\";\n seconds: \"SECONDS\";\n min: \"MINUTES\";\n minute: \"MINUTES\";\n minutes: \"MINUTES\";\n hr: \"HOURS\";\n hrs: \"HOURS\";\n hour: \"HOURS\";\n hours: \"HOURS\";\n day: \"DAYS\";\n days: \"DAYS\";\n wk: \"WEEKS\";\n week: \"WEEKS\";\n weeks: \"WEEKS\";\n mos: \"MONTHS\";\n month: \"MONTHS\";\n months: \"MONTHS\";\n yr: \"YEARS\";\n year: \"YEARS\";\n years: \"YEARS\";\n} = {\n ...TimeDurationMapping,\n \"quarter\": \"QUARTERS\",\n \"quarters\": \"QUARTERS\",\n} satisfies Record<string, DateTimeUnits | TimestampTimeUnits>;\n\ninterface TimeValueMapping {\n SECONDS: number;\n MINUTES: number;\n HOURS: number;\n DAYS: number;\n WEEKS: 1;\n MONTHS: 1;\n YEARS: 1;\n QUARTERS: 1;\n}\n\ntype DurationGroupBy<A> = {\n [K in keyof typeof DurationMapping]: typeof DurationMapping[K] extends A\n ? [TimeValueMapping[typeof DurationMapping[K]], K]\n : never;\n}[keyof typeof DurationMapping];\n\ntype TimestampDurationGroupBy = DurationGroupBy<TimestampTimeUnits>;\ntype DatetimeDurationGroupBy = DurationGroupBy<DateTimeUnits>;\n\ntype GroupByEntry<\n Q extends ObjectOrInterfaceDefinition,\n P extends AggregatableKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P][\"type\"] extends keyof GroupByMapper\n ? GroupByMapper[CompileTimeMetadata<Q>[\"properties\"][P][\"type\"]]\n : never;\n\nexport type AllGroupByValues = GroupByMapper[keyof GroupByMapper];\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,mBAAmB,QAAQ,+BAA+B;AA+CnE,OAAO,MAAMC,eAuBZ,GAAG;EACF,GAAGD,mBAAmB;EACtB,SAAS,EAAE,UAAU;EACrB,UAAU,EAAE;AACd,CAA8D","ignoreList":[]}
|
|
@@ -81,6 +81,31 @@ describe("ObjectSet", () => {
|
|
|
81
81
|
});
|
|
82
82
|
test.todo("with calculated properties");
|
|
83
83
|
});
|
|
84
|
+
describe("nullability", () => {
|
|
85
|
+
it("count, exactDistinct, and approximateDistinct aren't nullable", async () => {
|
|
86
|
+
const withFamily = fauxObjectSet.withProperties({
|
|
87
|
+
"mom": base => base.pivotTo("lead").aggregate("$count"),
|
|
88
|
+
"dad": base => base.pivotTo("lead").aggregate("class:exactDistinct"),
|
|
89
|
+
"sis": base => base.pivotTo("lead").aggregate("class:approximateDistinct")
|
|
90
|
+
});
|
|
91
|
+
await withFamily.fetchPage();
|
|
92
|
+
expectTypeOf().toEqualTypeOf();
|
|
93
|
+
});
|
|
94
|
+
it("collectToSet, collectToList, selectProperty, and numeric aggregations are nullable", async () => {
|
|
95
|
+
const withAggregations = fauxObjectSet.withProperties({
|
|
96
|
+
"collectSet": base => base.pivotTo("lead").aggregate("class:collectSet"),
|
|
97
|
+
"select": base => base.pivotTo("lead").selectProperty("fullName"),
|
|
98
|
+
"collectList": base => base.pivotTo("lead").aggregate("class:collectList"),
|
|
99
|
+
"min": base => base.pivotTo("lead").aggregate("employeeId:max"),
|
|
100
|
+
"max": base => base.pivotTo("lead").aggregate("employeeId:min"),
|
|
101
|
+
"sum": base => base.pivotTo("lead").aggregate("employeeId:sum"),
|
|
102
|
+
"avg": base => base.pivotTo("lead").aggregate("employeeId:avg"),
|
|
103
|
+
"approximatePercentile": base => base.pivotTo("lead").aggregate("employeeId:approximatePercentile")
|
|
104
|
+
});
|
|
105
|
+
await withAggregations.fetchPage();
|
|
106
|
+
expectTypeOf().toEqualTypeOf();
|
|
107
|
+
});
|
|
108
|
+
});
|
|
84
109
|
describe("fetch functions return correct Osdk.Instance", () => {
|
|
85
110
|
const withFamily = fauxObjectSet.withProperties({
|
|
86
111
|
"mom": base => base.pivotTo("lead").aggregate("$count"),
|
|
@@ -118,7 +143,7 @@ describe("ObjectSet", () => {
|
|
|
118
143
|
});
|
|
119
144
|
it("Works with selecting all non-RDP's", async () => {
|
|
120
145
|
await withFamily.fetchPage({
|
|
121
|
-
$select: ["class", "fullName"]
|
|
146
|
+
$select: ["class", "fullName", "employeeId"]
|
|
122
147
|
});
|
|
123
148
|
expectTypeOf().toEqualTypeOf();
|
|
124
149
|
expectTypeOf().toEqualTypeOf();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectSet.test.js","names":["describe","expectTypeOf","it","test","vi","Employee","type","apiName","fauxObjectSet","where","fn","withProperties","fetchPage","Promise","resolve","asyncIter","toEqualTypeOf","withA","base","pivotTo","aggregate","withFamily","selectProperty","withMom","withParents","todo","$select"],"sources":["ObjectSet.test.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 { describe, expectTypeOf, it, test, vi } from \"vitest\";\n\nimport type {\n ObjectMetadata as $ObjectMetadata,\n ObjectSet as $ObjectSet,\n ObjectTypeDefinition as $ObjectTypeDefinition,\n Osdk,\n PropertyDef as $PropertyDef,\n PropertyKeys,\n PropertyValueWireToClient as $PropType,\n SingleLinkAccessor as $SingleLinkAccessor,\n} from \"../index.js\";\n\nnamespace Employee {\n export type PropertyKeys =\n | \"fullName\"\n | \"class\";\n\n export interface Links {\n readonly lead: $SingleLinkAccessor<Employee>;\n readonly peeps: Employee.ObjectSet;\n }\n\n export interface Props {\n readonly class: $PropType[\"string\"] | undefined;\n readonly fullName: $PropType[\"string\"] | undefined;\n }\n export type StrictProps = Props;\n\n export interface ObjectSet extends $ObjectSet<Employee, Employee.ObjectSet> {}\n}\n\ninterface Employee extends $ObjectTypeDefinition {\n type: \"object\";\n apiName: \"Employee\";\n __DefinitionMetadata?: {\n objectSet: Employee.ObjectSet;\n props: Employee.Props;\n linksType: Employee.Links;\n strictProps: Employee.StrictProps;\n apiName: \"Employee\";\n description: \"A full-time or part-time \\n\\n employee of our firm\";\n displayName: \"Employee\";\n icon: {\n type: \"blueprint\";\n color: \"blue\";\n name: \"person\";\n };\n implements: [\"FooInterface\"];\n interfaceMap: {\n FooInterface: {\n fooSpt: \"fullName\";\n };\n };\n inverseInterfaceMap: {\n FooInterface: {\n fullName: \"fooSpt\";\n };\n };\n links: {\n lead: $ObjectMetadata.Link<Employee, false>;\n peeps: $ObjectMetadata.Link<Employee, true>;\n };\n pluralDisplayName: \"Employees\";\n primaryKeyApiName: \"employeeId\";\n primaryKeyType: \"integer\";\n properties: {\n class: $PropertyDef<\"string\", \"nullable\", \"single\">;\n fullName: $PropertyDef<\"string\", \"nullable\", \"single\">;\n };\n rid: \"ri.ontology.main.object-type.401ac022-89eb-4591-8b7e-0a912b9efb44\";\n status: \"ACTIVE\";\n titleProperty: \"fullName\";\n type: \"object\";\n visibility: \"NORMAL\";\n };\n}\n\nconst Employee: Employee = {\n type: \"object\",\n apiName: \"Employee\",\n};\n\ndescribe(\"ObjectSet\", () => {\n const fauxObjectSet = {\n where: vi.fn(() => {\n return fauxObjectSet;\n }),\n withProperties: vi.fn(() => {\n return fauxObjectSet;\n }),\n fetchPage: vi.fn(() => Promise.resolve()),\n asyncIter: vi.fn(() => {\n return {};\n }),\n } as any as Employee.ObjectSet;\n\n describe(\"normal\", () => {\n test(\"select none\", async () => {\n const result = await fauxObjectSet.fetchPage();\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never>\n >();\n });\n\n test(\"select one\", async () => {\n const result = await fauxObjectSet.fetchPage({ \"$select\": [\"fullName\"] });\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, \"fullName\">\n >();\n });\n });\n\n describe(\".withProperties\", () => {\n test(\"single property\", async () => {\n const withA = fauxObjectSet.withProperties({\n \"a\": (base) => {\n return base.pivotTo(\"lead\").aggregate(\"class:exactDistinct\");\n },\n });\n\n expectTypeOf(withA).toEqualTypeOf<\n $ObjectSet<Employee, {\n a: \"integer\" | undefined;\n }>\n >();\n\n const withAResults = await withA.fetchPage();\n\n expectTypeOf<typeof withAResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n a: \"integer\" | undefined;\n }>\n >();\n\n expectTypeOf<typeof withAResults[\"data\"][0][\"a\"]>()\n .toEqualTypeOf<number | undefined>();\n });\n\n test(\"multiple properties\", async () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n expectTypeOf(withFamily).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number | undefined>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"dad\"]>()\n .toEqualTypeOf<string | undefined>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"sister\"]>()\n .toEqualTypeOf<string[] | undefined>();\n });\n\n describe(\"called in succession\", () => {\n test(\"independently\", () => {\n const withMom = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n const withParents = withMom.withProperties({\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n });\n\n expectTypeOf(withParents).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n }>\n >();\n });\n\n test.todo(\"with calculated properties\");\n });\n\n describe(\"fetch functions return correct Osdk.Instance\", () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n\n it(\"works with .where\", async () => {\n const where = withFamily.where({ \"mom\": 1 });\n const whereResults = await where.fetchPage();\n\n expectTypeOf<typeof where>().toEqualTypeOf<typeof withFamily>();\n expectTypeOf<typeof whereResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"works with .async\", () => {\n const asyncIter = withFamily.asyncIter();\n expectTypeOf<typeof asyncIter>().toEqualTypeOf<\n AsyncIterableIterator<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >\n >();\n });\n\n it(\"Works with no select\", async () => {\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"Works with selecting all RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\", \"dad\", \"sister\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number | undefined>();\n });\n\n it(\"Works with selecting some RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\" | undefined;\n }>\n >();\n });\n\n it(\"Works with selecting all non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"fullName\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {}>\n >();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"class\"]>()\n .toEqualTypeOf<\n string | undefined\n >();\n });\n\n it(\"Works with selecting some non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, \"class\", {}>\n >();\n });\n\n it(\"Works with selecting a mix\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\",\n { mom: \"integer\" | undefined }\n >\n >();\n });\n });\n\n it(\"allows extracting the type\", () => {\n const objectSet = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n type ObjectSetType = typeof objectSet;\n\n expectTypeOf<ObjectSetType>().toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\" | undefined;\n }>\n >();\n\n const objectSet2 = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n\n it(\"Defining the Type\", () => {\n type ObjectSetType = $ObjectSet<\n Employee,\n {\n mom: \"integer\" | undefined;\n }\n >;\n\n fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ObjectSet.test.js","names":["describe","expectTypeOf","it","test","vi","Employee","type","apiName","fauxObjectSet","where","fn","withProperties","fetchPage","Promise","resolve","asyncIter","toEqualTypeOf","withA","base","pivotTo","aggregate","withFamily","selectProperty","withMom","withParents","todo","withAggregations","$select"],"sources":["ObjectSet.test.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 { describe, expectTypeOf, it, test, vi } from \"vitest\";\n\nimport type {\n ObjectMetadata as $ObjectMetadata,\n ObjectSet as $ObjectSet,\n ObjectTypeDefinition as $ObjectTypeDefinition,\n Osdk,\n PropertyDef as $PropertyDef,\n PropertyKeys,\n PropertyValueWireToClient as $PropType,\n SingleLinkAccessor as $SingleLinkAccessor,\n} from \"../index.js\";\n\nnamespace Employee {\n export type PropertyKeys =\n | \"employeeId\"\n | \"fullName\"\n | \"class\";\n\n export interface Links {\n readonly lead: $SingleLinkAccessor<Employee>;\n readonly peeps: Employee.ObjectSet;\n }\n\n export interface Props {\n readonly class: $PropType[\"string\"] | undefined;\n readonly fullName: $PropType[\"string\"] | undefined;\n readonly employeeId: $PropType[\"integer\"] | undefined;\n }\n export type StrictProps = Props;\n\n export interface ObjectSet extends $ObjectSet<Employee, Employee.ObjectSet> {}\n}\n\ninterface Employee extends $ObjectTypeDefinition {\n type: \"object\";\n apiName: \"Employee\";\n __DefinitionMetadata?: {\n objectSet: Employee.ObjectSet;\n props: Employee.Props;\n linksType: Employee.Links;\n strictProps: Employee.StrictProps;\n apiName: \"Employee\";\n description: \"A full-time or part-time \\n\\n employee of our firm\";\n displayName: \"Employee\";\n icon: {\n type: \"blueprint\";\n color: \"blue\";\n name: \"person\";\n };\n implements: [\"FooInterface\"];\n interfaceMap: {\n FooInterface: {\n fooSpt: \"fullName\";\n };\n };\n inverseInterfaceMap: {\n FooInterface: {\n fullName: \"fooSpt\";\n };\n };\n links: {\n lead: $ObjectMetadata.Link<Employee, false>;\n peeps: $ObjectMetadata.Link<Employee, true>;\n };\n pluralDisplayName: \"Employees\";\n primaryKeyApiName: \"employeeId\";\n primaryKeyType: \"integer\";\n properties: {\n class: $PropertyDef<\"string\", \"nullable\", \"single\">;\n fullName: $PropertyDef<\"string\", \"nullable\", \"single\">;\n employeeId: $PropertyDef<\"integer\", \"nullable\", \"single\">;\n };\n rid: \"ri.ontology.main.object-type.401ac022-89eb-4591-8b7e-0a912b9efb44\";\n status: \"ACTIVE\";\n titleProperty: \"fullName\";\n type: \"object\";\n visibility: \"NORMAL\";\n };\n}\n\nconst Employee: Employee = {\n type: \"object\",\n apiName: \"Employee\",\n};\n\ndescribe(\"ObjectSet\", () => {\n const fauxObjectSet = {\n where: vi.fn(() => {\n return fauxObjectSet;\n }),\n withProperties: vi.fn(() => {\n return fauxObjectSet;\n }),\n fetchPage: vi.fn(() => Promise.resolve()),\n asyncIter: vi.fn(() => {\n return {};\n }),\n } as any as Employee.ObjectSet;\n\n describe(\"normal\", () => {\n test(\"select none\", async () => {\n const result = await fauxObjectSet.fetchPage();\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never>\n >();\n });\n\n test(\"select one\", async () => {\n const result = await fauxObjectSet.fetchPage({ \"$select\": [\"fullName\"] });\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, \"fullName\">\n >();\n });\n });\n\n describe(\".withProperties\", () => {\n test(\"single property\", async () => {\n const withA = fauxObjectSet.withProperties({\n \"a\": (base) => {\n return base.pivotTo(\"lead\").aggregate(\"class:exactDistinct\");\n },\n });\n\n expectTypeOf(withA).toEqualTypeOf<\n $ObjectSet<Employee, {\n a: \"integer\";\n }>\n >();\n\n const withAResults = await withA.fetchPage();\n\n expectTypeOf<typeof withAResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n a: \"integer\";\n }>\n >();\n\n expectTypeOf<typeof withAResults[\"data\"][0][\"a\"]>()\n .toEqualTypeOf<number>();\n });\n\n test(\"multiple properties\", async () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n expectTypeOf(withFamily).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"dad\"]>()\n .toEqualTypeOf<string | undefined>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"sister\"]>()\n .toEqualTypeOf<string[] | undefined>();\n });\n\n describe(\"called in succession\", () => {\n test(\"independently\", () => {\n const withMom = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n const withParents = withMom.withProperties({\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n });\n\n expectTypeOf(withParents).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n }>\n >();\n });\n\n test.todo(\"with calculated properties\");\n });\n\n describe(\"nullability\", () => {\n it(\"count, exactDistinct, and approximateDistinct aren't nullable\", async () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:exactDistinct\"),\n \"sis\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:approximateDistinct\"),\n });\n\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"integer\";\n sis: \"integer\";\n }>\n >();\n });\n\n it(\n \"collectToSet, collectToList, selectProperty, and numeric aggregations are nullable\",\n async () => {\n const withAggregations = fauxObjectSet.withProperties({\n \"collectSet\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:collectSet\"),\n \"select\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"collectList\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n \"min\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:max\"),\n \"max\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:min\"),\n \"sum\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:sum\"),\n \"avg\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:avg\"),\n \"approximatePercentile\": (base) =>\n base.pivotTo(\"lead\").aggregate(\n \"employeeId:approximatePercentile\",\n ),\n });\n\n const withAggregationResults = await withAggregations.fetchPage();\n\n expectTypeOf<typeof withAggregationResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n collectSet: \"string\"[] | undefined;\n select: \"string\" | undefined;\n collectList: \"string\"[] | undefined;\n min: \"double\" | undefined;\n max: \"double\" | undefined;\n sum: \"double\" | undefined;\n avg: \"double\" | undefined;\n approximatePercentile: \"double\" | undefined;\n }>\n >();\n },\n );\n });\n\n describe(\"fetch functions return correct Osdk.Instance\", () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n\n it(\"works with .where\", async () => {\n const where = withFamily.where({ \"mom\": 1 });\n const whereResults = await where.fetchPage();\n\n expectTypeOf<typeof where>().toEqualTypeOf<typeof withFamily>();\n expectTypeOf<typeof whereResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"works with .async\", () => {\n const asyncIter = withFamily.asyncIter();\n expectTypeOf<typeof asyncIter>().toEqualTypeOf<\n AsyncIterableIterator<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >\n >();\n });\n\n it(\"Works with no select\", async () => {\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"Works with selecting all RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\", \"dad\", \"sister\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number>();\n });\n\n it(\"Works with selecting some RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\";\n }>\n >();\n });\n\n it(\"Works with selecting all non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"fullName\", \"employeeId\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {}>\n >();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"class\"]>()\n .toEqualTypeOf<\n string | undefined\n >();\n });\n\n it(\"Works with selecting some non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, \"class\", {}>\n >();\n });\n\n it(\"Works with selecting a mix\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\",\n { mom: \"integer\" }\n >\n >();\n });\n });\n\n it(\"allows extracting the type\", () => {\n const objectSet = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n type ObjectSetType = typeof objectSet;\n\n expectTypeOf<ObjectSetType>().toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\";\n }>\n >();\n\n const objectSet2 = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n\n it(\"Defining the Type\", () => {\n type ObjectSetType = $ObjectSet<\n Employee,\n {\n mom: \"integer\" | undefined;\n }\n >;\n\n fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description?: string;\n properties: Record<any, ObjectMetadata.Property>;\n links: Record<\n string,\n ObjectMetadata.Link<any, any>\n >;\n rid: string;\n /**\n * Represents the \"super interfaces\" of this object.\n *\n * Optional because they may not exist on legacy.\n */\n implements?: ReadonlyArray<string>;\n};\n\nexport interface ObjectInterfaceCompileDefinition {\n type: \"object\" | \"interface\";\n objectSet?: any;\n props?: any;\n strictProps?: any;\n linksType?: any;\n}\n\nexport interface VersionBound<V extends VersionString<any, any, any>> {\n __expectedClientVersion?: V;\n}\n\nexport interface ObjectMetadata extends ObjectInterfaceBaseMetadata {\n type: \"object\";\n primaryKeyApiName: keyof this[\"properties\"];\n titleProperty: keyof this[\"properties\"];\n primaryKeyType: PrimaryKeyTypes;\n icon?: Icon;\n visibility?: ObjectTypeVisibility;\n pluralDisplayName: string;\n status: ReleaseStatus;\n interfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* InterfaceType property api name */ string,\n /* ObjectType property api name */ string\n >\n >;\n inverseInterfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* ObjectType property api name */ string,\n /* InterfaceType property api name */ string\n >\n >;\n}\n\nexport namespace ObjectMetadata {\n export interface Property {\n readonly?: boolean;\n displayName?: string;\n description?: string;\n type: WirePropertyTypes;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export interface Link<\n Q extends ObjectTypeDefinition,\n M extends boolean,\n > {\n __OsdkLinkTargetType?: Q;\n targetType: Q[\"apiName\"];\n multiplicity: M;\n }\n}\n\nexport interface ObjectTypeDefinition {\n type: \"object\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ObjectMetadata\n & ObjectInterfaceCompileDefinition;\n}\n\nexport type ObjectTypeLinkKeysFrom2<\n Q extends ObjectTypeDefinition,\n> =\n & keyof CompileTimeMetadata<Q>[\"links\"]\n & string;\n\nexport interface PropertyDef<\n T extends WirePropertyTypes,\n N extends \"nullable\" | \"non-nullable\" = \"nullable\",\n M extends \"array\" | \"single\" = \"single\",\n> extends ObjectMetadata.Property {\n type: T;\n multiplicity: M extends \"array\" ? true : false;\n nullable: N extends \"nullable\" ? true : false;\n}\n\nexport type ReleaseStatus
|
|
1
|
+
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description?: string;\n properties: Record<any, ObjectMetadata.Property>;\n links: Record<\n string,\n ObjectMetadata.Link<any, any>\n >;\n rid: string;\n /**\n * Represents the \"super interfaces\" of this object.\n *\n * Optional because they may not exist on legacy.\n */\n implements?: ReadonlyArray<string>;\n};\n\nexport interface ObjectInterfaceCompileDefinition {\n type: \"object\" | \"interface\";\n objectSet?: any;\n props?: any;\n strictProps?: any;\n linksType?: any;\n}\n\nexport interface VersionBound<V extends VersionString<any, any, any>> {\n __expectedClientVersion?: V;\n}\n\nexport interface ObjectMetadata extends ObjectInterfaceBaseMetadata {\n type: \"object\";\n primaryKeyApiName: keyof this[\"properties\"];\n titleProperty: keyof this[\"properties\"];\n primaryKeyType: PrimaryKeyTypes;\n icon?: Icon;\n visibility?: ObjectTypeVisibility;\n pluralDisplayName: string;\n status: ReleaseStatus;\n interfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* InterfaceType property api name */ string,\n /* ObjectType property api name */ string\n >\n >;\n inverseInterfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* ObjectType property api name */ string,\n /* InterfaceType property api name */ string\n >\n >;\n}\n\nexport namespace ObjectMetadata {\n export interface Property {\n readonly?: boolean;\n displayName?: string;\n description?: string;\n type: WirePropertyTypes;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export interface Link<\n Q extends ObjectTypeDefinition,\n M extends boolean,\n > {\n __OsdkLinkTargetType?: Q;\n targetType: Q[\"apiName\"];\n multiplicity: M;\n }\n}\n\nexport interface ObjectTypeDefinition {\n type: \"object\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ObjectMetadata\n & ObjectInterfaceCompileDefinition;\n}\n\nexport type ObjectTypeLinkKeysFrom2<\n Q extends ObjectTypeDefinition,\n> =\n & keyof CompileTimeMetadata<Q>[\"links\"]\n & string;\n\nexport interface PropertyDef<\n T extends WirePropertyTypes,\n N extends \"nullable\" | \"non-nullable\" = \"nullable\",\n M extends \"array\" | \"single\" = \"single\",\n> extends ObjectMetadata.Property {\n type: T;\n multiplicity: M extends \"array\" ? true : false;\n nullable: N extends \"nullable\" ? true : false;\n}\n\nexport type ReleaseStatus =\n | \"ACTIVE\"\n | \"EXPERIMENTAL\"\n | \"DEPRECATED\"\n | \"ENDORSED\";\n\ntype ObjectTypeVisibility = \"NORMAL\" | \"PROMINENT\" | \"HIDDEN\";\n\ntype BlueprintIcon = {\n type: \"blueprint\";\n color: string;\n name: string;\n};\n\ntype Icon = BlueprintIcon;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WA2FiBA,cAAc","ignoreList":[]}
|
package/build/cjs/{FilteredPropertyKeys-C9I_dd7u.d.cts → FilteredPropertyKeys-DQJEjgBE.d.cts}
RENAMED
|
@@ -322,7 +322,7 @@ interface PropertyDef<T extends WirePropertyTypes, N extends "nullable" | "non-n
|
|
|
322
322
|
multiplicity: M extends "array" ? true : false;
|
|
323
323
|
nullable: N extends "nullable" ? true : false;
|
|
324
324
|
}
|
|
325
|
-
type ReleaseStatus = "ACTIVE" | "EXPERIMENTAL" | "DEPRECATED";
|
|
325
|
+
type ReleaseStatus = "ACTIVE" | "EXPERIMENTAL" | "DEPRECATED" | "ENDORSED";
|
|
326
326
|
type ObjectTypeVisibility = "NORMAL" | "PROMINENT" | "HIDDEN";
|
|
327
327
|
type BlueprintIcon = {
|
|
328
328
|
type: "blueprint";
|
|
@@ -399,6 +399,12 @@ type GroupByClause<Q extends ObjectOrInterfaceDefinition> = {
|
|
|
399
399
|
};
|
|
400
400
|
type BaseGroupByValue = "exact" | {
|
|
401
401
|
$exactWithLimit: number;
|
|
402
|
+
} | ExactGroupByWithOptions;
|
|
403
|
+
type ExactGroupByWithOptions = {
|
|
404
|
+
$exact: {
|
|
405
|
+
$limit?: number;
|
|
406
|
+
$defaultValue?: string;
|
|
407
|
+
};
|
|
402
408
|
};
|
|
403
409
|
type GroupByRange<T> = [T, T];
|
|
404
410
|
type StringGroupByValue = BaseGroupByValue;
|
|
@@ -924,7 +930,7 @@ type Aggregatable<Q extends ObjectOrInterfaceDefinition> = {
|
|
|
924
930
|
limit: number;
|
|
925
931
|
} : P extends "approximatePercentile" ? {
|
|
926
932
|
percentile: number;
|
|
927
|
-
} : never : never) => DerivedProperty.SelectorResult<V extends `${infer N}:${infer P}` ? P extends CollectWithPropAggregations ? Array<CompileTimeMetadata<Q>["properties"][N]["type"]> | undefined : P extends "approximateDistinct" | "exactDistinct" | "$count" ? "integer"
|
|
933
|
+
} : never : never) => DerivedProperty.SelectorResult<V extends `${infer N}:${infer P}` ? P extends CollectWithPropAggregations ? Array<CompileTimeMetadata<Q>["properties"][N]["type"]> | undefined : P extends "approximateDistinct" | "exactDistinct" | "$count" ? "integer" : "double" | undefined : V extends "$count" ? "integer" : never>;
|
|
928
934
|
};
|
|
929
935
|
type Selectable<Q extends ObjectOrInterfaceDefinition> = {
|
|
930
936
|
readonly selectProperty: <R extends PropertyKeys<Q>>(propertyName: R) => DerivedProperty.SelectorResult<SimplePropertyDef.Make<CompileTimeMetadata<Q>["properties"][R]["type"], CompileTimeMetadata<Q>["properties"][R]["nullable"], CompileTimeMetadata<Q>["properties"][R]["multiplicity"]>>;
|
package/build/cjs/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as Attachment, M as MediaReference, a as AttachmentUpload, O as ObjectTypeDefinition, b as OsdkBase, c as OsdkObjectPrimaryKeyType, d as ObjectSet, I as InterfaceDefinition, R as ReleaseStatus, e as OsdkMetadata, P as PropertyValueWireToClient, f as PrimaryKeyTypes } from './FilteredPropertyKeys-
|
|
2
|
-
export { g as AggregateOpts, h as AggregateOptsThatErrorsAndDisallowsOrderingWithMultipleGroupBy, k as AggregationClause, i as AggregationResultsWithGroups, j as AggregationResultsWithoutGroups, l as AggregationsResults, t as AllGroupByValues, w as AsyncIterArgs, x as Augment, y as Augments, Q as BaseObjectSet, a2 as BaseWirePropertyTypes, _ as CompileTimeMetadata, a5 as ConvertProps, r as DerivedProperty, D as DistanceUnitMapping, s as DurationMapping, F as FetchPageArgs, C as FetchPageResult, U as FilteredPropertyKeys, G as GeoFilterOptions, m as GeoFilter_Intersects, n as GeoFilter_Within, a9 as GeotimeSeriesProperty, u as GroupByClause, v as GroupByRange, X as InterfaceMetadata, ae as LinkNames, ad as LinkedType, H as Media, J as MediaMetadata, N as NullabilityAdherence, $ as ObjectMetadata, Y as ObjectOrInterfaceDefinition, T as ObjectSetSubscription, a6 as Osdk, q as OsdkObjectLinksObject, p as OsdkObjectPropertyType, a7 as PageResult, o as PossibleWhereClauseFilters, a4 as PrimaryKeyType, a0 as PropertyDef, Z as PropertyKeys, L as Result, z as SelectArg, B as SelectArgToKeys, S as SingleLinkAccessor, E as SingleOsdkResult, aa as TimeSeriesPoint, ab as TimeSeriesProperty, ac as TimeSeriesQuery, a8 as TimeseriesDurationMapping, V as ValidAggregationKeys, a1 as VersionBound, W as WhereClause, a3 as WirePropertyTypes, K as isOk } from './FilteredPropertyKeys-
|
|
1
|
+
import { A as Attachment, M as MediaReference, a as AttachmentUpload, O as ObjectTypeDefinition, b as OsdkBase, c as OsdkObjectPrimaryKeyType, d as ObjectSet, I as InterfaceDefinition, R as ReleaseStatus, e as OsdkMetadata, P as PropertyValueWireToClient, f as PrimaryKeyTypes } from './FilteredPropertyKeys-DQJEjgBE.cjs';
|
|
2
|
+
export { g as AggregateOpts, h as AggregateOptsThatErrorsAndDisallowsOrderingWithMultipleGroupBy, k as AggregationClause, i as AggregationResultsWithGroups, j as AggregationResultsWithoutGroups, l as AggregationsResults, t as AllGroupByValues, w as AsyncIterArgs, x as Augment, y as Augments, Q as BaseObjectSet, a2 as BaseWirePropertyTypes, _ as CompileTimeMetadata, a5 as ConvertProps, r as DerivedProperty, D as DistanceUnitMapping, s as DurationMapping, F as FetchPageArgs, C as FetchPageResult, U as FilteredPropertyKeys, G as GeoFilterOptions, m as GeoFilter_Intersects, n as GeoFilter_Within, a9 as GeotimeSeriesProperty, u as GroupByClause, v as GroupByRange, X as InterfaceMetadata, ae as LinkNames, ad as LinkedType, H as Media, J as MediaMetadata, N as NullabilityAdherence, $ as ObjectMetadata, Y as ObjectOrInterfaceDefinition, T as ObjectSetSubscription, a6 as Osdk, q as OsdkObjectLinksObject, p as OsdkObjectPropertyType, a7 as PageResult, o as PossibleWhereClauseFilters, a4 as PrimaryKeyType, a0 as PropertyDef, Z as PropertyKeys, L as Result, z as SelectArg, B as SelectArgToKeys, S as SingleLinkAccessor, E as SingleOsdkResult, aa as TimeSeriesPoint, ab as TimeSeriesProperty, ac as TimeSeriesQuery, a8 as TimeseriesDurationMapping, V as ValidAggregationKeys, a1 as VersionBound, W as WhereClause, a3 as WirePropertyTypes, K as isOk } from './FilteredPropertyKeys-DQJEjgBE.cjs';
|
|
3
3
|
import 'type-fest';
|
|
4
4
|
import 'geojson';
|
|
5
5
|
|
|
@@ -88,7 +88,9 @@ interface ObjectEdits {
|
|
|
88
88
|
type: "edits";
|
|
89
89
|
addedObjects: Array<ObjectReference>;
|
|
90
90
|
modifiedObjects: Array<ObjectReference>;
|
|
91
|
+
deletedObjects?: Array<ObjectReference>;
|
|
91
92
|
addedLinks: Array<LinkReference>;
|
|
93
|
+
deletedLinks?: Array<LinkReference>;
|
|
92
94
|
deletedObjectsCount: number;
|
|
93
95
|
deletedLinksCount: number;
|
|
94
96
|
}
|
|
@@ -96,7 +98,9 @@ interface LargeScaleObjectEdits {
|
|
|
96
98
|
type: "largeScaleEdits";
|
|
97
99
|
addedObjects?: never;
|
|
98
100
|
modifiedObjects?: never;
|
|
101
|
+
deletedObjects?: never;
|
|
99
102
|
addedLinks?: never;
|
|
103
|
+
deletedLinks?: never;
|
|
100
104
|
deletedObjectsCount?: never;
|
|
101
105
|
deletedLinksCount?: never;
|
|
102
106
|
}
|
|
@@ -193,7 +197,7 @@ declare namespace ActionParam {
|
|
|
193
197
|
type InterfaceType<T extends InterfaceDefinition> = {
|
|
194
198
|
$objectType: NonNullable<T["__DefinitionMetadata"]> extends {
|
|
195
199
|
implementedBy: infer U;
|
|
196
|
-
} ? (U extends ReadonlyArray<string> ? U[number] : string) : string;
|
|
200
|
+
} ? (U extends ReadonlyArray<never> ? string : U extends ReadonlyArray<string> ? U[number] : string) : string;
|
|
197
201
|
$primaryKey: string | number;
|
|
198
202
|
};
|
|
199
203
|
type StructType<T extends Record<string, keyof DataValueClientToWire>> = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Y as ObjectOrInterfaceDefinition, U as FilteredPropertyKeys, M as MediaReference, O as ObjectTypeDefinition, Z as PropertyKeys, N as NullabilityAdherence, z as SelectArg, a6 as Osdk, af as ExtractOptions, b as OsdkBase } from '../FilteredPropertyKeys-
|
|
2
|
-
export { ag as MinimalObjectSet } from '../FilteredPropertyKeys-
|
|
1
|
+
import { Y as ObjectOrInterfaceDefinition, U as FilteredPropertyKeys, M as MediaReference, O as ObjectTypeDefinition, Z as PropertyKeys, N as NullabilityAdherence, z as SelectArg, a6 as Osdk, af as ExtractOptions, b as OsdkBase } from '../FilteredPropertyKeys-DQJEjgBE.cjs';
|
|
2
|
+
export { ag as MinimalObjectSet } from '../FilteredPropertyKeys-DQJEjgBE.cjs';
|
|
3
3
|
import 'type-fest';
|
|
4
4
|
import 'geojson';
|
|
5
5
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionResults.js","names":[],"sources":["ActionResults.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\n// These are migrated from @osdk/foundry.internal to avoid coupling the apis\n\nexport type ActionResults =\n & (\n | ObjectEdits\n | LargeScaleObjectEdits\n )\n & { editedObjectTypes: Array<String> };\n\ninterface ObjectEdits {\n type: \"edits\";\n addedObjects: Array<ObjectReference>;\n modifiedObjects: Array<ObjectReference>;\n addedLinks: Array<LinkReference>;\n deletedObjectsCount: number;\n deletedLinksCount: number;\n}\ninterface LargeScaleObjectEdits {\n type: \"largeScaleEdits\";\n addedObjects?: never;\n modifiedObjects?: never;\n addedLinks?: never;\n deletedObjectsCount?: never;\n deletedLinksCount?: never;\n}\n\ntype LinkReference = {\n linkTypeApiNameAtoB: string;\n linkTypeApiNameBtoA: string;\n aSideObject: ObjectReference;\n bSideObject: ObjectReference;\n};\ninterface ObjectReference {\n primaryKey: string | number;\n objectType: string;\n}\nexport interface ValidateActionResponseV2 {\n result: \"VALID\" | \"INVALID\";\n submissionCriteria: Array<{\n configuredFailureMessage?: string;\n result: \"VALID\" | \"INVALID\";\n }>;\n parameters: Record<string, {\n result: \"VALID\" | \"INVALID\";\n evaluatedConstraints: Array<ParameterEvaluatedConstraint>;\n required: boolean;\n }>;\n}\ntype ParameterEvaluatedConstraint =\n | { type: \"arraySize\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"groupMember\" }\n | { type: \"objectPropertyValue\" }\n | { type: \"objectQueryResult\" }\n | {\n type: \"oneOf\";\n options: Array<{\n displayName?: string;\n value?: any;\n }>;\n otherValuesAllowed: boolean;\n }\n | { type: \"range\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"stringLength\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | {\n type: \"stringRegexMatch\";\n regex: string;\n configuredFailureMessage?: string;\n }\n | { type: \"unevaluable\" };\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ActionResults.js","names":[],"sources":["ActionResults.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\n// These are migrated from @osdk/foundry.internal to avoid coupling the apis\n\nexport type ActionResults =\n & (\n | ObjectEdits\n | LargeScaleObjectEdits\n )\n & { editedObjectTypes: Array<String> };\n\ninterface ObjectEdits {\n type: \"edits\";\n addedObjects: Array<ObjectReference>;\n modifiedObjects: Array<ObjectReference>;\n deletedObjects?: Array<ObjectReference>;\n addedLinks: Array<LinkReference>;\n deletedLinks?: Array<LinkReference>;\n deletedObjectsCount: number;\n deletedLinksCount: number;\n}\ninterface LargeScaleObjectEdits {\n type: \"largeScaleEdits\";\n addedObjects?: never;\n modifiedObjects?: never;\n deletedObjects?: never;\n addedLinks?: never;\n deletedLinks?: never;\n deletedObjectsCount?: never;\n deletedLinksCount?: never;\n}\n\ntype LinkReference = {\n linkTypeApiNameAtoB: string;\n linkTypeApiNameBtoA: string;\n aSideObject: ObjectReference;\n bSideObject: ObjectReference;\n};\ninterface ObjectReference {\n primaryKey: string | number;\n objectType: string;\n}\nexport interface ValidateActionResponseV2 {\n result: \"VALID\" | \"INVALID\";\n submissionCriteria: Array<{\n configuredFailureMessage?: string;\n result: \"VALID\" | \"INVALID\";\n }>;\n parameters: Record<string, {\n result: \"VALID\" | \"INVALID\";\n evaluatedConstraints: Array<ParameterEvaluatedConstraint>;\n required: boolean;\n }>;\n}\ntype ParameterEvaluatedConstraint =\n | { type: \"arraySize\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"groupMember\" }\n | { type: \"objectPropertyValue\" }\n | { type: \"objectQueryResult\" }\n | {\n type: \"oneOf\";\n options: Array<{\n displayName?: string;\n value?: any;\n }>;\n otherValuesAllowed: boolean;\n }\n | { type: \"range\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | { type: \"stringLength\"; lt?: any; lte?: any; gt?: any; gte?: any }\n | {\n type: \"stringRegexMatch\";\n regex: string;\n configuredFailureMessage?: string;\n }\n | { type: \"unevaluable\" };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Actions.js","names":["ActionParam"],"sources":["Actions.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { DataValueClientToWire } from \"../mapping/DataValueMapping.js\";\nimport type { ObjectSet } from \"../objectSet/ObjectSet.js\";\nimport type { InterfaceDefinition } from \"../ontology/InterfaceDefinition.js\";\nimport type { ObjectTypeDefinition } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { OsdkBase } from \"../OsdkBase.js\";\nimport type { OsdkObjectPrimaryKeyType } from \"../OsdkObjectPrimaryKeyType.js\";\n\nimport type {\n ActionResults,\n ValidateActionResponseV2,\n} from \"./ActionResults.js\";\n\nexport type ApplyActionOptions =\n | { $returnEdits?: true; $validateOnly?: false }\n | {\n $validateOnly?: true;\n $returnEdits?: false;\n };\n\nexport type ApplyBatchActionOptions = { $returnEdits?: boolean };\n\n/**\n * Helper types for converting action definition parameter types to typescript types\n */\nexport namespace ActionParam {\n /**\n * Helper type to convert action definition parameter primitives to typescript types\n */\n export type PrimitiveType<T extends keyof DataValueClientToWire> =\n DataValueClientToWire[T];\n\n /**\n * Helper type to convert action definition parameter object types to typescript types\n */\n export type ObjectType<T extends ObjectTypeDefinition> =\n | OsdkBase<T>\n | OsdkObjectPrimaryKeyType<T>;\n\n /**\n * Helper type to convert action definition parameter object sets to typescript types\n */\n export type ObjectSetType<T extends ObjectTypeDefinition> = ObjectSet<T>;\n\n /**\n * Helper type to convert action definition parameter interface types to typescript types\n */\n export type InterfaceType<T extends InterfaceDefinition> = {\n $objectType: NonNullable<T[\"__DefinitionMetadata\"]> extends\n { implementedBy: infer U }
|
|
1
|
+
{"version":3,"file":"Actions.js","names":["ActionParam"],"sources":["Actions.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { DataValueClientToWire } from \"../mapping/DataValueMapping.js\";\nimport type { ObjectSet } from \"../objectSet/ObjectSet.js\";\nimport type { InterfaceDefinition } from \"../ontology/InterfaceDefinition.js\";\nimport type { ObjectTypeDefinition } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { OsdkBase } from \"../OsdkBase.js\";\nimport type { OsdkObjectPrimaryKeyType } from \"../OsdkObjectPrimaryKeyType.js\";\n\nimport type {\n ActionResults,\n ValidateActionResponseV2,\n} from \"./ActionResults.js\";\n\nexport type ApplyActionOptions =\n | { $returnEdits?: true; $validateOnly?: false }\n | {\n $validateOnly?: true;\n $returnEdits?: false;\n };\n\nexport type ApplyBatchActionOptions = { $returnEdits?: boolean };\n\n/**\n * Helper types for converting action definition parameter types to typescript types\n */\nexport namespace ActionParam {\n /**\n * Helper type to convert action definition parameter primitives to typescript types\n */\n export type PrimitiveType<T extends keyof DataValueClientToWire> =\n DataValueClientToWire[T];\n\n /**\n * Helper type to convert action definition parameter object types to typescript types\n */\n export type ObjectType<T extends ObjectTypeDefinition> =\n | OsdkBase<T>\n | OsdkObjectPrimaryKeyType<T>;\n\n /**\n * Helper type to convert action definition parameter object sets to typescript types\n */\n export type ObjectSetType<T extends ObjectTypeDefinition> = ObjectSet<T>;\n\n /**\n * Helper type to convert action definition parameter interface types to typescript types\n */\n export type InterfaceType<T extends InterfaceDefinition> = {\n $objectType: NonNullable<T[\"__DefinitionMetadata\"]> extends\n { implementedBy: infer U } ? (U extends ReadonlyArray<never> ? string\n : U extends ReadonlyArray<string> ? U[number]\n : string)\n : string;\n $primaryKey: string | number;\n };\n\n export type StructType<\n T extends Record<string, keyof DataValueClientToWire>,\n > = { [K in keyof T]: DataValueClientToWire[T[K]] };\n}\n\nexport type ActionEditResponse = ActionResults;\nexport type ActionValidationResponse = ValidateActionResponseV2;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAuBA;AACA;AACA;AAFA,WAGiBA,WAAW","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DerivedProperty.js","names":["DerivedProperty"],"sources":["DerivedProperty.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 { ValidAggregationKeys } from \"../aggregate/AggregatableKeys.js\";\nimport type { WhereClause } from \"../aggregate/WhereClause.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { SimplePropertyDef } from \"../ontology/SimplePropertyDef.js\";\nimport type { LinkedType, LinkNames } from \"../util/LinkUtils.js\";\nimport type { CollectWithPropAggregations } from \"./WithPropertiesAggregationOptions.js\";\n\nexport namespace DerivedProperty {\n export type SelectorResult<\n T extends SimplePropertyDef,\n > = {\n type: T;\n };\n\n export type Clause<\n Q extends ObjectOrInterfaceDefinition,\n > = {\n [key: string]: Selector<Q, SimplePropertyDef>;\n };\n\n export type Selector<\n Q extends ObjectOrInterfaceDefinition,\n T extends SimplePropertyDef,\n > = (\n baseObjectSet: DerivedProperty.Builder<Q, false>,\n ) => SelectorResult<T>;\n\n export interface Builder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Filterable<Q, CONSTRAINED>, Pivotable<Q, CONSTRAINED> {\n }\n\n export interface AggregateBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Builder<Q, CONSTRAINED>, Aggregatable<Q> {\n }\n\n export interface SelectPropertyBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends AggregateBuilder<Q, CONSTRAINED>, Selectable<Q> {\n }\n}\n\ntype BuilderTypeFromConstraint<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = CONSTRAINED extends true ? DerivedProperty.AggregateBuilder<Q, true>\n : DerivedProperty.SelectPropertyBuilder<Q, false>;\n\ntype Filterable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly where: (\n clause: WhereClause<Q>,\n ) => BuilderTypeFromConstraint<Q, CONSTRAINED>;\n};\n\ntype Pivotable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly pivotTo: <L extends LinkNames<Q>>(\n type: L,\n ) => CONSTRAINED extends true\n ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : NonNullable<CompileTimeMetadata<Q>[\"links\"][L][\"multiplicity\"]> extends\n true ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : DerivedProperty.SelectPropertyBuilder<LinkedType<Q, L>, false>;\n};\n\ntype Aggregatable<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n readonly aggregate: <\n V extends ValidAggregationKeys<\n Q,\n \"withPropertiesAggregate\"\n >,\n >(\n aggregationSpecifier: V,\n opts?: V extends `${any}:${infer P}`\n ? P extends CollectWithPropAggregations ? { limit: number }\n : P extends \"approximatePercentile\" ? { percentile: number }\n : never\n : never,\n ) => DerivedProperty.SelectorResult<\n V extends `${infer N}:${infer P}`\n ? P extends CollectWithPropAggregations\n ? Array<CompileTimeMetadata<Q>[\"properties\"][N][\"type\"]> | undefined\n : P extends \"approximateDistinct\" | \"exactDistinct\" | \"$count\"
|
|
1
|
+
{"version":3,"file":"DerivedProperty.js","names":["DerivedProperty"],"sources":["DerivedProperty.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 { ValidAggregationKeys } from \"../aggregate/AggregatableKeys.js\";\nimport type { WhereClause } from \"../aggregate/WhereClause.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { SimplePropertyDef } from \"../ontology/SimplePropertyDef.js\";\nimport type { LinkedType, LinkNames } from \"../util/LinkUtils.js\";\nimport type { CollectWithPropAggregations } from \"./WithPropertiesAggregationOptions.js\";\n\nexport namespace DerivedProperty {\n export type SelectorResult<\n T extends SimplePropertyDef,\n > = {\n type: T;\n };\n\n export type Clause<\n Q extends ObjectOrInterfaceDefinition,\n > = {\n [key: string]: Selector<Q, SimplePropertyDef>;\n };\n\n export type Selector<\n Q extends ObjectOrInterfaceDefinition,\n T extends SimplePropertyDef,\n > = (\n baseObjectSet: DerivedProperty.Builder<Q, false>,\n ) => SelectorResult<T>;\n\n export interface Builder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Filterable<Q, CONSTRAINED>, Pivotable<Q, CONSTRAINED> {\n }\n\n export interface AggregateBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends Builder<Q, CONSTRAINED>, Aggregatable<Q> {\n }\n\n export interface SelectPropertyBuilder<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n > extends AggregateBuilder<Q, CONSTRAINED>, Selectable<Q> {\n }\n}\n\ntype BuilderTypeFromConstraint<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = CONSTRAINED extends true ? DerivedProperty.AggregateBuilder<Q, true>\n : DerivedProperty.SelectPropertyBuilder<Q, false>;\n\ntype Filterable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly where: (\n clause: WhereClause<Q>,\n ) => BuilderTypeFromConstraint<Q, CONSTRAINED>;\n};\n\ntype Pivotable<\n Q extends ObjectOrInterfaceDefinition,\n CONSTRAINED extends boolean,\n> = {\n readonly pivotTo: <L extends LinkNames<Q>>(\n type: L,\n ) => CONSTRAINED extends true\n ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : NonNullable<CompileTimeMetadata<Q>[\"links\"][L][\"multiplicity\"]> extends\n true ? DerivedProperty.AggregateBuilder<LinkedType<Q, L>, true>\n : DerivedProperty.SelectPropertyBuilder<LinkedType<Q, L>, false>;\n};\n\ntype Aggregatable<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n readonly aggregate: <\n V extends ValidAggregationKeys<\n Q,\n \"withPropertiesAggregate\"\n >,\n >(\n aggregationSpecifier: V,\n opts?: V extends `${any}:${infer P}`\n ? P extends CollectWithPropAggregations ? { limit: number }\n : P extends \"approximatePercentile\" ? { percentile: number }\n : never\n : never,\n ) => DerivedProperty.SelectorResult<\n V extends `${infer N}:${infer P}`\n ? P extends CollectWithPropAggregations\n ? Array<CompileTimeMetadata<Q>[\"properties\"][N][\"type\"]> | undefined\n : P extends \"approximateDistinct\" | \"exactDistinct\" | \"$count\" ? \"integer\"\n : \"double\" | undefined\n : V extends \"$count\" ? \"integer\"\n : never\n >;\n};\n\ntype Selectable<Q extends ObjectOrInterfaceDefinition> = {\n readonly selectProperty: <R extends PropertyKeys<Q>>(\n propertyName: R,\n ) => DerivedProperty.SelectorResult<\n SimplePropertyDef.Make<\n CompileTimeMetadata<Q>[\"properties\"][R][\"type\"],\n CompileTimeMetadata<Q>[\"properties\"][R][\"nullable\"],\n CompileTimeMetadata<Q>[\"properties\"][R][\"multiplicity\"]\n >\n >;\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WA2BiBA,eAAe","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupByClause.js","names":["TimeDurationMapping","DurationMapping"],"sources":["GroupByClause.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { AggregatableKeys } from \"../aggregate/AggregatableKeys.js\";\nimport { TimeDurationMapping } from \"../mapping/DurationMapping.js\";\nimport type { ObjectOrInterfaceDefinition } from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { GroupByMapper } from \"./GroupByMapper.js\";\n\nexport type GroupByClause<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n [P in AggregatableKeys<Q>]?: GroupByEntry<Q, P>;\n};\n\ntype BaseGroupByValue
|
|
1
|
+
{"version":3,"file":"GroupByClause.js","names":["TimeDurationMapping","DurationMapping"],"sources":["GroupByClause.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { AggregatableKeys } from \"../aggregate/AggregatableKeys.js\";\nimport { TimeDurationMapping } from \"../mapping/DurationMapping.js\";\nimport type { ObjectOrInterfaceDefinition } from \"../ontology/ObjectOrInterface.js\";\nimport type { CompileTimeMetadata } from \"../ontology/ObjectTypeDefinition.js\";\nimport type { GroupByMapper } from \"./GroupByMapper.js\";\n\nexport type GroupByClause<\n Q extends ObjectOrInterfaceDefinition,\n> = {\n [P in AggregatableKeys<Q>]?: GroupByEntry<Q, P>;\n};\n\ntype BaseGroupByValue =\n | \"exact\"\n | { $exactWithLimit: number }\n | ExactGroupByWithOptions;\n\ntype ExactGroupByWithOptions = {\n $exact: { $limit?: number; $defaultValue?: string };\n};\n\nexport type GroupByRange<T> = [T, T];\n\nexport type StringGroupByValue = BaseGroupByValue;\n\nexport type NumericGroupByValue = BaseGroupByValue | {\n $fixedWidth: number;\n} | { $ranges: GroupByRange<number>[] };\n\nexport type TimestampGroupByValue =\n | BaseGroupByValue\n | { $ranges: GroupByRange<string>[] }\n | { $duration: TimestampDurationGroupBy };\n\nexport type DateGroupByValue =\n | BaseGroupByValue\n | { $ranges: GroupByRange<string>[] }\n | { $duration: DatetimeDurationGroupBy };\n\nexport type BooleanGroupByValue = BaseGroupByValue;\n\nexport type TimestampTimeUnits =\n | DateTimeUnits\n | \"SECONDS\"\n | \"MINUTES\"\n | \"HOURS\";\n\nexport type DateTimeUnits = \"DAYS\" | \"WEEKS\" | \"MONTHS\" | \"YEARS\" | \"QUARTERS\";\nexport const DurationMapping: {\n quarter: \"QUARTERS\";\n quarters: \"QUARTERS\";\n sec: \"SECONDS\";\n seconds: \"SECONDS\";\n min: \"MINUTES\";\n minute: \"MINUTES\";\n minutes: \"MINUTES\";\n hr: \"HOURS\";\n hrs: \"HOURS\";\n hour: \"HOURS\";\n hours: \"HOURS\";\n day: \"DAYS\";\n days: \"DAYS\";\n wk: \"WEEKS\";\n week: \"WEEKS\";\n weeks: \"WEEKS\";\n mos: \"MONTHS\";\n month: \"MONTHS\";\n months: \"MONTHS\";\n yr: \"YEARS\";\n year: \"YEARS\";\n years: \"YEARS\";\n} = {\n ...TimeDurationMapping,\n \"quarter\": \"QUARTERS\",\n \"quarters\": \"QUARTERS\",\n} satisfies Record<string, DateTimeUnits | TimestampTimeUnits>;\n\ninterface TimeValueMapping {\n SECONDS: number;\n MINUTES: number;\n HOURS: number;\n DAYS: number;\n WEEKS: 1;\n MONTHS: 1;\n YEARS: 1;\n QUARTERS: 1;\n}\n\ntype DurationGroupBy<A> = {\n [K in keyof typeof DurationMapping]: typeof DurationMapping[K] extends A\n ? [TimeValueMapping[typeof DurationMapping[K]], K]\n : never;\n}[keyof typeof DurationMapping];\n\ntype TimestampDurationGroupBy = DurationGroupBy<TimestampTimeUnits>;\ntype DatetimeDurationGroupBy = DurationGroupBy<DateTimeUnits>;\n\ntype GroupByEntry<\n Q extends ObjectOrInterfaceDefinition,\n P extends AggregatableKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P][\"type\"] extends keyof GroupByMapper\n ? GroupByMapper[CompileTimeMetadata<Q>[\"properties\"][P][\"type\"]]\n : never;\n\nexport type AllGroupByValues = GroupByMapper[keyof GroupByMapper];\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,mBAAmB,QAAQ,+BAA+B;AA+CnE,OAAO,MAAMC,eAuBZ,GAAG;EACF,GAAGD,mBAAmB;EACtB,SAAS,EAAE,UAAU;EACrB,UAAU,EAAE;AACd,CAA8D","ignoreList":[]}
|
|
@@ -81,6 +81,31 @@ describe("ObjectSet", () => {
|
|
|
81
81
|
});
|
|
82
82
|
test.todo("with calculated properties");
|
|
83
83
|
});
|
|
84
|
+
describe("nullability", () => {
|
|
85
|
+
it("count, exactDistinct, and approximateDistinct aren't nullable", async () => {
|
|
86
|
+
const withFamily = fauxObjectSet.withProperties({
|
|
87
|
+
"mom": base => base.pivotTo("lead").aggregate("$count"),
|
|
88
|
+
"dad": base => base.pivotTo("lead").aggregate("class:exactDistinct"),
|
|
89
|
+
"sis": base => base.pivotTo("lead").aggregate("class:approximateDistinct")
|
|
90
|
+
});
|
|
91
|
+
await withFamily.fetchPage();
|
|
92
|
+
expectTypeOf().toEqualTypeOf();
|
|
93
|
+
});
|
|
94
|
+
it("collectToSet, collectToList, selectProperty, and numeric aggregations are nullable", async () => {
|
|
95
|
+
const withAggregations = fauxObjectSet.withProperties({
|
|
96
|
+
"collectSet": base => base.pivotTo("lead").aggregate("class:collectSet"),
|
|
97
|
+
"select": base => base.pivotTo("lead").selectProperty("fullName"),
|
|
98
|
+
"collectList": base => base.pivotTo("lead").aggregate("class:collectList"),
|
|
99
|
+
"min": base => base.pivotTo("lead").aggregate("employeeId:max"),
|
|
100
|
+
"max": base => base.pivotTo("lead").aggregate("employeeId:min"),
|
|
101
|
+
"sum": base => base.pivotTo("lead").aggregate("employeeId:sum"),
|
|
102
|
+
"avg": base => base.pivotTo("lead").aggregate("employeeId:avg"),
|
|
103
|
+
"approximatePercentile": base => base.pivotTo("lead").aggregate("employeeId:approximatePercentile")
|
|
104
|
+
});
|
|
105
|
+
await withAggregations.fetchPage();
|
|
106
|
+
expectTypeOf().toEqualTypeOf();
|
|
107
|
+
});
|
|
108
|
+
});
|
|
84
109
|
describe("fetch functions return correct Osdk.Instance", () => {
|
|
85
110
|
const withFamily = fauxObjectSet.withProperties({
|
|
86
111
|
"mom": base => base.pivotTo("lead").aggregate("$count"),
|
|
@@ -118,7 +143,7 @@ describe("ObjectSet", () => {
|
|
|
118
143
|
});
|
|
119
144
|
it("Works with selecting all non-RDP's", async () => {
|
|
120
145
|
await withFamily.fetchPage({
|
|
121
|
-
$select: ["class", "fullName"]
|
|
146
|
+
$select: ["class", "fullName", "employeeId"]
|
|
122
147
|
});
|
|
123
148
|
expectTypeOf().toEqualTypeOf();
|
|
124
149
|
expectTypeOf().toEqualTypeOf();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectSet.test.js","names":["describe","expectTypeOf","it","test","vi","Employee","type","apiName","fauxObjectSet","where","fn","withProperties","fetchPage","Promise","resolve","asyncIter","toEqualTypeOf","withA","base","pivotTo","aggregate","withFamily","selectProperty","withMom","withParents","todo","$select"],"sources":["ObjectSet.test.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 { describe, expectTypeOf, it, test, vi } from \"vitest\";\n\nimport type {\n ObjectMetadata as $ObjectMetadata,\n ObjectSet as $ObjectSet,\n ObjectTypeDefinition as $ObjectTypeDefinition,\n Osdk,\n PropertyDef as $PropertyDef,\n PropertyKeys,\n PropertyValueWireToClient as $PropType,\n SingleLinkAccessor as $SingleLinkAccessor,\n} from \"../index.js\";\n\nnamespace Employee {\n export type PropertyKeys =\n | \"fullName\"\n | \"class\";\n\n export interface Links {\n readonly lead: $SingleLinkAccessor<Employee>;\n readonly peeps: Employee.ObjectSet;\n }\n\n export interface Props {\n readonly class: $PropType[\"string\"] | undefined;\n readonly fullName: $PropType[\"string\"] | undefined;\n }\n export type StrictProps = Props;\n\n export interface ObjectSet extends $ObjectSet<Employee, Employee.ObjectSet> {}\n}\n\ninterface Employee extends $ObjectTypeDefinition {\n type: \"object\";\n apiName: \"Employee\";\n __DefinitionMetadata?: {\n objectSet: Employee.ObjectSet;\n props: Employee.Props;\n linksType: Employee.Links;\n strictProps: Employee.StrictProps;\n apiName: \"Employee\";\n description: \"A full-time or part-time \\n\\n employee of our firm\";\n displayName: \"Employee\";\n icon: {\n type: \"blueprint\";\n color: \"blue\";\n name: \"person\";\n };\n implements: [\"FooInterface\"];\n interfaceMap: {\n FooInterface: {\n fooSpt: \"fullName\";\n };\n };\n inverseInterfaceMap: {\n FooInterface: {\n fullName: \"fooSpt\";\n };\n };\n links: {\n lead: $ObjectMetadata.Link<Employee, false>;\n peeps: $ObjectMetadata.Link<Employee, true>;\n };\n pluralDisplayName: \"Employees\";\n primaryKeyApiName: \"employeeId\";\n primaryKeyType: \"integer\";\n properties: {\n class: $PropertyDef<\"string\", \"nullable\", \"single\">;\n fullName: $PropertyDef<\"string\", \"nullable\", \"single\">;\n };\n rid: \"ri.ontology.main.object-type.401ac022-89eb-4591-8b7e-0a912b9efb44\";\n status: \"ACTIVE\";\n titleProperty: \"fullName\";\n type: \"object\";\n visibility: \"NORMAL\";\n };\n}\n\nconst Employee: Employee = {\n type: \"object\",\n apiName: \"Employee\",\n};\n\ndescribe(\"ObjectSet\", () => {\n const fauxObjectSet = {\n where: vi.fn(() => {\n return fauxObjectSet;\n }),\n withProperties: vi.fn(() => {\n return fauxObjectSet;\n }),\n fetchPage: vi.fn(() => Promise.resolve()),\n asyncIter: vi.fn(() => {\n return {};\n }),\n } as any as Employee.ObjectSet;\n\n describe(\"normal\", () => {\n test(\"select none\", async () => {\n const result = await fauxObjectSet.fetchPage();\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never>\n >();\n });\n\n test(\"select one\", async () => {\n const result = await fauxObjectSet.fetchPage({ \"$select\": [\"fullName\"] });\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, \"fullName\">\n >();\n });\n });\n\n describe(\".withProperties\", () => {\n test(\"single property\", async () => {\n const withA = fauxObjectSet.withProperties({\n \"a\": (base) => {\n return base.pivotTo(\"lead\").aggregate(\"class:exactDistinct\");\n },\n });\n\n expectTypeOf(withA).toEqualTypeOf<\n $ObjectSet<Employee, {\n a: \"integer\" | undefined;\n }>\n >();\n\n const withAResults = await withA.fetchPage();\n\n expectTypeOf<typeof withAResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n a: \"integer\" | undefined;\n }>\n >();\n\n expectTypeOf<typeof withAResults[\"data\"][0][\"a\"]>()\n .toEqualTypeOf<number | undefined>();\n });\n\n test(\"multiple properties\", async () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n expectTypeOf(withFamily).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number | undefined>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"dad\"]>()\n .toEqualTypeOf<string | undefined>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"sister\"]>()\n .toEqualTypeOf<string[] | undefined>();\n });\n\n describe(\"called in succession\", () => {\n test(\"independently\", () => {\n const withMom = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n const withParents = withMom.withProperties({\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n });\n\n expectTypeOf(withParents).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n }>\n >();\n });\n\n test.todo(\"with calculated properties\");\n });\n\n describe(\"fetch functions return correct Osdk.Instance\", () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n\n it(\"works with .where\", async () => {\n const where = withFamily.where({ \"mom\": 1 });\n const whereResults = await where.fetchPage();\n\n expectTypeOf<typeof where>().toEqualTypeOf<typeof withFamily>();\n expectTypeOf<typeof whereResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"works with .async\", () => {\n const asyncIter = withFamily.asyncIter();\n expectTypeOf<typeof asyncIter>().toEqualTypeOf<\n AsyncIterableIterator<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >\n >();\n });\n\n it(\"Works with no select\", async () => {\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"Works with selecting all RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\", \"dad\", \"sister\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\" | undefined;\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number | undefined>();\n });\n\n it(\"Works with selecting some RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\" | undefined;\n }>\n >();\n });\n\n it(\"Works with selecting all non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"fullName\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {}>\n >();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"class\"]>()\n .toEqualTypeOf<\n string | undefined\n >();\n });\n\n it(\"Works with selecting some non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, \"class\", {}>\n >();\n });\n\n it(\"Works with selecting a mix\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\",\n { mom: \"integer\" | undefined }\n >\n >();\n });\n });\n\n it(\"allows extracting the type\", () => {\n const objectSet = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n type ObjectSetType = typeof objectSet;\n\n expectTypeOf<ObjectSetType>().toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\" | undefined;\n }>\n >();\n\n const objectSet2 = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n\n it(\"Defining the Type\", () => {\n type ObjectSetType = $ObjectSet<\n Employee,\n {\n mom: \"integer\" | undefined;\n }\n >;\n\n fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ObjectSet.test.js","names":["describe","expectTypeOf","it","test","vi","Employee","type","apiName","fauxObjectSet","where","fn","withProperties","fetchPage","Promise","resolve","asyncIter","toEqualTypeOf","withA","base","pivotTo","aggregate","withFamily","selectProperty","withMom","withParents","todo","withAggregations","$select"],"sources":["ObjectSet.test.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 { describe, expectTypeOf, it, test, vi } from \"vitest\";\n\nimport type {\n ObjectMetadata as $ObjectMetadata,\n ObjectSet as $ObjectSet,\n ObjectTypeDefinition as $ObjectTypeDefinition,\n Osdk,\n PropertyDef as $PropertyDef,\n PropertyKeys,\n PropertyValueWireToClient as $PropType,\n SingleLinkAccessor as $SingleLinkAccessor,\n} from \"../index.js\";\n\nnamespace Employee {\n export type PropertyKeys =\n | \"employeeId\"\n | \"fullName\"\n | \"class\";\n\n export interface Links {\n readonly lead: $SingleLinkAccessor<Employee>;\n readonly peeps: Employee.ObjectSet;\n }\n\n export interface Props {\n readonly class: $PropType[\"string\"] | undefined;\n readonly fullName: $PropType[\"string\"] | undefined;\n readonly employeeId: $PropType[\"integer\"] | undefined;\n }\n export type StrictProps = Props;\n\n export interface ObjectSet extends $ObjectSet<Employee, Employee.ObjectSet> {}\n}\n\ninterface Employee extends $ObjectTypeDefinition {\n type: \"object\";\n apiName: \"Employee\";\n __DefinitionMetadata?: {\n objectSet: Employee.ObjectSet;\n props: Employee.Props;\n linksType: Employee.Links;\n strictProps: Employee.StrictProps;\n apiName: \"Employee\";\n description: \"A full-time or part-time \\n\\n employee of our firm\";\n displayName: \"Employee\";\n icon: {\n type: \"blueprint\";\n color: \"blue\";\n name: \"person\";\n };\n implements: [\"FooInterface\"];\n interfaceMap: {\n FooInterface: {\n fooSpt: \"fullName\";\n };\n };\n inverseInterfaceMap: {\n FooInterface: {\n fullName: \"fooSpt\";\n };\n };\n links: {\n lead: $ObjectMetadata.Link<Employee, false>;\n peeps: $ObjectMetadata.Link<Employee, true>;\n };\n pluralDisplayName: \"Employees\";\n primaryKeyApiName: \"employeeId\";\n primaryKeyType: \"integer\";\n properties: {\n class: $PropertyDef<\"string\", \"nullable\", \"single\">;\n fullName: $PropertyDef<\"string\", \"nullable\", \"single\">;\n employeeId: $PropertyDef<\"integer\", \"nullable\", \"single\">;\n };\n rid: \"ri.ontology.main.object-type.401ac022-89eb-4591-8b7e-0a912b9efb44\";\n status: \"ACTIVE\";\n titleProperty: \"fullName\";\n type: \"object\";\n visibility: \"NORMAL\";\n };\n}\n\nconst Employee: Employee = {\n type: \"object\",\n apiName: \"Employee\",\n};\n\ndescribe(\"ObjectSet\", () => {\n const fauxObjectSet = {\n where: vi.fn(() => {\n return fauxObjectSet;\n }),\n withProperties: vi.fn(() => {\n return fauxObjectSet;\n }),\n fetchPage: vi.fn(() => Promise.resolve()),\n asyncIter: vi.fn(() => {\n return {};\n }),\n } as any as Employee.ObjectSet;\n\n describe(\"normal\", () => {\n test(\"select none\", async () => {\n const result = await fauxObjectSet.fetchPage();\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never>\n >();\n });\n\n test(\"select one\", async () => {\n const result = await fauxObjectSet.fetchPage({ \"$select\": [\"fullName\"] });\n expectTypeOf<typeof result.data[0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, \"fullName\">\n >();\n });\n });\n\n describe(\".withProperties\", () => {\n test(\"single property\", async () => {\n const withA = fauxObjectSet.withProperties({\n \"a\": (base) => {\n return base.pivotTo(\"lead\").aggregate(\"class:exactDistinct\");\n },\n });\n\n expectTypeOf(withA).toEqualTypeOf<\n $ObjectSet<Employee, {\n a: \"integer\";\n }>\n >();\n\n const withAResults = await withA.fetchPage();\n\n expectTypeOf<typeof withAResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n a: \"integer\";\n }>\n >();\n\n expectTypeOf<typeof withAResults[\"data\"][0][\"a\"]>()\n .toEqualTypeOf<number>();\n });\n\n test(\"multiple properties\", async () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n expectTypeOf(withFamily).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"dad\"]>()\n .toEqualTypeOf<string | undefined>();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"sister\"]>()\n .toEqualTypeOf<string[] | undefined>();\n });\n\n describe(\"called in succession\", () => {\n test(\"independently\", () => {\n const withMom = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n const withParents = withMom.withProperties({\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n });\n\n expectTypeOf(withParents).toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n }>\n >();\n });\n\n test.todo(\"with calculated properties\");\n });\n\n describe(\"nullability\", () => {\n it(\"count, exactDistinct, and approximateDistinct aren't nullable\", async () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:exactDistinct\"),\n \"sis\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:approximateDistinct\"),\n });\n\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>().toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"integer\";\n sis: \"integer\";\n }>\n >();\n });\n\n it(\n \"collectToSet, collectToList, selectProperty, and numeric aggregations are nullable\",\n async () => {\n const withAggregations = fauxObjectSet.withProperties({\n \"collectSet\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:collectSet\"),\n \"select\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"collectList\": (base) =>\n base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n \"min\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:max\"),\n \"max\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:min\"),\n \"sum\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:sum\"),\n \"avg\": (base) => base.pivotTo(\"lead\").aggregate(\"employeeId:avg\"),\n \"approximatePercentile\": (base) =>\n base.pivotTo(\"lead\").aggregate(\n \"employeeId:approximatePercentile\",\n ),\n });\n\n const withAggregationResults = await withAggregations.fetchPage();\n\n expectTypeOf<typeof withAggregationResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n collectSet: \"string\"[] | undefined;\n select: \"string\" | undefined;\n collectList: \"string\"[] | undefined;\n min: \"double\" | undefined;\n max: \"double\" | undefined;\n sum: \"double\" | undefined;\n avg: \"double\" | undefined;\n approximatePercentile: \"double\" | undefined;\n }>\n >();\n },\n );\n });\n\n describe(\"fetch functions return correct Osdk.Instance\", () => {\n const withFamily = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n \"dad\": (base) => base.pivotTo(\"lead\").selectProperty(\"fullName\"),\n \"sister\": (base) => base.pivotTo(\"lead\").aggregate(\"class:collectList\"),\n });\n\n it(\"works with .where\", async () => {\n const where = withFamily.where({ \"mom\": 1 });\n const whereResults = await where.fetchPage();\n\n expectTypeOf<typeof where>().toEqualTypeOf<typeof withFamily>();\n expectTypeOf<typeof whereResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"works with .async\", () => {\n const asyncIter = withFamily.asyncIter();\n expectTypeOf<typeof asyncIter>().toEqualTypeOf<\n AsyncIterableIterator<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >\n >();\n });\n\n it(\"Works with no select\", async () => {\n const withFamilyResults = await withFamily.fetchPage();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n });\n\n it(\"Works with selecting all RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\", \"dad\", \"sister\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\";\n dad: \"string\" | undefined;\n sister: \"string\"[] | undefined;\n }>\n >();\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"mom\"]>()\n .toEqualTypeOf<number>();\n });\n\n it(\"Works with selecting some RDPs\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, never, {\n mom: \"integer\";\n }>\n >();\n });\n\n it(\"Works with selecting all non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"fullName\", \"employeeId\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, PropertyKeys<Employee>, {}>\n >();\n expectTypeOf<typeof withFamilyResults[\"data\"][0][\"class\"]>()\n .toEqualTypeOf<\n string | undefined\n >();\n });\n\n it(\"Works with selecting some non-RDP's\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<Employee, never, \"class\", {}>\n >();\n });\n\n it(\"Works with selecting a mix\", async () => {\n const withFamilyResults = await withFamily.fetchPage({\n $select: [\"class\", \"mom\"],\n });\n\n expectTypeOf<typeof withFamilyResults[\"data\"][0]>()\n .toEqualTypeOf<\n Osdk.Instance<\n Employee,\n never,\n \"class\",\n { mom: \"integer\" }\n >\n >();\n });\n });\n\n it(\"allows extracting the type\", () => {\n const objectSet = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n });\n\n type ObjectSetType = typeof objectSet;\n\n expectTypeOf<ObjectSetType>().toEqualTypeOf<\n $ObjectSet<Employee, {\n mom: \"integer\";\n }>\n >();\n\n const objectSet2 = fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n\n it(\"Defining the Type\", () => {\n type ObjectSetType = $ObjectSet<\n Employee,\n {\n mom: \"integer\" | undefined;\n }\n >;\n\n fauxObjectSet.withProperties({\n \"mom\": (base) => base.pivotTo(\"lead\").aggregate(\"$count\"),\n }) satisfies ObjectSetType;\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description?: string;\n properties: Record<any, ObjectMetadata.Property>;\n links: Record<\n string,\n ObjectMetadata.Link<any, any>\n >;\n rid: string;\n /**\n * Represents the \"super interfaces\" of this object.\n *\n * Optional because they may not exist on legacy.\n */\n implements?: ReadonlyArray<string>;\n};\n\nexport interface ObjectInterfaceCompileDefinition {\n type: \"object\" | \"interface\";\n objectSet?: any;\n props?: any;\n strictProps?: any;\n linksType?: any;\n}\n\nexport interface VersionBound<V extends VersionString<any, any, any>> {\n __expectedClientVersion?: V;\n}\n\nexport interface ObjectMetadata extends ObjectInterfaceBaseMetadata {\n type: \"object\";\n primaryKeyApiName: keyof this[\"properties\"];\n titleProperty: keyof this[\"properties\"];\n primaryKeyType: PrimaryKeyTypes;\n icon?: Icon;\n visibility?: ObjectTypeVisibility;\n pluralDisplayName: string;\n status: ReleaseStatus;\n interfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* InterfaceType property api name */ string,\n /* ObjectType property api name */ string\n >\n >;\n inverseInterfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* ObjectType property api name */ string,\n /* InterfaceType property api name */ string\n >\n >;\n}\n\nexport namespace ObjectMetadata {\n export interface Property {\n readonly?: boolean;\n displayName?: string;\n description?: string;\n type: WirePropertyTypes;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export interface Link<\n Q extends ObjectTypeDefinition,\n M extends boolean,\n > {\n __OsdkLinkTargetType?: Q;\n targetType: Q[\"apiName\"];\n multiplicity: M;\n }\n}\n\nexport interface ObjectTypeDefinition {\n type: \"object\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ObjectMetadata\n & ObjectInterfaceCompileDefinition;\n}\n\nexport type ObjectTypeLinkKeysFrom2<\n Q extends ObjectTypeDefinition,\n> =\n & keyof CompileTimeMetadata<Q>[\"links\"]\n & string;\n\nexport interface PropertyDef<\n T extends WirePropertyTypes,\n N extends \"nullable\" | \"non-nullable\" = \"nullable\",\n M extends \"array\" | \"single\" = \"single\",\n> extends ObjectMetadata.Property {\n type: T;\n multiplicity: M extends \"array\" ? true : false;\n nullable: N extends \"nullable\" ? true : false;\n}\n\nexport type ReleaseStatus
|
|
1
|
+
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description?: string;\n properties: Record<any, ObjectMetadata.Property>;\n links: Record<\n string,\n ObjectMetadata.Link<any, any>\n >;\n rid: string;\n /**\n * Represents the \"super interfaces\" of this object.\n *\n * Optional because they may not exist on legacy.\n */\n implements?: ReadonlyArray<string>;\n};\n\nexport interface ObjectInterfaceCompileDefinition {\n type: \"object\" | \"interface\";\n objectSet?: any;\n props?: any;\n strictProps?: any;\n linksType?: any;\n}\n\nexport interface VersionBound<V extends VersionString<any, any, any>> {\n __expectedClientVersion?: V;\n}\n\nexport interface ObjectMetadata extends ObjectInterfaceBaseMetadata {\n type: \"object\";\n primaryKeyApiName: keyof this[\"properties\"];\n titleProperty: keyof this[\"properties\"];\n primaryKeyType: PrimaryKeyTypes;\n icon?: Icon;\n visibility?: ObjectTypeVisibility;\n pluralDisplayName: string;\n status: ReleaseStatus;\n interfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* InterfaceType property api name */ string,\n /* ObjectType property api name */ string\n >\n >;\n inverseInterfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* ObjectType property api name */ string,\n /* InterfaceType property api name */ string\n >\n >;\n}\n\nexport namespace ObjectMetadata {\n export interface Property {\n readonly?: boolean;\n displayName?: string;\n description?: string;\n type: WirePropertyTypes;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export interface Link<\n Q extends ObjectTypeDefinition,\n M extends boolean,\n > {\n __OsdkLinkTargetType?: Q;\n targetType: Q[\"apiName\"];\n multiplicity: M;\n }\n}\n\nexport interface ObjectTypeDefinition {\n type: \"object\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ObjectMetadata\n & ObjectInterfaceCompileDefinition;\n}\n\nexport type ObjectTypeLinkKeysFrom2<\n Q extends ObjectTypeDefinition,\n> =\n & keyof CompileTimeMetadata<Q>[\"links\"]\n & string;\n\nexport interface PropertyDef<\n T extends WirePropertyTypes,\n N extends \"nullable\" | \"non-nullable\" = \"nullable\",\n M extends \"array\" | \"single\" = \"single\",\n> extends ObjectMetadata.Property {\n type: T;\n multiplicity: M extends \"array\" ? true : false;\n nullable: N extends \"nullable\" ? true : false;\n}\n\nexport type ReleaseStatus =\n | \"ACTIVE\"\n | \"EXPERIMENTAL\"\n | \"DEPRECATED\"\n | \"ENDORSED\";\n\ntype ObjectTypeVisibility = \"NORMAL\" | \"PROMINENT\" | \"HIDDEN\";\n\ntype BlueprintIcon = {\n type: \"blueprint\";\n color: string;\n name: string;\n};\n\ntype Icon = BlueprintIcon;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WA2FiBA,cAAc","ignoreList":[]}
|
|
@@ -5,7 +5,9 @@ interface ObjectEdits {
|
|
|
5
5
|
type: "edits";
|
|
6
6
|
addedObjects: Array<ObjectReference>;
|
|
7
7
|
modifiedObjects: Array<ObjectReference>;
|
|
8
|
+
deletedObjects?: Array<ObjectReference>;
|
|
8
9
|
addedLinks: Array<LinkReference>;
|
|
10
|
+
deletedLinks?: Array<LinkReference>;
|
|
9
11
|
deletedObjectsCount: number;
|
|
10
12
|
deletedLinksCount: number;
|
|
11
13
|
}
|
|
@@ -13,7 +15,9 @@ interface LargeScaleObjectEdits {
|
|
|
13
15
|
type: "largeScaleEdits";
|
|
14
16
|
addedObjects?: never;
|
|
15
17
|
modifiedObjects?: never;
|
|
18
|
+
deletedObjects?: never;
|
|
16
19
|
addedLinks?: never;
|
|
20
|
+
deletedLinks?: never;
|
|
17
21
|
deletedObjectsCount?: never;
|
|
18
22
|
deletedLinksCount?: never;
|
|
19
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAkBA,YAAY,iBAEN,cACA,yBAEF;CAAE,mBAAmB,MAAM;AAAS;UAE9B,YAAY;CACpB,MAAM;CACN,cAAc,MAAM;CACpB,iBAAiB,MAAM;CACvB,YAAY,MAAM;CAClB;CACA;AACD;UACS,sBAAsB;CAC9B,MAAM;CACN;CACA;CACA;CACA;CACA;AACD;KAEI,gBAAgB;CACnB;CACA;CACA,aAAa;CACb,aAAa;AACd;UACS,gBAAgB;CACxB;CACA;AACD;AACD,iBAAiB,yBAAyB;CACxC,QAAQ,UAAU;CAClB,oBAAoB,MAAM;EACxB;EACA,QAAQ,UAAU;CACnB;CACD,YAAY,eAAe;EACzB,QAAQ,UAAU;EAClB,sBAAsB,MAAM;EAC5B;CACD;AACF;KACI,+BACD;CAAE,MAAM;CAAa;CAAU;CAAW;CAAU;AAAW,IAC/D;CAAE,MAAM;AAAe,IACvB;CAAE,MAAM;AAAuB,IAC/B;CAAE,MAAM;AAAqB,IAC7B;CACA,MAAM;CACN,SAAS,MAAM;EACb;EACA;CACD;CACD;AACD,IACC;CAAE,MAAM;CAAS;CAAU;CAAW;CAAU;AAAW,IAC3D;CAAE,MAAM;CAAgB;CAAU;CAAW;CAAU;AAAW,IAClE;CACA,MAAM;CACN;CACA;AACD,IACC;CAAE,MAAM;AAAe","names":[],"sources":["../../../src/actions/ActionResults.ts"],"version":3,"file":"ActionResults.d.ts"}
|
|
1
|
+
{"mappings":"AAkBA,YAAY,iBAEN,cACA,yBAEF;CAAE,mBAAmB,MAAM;AAAS;UAE9B,YAAY;CACpB,MAAM;CACN,cAAc,MAAM;CACpB,iBAAiB,MAAM;CACvB,iBAAiB,MAAM;CACvB,YAAY,MAAM;CAClB,eAAe,MAAM;CACrB;CACA;AACD;UACS,sBAAsB;CAC9B,MAAM;CACN;CACA;CACA;CACA;CACA;CACA;CACA;AACD;KAEI,gBAAgB;CACnB;CACA;CACA,aAAa;CACb,aAAa;AACd;UACS,gBAAgB;CACxB;CACA;AACD;AACD,iBAAiB,yBAAyB;CACxC,QAAQ,UAAU;CAClB,oBAAoB,MAAM;EACxB;EACA,QAAQ,UAAU;CACnB;CACD,YAAY,eAAe;EACzB,QAAQ,UAAU;EAClB,sBAAsB,MAAM;EAC5B;CACD;AACF;KACI,+BACD;CAAE,MAAM;CAAa;CAAU;CAAW;CAAU;AAAW,IAC/D;CAAE,MAAM;AAAe,IACvB;CAAE,MAAM;AAAuB,IAC/B;CAAE,MAAM;AAAqB,IAC7B;CACA,MAAM;CACN,SAAS,MAAM;EACb;EACA;CACD;CACD;AACD,IACC;CAAE,MAAM;CAAS;CAAU;CAAW;CAAU;AAAW,IAC3D;CAAE,MAAM;CAAgB;CAAU;CAAW;CAAU;AAAW,IAClE;CACA,MAAM;CACN;CACA;AACD,IACC;CAAE,MAAM;AAAe","names":[],"sources":["../../../src/actions/ActionResults.ts"],"version":3,"file":"ActionResults.d.ts"}
|
|
@@ -25,7 +25,7 @@ export declare namespace ActionParam {
|
|
|
25
25
|
type InterfaceType<T extends InterfaceDefinition> = {
|
|
26
26
|
$objectType: NonNullable<T["__DefinitionMetadata"]> extends {
|
|
27
27
|
implementedBy: infer U
|
|
28
|
-
} ? (U extends ReadonlyArray<string> ? U[number] : string) : string
|
|
28
|
+
} ? (U extends ReadonlyArray<never> ? string : U extends ReadonlyArray<string> ? U[number] : string) : string
|
|
29
29
|
$primaryKey: string | number
|
|
30
30
|
};
|
|
31
31
|
type StructType<T extends Record<string, keyof DataValueClientToWire>> = { [K in keyof T] : DataValueClientToWire[T[K]] };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,6BAA6B,gCAAiC;AAC5E,cAAc,iBAAiB,2BAA4B;AAC3D,cAAc,2BAA2B,oCAAqC;AAC9E,cAAc,4BAA4B,qCAAsC;AAChF,cAAc,gBAAgB,gBAAiB;AAC/C,cAAc,gCAAgC,gCAAiC;AAE/E,cACE,eACA,gCACK,oBAAqB;AAE5B,YAAY,qBACR;CAAE,eAAe;CAAM,gBAAgB;AAAO,IAC9C;CACA,gBAAgB;CAChB,eAAe;AAChB;AAEH,YAAY,0BAA0B;CAAE;AAAwB;;;;AAKhE,yBAAiB;MAIH,cAAc,gBAAgB,yBACxC,sBAAsB;MAKZ,WAAW,UAAU,wBAC7B,SAAS,KACT,yBAAyB;MAKjB,cAAc,UAAU,wBAAwB,UAAU;MAK1D,cAAc,UAAU,uBAAuB;EACzD,aAAa,YAAY,EAAE,iCACzB;GAAE,qBAAqB;EAAG,
|
|
1
|
+
{"mappings":"AAgBA,cAAc,6BAA6B,gCAAiC;AAC5E,cAAc,iBAAiB,2BAA4B;AAC3D,cAAc,2BAA2B,oCAAqC;AAC9E,cAAc,4BAA4B,qCAAsC;AAChF,cAAc,gBAAgB,gBAAiB;AAC/C,cAAc,gCAAgC,gCAAiC;AAE/E,cACE,eACA,gCACK,oBAAqB;AAE5B,YAAY,qBACR;CAAE,eAAe;CAAM,gBAAgB;AAAO,IAC9C;CACA,gBAAgB;CAChB,eAAe;AAChB;AAEH,YAAY,0BAA0B;CAAE;AAAwB;;;;AAKhE,yBAAiB;MAIH,cAAc,gBAAgB,yBACxC,sBAAsB;MAKZ,WAAW,UAAU,wBAC7B,SAAS,KACT,yBAAyB;MAKjB,cAAc,UAAU,wBAAwB,UAAU;MAK1D,cAAc,UAAU,uBAAuB;EACzD,aAAa,YAAY,EAAE,iCACzB;GAAE,qBAAqB;EAAG,KAAI,UAAU,gCACpC,UAAU,wBAAwB;EAGxC;CACD;MAEW,WACV,UAAU,qBAAqB,6BAC1B,WAAW,KAAI,sBAAsB,EAAE;;AAGhD,YAAY,qBAAqB;AACjC,YAAY,2BAA2B","names":[],"sources":["../../../src/actions/Actions.ts"],"version":3,"file":"Actions.d.ts"}
|
|
@@ -50,7 +50,7 @@ type Aggregatable<Q extends ObjectOrInterfaceDefinition> = {
|
|
|
50
50
|
limit: number
|
|
51
51
|
} : P extends "approximatePercentile" ? {
|
|
52
52
|
percentile: number
|
|
53
|
-
} : never : never) => DerivedProperty.SelectorResult<V extends `${infer N}:${infer P}` ? P extends CollectWithPropAggregations ? Array<CompileTimeMetadata<Q>["properties"][N]["type"]> | undefined : P extends "approximateDistinct" | "exactDistinct" | "$count" ? "integer"
|
|
53
|
+
} : never : never) => DerivedProperty.SelectorResult<V extends `${infer N}:${infer P}` ? P extends CollectWithPropAggregations ? Array<CompileTimeMetadata<Q>["properties"][N]["type"]> | undefined : P extends "approximateDistinct" | "exactDistinct" | "$count" ? "integer" : "double" | undefined : V extends "$count" ? "integer" : never>
|
|
54
54
|
};
|
|
55
55
|
type Selectable<Q extends ObjectOrInterfaceDefinition> = {
|
|
56
56
|
readonly selectProperty: <R extends PropertyKeys<Q>>(propertyName: R) => DerivedProperty.SelectorResult<SimplePropertyDef.Make<CompileTimeMetadata<Q>["properties"][R]["type"], CompileTimeMetadata<Q>["properties"][R]["nullable"], CompileTimeMetadata<Q>["properties"][R]["multiplicity"]>>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,4BAA4B,kCAAmC;AAC7E,cAAc,mBAAmB,6BAA8B;AAC/D,cACE,6BACA,oBACK,kCAAmC;AAC1C,cAAc,2BAA2B,qCAAsC;AAC/E,cAAc,yBAAyB,kCAAmC;AAC1E,cAAc,YAAY,iBAAiB,sBAAuB;AAClE,cAAc,mCAAmC,uCAAwC;AAEzF,yBAAiB;MACH,eACV,UAAU,qBACR;EACF,MAAM;CACP;MAEW,OACV,UAAU,+BACR;iBACa,SAAS,GAAG;CAC5B;MAEW;EACV,UAAU;EACV,UAAU;MAEVA,eAAe,gBAAgB,QAAQ,GAAG,WACvC,eAAe;WAEH;EACf,UAAU;EACV;WACQ,WAAW,GAAG,cAAc,UAAU,GAAG,aAAa,CAC/D;WAEgB;EACf,UAAU;EACV;WACQ,QAAQ,GAAG,cAAc,aAAa,GAAG,CAClD;WAEgB;EACf,UAAU;EACV;WACQ,iBAAiB,GAAG,cAAc,WAAW,GAAG,CACzD;;KAGE;CACH,UAAU;CACV;IACE,oBAAoB,OAAO,gBAAgB,iBAAiB,GAAG,QAC/D,gBAAgB,sBAAsB,GAAG;KAExC;CACH,UAAU;CACV;IACE;UACO,QACPC,QAAQ,YAAY,OACjB,0BAA0B,GAAG;AACnC;KAEI;CACH,UAAU;CACV;IACE;UACO,UAAU,UAAU,UAAU,IACrCC,MAAM,MACH,oBAAoB,OACrB,gBAAgB,iBAAiB,WAAW,GAAG,IAAI,QACnD,YAAY,oBAAoB,GAAG,SAAS,GAAG,yBAC/C,OAAO,gBAAgB,iBAAiB,WAAW,GAAG,IAAI,QAC1D,gBAAgB,sBAAsB,WAAW,GAAG,IAAI;AAC7D;KAEI,aACH,UAAU,+BACR;UACO,YACP,UAAU,qBACR,GACA,4BAGFC,sBAAsB,GACtBC,OAAO,0BAA0B,MAC7B,UAAU,8BAA8B;EAAE;CAAe,IACzD,UAAU,0BAA0B;EAAE;CAAoB,sBAG3D,gBAAgB,eACnB,mBAAmB,WAAW,MAC1B,UAAU,8BACR,MAAM,oBAAoB,GAAG,cAAc,GAAG,uBAChD,UAAU,wBAAwB,kBAAkB,
|
|
1
|
+
{"mappings":"AAgBA,cAAc,4BAA4B,kCAAmC;AAC7E,cAAc,mBAAmB,6BAA8B;AAC/D,cACE,6BACA,oBACK,kCAAmC;AAC1C,cAAc,2BAA2B,qCAAsC;AAC/E,cAAc,yBAAyB,kCAAmC;AAC1E,cAAc,YAAY,iBAAiB,sBAAuB;AAClE,cAAc,mCAAmC,uCAAwC;AAEzF,yBAAiB;MACH,eACV,UAAU,qBACR;EACF,MAAM;CACP;MAEW,OACV,UAAU,+BACR;iBACa,SAAS,GAAG;CAC5B;MAEW;EACV,UAAU;EACV,UAAU;MAEVA,eAAe,gBAAgB,QAAQ,GAAG,WACvC,eAAe;WAEH;EACf,UAAU;EACV;WACQ,WAAW,GAAG,cAAc,UAAU,GAAG,aAAa,CAC/D;WAEgB;EACf,UAAU;EACV;WACQ,QAAQ,GAAG,cAAc,aAAa,GAAG,CAClD;WAEgB;EACf,UAAU;EACV;WACQ,iBAAiB,GAAG,cAAc,WAAW,GAAG,CACzD;;KAGE;CACH,UAAU;CACV;IACE,oBAAoB,OAAO,gBAAgB,iBAAiB,GAAG,QAC/D,gBAAgB,sBAAsB,GAAG;KAExC;CACH,UAAU;CACV;IACE;UACO,QACPC,QAAQ,YAAY,OACjB,0BAA0B,GAAG;AACnC;KAEI;CACH,UAAU;CACV;IACE;UACO,UAAU,UAAU,UAAU,IACrCC,MAAM,MACH,oBAAoB,OACrB,gBAAgB,iBAAiB,WAAW,GAAG,IAAI,QACnD,YAAY,oBAAoB,GAAG,SAAS,GAAG,yBAC/C,OAAO,gBAAgB,iBAAiB,WAAW,GAAG,IAAI,QAC1D,gBAAgB,sBAAsB,WAAW,GAAG,IAAI;AAC7D;KAEI,aACH,UAAU,+BACR;UACO,YACP,UAAU,qBACR,GACA,4BAGFC,sBAAsB,GACtBC,OAAO,0BAA0B,MAC7B,UAAU,8BAA8B;EAAE;CAAe,IACzD,UAAU,0BAA0B;EAAE;CAAoB,sBAG3D,gBAAgB,eACnB,mBAAmB,WAAW,MAC1B,UAAU,8BACR,MAAM,oBAAoB,GAAG,cAAc,GAAG,uBAChD,UAAU,wBAAwB,kBAAkB,WAAW,YAC/D,uBACA,UAAU,WAAW;AAG5B;KAEI,WAAW,UAAU,+BAA+B;UAC9C,iBAAiB,UAAU,aAAa,IAC/CC,cAAc,MACX,gBAAgB,eACnB,kBAAkB,KAChB,oBAAoB,GAAG,cAAc,GAAG,SACxC,oBAAoB,GAAG,cAAc,GAAG,aACxC,oBAAoB,GAAG,cAAc,GAAG;AAG7C","names":["baseObjectSet: DerivedProperty.Builder<Q, false>","clause: WhereClause<Q>","type: L","aggregationSpecifier: V","opts?: V extends `${any}:${infer P}`\n ? P extends CollectWithPropAggregations ? { limit: number }\n : P extends \"approximatePercentile\" ? { percentile: number }\n : never\n : never","propertyName: R"],"sources":["../../../src/derivedProperties/DerivedProperty.ts"],"version":3,"file":"DerivedProperty.d.ts"}
|
|
@@ -5,6 +5,12 @@ import type { GroupByMapper } from "./GroupByMapper.js";
|
|
|
5
5
|
export type GroupByClause<Q extends ObjectOrInterfaceDefinition> = { [P in AggregatableKeys<Q>]? : GroupByEntry<Q, P> };
|
|
6
6
|
type BaseGroupByValue = "exact" | {
|
|
7
7
|
$exactWithLimit: number
|
|
8
|
+
} | ExactGroupByWithOptions;
|
|
9
|
+
type ExactGroupByWithOptions = {
|
|
10
|
+
$exact: {
|
|
11
|
+
$limit?: number
|
|
12
|
+
$defaultValue?: string
|
|
13
|
+
}
|
|
8
14
|
};
|
|
9
15
|
export type GroupByRange<T> = [T, T];
|
|
10
16
|
export type StringGroupByValue = BaseGroupByValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,wBAAwB,kCAAmC;AAEzE,cAAc,mCAAmC,kCAAmC;AACpF,cAAc,2BAA2B,qCAAsC;AAC/E,cAAc,qBAAqB,oBAAqB;AAExD,YAAY,cACV,UAAU,kCAET,KAAK,iBAAiB,OAAM,aAAa,GAAG;KAG1C,
|
|
1
|
+
{"mappings":"AAgBA,cAAc,wBAAwB,kCAAmC;AAEzE,cAAc,mCAAmC,kCAAmC;AACpF,cAAc,2BAA2B,qCAAsC;AAC/E,cAAc,qBAAqB,oBAAqB;AAExD,YAAY,cACV,UAAU,kCAET,KAAK,iBAAiB,OAAM,aAAa,GAAG;KAG1C,mBACD,UACA;CAAE;AAAyB,IAC3B;KAEC,0BAA0B;CAC7B,QAAQ;EAAE;EAAiB;CAAwB;AACpD;AAED,YAAY,aAAa,MAAM,GAAG;AAElC,YAAY,qBAAqB;AAEjC,YAAY,sBAAsB,mBAAmB;CACnD;AACD,IAAG;CAAE,SAAS;AAAwB;AAEvC,YAAY,wBACR,mBACA;CAAE,SAAS;AAAwB,IACnC;CAAE,WAAW;AAA0B;AAE3C,YAAY,mBACR,mBACA;CAAE,SAAS;AAAwB,IACnC;CAAE,WAAW;AAAyB;AAE1C,YAAY,sBAAsB;AAElC,YAAY,qBACR,gBACA,YACA,YACA;AAEJ,YAAY,gBAAgB,SAAS,UAAU,WAAW,UAAU;AACpE,OAAO,cAAMA,iBAAiB;CAC5B,SAAS;CACT,UAAU;CACV,KAAK;CACL,SAAS;CACT,KAAK;CACL,QAAQ;CACR,SAAS;CACT,IAAI;CACJ,KAAK;CACL,MAAM;CACN,OAAO;CACP,KAAK;CACL,MAAM;CACN,IAAI;CACJ,MAAM;CACN,OAAO;CACP,KAAK;CACL,OAAO;CACP,QAAQ;CACR,IAAI;CACJ,MAAM;CACN,OAAO;AACR;UAMS,iBAAiB;CACzB;CACA;CACA;CACA;CACA,OAAO;CACP,QAAQ;CACR,OAAO;CACP,UAAU;AACX;KAEI,gBAAgB,QAClB,kBAAkB,0BAAyB,gBAAgB,WAAW,KAClE,wBAAwB,gBAAgB,KAAK,0BAErC;KAEV,2BAA2B,gBAAgB;KAC3C,0BAA0B,gBAAgB;KAE1C;CACH,UAAU;CACV,UAAU,iBAAiB;IACzB,oBAAoB,GAAG,cAAc,GAAG,sBAAsB,gBAC9D,cAAc,oBAAoB,GAAG,cAAc,GAAG;AAG1D,YAAY,mBAAmB,oBAAoB","names":["DurationMapping: {\n quarter: \"QUARTERS\";\n quarters: \"QUARTERS\";\n sec: \"SECONDS\";\n seconds: \"SECONDS\";\n min: \"MINUTES\";\n minute: \"MINUTES\";\n minutes: \"MINUTES\";\n hr: \"HOURS\";\n hrs: \"HOURS\";\n hour: \"HOURS\";\n hours: \"HOURS\";\n day: \"DAYS\";\n days: \"DAYS\";\n wk: \"WEEKS\";\n week: \"WEEKS\";\n weeks: \"WEEKS\";\n mos: \"MONTHS\";\n month: \"MONTHS\";\n months: \"MONTHS\";\n yr: \"YEARS\";\n year: \"YEARS\";\n years: \"YEARS\";\n}"],"sources":["../../../src/groupby/GroupByClause.ts"],"version":3,"file":"GroupByClause.d.ts"}
|
|
@@ -81,7 +81,7 @@ export interface PropertyDef<
|
|
|
81
81
|
multiplicity: M extends "array" ? true : false;
|
|
82
82
|
nullable: N extends "nullable" ? true : false;
|
|
83
83
|
}
|
|
84
|
-
export type ReleaseStatus = "ACTIVE" | "EXPERIMENTAL" | "DEPRECATED";
|
|
84
|
+
export type ReleaseStatus = "ACTIVE" | "EXPERIMENTAL" | "DEPRECATED" | "ENDORSED";
|
|
85
85
|
type ObjectTypeVisibility = "NORMAL" | "PROMINENT" | "HIDDEN";
|
|
86
86
|
type BlueprintIcon = {
|
|
87
87
|
type: "blueprint"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,oBAAoB,oBAAqB;AACvD,cACE,6BACA,oBACK,wBAAyB;AAChC,cAAc,uBAAuB,sBAAuB;AAC5D,cAAc,qBAAqB,oBAAqB;AACxD,cAAc,yBAAyB,wBAAyB;AAEhE,YAAY,oBAAoB,UAAU;CAAE,uBAAuB,CAAE;AAAE,KACrE,YACE,EAAE;AAGN,YAAY;CACV,UAAU;CACV,UAAU,aAAa;IACrB,oBAAoB,GAAG,cAAc;AAEzC,YAAY,8BAA8B;CACxC,MAAM,WAAW;CACjB;CACA;CACA;CACA,YAAY,YAAY,eAAe;CACvC,OAAO,eAEL,eAAe;CAEjB;;;;;;CAMA,aAAa;AACd;AAED,iBAAiB,iCAAiC;CAChD,MAAM,WAAW;CACjB;CACA;CACA;CACA;AACD;AAED,iBAAiB,aAAa,UAAU,8BAA8B;CACpE,0BAA0B;AAC3B;AAED,iBAAiB,uBAAuB,4BAA4B;CAClE,MAAM;CACN,8BAA8B;CAC9B,0BAA0B;CAC1B,gBAAgB;CAChB,OAAO;CACP,aAAa;CACb;CACA,QAAQ;CACR,cAAc,eAEZ;CAKF,qBAAqB,eAEnB;AAKH;AAED,yBAAiB;WACE,SAAS;EACxB;EACA;EACA;EACA,MAAM;EACN;EACA;CACD;WAEgB;EACf,UAAU;EACV;GACA;EACA,uBAAuB;EACvB,YAAY,EAAE;EACd,cAAc;CACf;;AAGH,iBAAiB,qBAAqB;CACpC,MAAM;CACN;CACA,eAAe;CACf,uBACI,iBACA;AACL;AAED,YAAY,wBACV,UAAU,8BAEF,oBAAoB,GAAG;AAGjC,iBAAiB;CACf,UAAU;CACV,UAAU,aAAa,iBAAiB;CACxC,UAAU,UAAU,WAAW;UACvB,eAAe,SAAS;CAChC,MAAM;CACN,cAAc,UAAU,UAAU,OAAO;CACzC,UAAU,UAAU,aAAa,OAAO;AACzC;AAED,YAAY,
|
|
1
|
+
{"mappings":"AAgBA,cAAc,oBAAoB,oBAAqB;AACvD,cACE,6BACA,oBACK,wBAAyB;AAChC,cAAc,uBAAuB,sBAAuB;AAC5D,cAAc,qBAAqB,oBAAqB;AACxD,cAAc,yBAAyB,wBAAyB;AAEhE,YAAY,oBAAoB,UAAU;CAAE,uBAAuB,CAAE;AAAE,KACrE,YACE,EAAE;AAGN,YAAY;CACV,UAAU;CACV,UAAU,aAAa;IACrB,oBAAoB,GAAG,cAAc;AAEzC,YAAY,8BAA8B;CACxC,MAAM,WAAW;CACjB;CACA;CACA;CACA,YAAY,YAAY,eAAe;CACvC,OAAO,eAEL,eAAe;CAEjB;;;;;;CAMA,aAAa;AACd;AAED,iBAAiB,iCAAiC;CAChD,MAAM,WAAW;CACjB;CACA;CACA;CACA;AACD;AAED,iBAAiB,aAAa,UAAU,8BAA8B;CACpE,0BAA0B;AAC3B;AAED,iBAAiB,uBAAuB,4BAA4B;CAClE,MAAM;CACN,8BAA8B;CAC9B,0BAA0B;CAC1B,gBAAgB;CAChB,OAAO;CACP,aAAa;CACb;CACA,QAAQ;CACR,cAAc,eAEZ;CAKF,qBAAqB,eAEnB;AAKH;AAED,yBAAiB;WACE,SAAS;EACxB;EACA;EACA;EACA,MAAM;EACN;EACA;CACD;WAEgB;EACf,UAAU;EACV;GACA;EACA,uBAAuB;EACvB,YAAY,EAAE;EACd,cAAc;CACf;;AAGH,iBAAiB,qBAAqB;CACpC,MAAM;CACN;CACA,eAAe;CACf,uBACI,iBACA;AACL;AAED,YAAY,wBACV,UAAU,8BAEF,oBAAoB,GAAG;AAGjC,iBAAiB;CACf,UAAU;CACV,UAAU,aAAa,iBAAiB;CACxC,UAAU,UAAU,WAAW;UACvB,eAAe,SAAS;CAChC,MAAM;CACN,cAAc,UAAU,UAAU,OAAO;CACzC,UAAU,UAAU,aAAa,OAAO;AACzC;AAED,YAAY,gBACR,WACA,iBACA,eACA;KAEC,uBAAuB,WAAW,cAAc;KAEhD,gBAAgB;CACnB,MAAM;CACN;CACA;AACD;KAEI,OAAO","names":[],"sources":["../../../src/ontology/ObjectTypeDefinition.ts"],"version":3,"file":"ObjectTypeDefinition.d.ts"}
|