@salesforce/webapp-template-feature-react-authentication-experimental 1.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/LICENSE.txt +82 -0
  2. package/README.md +77 -0
  3. package/dist/.a4drules/build-validation.md +81 -0
  4. package/dist/.a4drules/code-quality.md +150 -0
  5. package/dist/.a4drules/graphql/tools/knowledge/lds-explore-graphql-schema.md +227 -0
  6. package/dist/.a4drules/graphql/tools/knowledge/lds-generate-graphql-mutationquery.md +211 -0
  7. package/dist/.a4drules/graphql/tools/knowledge/lds-generate-graphql-readquery.md +185 -0
  8. package/dist/.a4drules/graphql/tools/knowledge/lds-guide-graphql.md +205 -0
  9. package/dist/.a4drules/graphql/tools/schemas/shared.graphqls +1150 -0
  10. package/dist/.a4drules/graphql.md +98 -0
  11. package/dist/.a4drules/images.md +13 -0
  12. package/dist/.a4drules/react.md +361 -0
  13. package/dist/.a4drules/react_image_processing.md +45 -0
  14. package/dist/.a4drules/typescript.md +224 -0
  15. package/dist/.forceignore +15 -0
  16. package/dist/.husky/pre-commit +4 -0
  17. package/dist/.prettierignore +11 -0
  18. package/dist/.prettierrc +17 -0
  19. package/dist/CHANGELOG.md +19 -0
  20. package/dist/README.md +18 -0
  21. package/dist/config/project-scratch-def.json +13 -0
  22. package/dist/force-app/main/default/webapplications/feature-react-authentication/.prettierignore +9 -0
  23. package/dist/force-app/main/default/webapplications/feature-react-authentication/.prettierrc +11 -0
  24. package/dist/force-app/main/default/webapplications/feature-react-authentication/eslint.config.js +113 -0
  25. package/dist/force-app/main/default/webapplications/feature-react-authentication/feature-react-authentication.webapplication-meta.xml +7 -0
  26. package/dist/force-app/main/default/webapplications/feature-react-authentication/index.html +13 -0
  27. package/dist/force-app/main/default/webapplications/feature-react-authentication/package.json +42 -0
  28. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/api/graphql-operations-types.ts +127 -0
  29. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/api/utils/query/highRevenueAccountsQuery.graphql +29 -0
  30. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/app.tsx +16 -0
  31. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/appLayout.tsx +9 -0
  32. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/icons/book.svg +3 -0
  33. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/icons/copy.svg +4 -0
  34. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/icons/rocket.svg +3 -0
  35. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/icons/star.svg +3 -0
  36. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/images/codey-1.png +0 -0
  37. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/images/codey-2.png +0 -0
  38. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/images/codey-3.png +0 -0
  39. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/assets/images/vibe-codey.svg +194 -0
  40. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/alerts/status-alert.tsx +45 -0
  41. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/auth/authentication-route.tsx +21 -0
  42. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/auth/private-route.tsx +36 -0
  43. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/footers/footer-link.tsx +36 -0
  44. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/forms/auth-form.tsx +79 -0
  45. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/forms/submit-button.tsx +49 -0
  46. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/layout/card-layout.tsx +23 -0
  47. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/layout/centered-page-layout.tsx +73 -0
  48. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/layout/loading-page.tsx +46 -0
  49. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/alert.tsx +65 -0
  50. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/button.tsx +56 -0
  51. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/card.tsx +77 -0
  52. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/field.tsx +111 -0
  53. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/index.ts +71 -0
  54. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/input.tsx +19 -0
  55. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/label.tsx +19 -0
  56. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/pagination.tsx +99 -0
  57. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/select.tsx +151 -0
  58. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/skeleton.tsx +7 -0
  59. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/spinner.tsx +21 -0
  60. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/table.tsx +114 -0
  61. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/components/ui/tabs.tsx +115 -0
  62. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/context/AuthContext.tsx +83 -0
  63. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/hooks/form.tsx +116 -0
  64. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/lib/utils.ts +6 -0
  65. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/About.tsx +12 -0
  66. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/ChangePassword.tsx +105 -0
  67. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/ForgotPassword.tsx +67 -0
  68. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/Home.tsx +12 -0
  69. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/Login.tsx +84 -0
  70. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/NotFound.tsx +18 -0
  71. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/Profile.tsx +146 -0
  72. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/Register.tsx +117 -0
  73. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/pages/ResetPassword.tsx +101 -0
  74. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/routes.tsx +77 -0
  75. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/styles/global.css +94 -0
  76. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/utils/authenticationConfig.ts +52 -0
  77. package/dist/force-app/main/default/webapplications/feature-react-authentication/src/utils/helpers.ts +161 -0
  78. package/dist/force-app/main/default/webapplications/feature-react-authentication/tsconfig.json +36 -0
  79. package/dist/force-app/main/default/webapplications/feature-react-authentication/tsconfig.node.json +13 -0
  80. package/dist/force-app/main/default/webapplications/feature-react-authentication/vite-env.d.ts +1 -0
  81. package/dist/force-app/main/default/webapplications/feature-react-authentication/vite.config.ts +82 -0
  82. package/dist/force-app/main/default/webapplications/feature-react-authentication/vitest-env.d.ts +2 -0
  83. package/dist/force-app/main/default/webapplications/feature-react-authentication/vitest.config.ts +11 -0
  84. package/dist/force-app/main/default/webapplications/feature-react-authentication/vitest.setup.ts +1 -0
  85. package/dist/force-app/main/default/webapplications/feature-react-authentication/webapplication.json +7 -0
  86. package/dist/jest.config.js +6 -0
  87. package/dist/package.json +37 -0
  88. package/dist/scripts/apex/hello.apex +10 -0
  89. package/dist/scripts/soql/account.soql +6 -0
  90. package/dist/sfdx-project.json +12 -0
  91. package/package.json +31 -0
@@ -0,0 +1,1150 @@
1
+ # Common scalar types
2
+ scalar BigDecimal
3
+ scalar Byte
4
+ scalar Char
5
+ scalar BigInteger
6
+ scalar Short
7
+ scalar String
8
+ scalar Currency
9
+ scalar Longitude
10
+ scalar Float
11
+ scalar PhoneNumber
12
+ scalar Email
13
+ scalar TextArea
14
+ scalar Latitude
15
+ scalar RichTextArea
16
+ scalar EncryptedString
17
+ scalar Long
18
+ scalar JSON
19
+ scalar Time
20
+ scalar Percent
21
+ scalar LongTextArea
22
+ scalar DateTime
23
+ scalar ID
24
+ scalar Boolean
25
+ scalar MultiPicklist
26
+ scalar Base64
27
+ scalar Url
28
+ scalar Picklist
29
+ scalar Double
30
+ scalar Int
31
+ scalar IdOrRef
32
+ scalar Date
33
+
34
+ # Common enums
35
+ enum GroupByFunction {
36
+ DAY_IN_WEEK
37
+ DAY_IN_MONTH
38
+ DAY_IN_YEAR
39
+ WEEK_IN_MONTH
40
+ WEEK_IN_YEAR
41
+ CALENDAR_MONTH
42
+ CALENDAR_QUARTER
43
+ CALENDAR_YEAR
44
+ FISCAL_MONTH
45
+ FISCAL_QUARTER
46
+ FISCAL_YEAR
47
+ DAY_ONLY
48
+ HOUR_IN_DAY
49
+ }
50
+
51
+ enum DataType {
52
+ STRING
53
+ TEXTAREA
54
+ PHONE
55
+ EMAIL
56
+ URL
57
+ ENCRYPTEDSTRING
58
+ BOOLEAN
59
+ CURRENCY
60
+ INT
61
+ LONG
62
+ DOUBLE
63
+ PERCENT
64
+ DATETIME
65
+ TIME
66
+ DATE
67
+ REFERENCE
68
+ PICKLIST
69
+ MULTIPICKLIST
70
+ ADDRESS
71
+ LOCATION
72
+ BASE64
73
+ COMPLEXVALUE
74
+ COMBOBOX
75
+ JSON
76
+ JUNCTIONIDLIST
77
+ ANYTYPE
78
+ }
79
+
80
+ enum AggregateOrderByNumberFunction {
81
+ AVG
82
+ COUNT
83
+ COUNT_DISTINCT
84
+ MAX
85
+ MIN
86
+ SUM
87
+ }
88
+
89
+ enum AggregateOrderByStringFunction {
90
+ COUNT
91
+ COUNT_DISTINCT
92
+ MAX
93
+ MIN
94
+ }
95
+
96
+ enum GroupByType {
97
+ GROUP_BY
98
+ ROLLUP
99
+ CUBE
100
+ }
101
+
102
+ enum ResultsOrder {
103
+ ASC
104
+ DESC
105
+ }
106
+
107
+ enum ResultOrder {
108
+ ASC
109
+ DESC
110
+ }
111
+
112
+ enum NullOrder {
113
+ FIRST
114
+ LAST
115
+ }
116
+
117
+ enum NullsOrder {
118
+ FIRST
119
+ LAST
120
+ }
121
+
122
+ enum DateLiteral {
123
+ YESTERDAY
124
+ TODAY
125
+ TOMORROW
126
+ LAST_WEEK
127
+ THIS_WEEK
128
+ NEXT_WEEK
129
+ LAST_MONTH
130
+ THIS_MONTH
131
+ NEXT_MONTH
132
+ LAST_90_DAYS
133
+ NEXT_90_DAYS
134
+ LAST_QUARTER
135
+ THIS_QUARTER
136
+ NEXT_QUARTER
137
+ LAST_FISCAL_QUARTER
138
+ THIS_FISCAL_QUARTER
139
+ NEXT_FISCAL_QUARTER
140
+ LAST_YEAR
141
+ THIS_YEAR
142
+ NEXT_YEAR
143
+ LAST_FISCAL_YEAR
144
+ THIS_FISCAL_YEAR
145
+ NEXT_FISCAL_YEAR
146
+ }
147
+
148
+ enum Unit {
149
+ MI
150
+ KM
151
+ }
152
+
153
+ enum SObject__FieldType {
154
+ ALL
155
+ STANDARD
156
+ CUSTOM
157
+ }
158
+
159
+ enum FieldExtraTypeInfo {
160
+ IMAGE_URL
161
+ EXTERNAL_LOOKUP
162
+ INDIRECT_LOOKUP
163
+ PERSONNAME
164
+ SWITCHABLE_PERSONNAME
165
+ PLAINTEXTAREA
166
+ RICHTEXTAREA
167
+ }
168
+
169
+ enum RecordScope @generic {
170
+ }
171
+
172
+ # Common interfaces
173
+ interface FieldValue {
174
+ displayValue: String
175
+ }
176
+
177
+ interface Field {
178
+ ApiName: String!
179
+ calculated: Boolean!
180
+ compound: Boolean!
181
+ compoundComponentName: String
182
+ compoundFieldName: String
183
+ controllerName: String
184
+ controllingFields: [String]!
185
+ createable: Boolean!
186
+ custom: Boolean!
187
+ dataType: DataType
188
+ extraTypeInfo: FieldExtraTypeInfo
189
+ filterable: Boolean!
190
+ filteredLookupInfo: FilteredLookupInfo
191
+ highScaleNumber: Boolean!
192
+ htmlFormatted: Boolean!
193
+ inlineHelpText: String
194
+ label: String
195
+ nameField: Boolean!
196
+ polymorphicForeignKey: Boolean!
197
+ precision: Int
198
+ reference: Boolean!
199
+ referenceTargetField: String
200
+ referenceToInfos: [ReferenceToInfo]!
201
+ relationshipName: String
202
+ required: Boolean!
203
+ scale: Int
204
+ searchPrefilterable: Boolean
205
+ sortable: Boolean!
206
+ updateable: Boolean!
207
+ }
208
+
209
+ interface Record {
210
+ Id: ID!
211
+ ApiName: String!
212
+ WeakEtag: Long!
213
+ DisplayValue: String
214
+ LastModifiedById: IDValue
215
+ LastModifiedDate: DateTimeValue
216
+ SystemModstamp: DateTimeValue
217
+ RecordTypeId(fallback: Boolean): IDValue
218
+ }
219
+
220
+ # Common types
221
+ type PageInfo {
222
+ hasNextPage: Boolean!
223
+ hasPreviousPage: Boolean!
224
+ startCursor: String
225
+ endCursor: String
226
+ }
227
+
228
+ type SObject__Field {
229
+ name: String!
230
+ value: String
231
+ }
232
+
233
+ type ReferenceToInfo {
234
+ ApiName: String!
235
+ nameFields: [String]!
236
+ objectInfo: ObjectInfo
237
+ }
238
+
239
+ type FilteredLookupInfo {
240
+ controllingFields: [String]!
241
+ dependent: Boolean!
242
+ optionalFilter: Boolean!
243
+ }
244
+
245
+ type DependentField {
246
+ controllingField: String!
247
+ dependentFields: [String]!
248
+ }
249
+
250
+ type RecordTypeInfo {
251
+ available: Boolean!
252
+ defaultRecordTypeMapping: Boolean!
253
+ master: Boolean!
254
+ name: String
255
+ recordTypeId: ID
256
+ }
257
+
258
+ type ThemeInfo {
259
+ color: String
260
+ iconUrl: String
261
+ }
262
+
263
+ type ChildRelationship {
264
+ childObjectApiName: String!
265
+ fieldName: String
266
+ junctionIdListNames: [String]!
267
+ junctionReferenceTo: [String]!
268
+ relationshipName: String
269
+ objectInfo: ObjectInfo
270
+ }
271
+
272
+ type ObjectInfo {
273
+ ApiName: String!
274
+ childRelationships: [ChildRelationship]!
275
+ createable: Boolean!
276
+ custom: Boolean!
277
+ defaultRecordTypeId: ID
278
+ deletable: Boolean!
279
+ dependentFields: [DependentField]!
280
+ feedEnabled: Boolean!
281
+ fields: [Field]!
282
+ keyPrefix: String
283
+ label: String
284
+ labelPlural: String
285
+ layoutable: Boolean!
286
+ mruEnabled: Boolean!
287
+ nameFields: [String]!
288
+ queryable: Boolean!
289
+ recordTypeInfos: [RecordTypeInfo]!
290
+ searchable: Boolean!
291
+ themeInfo: ThemeInfo
292
+ updateable: Boolean!
293
+ locale: String
294
+ }
295
+
296
+ type StandardField implements Field {
297
+ ApiName: String!
298
+ calculated: Boolean!
299
+ compound: Boolean!
300
+ compoundComponentName: String
301
+ compoundFieldName: String
302
+ controllerName: String
303
+ controllingFields: [String]!
304
+ createable: Boolean!
305
+ custom: Boolean!
306
+ dataType: DataType
307
+ extraTypeInfo: FieldExtraTypeInfo
308
+ filterable: Boolean!
309
+ filteredLookupInfo: FilteredLookupInfo
310
+ highScaleNumber: Boolean!
311
+ htmlFormatted: Boolean!
312
+ inlineHelpText: String
313
+ label: String
314
+ nameField: Boolean!
315
+ polymorphicForeignKey: Boolean!
316
+ precision: Int
317
+ reference: Boolean!
318
+ referenceTargetField: String
319
+ referenceToInfos: [ReferenceToInfo]!
320
+ relationshipName: String
321
+ required: Boolean!
322
+ scale: Int
323
+ searchPrefilterable: Boolean
324
+ sortable: Boolean!
325
+ updateable: Boolean!
326
+ }
327
+
328
+ type PicklistField implements Field {
329
+ ApiName: String!
330
+ calculated: Boolean!
331
+ compound: Boolean!
332
+ compoundComponentName: String
333
+ compoundFieldName: String
334
+ controllerName: String
335
+ controllingFields: [String]!
336
+ createable: Boolean!
337
+ custom: Boolean!
338
+ dataType: DataType
339
+ extraTypeInfo: FieldExtraTypeInfo
340
+ filterable: Boolean!
341
+ filteredLookupInfo: FilteredLookupInfo
342
+ highScaleNumber: Boolean!
343
+ htmlFormatted: Boolean!
344
+ inlineHelpText: String
345
+ label: String
346
+ nameField: Boolean!
347
+ polymorphicForeignKey: Boolean!
348
+ picklistValuesByRecordTypeIDs: [PicklistValueByRecordTypeIDs]
349
+ precision: Int
350
+ reference: Boolean!
351
+ referenceTargetField: String
352
+ referenceToInfos: [ReferenceToInfo]!
353
+ relationshipName: String
354
+ required: Boolean!
355
+ scale: Int
356
+ searchPrefilterable: Boolean
357
+ sortable: Boolean!
358
+ updateable: Boolean!
359
+ }
360
+
361
+ type PicklistValueByRecordTypeIDs {
362
+ recordTypeID: String!
363
+ controllerValues: [ControllerValues!]
364
+ picklistValues: [PicklistValues!]
365
+ defaultValue: PicklistValues
366
+ }
367
+
368
+ type ControllerValues {
369
+ value: String
370
+ index: Int
371
+ }
372
+
373
+ type PicklistValues {
374
+ value: String
375
+ label: String
376
+ validFor: [Int]
377
+ attributes: PicklistAttributes
378
+ }
379
+
380
+ type PicklistAttributes {
381
+ picklistAtrributesValueType: String
382
+ connectDisplayName: String
383
+ internalName: String
384
+ }
385
+
386
+ # Value types implementing FieldValue
387
+ type IntValue implements FieldValue {
388
+ value: Int
389
+ displayValue: String
390
+ format: String
391
+ }
392
+
393
+ type StringValue implements FieldValue {
394
+ value: String
395
+ displayValue: String
396
+ label: String
397
+ }
398
+
399
+ type BooleanValue implements FieldValue {
400
+ value: Boolean
401
+ displayValue: String
402
+ }
403
+
404
+ type IDValue implements FieldValue {
405
+ value: ID
406
+ displayValue: String
407
+ }
408
+
409
+ type DateTimeValue implements FieldValue {
410
+ value: DateTime
411
+ displayValue: String
412
+ format: String
413
+ }
414
+
415
+ type TimeValue implements FieldValue {
416
+ value: Time
417
+ displayValue: String
418
+ format: String
419
+ }
420
+
421
+ type DateValue implements FieldValue {
422
+ value: Date
423
+ displayValue: String
424
+ format: String
425
+ }
426
+
427
+ type TextAreaValue implements FieldValue {
428
+ value: TextArea
429
+ displayValue: String
430
+ label: String
431
+ }
432
+
433
+ type LongTextAreaValue implements FieldValue {
434
+ value: LongTextArea
435
+ displayValue: String
436
+ label: String
437
+ }
438
+
439
+ type RichTextAreaValue implements FieldValue {
440
+ value: RichTextArea
441
+ displayValue: String
442
+ label: String
443
+ }
444
+
445
+ type PhoneNumberValue implements FieldValue {
446
+ value: PhoneNumber
447
+ displayValue: String
448
+ }
449
+
450
+ type EmailValue implements FieldValue {
451
+ value: Email
452
+ displayValue: String
453
+ }
454
+
455
+ type UrlValue implements FieldValue {
456
+ value: Url
457
+ displayValue: String
458
+ }
459
+
460
+ type EncryptedStringValue implements FieldValue {
461
+ value: EncryptedString
462
+ displayValue: String
463
+ }
464
+
465
+ type CurrencyValue implements FieldValue {
466
+ value: Currency
467
+ displayValue: String
468
+ format: String
469
+ convertCurrency: Currency
470
+ }
471
+
472
+ type LongitudeValue implements FieldValue {
473
+ value: Longitude
474
+ displayValue: String
475
+ }
476
+
477
+ type LatitudeValue implements FieldValue {
478
+ value: Latitude
479
+ displayValue: String
480
+ }
481
+
482
+ type PicklistValue implements FieldValue {
483
+ value: Picklist
484
+ displayValue: String
485
+ label: String
486
+ }
487
+
488
+ type MultiPicklistValue implements FieldValue {
489
+ value: MultiPicklist
490
+ displayValue: String
491
+ label: String
492
+ }
493
+
494
+ type LongValue implements FieldValue {
495
+ value: Long
496
+ displayValue: String
497
+ format: String
498
+ }
499
+
500
+ type DoubleValue implements FieldValue {
501
+ value: Double
502
+ displayValue: String
503
+ format: String
504
+ }
505
+
506
+ type PercentValue implements FieldValue {
507
+ value: Percent
508
+ displayValue: String
509
+ format: String
510
+ }
511
+
512
+ type Base64Value implements FieldValue {
513
+ value: Base64
514
+ displayValue: String
515
+ }
516
+
517
+ type JSONValue implements FieldValue {
518
+ value: JSON
519
+ displayValue: String
520
+ }
521
+
522
+ # Aggregate types implementing FieldValue
523
+ type BooleanAggregate implements FieldValue {
524
+ value: Boolean
525
+ displayValue: String
526
+ grouping: IntValue
527
+ }
528
+
529
+ type CurrencyAggregate implements FieldValue {
530
+ value: Currency
531
+ displayValue: String
532
+ avg: DoubleValue
533
+ count: LongValue
534
+ countDistinct: LongValue
535
+ format: String
536
+ max: CurrencyValue
537
+ min: CurrencyValue
538
+ sum: CurrencyValue
539
+ }
540
+
541
+ type DateAggregate implements FieldValue {
542
+ value: Date
543
+ displayValue: String
544
+ calendarMonth: DateFunctionAggregation
545
+ calendarQuarter: DateFunctionAggregation
546
+ calendarYear: DateFunctionAggregation
547
+ count: LongValue
548
+ countDistinct: LongValue
549
+ dayInMonth: DateFunctionAggregation
550
+ dayInWeek: DateFunctionAggregation
551
+ dayInYear: DateFunctionAggregation
552
+ fiscalMonth: DateFunctionAggregation
553
+ fiscalQuarter: DateFunctionAggregation
554
+ fiscalYear: DateFunctionAggregation
555
+ format: String
556
+ grouping: IntValue
557
+ max: DateValue
558
+ min: DateValue
559
+ weekInMonth: DateFunctionAggregation
560
+ weekInYear: DateFunctionAggregation
561
+ }
562
+
563
+ type DateTimeAggregate implements FieldValue {
564
+ value: DateTime
565
+ displayValue: String
566
+ calendarMonth: DateFunctionAggregation
567
+ calendarQuarter: DateFunctionAggregation
568
+ calendarYear: DateFunctionAggregation
569
+ count: LongValue
570
+ countDistinct: LongValue
571
+ dayInMonth: DateFunctionAggregation
572
+ dayInWeek: DateFunctionAggregation
573
+ dayInYear: DateFunctionAggregation
574
+ dayOnly: DateOnlyAggregation
575
+ fiscalMonth: DateFunctionAggregation
576
+ fiscalQuarter: DateFunctionAggregation
577
+ fiscalYear: DateFunctionAggregation
578
+ format: String
579
+ hourInDay: DateFunctionAggregation
580
+ max: DateTimeValue
581
+ min: DateTimeValue
582
+ weekInMonth: DateFunctionAggregation
583
+ weekInYear: DateFunctionAggregation
584
+ }
585
+
586
+ type DoubleAggregate implements FieldValue {
587
+ value: Double
588
+ displayValue: String
589
+ avg: DoubleValue
590
+ count: LongValue
591
+ countDistinct: LongValue
592
+ format: String
593
+ max: DoubleValue
594
+ min: DoubleValue
595
+ sum: DoubleValue
596
+ }
597
+
598
+ type EmailAggregate implements FieldValue {
599
+ value: Email
600
+ displayValue: String
601
+ count: LongValue
602
+ countDistinct: LongValue
603
+ grouping: IntValue
604
+ max: EmailValue
605
+ min: EmailValue
606
+ }
607
+
608
+ type IDAggregate implements FieldValue {
609
+ value: ID
610
+ displayValue: String
611
+ count: LongValue
612
+ countDistinct: LongValue
613
+ grouping: IntValue
614
+ max: IDValue
615
+ min: IDValue
616
+ }
617
+
618
+ type IntAggregate implements FieldValue {
619
+ value: Int
620
+ displayValue: String
621
+ avg: DoubleValue
622
+ count: LongValue
623
+ countDistinct: LongValue
624
+ format: String
625
+ grouping: IntValue
626
+ max: IntValue
627
+ min: IntValue
628
+ sum: LongValue
629
+ }
630
+
631
+ type LatitudeAggregate implements FieldValue {
632
+ value: Latitude
633
+ displayValue: String
634
+ avg: DoubleValue
635
+ count: LongValue
636
+ countDistinct: LongValue
637
+ max: LatitudeValue
638
+ min: LatitudeValue
639
+ sum: DoubleValue
640
+ }
641
+
642
+ type LongitudeAggregate implements FieldValue {
643
+ value: Longitude
644
+ displayValue: String
645
+ avg: DoubleValue
646
+ count: LongValue
647
+ countDistinct: LongValue
648
+ max: LongitudeValue
649
+ min: LongitudeValue
650
+ sum: DoubleValue
651
+ }
652
+
653
+ type LongAggregate implements FieldValue {
654
+ value: Long
655
+ displayValue: String
656
+ avg: DoubleValue
657
+ count: LongValue
658
+ countDistinct: LongValue
659
+ format: String
660
+ grouping: IntValue
661
+ max: LongValue
662
+ min: LongValue
663
+ sum: LongValue
664
+ }
665
+
666
+ type PercentAggregate implements FieldValue {
667
+ value: Percent
668
+ displayValue: String
669
+ avg: DoubleValue
670
+ count: LongValue
671
+ countDistinct: LongValue
672
+ format: String
673
+ max: PercentValue
674
+ min: PercentValue
675
+ sum: PercentValue
676
+ }
677
+
678
+ type PhoneNumberAggregate implements FieldValue {
679
+ value: PhoneNumber
680
+ displayValue: String
681
+ count: LongValue
682
+ countDistinct: LongValue
683
+ grouping: IntValue
684
+ max: PhoneNumberValue
685
+ min: PhoneNumberValue
686
+ }
687
+
688
+ type PicklistAggregate implements FieldValue {
689
+ value: Picklist
690
+ displayValue: String
691
+ count: LongValue
692
+ countDistinct: LongValue
693
+ grouping: IntValue
694
+ label: String
695
+ max: PicklistValue
696
+ min: PicklistValue
697
+ }
698
+
699
+ type StringAggregate implements FieldValue {
700
+ value: String
701
+ displayValue: String
702
+ count: LongValue
703
+ countDistinct: LongValue
704
+ grouping: IntValue
705
+ label: String
706
+ max: StringValue
707
+ min: StringValue
708
+ }
709
+
710
+ type TextAreaAggregate implements FieldValue {
711
+ value: TextArea
712
+ displayValue: String
713
+ count: LongValue
714
+ countDistinct: LongValue
715
+ grouping: IntValue
716
+ label: String
717
+ max: TextAreaValue
718
+ min: TextAreaValue
719
+ }
720
+
721
+ type TimeAggregate implements FieldValue {
722
+ value: Time
723
+ displayValue: String
724
+ format: String
725
+ hourInDay: DateFunctionAggregation
726
+ }
727
+
728
+ type UrlAggregate implements FieldValue {
729
+ value: Url
730
+ displayValue: String
731
+ count: LongValue
732
+ countDistinct: LongValue
733
+ grouping: IntValue
734
+ max: UrlValue
735
+ min: UrlValue
736
+ }
737
+
738
+ # Helper types for aggregations
739
+ type DateFunctionAggregation {
740
+ value: Long
741
+ format: String
742
+ }
743
+
744
+ type DateOnlyAggregation {
745
+ value: Date
746
+ format: String
747
+ }
748
+
749
+ type CompoundField @generic {
750
+ IntValue: IntValue @fieldCategory
751
+ StringValue: StringValue @fieldCategory
752
+ BooleanValue: BooleanValue @fieldCategory
753
+ IDValue: IDValue @fieldCategory
754
+ DateTimeValue: DateTimeValue @fieldCategory
755
+ TimeValue: TimeValue @fieldCategory
756
+ DateValue: DateValue @fieldCategory
757
+ TextAreaValue: TextAreaValue @fieldCategory
758
+ LongTextAreaValue: LongTextAreaValue @fieldCategory
759
+ RichTextAreaValue: RichTextAreaValue @fieldCategory
760
+ PhoneNumberValue: PhoneNumberValue @fieldCategory
761
+ EmailValue: EmailValue @fieldCategory
762
+ UrlValue: UrlValue @fieldCategory
763
+ EncryptedStringValue: EncryptedStringValue @fieldCategory
764
+ CurrencyValue: CurrencyValue @fieldCategory
765
+ LongitudeValue: LongitudeValue @fieldCategory
766
+ LatitudeValue: LatitudeValue @fieldCategory
767
+ PicklistValue: PicklistValue @fieldCategory
768
+ MultiPicklistValue: MultiPicklistValue @fieldCategory
769
+ LongValue: LongValue @fieldCategory
770
+ DoubleValue: DoubleValue @fieldCategory
771
+ PercentValue: PercentValue @fieldCategory
772
+ Base64Value: Base64Value @fieldCategory
773
+ JSONValue: JSONValue @fieldCategory
774
+ }
775
+
776
+ # Union types
777
+ union AnyType = BooleanValue | DateValue | DateTimeValue | DoubleValue | StringValue
778
+
779
+ # Common input types
780
+ input ObjectInfoInput {
781
+ apiName: String!
782
+ recordTypeIDs: [ID!]
783
+ fieldNames: [String!]
784
+ }
785
+
786
+ input OrderByClause {
787
+ order: ResultOrder
788
+ nulls: NullOrder
789
+ }
790
+
791
+ input OrderByGeolocationClause {
792
+ distance: DistanceInput
793
+ order: ResultOrder
794
+ nulls: NullOrder
795
+ }
796
+
797
+ input DistanceInput {
798
+ latitude: Latitude!
799
+ longitude: Longitude!
800
+ }
801
+
802
+ input GeolocationInput {
803
+ latitude: Latitude!
804
+ longitude: Longitude!
805
+ radius: Float!
806
+ unit: Unit!
807
+ }
808
+
809
+ input GroupByClause {
810
+ group: Boolean
811
+ }
812
+
813
+ input GroupByDateFunction {
814
+ function: GroupByFunction
815
+ }
816
+
817
+ input NoFunctionAggregateOrderByClause {
818
+ order: ResultsOrder
819
+ nulls: NullsOrder
820
+ }
821
+
822
+ input AggregateOrderByNumberClause {
823
+ function: AggregateOrderByNumberFunction
824
+ order: ResultsOrder
825
+ nulls: NullsOrder
826
+ }
827
+
828
+ input AggregateOrderByStringClause {
829
+ function: AggregateOrderByStringFunction
830
+ order: ResultsOrder
831
+ nulls: NullsOrder
832
+ }
833
+
834
+ input DateRange {
835
+ last_n_days: Int
836
+ next_n_days: Int
837
+ last_n_weeks: Int
838
+ next_n_weeks: Int
839
+ last_n_months: Int
840
+ next_n_months: Int
841
+ last_n_quarters: Int
842
+ next_n_quarters: Int
843
+ last_n_fiscal_quarters: Int
844
+ next_n_fiscal_quarters: Int
845
+ last_n_years: Int
846
+ next_n_years: Int
847
+ last_n_fiscal_years: Int
848
+ next_n_fiscal_years: Int
849
+ n_days_ago: Int
850
+ n_weeks_ago: Int
851
+ n_months_ago: Int
852
+ n_quarters_ago: Int
853
+ n_years_ago: Int
854
+ n_fiscal_quarters_ago: Int
855
+ n_fiscal_years_ago: Int
856
+ }
857
+
858
+ input DateInput {
859
+ value: Date
860
+ literal: DateLiteral
861
+ range: DateRange
862
+ }
863
+
864
+ input DateTimeInput {
865
+ value: DateTime
866
+ literal: DateLiteral
867
+ range: DateRange
868
+ }
869
+
870
+ input DatePrimitiveOperators {
871
+ eq: Date
872
+ ne: Date
873
+ lt: Date
874
+ gt: Date
875
+ lte: Date
876
+ gte: Date
877
+ in: [Date]
878
+ nin: [Date]
879
+ }
880
+
881
+ input DateFunctionInput {
882
+ value: LongOperators
883
+ convertTimezoneValue: LongOperators
884
+ }
885
+
886
+ input DateTimeFunctionInput {
887
+ value: DatePrimitiveOperators
888
+ convertTimezoneValue: DatePrimitiveOperators
889
+ }
890
+
891
+ # Operator input types
892
+ input IntegerOperators {
893
+ eq: Int
894
+ ne: Int
895
+ lt: Int
896
+ gt: Int
897
+ lte: Int
898
+ gte: Int
899
+ in: [Int]
900
+ nin: [Int]
901
+ }
902
+
903
+ input LongOperators {
904
+ eq: Long
905
+ ne: Long
906
+ lt: Long
907
+ gt: Long
908
+ lte: Long
909
+ gte: Long
910
+ in: [Long]
911
+ nin: [Long]
912
+ }
913
+
914
+ input StringOperators {
915
+ eq: String
916
+ ne: String
917
+ like: String
918
+ lt: String
919
+ gt: String
920
+ lte: String
921
+ gte: String
922
+ in: [String]
923
+ nin: [String]
924
+ }
925
+
926
+ input DoubleOperators {
927
+ eq: Double
928
+ ne: Double
929
+ lt: Double
930
+ gt: Double
931
+ lte: Double
932
+ gte: Double
933
+ in: [Double]
934
+ nin: [Double]
935
+ }
936
+
937
+ input PercentOperators {
938
+ eq: Percent
939
+ ne: Percent
940
+ lt: Percent
941
+ gt: Percent
942
+ lte: Percent
943
+ gte: Percent
944
+ in: [Percent]
945
+ nin: [Percent]
946
+ }
947
+
948
+ input LongitudeOperators {
949
+ eq: Longitude
950
+ ne: Longitude
951
+ lt: Longitude
952
+ gt: Longitude
953
+ lte: Longitude
954
+ gte: Longitude
955
+ in: [Longitude]
956
+ nin: [Longitude]
957
+ }
958
+
959
+ input LatitudeOperators {
960
+ eq: Latitude
961
+ ne: Latitude
962
+ lt: Latitude
963
+ gt: Latitude
964
+ lte: Latitude
965
+ gte: Latitude
966
+ in: [Latitude]
967
+ nin: [Latitude]
968
+ }
969
+
970
+ input EmailOperators {
971
+ eq: Email
972
+ ne: Email
973
+ like: Email
974
+ lt: Email
975
+ gt: Email
976
+ lte: Email
977
+ gte: Email
978
+ in: [Email]
979
+ nin: [Email]
980
+ }
981
+
982
+ input TextAreaOperators {
983
+ eq: TextArea
984
+ ne: TextArea
985
+ like: TextArea
986
+ lt: TextArea
987
+ gt: TextArea
988
+ lte: TextArea
989
+ gte: TextArea
990
+ in: [TextArea]
991
+ nin: [TextArea]
992
+ }
993
+
994
+ input LongTextAreaOperators {
995
+ eq: LongTextArea
996
+ ne: LongTextArea
997
+ like: LongTextArea
998
+ lt: LongTextArea
999
+ gt: LongTextArea
1000
+ lte: LongTextArea
1001
+ gte: LongTextArea
1002
+ in: [LongTextArea]
1003
+ nin: [LongTextArea]
1004
+ }
1005
+
1006
+ input URLOperators {
1007
+ eq: Url
1008
+ ne: Url
1009
+ like: Url
1010
+ lt: Url
1011
+ gt: Url
1012
+ lte: Url
1013
+ gte: Url
1014
+ in: [Url]
1015
+ nin: [Url]
1016
+ }
1017
+
1018
+ input PhoneNumberOperators {
1019
+ eq: PhoneNumber
1020
+ ne: PhoneNumber
1021
+ like: PhoneNumber
1022
+ lt: PhoneNumber
1023
+ gt: PhoneNumber
1024
+ lte: PhoneNumber
1025
+ gte: PhoneNumber
1026
+ in: [PhoneNumber]
1027
+ nin: [PhoneNumber]
1028
+ }
1029
+
1030
+ input BooleanOperators {
1031
+ eq: Boolean
1032
+ ne: Boolean
1033
+ }
1034
+
1035
+ input CurrencyOperators {
1036
+ eq: Currency
1037
+ ne: Currency
1038
+ lt: Currency
1039
+ gt: Currency
1040
+ lte: Currency
1041
+ gte: Currency
1042
+ in: [Currency]
1043
+ nin: [Currency]
1044
+ }
1045
+
1046
+ input TimeOperators {
1047
+ eq: Time
1048
+ ne: Time
1049
+ lt: Time
1050
+ gt: Time
1051
+ lte: Time
1052
+ gte: Time
1053
+ in: [Time]
1054
+ nin: [Time]
1055
+ }
1056
+
1057
+ input DateOperators {
1058
+ eq: DateInput
1059
+ ne: DateInput
1060
+ lt: DateInput
1061
+ gt: DateInput
1062
+ lte: DateInput
1063
+ gte: DateInput
1064
+ in: [DateInput]
1065
+ nin: [DateInput]
1066
+ DAY_IN_WEEK: DateFunctionInput
1067
+ DAY_IN_MONTH: DateFunctionInput
1068
+ DAY_IN_YEAR: DateFunctionInput
1069
+ WEEK_IN_MONTH: DateFunctionInput
1070
+ WEEK_IN_YEAR: DateFunctionInput
1071
+ CALENDAR_MONTH: DateFunctionInput
1072
+ CALENDAR_QUARTER: DateFunctionInput
1073
+ CALENDAR_YEAR: DateFunctionInput
1074
+ FISCAL_MONTH: DateFunctionInput
1075
+ FISCAL_QUARTER: DateFunctionInput
1076
+ FISCAL_YEAR: DateFunctionInput
1077
+ }
1078
+
1079
+ input DateTimeOperators {
1080
+ eq: DateTimeInput
1081
+ ne: DateTimeInput
1082
+ lt: DateTimeInput
1083
+ gt: DateTimeInput
1084
+ lte: DateTimeInput
1085
+ gte: DateTimeInput
1086
+ in: [DateTimeInput]
1087
+ nin: [DateTimeInput]
1088
+ DAY_IN_WEEK: DateFunctionInput
1089
+ DAY_IN_MONTH: DateFunctionInput
1090
+ DAY_IN_YEAR: DateFunctionInput
1091
+ WEEK_IN_MONTH: DateFunctionInput
1092
+ WEEK_IN_YEAR: DateFunctionInput
1093
+ CALENDAR_MONTH: DateFunctionInput
1094
+ CALENDAR_QUARTER: DateFunctionInput
1095
+ CALENDAR_YEAR: DateFunctionInput
1096
+ FISCAL_MONTH: DateFunctionInput
1097
+ FISCAL_QUARTER: DateFunctionInput
1098
+ FISCAL_YEAR: DateFunctionInput
1099
+ DAY_ONLY: DateTimeFunctionInput
1100
+ HOUR_IN_DAY: DateFunctionInput
1101
+ }
1102
+
1103
+ input PicklistOperators {
1104
+ eq: Picklist
1105
+ ne: Picklist
1106
+ in: [Picklist]
1107
+ nin: [Picklist]
1108
+ like: Picklist
1109
+ lt: Picklist
1110
+ gt: Picklist
1111
+ lte: Picklist
1112
+ gte: Picklist
1113
+ }
1114
+
1115
+ input MultiPicklistOperators {
1116
+ eq: MultiPicklist
1117
+ ne: MultiPicklist
1118
+ includes: [MultiPicklist]
1119
+ excludes: [MultiPicklist]
1120
+ }
1121
+
1122
+ input GeolocationOperators {
1123
+ lt: GeolocationInput
1124
+ gt: GeolocationInput
1125
+ }
1126
+
1127
+ input IgnoreRule {
1128
+ rule: String!
1129
+ teamName: String!
1130
+ justification: String!
1131
+ }
1132
+
1133
+ # Common directives
1134
+ directive @generic on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT
1135
+ directive @fieldCategory on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE
1136
+ directive @category(name: String!) on FIELD
1137
+ "Specifies the team name for a type"
1138
+ directive @team(name: String!) on OBJECT | INPUT_OBJECT | INTERFACE | ENUM | UNION | SCALAR
1139
+ "Specifies the validation rules to ignore for this element."
1140
+ directive @ignoreRule(rules: [IgnoreRule!]!) on OBJECT
1141
+ | INPUT_OBJECT
1142
+ | INTERFACE
1143
+ | ENUM
1144
+ | UNION
1145
+ | SCALAR
1146
+ | FIELD_DEFINITION
1147
+ | INPUT_FIELD_DEFINITION
1148
+ | ARGUMENT_DEFINITION
1149
+ | ENUM_VALUE
1150
+ directive @optional on FIELD