mirror of
https://github.com/forcedotcom/afv-library.git
synced 2026-07-30 11:43:26 +08:00
* feat: removing old webapp skills * feat: adding sync of skills from webapps to afv * feat: adding the first iteration of skills * feat: pin template deps to latest npm versions and flatten skill folders - Add pin-template-deps.js to resolve "*" deps to exact npm versions - Integrate pinning into sync-template-skills npm script - Remove check-template-skills-versions.js (no longer needed) - Simplify workflow to single sync step - Flatten skill output: one folder per skill with cleaned names Made-with: Cursor * fix: resolve skill validation errors - Move .template-versions.json from skills/ to root - Shorten skill names to meet 64-char limit: - salesforce-webapp-feature-micro-frontend-generating-micro-frontend-lwc → salesforce-webapp-micro-frontend-lwc - salesforce-webapp-feature-react-agentforce-conversation-client-integrating-agentforce-conversation-client → salesforce-webapp-agentforce-conversation-client - salesforce-webapp-feature-react-file-upload-implementing-file-upload → salesforce-webapp-react-file-upload - Expand descriptions to meet 20-word minimum with trigger context * Add webapp skills from template, sync script updates - Rename skill folders from salesforce-webapp-* to *-webapp-* convention - Update sync-template-skills.js: set SKILL.md front matter name to dest folder - Remove sync-template-skills workflow and pin-template-deps script - Add .synced-template-skills.json manifest, deploying-webapp-to-salesforce skill - Replace salesforce-webapp-designing-webapp-ui-ux with designing-webapp-ui-ux Made-with: Cursor * Align SKILL.md front matter name with folder for all webapp skills Made-with: Cursor * Fix skill validation: description length and trigger context for configuring-webapp-metadata, creating-webapp Made-with: Cursor * Rename sync script to sync-webapp-skills, drop manifest file - Rename sync-template-skills.js to sync-webapp-skills.js - Update package.json script to sync-webapp-skills - Remove .synced-template-skills.json creation and add to .gitignore Made-with: Cursor * Revert sync-react-b2e-sample and sync-react-b2x-sample to upstream version Made-with: Cursor * Sync script: pin b2e and b2x to latest, sync skills from template - Pin both template packages to latest in sync-webapp-skills.js - Update package.json / package-lock.json (b2x 1.109.0) - Sync skills: managing-webapp-agentforce-conversation-client, bar-line-chart, remove building-webapp-analytics-charts and integrating-webapp-agentforce-conversation-client - Minor skill content updates Made-with: Cursor * Remove interactive map, weather widget, and Unsplash skills (no longer in template) Made-with: Cursor --------- Co-authored-by: Hemant Singh Bisht <hsinghbisht@salesforce.com>
1151 lines
21 KiB
GraphQL
1151 lines
21 KiB
GraphQL
# Common scalar types
|
|
scalar BigDecimal
|
|
scalar Byte
|
|
scalar Char
|
|
scalar BigInteger
|
|
scalar Short
|
|
scalar String
|
|
scalar Currency
|
|
scalar Longitude
|
|
scalar Float
|
|
scalar PhoneNumber
|
|
scalar Email
|
|
scalar TextArea
|
|
scalar Latitude
|
|
scalar RichTextArea
|
|
scalar EncryptedString
|
|
scalar Long
|
|
scalar JSON
|
|
scalar Time
|
|
scalar Percent
|
|
scalar LongTextArea
|
|
scalar DateTime
|
|
scalar ID
|
|
scalar Boolean
|
|
scalar MultiPicklist
|
|
scalar Base64
|
|
scalar Url
|
|
scalar Picklist
|
|
scalar Double
|
|
scalar Int
|
|
scalar IdOrRef
|
|
scalar Date
|
|
|
|
# Common enums
|
|
enum GroupByFunction {
|
|
DAY_IN_WEEK
|
|
DAY_IN_MONTH
|
|
DAY_IN_YEAR
|
|
WEEK_IN_MONTH
|
|
WEEK_IN_YEAR
|
|
CALENDAR_MONTH
|
|
CALENDAR_QUARTER
|
|
CALENDAR_YEAR
|
|
FISCAL_MONTH
|
|
FISCAL_QUARTER
|
|
FISCAL_YEAR
|
|
DAY_ONLY
|
|
HOUR_IN_DAY
|
|
}
|
|
|
|
enum DataType {
|
|
STRING
|
|
TEXTAREA
|
|
PHONE
|
|
EMAIL
|
|
URL
|
|
ENCRYPTEDSTRING
|
|
BOOLEAN
|
|
CURRENCY
|
|
INT
|
|
LONG
|
|
DOUBLE
|
|
PERCENT
|
|
DATETIME
|
|
TIME
|
|
DATE
|
|
REFERENCE
|
|
PICKLIST
|
|
MULTIPICKLIST
|
|
ADDRESS
|
|
LOCATION
|
|
BASE64
|
|
COMPLEXVALUE
|
|
COMBOBOX
|
|
JSON
|
|
JUNCTIONIDLIST
|
|
ANYTYPE
|
|
}
|
|
|
|
enum AggregateOrderByNumberFunction {
|
|
AVG
|
|
COUNT
|
|
COUNT_DISTINCT
|
|
MAX
|
|
MIN
|
|
SUM
|
|
}
|
|
|
|
enum AggregateOrderByStringFunction {
|
|
COUNT
|
|
COUNT_DISTINCT
|
|
MAX
|
|
MIN
|
|
}
|
|
|
|
enum GroupByType {
|
|
GROUP_BY
|
|
ROLLUP
|
|
CUBE
|
|
}
|
|
|
|
enum ResultsOrder {
|
|
ASC
|
|
DESC
|
|
}
|
|
|
|
enum ResultOrder {
|
|
ASC
|
|
DESC
|
|
}
|
|
|
|
enum NullOrder {
|
|
FIRST
|
|
LAST
|
|
}
|
|
|
|
enum NullsOrder {
|
|
FIRST
|
|
LAST
|
|
}
|
|
|
|
enum DateLiteral {
|
|
YESTERDAY
|
|
TODAY
|
|
TOMORROW
|
|
LAST_WEEK
|
|
THIS_WEEK
|
|
NEXT_WEEK
|
|
LAST_MONTH
|
|
THIS_MONTH
|
|
NEXT_MONTH
|
|
LAST_90_DAYS
|
|
NEXT_90_DAYS
|
|
LAST_QUARTER
|
|
THIS_QUARTER
|
|
NEXT_QUARTER
|
|
LAST_FISCAL_QUARTER
|
|
THIS_FISCAL_QUARTER
|
|
NEXT_FISCAL_QUARTER
|
|
LAST_YEAR
|
|
THIS_YEAR
|
|
NEXT_YEAR
|
|
LAST_FISCAL_YEAR
|
|
THIS_FISCAL_YEAR
|
|
NEXT_FISCAL_YEAR
|
|
}
|
|
|
|
enum Unit {
|
|
MI
|
|
KM
|
|
}
|
|
|
|
enum SObject__FieldType {
|
|
ALL
|
|
STANDARD
|
|
CUSTOM
|
|
}
|
|
|
|
enum FieldExtraTypeInfo {
|
|
IMAGE_URL
|
|
EXTERNAL_LOOKUP
|
|
INDIRECT_LOOKUP
|
|
PERSONNAME
|
|
SWITCHABLE_PERSONNAME
|
|
PLAINTEXTAREA
|
|
RICHTEXTAREA
|
|
}
|
|
|
|
enum RecordScope @generic {
|
|
}
|
|
|
|
# Common interfaces
|
|
interface FieldValue {
|
|
displayValue: String
|
|
}
|
|
|
|
interface Field {
|
|
ApiName: String!
|
|
calculated: Boolean!
|
|
compound: Boolean!
|
|
compoundComponentName: String
|
|
compoundFieldName: String
|
|
controllerName: String
|
|
controllingFields: [String]!
|
|
createable: Boolean!
|
|
custom: Boolean!
|
|
dataType: DataType
|
|
extraTypeInfo: FieldExtraTypeInfo
|
|
filterable: Boolean!
|
|
filteredLookupInfo: FilteredLookupInfo
|
|
highScaleNumber: Boolean!
|
|
htmlFormatted: Boolean!
|
|
inlineHelpText: String
|
|
label: String
|
|
nameField: Boolean!
|
|
polymorphicForeignKey: Boolean!
|
|
precision: Int
|
|
reference: Boolean!
|
|
referenceTargetField: String
|
|
referenceToInfos: [ReferenceToInfo]!
|
|
relationshipName: String
|
|
required: Boolean!
|
|
scale: Int
|
|
searchPrefilterable: Boolean
|
|
sortable: Boolean!
|
|
updateable: Boolean!
|
|
}
|
|
|
|
interface Record {
|
|
Id: ID!
|
|
ApiName: String!
|
|
WeakEtag: Long!
|
|
DisplayValue: String
|
|
LastModifiedById: IDValue
|
|
LastModifiedDate: DateTimeValue
|
|
SystemModstamp: DateTimeValue
|
|
RecordTypeId(fallback: Boolean): IDValue
|
|
}
|
|
|
|
# Common types
|
|
type PageInfo {
|
|
hasNextPage: Boolean!
|
|
hasPreviousPage: Boolean!
|
|
startCursor: String
|
|
endCursor: String
|
|
}
|
|
|
|
type SObject__Field {
|
|
name: String!
|
|
value: String
|
|
}
|
|
|
|
type ReferenceToInfo {
|
|
ApiName: String!
|
|
nameFields: [String]!
|
|
objectInfo: ObjectInfo
|
|
}
|
|
|
|
type FilteredLookupInfo {
|
|
controllingFields: [String]!
|
|
dependent: Boolean!
|
|
optionalFilter: Boolean!
|
|
}
|
|
|
|
type DependentField {
|
|
controllingField: String!
|
|
dependentFields: [String]!
|
|
}
|
|
|
|
type RecordTypeInfo {
|
|
available: Boolean!
|
|
defaultRecordTypeMapping: Boolean!
|
|
master: Boolean!
|
|
name: String
|
|
recordTypeId: ID
|
|
}
|
|
|
|
type ThemeInfo {
|
|
color: String
|
|
iconUrl: String
|
|
}
|
|
|
|
type ChildRelationship {
|
|
childObjectApiName: String!
|
|
fieldName: String
|
|
junctionIdListNames: [String]!
|
|
junctionReferenceTo: [String]!
|
|
relationshipName: String
|
|
objectInfo: ObjectInfo
|
|
}
|
|
|
|
type ObjectInfo {
|
|
ApiName: String!
|
|
childRelationships: [ChildRelationship]!
|
|
createable: Boolean!
|
|
custom: Boolean!
|
|
defaultRecordTypeId: ID
|
|
deletable: Boolean!
|
|
dependentFields: [DependentField]!
|
|
feedEnabled: Boolean!
|
|
fields: [Field]!
|
|
keyPrefix: String
|
|
label: String
|
|
labelPlural: String
|
|
layoutable: Boolean!
|
|
mruEnabled: Boolean!
|
|
nameFields: [String]!
|
|
queryable: Boolean!
|
|
recordTypeInfos: [RecordTypeInfo]!
|
|
searchable: Boolean!
|
|
themeInfo: ThemeInfo
|
|
updateable: Boolean!
|
|
locale: String
|
|
}
|
|
|
|
type StandardField implements Field {
|
|
ApiName: String!
|
|
calculated: Boolean!
|
|
compound: Boolean!
|
|
compoundComponentName: String
|
|
compoundFieldName: String
|
|
controllerName: String
|
|
controllingFields: [String]!
|
|
createable: Boolean!
|
|
custom: Boolean!
|
|
dataType: DataType
|
|
extraTypeInfo: FieldExtraTypeInfo
|
|
filterable: Boolean!
|
|
filteredLookupInfo: FilteredLookupInfo
|
|
highScaleNumber: Boolean!
|
|
htmlFormatted: Boolean!
|
|
inlineHelpText: String
|
|
label: String
|
|
nameField: Boolean!
|
|
polymorphicForeignKey: Boolean!
|
|
precision: Int
|
|
reference: Boolean!
|
|
referenceTargetField: String
|
|
referenceToInfos: [ReferenceToInfo]!
|
|
relationshipName: String
|
|
required: Boolean!
|
|
scale: Int
|
|
searchPrefilterable: Boolean
|
|
sortable: Boolean!
|
|
updateable: Boolean!
|
|
}
|
|
|
|
type PicklistField implements Field {
|
|
ApiName: String!
|
|
calculated: Boolean!
|
|
compound: Boolean!
|
|
compoundComponentName: String
|
|
compoundFieldName: String
|
|
controllerName: String
|
|
controllingFields: [String]!
|
|
createable: Boolean!
|
|
custom: Boolean!
|
|
dataType: DataType
|
|
extraTypeInfo: FieldExtraTypeInfo
|
|
filterable: Boolean!
|
|
filteredLookupInfo: FilteredLookupInfo
|
|
highScaleNumber: Boolean!
|
|
htmlFormatted: Boolean!
|
|
inlineHelpText: String
|
|
label: String
|
|
nameField: Boolean!
|
|
polymorphicForeignKey: Boolean!
|
|
picklistValuesByRecordTypeIDs: [PicklistValueByRecordTypeIDs]
|
|
precision: Int
|
|
reference: Boolean!
|
|
referenceTargetField: String
|
|
referenceToInfos: [ReferenceToInfo]!
|
|
relationshipName: String
|
|
required: Boolean!
|
|
scale: Int
|
|
searchPrefilterable: Boolean
|
|
sortable: Boolean!
|
|
updateable: Boolean!
|
|
}
|
|
|
|
type PicklistValueByRecordTypeIDs {
|
|
recordTypeID: String!
|
|
controllerValues: [ControllerValues!]
|
|
picklistValues: [PicklistValues!]
|
|
defaultValue: PicklistValues
|
|
}
|
|
|
|
type ControllerValues {
|
|
value: String
|
|
index: Int
|
|
}
|
|
|
|
type PicklistValues {
|
|
value: String
|
|
label: String
|
|
validFor: [Int]
|
|
attributes: PicklistAttributes
|
|
}
|
|
|
|
type PicklistAttributes {
|
|
picklistAtrributesValueType: String
|
|
connectDisplayName: String
|
|
internalName: String
|
|
}
|
|
|
|
# Value types implementing FieldValue
|
|
type IntValue implements FieldValue {
|
|
value: Int
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type StringValue implements FieldValue {
|
|
value: String
|
|
displayValue: String
|
|
label: String
|
|
}
|
|
|
|
type BooleanValue implements FieldValue {
|
|
value: Boolean
|
|
displayValue: String
|
|
}
|
|
|
|
type IDValue implements FieldValue {
|
|
value: ID
|
|
displayValue: String
|
|
}
|
|
|
|
type DateTimeValue implements FieldValue {
|
|
value: DateTime
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type TimeValue implements FieldValue {
|
|
value: Time
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type DateValue implements FieldValue {
|
|
value: Date
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type TextAreaValue implements FieldValue {
|
|
value: TextArea
|
|
displayValue: String
|
|
label: String
|
|
}
|
|
|
|
type LongTextAreaValue implements FieldValue {
|
|
value: LongTextArea
|
|
displayValue: String
|
|
label: String
|
|
}
|
|
|
|
type RichTextAreaValue implements FieldValue {
|
|
value: RichTextArea
|
|
displayValue: String
|
|
label: String
|
|
}
|
|
|
|
type PhoneNumberValue implements FieldValue {
|
|
value: PhoneNumber
|
|
displayValue: String
|
|
}
|
|
|
|
type EmailValue implements FieldValue {
|
|
value: Email
|
|
displayValue: String
|
|
}
|
|
|
|
type UrlValue implements FieldValue {
|
|
value: Url
|
|
displayValue: String
|
|
}
|
|
|
|
type EncryptedStringValue implements FieldValue {
|
|
value: EncryptedString
|
|
displayValue: String
|
|
}
|
|
|
|
type CurrencyValue implements FieldValue {
|
|
value: Currency
|
|
displayValue: String
|
|
format: String
|
|
convertCurrency: Currency
|
|
}
|
|
|
|
type LongitudeValue implements FieldValue {
|
|
value: Longitude
|
|
displayValue: String
|
|
}
|
|
|
|
type LatitudeValue implements FieldValue {
|
|
value: Latitude
|
|
displayValue: String
|
|
}
|
|
|
|
type PicklistValue implements FieldValue {
|
|
value: Picklist
|
|
displayValue: String
|
|
label: String
|
|
}
|
|
|
|
type MultiPicklistValue implements FieldValue {
|
|
value: MultiPicklist
|
|
displayValue: String
|
|
label: String
|
|
}
|
|
|
|
type LongValue implements FieldValue {
|
|
value: Long
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type DoubleValue implements FieldValue {
|
|
value: Double
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type PercentValue implements FieldValue {
|
|
value: Percent
|
|
displayValue: String
|
|
format: String
|
|
}
|
|
|
|
type Base64Value implements FieldValue {
|
|
value: Base64
|
|
displayValue: String
|
|
}
|
|
|
|
type JSONValue implements FieldValue {
|
|
value: JSON
|
|
displayValue: String
|
|
}
|
|
|
|
# Aggregate types implementing FieldValue
|
|
type BooleanAggregate implements FieldValue {
|
|
value: Boolean
|
|
displayValue: String
|
|
grouping: IntValue
|
|
}
|
|
|
|
type CurrencyAggregate implements FieldValue {
|
|
value: Currency
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
format: String
|
|
max: CurrencyValue
|
|
min: CurrencyValue
|
|
sum: CurrencyValue
|
|
}
|
|
|
|
type DateAggregate implements FieldValue {
|
|
value: Date
|
|
displayValue: String
|
|
calendarMonth: DateFunctionAggregation
|
|
calendarQuarter: DateFunctionAggregation
|
|
calendarYear: DateFunctionAggregation
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
dayInMonth: DateFunctionAggregation
|
|
dayInWeek: DateFunctionAggregation
|
|
dayInYear: DateFunctionAggregation
|
|
fiscalMonth: DateFunctionAggregation
|
|
fiscalQuarter: DateFunctionAggregation
|
|
fiscalYear: DateFunctionAggregation
|
|
format: String
|
|
grouping: IntValue
|
|
max: DateValue
|
|
min: DateValue
|
|
weekInMonth: DateFunctionAggregation
|
|
weekInYear: DateFunctionAggregation
|
|
}
|
|
|
|
type DateTimeAggregate implements FieldValue {
|
|
value: DateTime
|
|
displayValue: String
|
|
calendarMonth: DateFunctionAggregation
|
|
calendarQuarter: DateFunctionAggregation
|
|
calendarYear: DateFunctionAggregation
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
dayInMonth: DateFunctionAggregation
|
|
dayInWeek: DateFunctionAggregation
|
|
dayInYear: DateFunctionAggregation
|
|
dayOnly: DateOnlyAggregation
|
|
fiscalMonth: DateFunctionAggregation
|
|
fiscalQuarter: DateFunctionAggregation
|
|
fiscalYear: DateFunctionAggregation
|
|
format: String
|
|
hourInDay: DateFunctionAggregation
|
|
max: DateTimeValue
|
|
min: DateTimeValue
|
|
weekInMonth: DateFunctionAggregation
|
|
weekInYear: DateFunctionAggregation
|
|
}
|
|
|
|
type DoubleAggregate implements FieldValue {
|
|
value: Double
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
format: String
|
|
max: DoubleValue
|
|
min: DoubleValue
|
|
sum: DoubleValue
|
|
}
|
|
|
|
type EmailAggregate implements FieldValue {
|
|
value: Email
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
max: EmailValue
|
|
min: EmailValue
|
|
}
|
|
|
|
type IDAggregate implements FieldValue {
|
|
value: ID
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
max: IDValue
|
|
min: IDValue
|
|
}
|
|
|
|
type IntAggregate implements FieldValue {
|
|
value: Int
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
format: String
|
|
grouping: IntValue
|
|
max: IntValue
|
|
min: IntValue
|
|
sum: LongValue
|
|
}
|
|
|
|
type LatitudeAggregate implements FieldValue {
|
|
value: Latitude
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
max: LatitudeValue
|
|
min: LatitudeValue
|
|
sum: DoubleValue
|
|
}
|
|
|
|
type LongitudeAggregate implements FieldValue {
|
|
value: Longitude
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
max: LongitudeValue
|
|
min: LongitudeValue
|
|
sum: DoubleValue
|
|
}
|
|
|
|
type LongAggregate implements FieldValue {
|
|
value: Long
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
format: String
|
|
grouping: IntValue
|
|
max: LongValue
|
|
min: LongValue
|
|
sum: LongValue
|
|
}
|
|
|
|
type PercentAggregate implements FieldValue {
|
|
value: Percent
|
|
displayValue: String
|
|
avg: DoubleValue
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
format: String
|
|
max: PercentValue
|
|
min: PercentValue
|
|
sum: PercentValue
|
|
}
|
|
|
|
type PhoneNumberAggregate implements FieldValue {
|
|
value: PhoneNumber
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
max: PhoneNumberValue
|
|
min: PhoneNumberValue
|
|
}
|
|
|
|
type PicklistAggregate implements FieldValue {
|
|
value: Picklist
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
label: String
|
|
max: PicklistValue
|
|
min: PicklistValue
|
|
}
|
|
|
|
type StringAggregate implements FieldValue {
|
|
value: String
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
label: String
|
|
max: StringValue
|
|
min: StringValue
|
|
}
|
|
|
|
type TextAreaAggregate implements FieldValue {
|
|
value: TextArea
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
label: String
|
|
max: TextAreaValue
|
|
min: TextAreaValue
|
|
}
|
|
|
|
type TimeAggregate implements FieldValue {
|
|
value: Time
|
|
displayValue: String
|
|
format: String
|
|
hourInDay: DateFunctionAggregation
|
|
}
|
|
|
|
type UrlAggregate implements FieldValue {
|
|
value: Url
|
|
displayValue: String
|
|
count: LongValue
|
|
countDistinct: LongValue
|
|
grouping: IntValue
|
|
max: UrlValue
|
|
min: UrlValue
|
|
}
|
|
|
|
# Helper types for aggregations
|
|
type DateFunctionAggregation {
|
|
value: Long
|
|
format: String
|
|
}
|
|
|
|
type DateOnlyAggregation {
|
|
value: Date
|
|
format: String
|
|
}
|
|
|
|
type CompoundField @generic {
|
|
IntValue: IntValue @fieldCategory
|
|
StringValue: StringValue @fieldCategory
|
|
BooleanValue: BooleanValue @fieldCategory
|
|
IDValue: IDValue @fieldCategory
|
|
DateTimeValue: DateTimeValue @fieldCategory
|
|
TimeValue: TimeValue @fieldCategory
|
|
DateValue: DateValue @fieldCategory
|
|
TextAreaValue: TextAreaValue @fieldCategory
|
|
LongTextAreaValue: LongTextAreaValue @fieldCategory
|
|
RichTextAreaValue: RichTextAreaValue @fieldCategory
|
|
PhoneNumberValue: PhoneNumberValue @fieldCategory
|
|
EmailValue: EmailValue @fieldCategory
|
|
UrlValue: UrlValue @fieldCategory
|
|
EncryptedStringValue: EncryptedStringValue @fieldCategory
|
|
CurrencyValue: CurrencyValue @fieldCategory
|
|
LongitudeValue: LongitudeValue @fieldCategory
|
|
LatitudeValue: LatitudeValue @fieldCategory
|
|
PicklistValue: PicklistValue @fieldCategory
|
|
MultiPicklistValue: MultiPicklistValue @fieldCategory
|
|
LongValue: LongValue @fieldCategory
|
|
DoubleValue: DoubleValue @fieldCategory
|
|
PercentValue: PercentValue @fieldCategory
|
|
Base64Value: Base64Value @fieldCategory
|
|
JSONValue: JSONValue @fieldCategory
|
|
}
|
|
|
|
# Union types
|
|
union AnyType = BooleanValue | DateValue | DateTimeValue | DoubleValue | StringValue
|
|
|
|
# Common input types
|
|
input ObjectInfoInput {
|
|
apiName: String!
|
|
recordTypeIDs: [ID!]
|
|
fieldNames: [String!]
|
|
}
|
|
|
|
input OrderByClause {
|
|
order: ResultOrder
|
|
nulls: NullOrder
|
|
}
|
|
|
|
input OrderByGeolocationClause {
|
|
distance: DistanceInput
|
|
order: ResultOrder
|
|
nulls: NullOrder
|
|
}
|
|
|
|
input DistanceInput {
|
|
latitude: Latitude!
|
|
longitude: Longitude!
|
|
}
|
|
|
|
input GeolocationInput {
|
|
latitude: Latitude!
|
|
longitude: Longitude!
|
|
radius: Float!
|
|
unit: Unit!
|
|
}
|
|
|
|
input GroupByClause {
|
|
group: Boolean
|
|
}
|
|
|
|
input GroupByDateFunction {
|
|
function: GroupByFunction
|
|
}
|
|
|
|
input NoFunctionAggregateOrderByClause {
|
|
order: ResultsOrder
|
|
nulls: NullsOrder
|
|
}
|
|
|
|
input AggregateOrderByNumberClause {
|
|
function: AggregateOrderByNumberFunction
|
|
order: ResultsOrder
|
|
nulls: NullsOrder
|
|
}
|
|
|
|
input AggregateOrderByStringClause {
|
|
function: AggregateOrderByStringFunction
|
|
order: ResultsOrder
|
|
nulls: NullsOrder
|
|
}
|
|
|
|
input DateRange {
|
|
last_n_days: Int
|
|
next_n_days: Int
|
|
last_n_weeks: Int
|
|
next_n_weeks: Int
|
|
last_n_months: Int
|
|
next_n_months: Int
|
|
last_n_quarters: Int
|
|
next_n_quarters: Int
|
|
last_n_fiscal_quarters: Int
|
|
next_n_fiscal_quarters: Int
|
|
last_n_years: Int
|
|
next_n_years: Int
|
|
last_n_fiscal_years: Int
|
|
next_n_fiscal_years: Int
|
|
n_days_ago: Int
|
|
n_weeks_ago: Int
|
|
n_months_ago: Int
|
|
n_quarters_ago: Int
|
|
n_years_ago: Int
|
|
n_fiscal_quarters_ago: Int
|
|
n_fiscal_years_ago: Int
|
|
}
|
|
|
|
input DateInput {
|
|
value: Date
|
|
literal: DateLiteral
|
|
range: DateRange
|
|
}
|
|
|
|
input DateTimeInput {
|
|
value: DateTime
|
|
literal: DateLiteral
|
|
range: DateRange
|
|
}
|
|
|
|
input DatePrimitiveOperators {
|
|
eq: Date
|
|
ne: Date
|
|
lt: Date
|
|
gt: Date
|
|
lte: Date
|
|
gte: Date
|
|
in: [Date]
|
|
nin: [Date]
|
|
}
|
|
|
|
input DateFunctionInput {
|
|
value: LongOperators
|
|
convertTimezoneValue: LongOperators
|
|
}
|
|
|
|
input DateTimeFunctionInput {
|
|
value: DatePrimitiveOperators
|
|
convertTimezoneValue: DatePrimitiveOperators
|
|
}
|
|
|
|
# Operator input types
|
|
input IntegerOperators {
|
|
eq: Int
|
|
ne: Int
|
|
lt: Int
|
|
gt: Int
|
|
lte: Int
|
|
gte: Int
|
|
in: [Int]
|
|
nin: [Int]
|
|
}
|
|
|
|
input LongOperators {
|
|
eq: Long
|
|
ne: Long
|
|
lt: Long
|
|
gt: Long
|
|
lte: Long
|
|
gte: Long
|
|
in: [Long]
|
|
nin: [Long]
|
|
}
|
|
|
|
input StringOperators {
|
|
eq: String
|
|
ne: String
|
|
like: String
|
|
lt: String
|
|
gt: String
|
|
lte: String
|
|
gte: String
|
|
in: [String]
|
|
nin: [String]
|
|
}
|
|
|
|
input DoubleOperators {
|
|
eq: Double
|
|
ne: Double
|
|
lt: Double
|
|
gt: Double
|
|
lte: Double
|
|
gte: Double
|
|
in: [Double]
|
|
nin: [Double]
|
|
}
|
|
|
|
input PercentOperators {
|
|
eq: Percent
|
|
ne: Percent
|
|
lt: Percent
|
|
gt: Percent
|
|
lte: Percent
|
|
gte: Percent
|
|
in: [Percent]
|
|
nin: [Percent]
|
|
}
|
|
|
|
input LongitudeOperators {
|
|
eq: Longitude
|
|
ne: Longitude
|
|
lt: Longitude
|
|
gt: Longitude
|
|
lte: Longitude
|
|
gte: Longitude
|
|
in: [Longitude]
|
|
nin: [Longitude]
|
|
}
|
|
|
|
input LatitudeOperators {
|
|
eq: Latitude
|
|
ne: Latitude
|
|
lt: Latitude
|
|
gt: Latitude
|
|
lte: Latitude
|
|
gte: Latitude
|
|
in: [Latitude]
|
|
nin: [Latitude]
|
|
}
|
|
|
|
input EmailOperators {
|
|
eq: Email
|
|
ne: Email
|
|
like: Email
|
|
lt: Email
|
|
gt: Email
|
|
lte: Email
|
|
gte: Email
|
|
in: [Email]
|
|
nin: [Email]
|
|
}
|
|
|
|
input TextAreaOperators {
|
|
eq: TextArea
|
|
ne: TextArea
|
|
like: TextArea
|
|
lt: TextArea
|
|
gt: TextArea
|
|
lte: TextArea
|
|
gte: TextArea
|
|
in: [TextArea]
|
|
nin: [TextArea]
|
|
}
|
|
|
|
input LongTextAreaOperators {
|
|
eq: LongTextArea
|
|
ne: LongTextArea
|
|
like: LongTextArea
|
|
lt: LongTextArea
|
|
gt: LongTextArea
|
|
lte: LongTextArea
|
|
gte: LongTextArea
|
|
in: [LongTextArea]
|
|
nin: [LongTextArea]
|
|
}
|
|
|
|
input URLOperators {
|
|
eq: Url
|
|
ne: Url
|
|
like: Url
|
|
lt: Url
|
|
gt: Url
|
|
lte: Url
|
|
gte: Url
|
|
in: [Url]
|
|
nin: [Url]
|
|
}
|
|
|
|
input PhoneNumberOperators {
|
|
eq: PhoneNumber
|
|
ne: PhoneNumber
|
|
like: PhoneNumber
|
|
lt: PhoneNumber
|
|
gt: PhoneNumber
|
|
lte: PhoneNumber
|
|
gte: PhoneNumber
|
|
in: [PhoneNumber]
|
|
nin: [PhoneNumber]
|
|
}
|
|
|
|
input BooleanOperators {
|
|
eq: Boolean
|
|
ne: Boolean
|
|
}
|
|
|
|
input CurrencyOperators {
|
|
eq: Currency
|
|
ne: Currency
|
|
lt: Currency
|
|
gt: Currency
|
|
lte: Currency
|
|
gte: Currency
|
|
in: [Currency]
|
|
nin: [Currency]
|
|
}
|
|
|
|
input TimeOperators {
|
|
eq: Time
|
|
ne: Time
|
|
lt: Time
|
|
gt: Time
|
|
lte: Time
|
|
gte: Time
|
|
in: [Time]
|
|
nin: [Time]
|
|
}
|
|
|
|
input DateOperators {
|
|
eq: DateInput
|
|
ne: DateInput
|
|
lt: DateInput
|
|
gt: DateInput
|
|
lte: DateInput
|
|
gte: DateInput
|
|
in: [DateInput]
|
|
nin: [DateInput]
|
|
DAY_IN_WEEK: DateFunctionInput
|
|
DAY_IN_MONTH: DateFunctionInput
|
|
DAY_IN_YEAR: DateFunctionInput
|
|
WEEK_IN_MONTH: DateFunctionInput
|
|
WEEK_IN_YEAR: DateFunctionInput
|
|
CALENDAR_MONTH: DateFunctionInput
|
|
CALENDAR_QUARTER: DateFunctionInput
|
|
CALENDAR_YEAR: DateFunctionInput
|
|
FISCAL_MONTH: DateFunctionInput
|
|
FISCAL_QUARTER: DateFunctionInput
|
|
FISCAL_YEAR: DateFunctionInput
|
|
}
|
|
|
|
input DateTimeOperators {
|
|
eq: DateTimeInput
|
|
ne: DateTimeInput
|
|
lt: DateTimeInput
|
|
gt: DateTimeInput
|
|
lte: DateTimeInput
|
|
gte: DateTimeInput
|
|
in: [DateTimeInput]
|
|
nin: [DateTimeInput]
|
|
DAY_IN_WEEK: DateFunctionInput
|
|
DAY_IN_MONTH: DateFunctionInput
|
|
DAY_IN_YEAR: DateFunctionInput
|
|
WEEK_IN_MONTH: DateFunctionInput
|
|
WEEK_IN_YEAR: DateFunctionInput
|
|
CALENDAR_MONTH: DateFunctionInput
|
|
CALENDAR_QUARTER: DateFunctionInput
|
|
CALENDAR_YEAR: DateFunctionInput
|
|
FISCAL_MONTH: DateFunctionInput
|
|
FISCAL_QUARTER: DateFunctionInput
|
|
FISCAL_YEAR: DateFunctionInput
|
|
DAY_ONLY: DateTimeFunctionInput
|
|
HOUR_IN_DAY: DateFunctionInput
|
|
}
|
|
|
|
input PicklistOperators {
|
|
eq: Picklist
|
|
ne: Picklist
|
|
in: [Picklist]
|
|
nin: [Picklist]
|
|
like: Picklist
|
|
lt: Picklist
|
|
gt: Picklist
|
|
lte: Picklist
|
|
gte: Picklist
|
|
}
|
|
|
|
input MultiPicklistOperators {
|
|
eq: MultiPicklist
|
|
ne: MultiPicklist
|
|
includes: [MultiPicklist]
|
|
excludes: [MultiPicklist]
|
|
}
|
|
|
|
input GeolocationOperators {
|
|
lt: GeolocationInput
|
|
gt: GeolocationInput
|
|
}
|
|
|
|
input IgnoreRule {
|
|
rule: String!
|
|
teamName: String!
|
|
justification: String!
|
|
}
|
|
|
|
# Common directives
|
|
directive @generic on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT
|
|
directive @fieldCategory on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE
|
|
directive @category(name: String!) on FIELD
|
|
"Specifies the team name for a type"
|
|
directive @team(name: String!) on OBJECT | INPUT_OBJECT | INTERFACE | ENUM | UNION | SCALAR
|
|
"Specifies the validation rules to ignore for this element."
|
|
directive @ignoreRule(rules: [IgnoreRule!]!) on OBJECT
|
|
| INPUT_OBJECT
|
|
| INTERFACE
|
|
| ENUM
|
|
| UNION
|
|
| SCALAR
|
|
| FIELD_DEFINITION
|
|
| INPUT_FIELD_DEFINITION
|
|
| ARGUMENT_DEFINITION
|
|
| ENUM_VALUE
|
|
directive @optional on FIELD
|