@platecms/delta-client 1.11.0 → 1.12.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platecms/delta-client",
3
- "version": "1.11.0",
3
+ "version": "1.12.0",
4
4
  "description": "Utilities and functions to interact with the Delta CMS.",
5
5
  "license": "UNLICENSED",
6
6
  "publishConfig": {
@@ -18,7 +18,7 @@
18
18
  "src/**/*"
19
19
  ],
20
20
  "peerDependencies": {
21
- "@platecms/delta-cast": "1.11.0",
21
+ "@platecms/delta-cast": "1.12.0",
22
22
  "@graphql-typed-document-node/core": "3.2.0",
23
23
  "graphql": "16.11.0",
24
24
  "tslib": "2.8.1",
@@ -145,6 +145,8 @@ export type BuildingBlock = {
145
145
  createdAt: Scalars['DateTime']['output'];
146
146
  experienceComponents: Array<ExperienceComponent>;
147
147
  gridDefinition?: Maybe<GridDefinition>;
148
+ /** Whether the Building Block is a root Building Block. */
149
+ isRoot: Scalars['Boolean']['output'];
148
150
  /** The successor in manual sort order for Building Blocks of the same Theme and Organization. Null if this is the last. */
149
151
  next?: Maybe<BuildingBlock>;
150
152
  organization?: Maybe<Organization>;
@@ -157,6 +159,8 @@ export type BuildingBlock = {
157
159
  prn: Scalars['PRN']['output'];
158
160
  slug: Scalars['String']['output'];
159
161
  theme: Theme;
162
+ /** The PRN of the Theme this Building Block belongs to. */
163
+ themePrn: Scalars['PRN']['output'];
160
164
  title: Scalars['String']['output'];
161
165
  updatedAt: Scalars['DateTime']['output'];
162
166
  };
@@ -171,6 +175,12 @@ export type BuildingBlockExperienceComponentsArgs = {
171
175
  where?: InputMaybe<Array<ExperienceComponentsFilterInput>>;
172
176
  };
173
177
 
178
+ export type BuildingBlockEdge = {
179
+ __typename?: 'BuildingBlockEdge';
180
+ cursor: Scalars['String']['output'];
181
+ node: BuildingBlock;
182
+ };
183
+
174
184
  export type BuildingBlockField = {
175
185
  __typename?: 'BuildingBlockField';
176
186
  buildingBlock: BuildingBlock;
@@ -271,12 +281,21 @@ export type BuildingBlockFieldsFilterInput = {
271
281
  updatedAt?: InputMaybe<Array<DateFilter>>;
272
282
  };
273
283
 
284
+ export type BuildingBlocksConnection = {
285
+ __typename?: 'BuildingBlocksConnection';
286
+ edges: Array<BuildingBlockEdge>;
287
+ pageInfo: PageInfo;
288
+ totalCount: Scalars['Int']['output'];
289
+ };
290
+
274
291
  /** The filter input type for 'BuildingBlocks'. Objects/maps are treated as AND, while arrays are treated as OR. */
275
292
  export type BuildingBlocksFilterInput = {
276
293
  _not?: InputMaybe<Array<BuildingBlocksFilterInput>>;
277
294
  createdAt?: InputMaybe<Array<DateFilter>>;
295
+ isRoot?: InputMaybe<Array<BooleanFilter>>;
278
296
  prn?: InputMaybe<Array<PrnFilter>>;
279
297
  slug?: InputMaybe<Array<StringFilter>>;
298
+ themePrn?: InputMaybe<Array<PrnFilter>>;
280
299
  title?: InputMaybe<Array<StringFilter>>;
281
300
  updatedAt?: InputMaybe<Array<DateFilter>>;
282
301
  };
@@ -288,6 +307,15 @@ export type CasImageContentValueMatch = {
288
307
  stage: Scalars['String']['output'];
289
308
  };
290
309
 
310
+ export type CasPdfContentValueMatch = {
311
+ __typename?: 'CasPdfContentValueMatch';
312
+ matchedOnText: Scalars['Boolean']['output'];
313
+ matchedOnVisual: Scalars['Boolean']['output'];
314
+ similarContentValue: ContentValue;
315
+ textSimilarity: Scalars['Float']['output'];
316
+ visualSimilarity: Scalars['Float']['output'];
317
+ };
318
+
291
319
  export type CasRegexSuggestion = {
292
320
  __typename?: 'CasRegexSuggestion';
293
321
  confidence: Scalars['Float']['output'];
@@ -377,8 +405,12 @@ export type ContentExperience = {
377
405
  channelPrn?: Maybe<Scalars['PRN']['output']>;
378
406
  createdAt: Scalars['DateTime']['output'];
379
407
  experienceComponent: ExperienceComponent;
408
+ /** Whether this Content Experience is published. */
409
+ isPublished: Scalars['Boolean']['output'];
380
410
  /** The issues that this Content Experience is a subject of */
381
411
  issues: Array<Issue>;
412
+ /** When this Content Experience was last published. Null if never published. */
413
+ lastPublished?: Maybe<Scalars['DateTime']['output']>;
382
414
  organization?: Maybe<Organization>;
383
415
  pathPart: PathPart;
384
416
  /** An array of path part PRNs from the root PathPart to the current PathPart. */
@@ -425,6 +457,8 @@ export type ContentExperiencesFilterInput = {
425
457
  _not?: InputMaybe<Array<ContentExperiencesFilterInput>>;
426
458
  channelPrn?: InputMaybe<Array<PrnFilter>>;
427
459
  createdAt?: InputMaybe<Array<DateFilter>>;
460
+ isPublished?: InputMaybe<Array<BooleanFilter>>;
461
+ lastPublished?: InputMaybe<Array<DateFilter>>;
428
462
  prn?: InputMaybe<Array<PrnFilter>>;
429
463
  seoDescription?: InputMaybe<Array<StringFilter>>;
430
464
  seoTitle?: InputMaybe<Array<StringFilter>>;
@@ -501,8 +535,12 @@ export type ContentItem = {
501
535
  /** The display name of the Content Item. This is computed from the Content Type's displayNameTemplate and cached for filtering purposes. It is updated in the background and is not guaranteed to be up to date. A Content Field with multiple Content Values are concatenated with spaces. Missing Content Values will show as '***' and the displayName will be prefixed with DRAFT: */
502
536
  displayName: Scalars['String']['output'];
503
537
  isDraft: Scalars['Boolean']['output'];
538
+ /** Whether this Content Item is published. */
539
+ isPublished: Scalars['Boolean']['output'];
504
540
  /** The issues that this Content Item is a subject of */
505
541
  issues: Array<Issue>;
542
+ /** When this Content Item was last published. Null if never published. */
543
+ lastPublished?: Maybe<Scalars['DateTime']['output']>;
506
544
  organization?: Maybe<Organization>;
507
545
  primaryContentExperience?: Maybe<ContentExperience>;
508
546
  prn: Scalars['PRN']['output'];
@@ -549,6 +587,8 @@ export type ContentItemsFilterInput = {
549
587
  createdAt?: InputMaybe<Array<DateFilter>>;
550
588
  displayName?: InputMaybe<Array<StringFilter>>;
551
589
  isDraft?: InputMaybe<Array<BooleanFilter>>;
590
+ isPublished?: InputMaybe<Array<BooleanFilter>>;
591
+ lastPublished?: InputMaybe<Array<DateFilter>>;
552
592
  prn?: InputMaybe<Array<PrnFilter>>;
553
593
  tagPrns?: InputMaybe<Array<PrnArrayFilter>>;
554
594
  updatedAt?: InputMaybe<Array<DateFilter>>;
@@ -804,6 +844,8 @@ export type CreateBlueprintInput = {
804
844
  isFixed: Scalars['Boolean']['input'];
805
845
  name: Scalars['String']['input'];
806
846
  preview?: InputMaybe<Scalars['PRN']['input']>;
847
+ /** The PRN of the root Building Block to use for the new Blueprint. Uses the Theme's default when not provided. */
848
+ rootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
807
849
  };
808
850
 
809
851
  export type CreateBuildingBlockFieldForBuildingBlockInput = {
@@ -845,7 +887,10 @@ export type CreateBuildingBlockFieldInput = {
845
887
 
846
888
  export type CreateBuildingBlockForThemeInput = {
847
889
  buildingBlockFields: Array<CreateBuildingBlockFieldForBuildingBlockInput>;
848
- gridDefinition?: InputMaybe<CreateGridDefinitionInput>;
890
+ /** Required when isRoot is true. */
891
+ gridDefinition?: InputMaybe<CreateGridDefinitionForBuildingBlockInput>;
892
+ /** Whether the Building Block is to be used as a root Building Block. */
893
+ isRoot?: InputMaybe<Scalars['Boolean']['input']>;
849
894
  /** The PRN of the Building Block that should come immediately after this one in manual sort order within the same Theme and Organization. Null appends to the end. */
850
895
  next?: InputMaybe<Scalars['PRN']['input']>;
851
896
  preview?: InputMaybe<Scalars['PRN']['input']>;
@@ -855,7 +900,10 @@ export type CreateBuildingBlockForThemeInput = {
855
900
 
856
901
  export type CreateBuildingBlockInput = {
857
902
  buildingBlockFields: Array<CreateBuildingBlockFieldForBuildingBlockInput>;
858
- gridDefinition?: InputMaybe<CreateGridDefinitionInput>;
903
+ /** Required when isRoot is true. */
904
+ gridDefinition?: InputMaybe<CreateGridDefinitionForBuildingBlockInput>;
905
+ /** Whether the Building Block is to be used as a root Building Block. */
906
+ isRoot?: InputMaybe<Scalars['Boolean']['input']>;
859
907
  /** The PRN of the Building Block that should come immediately after this one in manual sort order within the same Theme and Organization. Null appends to the end. */
860
908
  next?: InputMaybe<Scalars['PRN']['input']>;
861
909
  preview?: InputMaybe<Scalars['PRN']['input']>;
@@ -872,11 +920,13 @@ export type CreateChannelInput = {
872
920
  };
873
921
 
874
922
  export type CreateContentExperienceWithExistingPathPartInput = {
875
- /** The PRN of the Blueprint to create a Content Experience from. If not provided, an empty Content Experience will be created. */
923
+ /** The PRN of the Blueprint to create a Content Experience from. If not provided, a new Content Experience will be created from the given root Building Block. */
876
924
  fromBlueprint?: InputMaybe<Scalars['PRN']['input']>;
877
925
  pathPart: Scalars['PRN']['input'];
878
926
  preview?: InputMaybe<Scalars['PRN']['input']>;
879
927
  primaryContentItem?: InputMaybe<Scalars['PRN']['input']>;
928
+ /** The PRN of the root Building Block to use for the new Content Experience. Uses the Theme's default when not provided. */
929
+ rootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
880
930
  /** The SEO description for the Content Experience. */
881
931
  seoDescription?: InputMaybe<Scalars['String']['input']>;
882
932
  /** The SEO title for the Content Experience. */
@@ -889,10 +939,12 @@ export type CreateContentExperienceWithExistingPathPartInput = {
889
939
  export type CreateContentExperienceWithNewPathPartInput = {
890
940
  createPathPartFromParent?: InputMaybe<CreatePathPartFromParentInput>;
891
941
  createPathPartFromPath?: InputMaybe<CreatePathPartFromPathInput>;
892
- /** The PRN of the Blueprint to create a Content Experience from. If not provided, an empty Content Experience will be created. */
942
+ /** The PRN of the Blueprint to create a Content Experience from. If not provided, a new Content Experience will be created from the given root Building Block. */
893
943
  fromBlueprint?: InputMaybe<Scalars['PRN']['input']>;
894
944
  preview?: InputMaybe<Scalars['PRN']['input']>;
895
945
  primaryContentItem?: InputMaybe<Scalars['PRN']['input']>;
946
+ /** The PRN of the root Building Block to use for the new Content Experience. Uses the Theme's default when not provided. */
947
+ rootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
896
948
  /** The SEO description for the Content Experience. */
897
949
  seoDescription?: InputMaybe<Scalars['String']['input']>;
898
950
  /** The SEO title for the Content Experience. */
@@ -992,6 +1044,7 @@ export type CreateExperienceComponentInput = {
992
1044
  buildingBlockFieldFulfillments: Array<CreateBuildingBlockFieldFulfillmentForExperienceComponentInput>;
993
1045
  /** Must be set if the Building Block has a Grid Definition. */
994
1046
  grid?: InputMaybe<CreateGridInput>;
1047
+ /** The Grid Placement for this Experience Component to be placed in. This is a shortcut for creating a Grid Placement with the Experience Component's PRN and the Grid's PRN. */
995
1048
  gridPlacement?: InputMaybe<CreateGridPlacementForExperienceComponentInput>;
996
1049
  /** Whether the Experience Component is a draft. */
997
1050
  isDraft: Scalars['Boolean']['input'];
@@ -1003,6 +1056,7 @@ export type CreateGlobalExperienceComponentInput = {
1003
1056
  buildingBlockFieldFulfillments: Array<CreateBuildingBlockFieldFulfillmentForExperienceComponentInput>;
1004
1057
  /** Must be set if the Building Block has a Grid Definition. */
1005
1058
  grid?: InputMaybe<CreateGridInput>;
1059
+ /** The Grid Placement for this Experience Component to be placed in. This is a shortcut for creating a Grid Placement with the Experience Component's PRN and the Grid's PRN. */
1006
1060
  gridPlacement?: InputMaybe<CreateGridPlacementForExperienceComponentInput>;
1007
1061
  /** Whether the Experience Component is a draft. */
1008
1062
  isDraft: Scalars['Boolean']['input'];
@@ -1010,8 +1064,12 @@ export type CreateGlobalExperienceComponentInput = {
1010
1064
  preview?: InputMaybe<Scalars['PRN']['input']>;
1011
1065
  };
1012
1066
 
1067
+ export type CreateGridDefinitionForBuildingBlockInput = {
1068
+ maxRows: Scalars['Int']['input'];
1069
+ };
1070
+
1013
1071
  export type CreateGridDefinitionInput = {
1014
- /** The PRN of the Building Block to add the Grid Definition to. Leave empty if creating a Grid Definition while creating a Building Block */
1072
+ /** The PRN of the Building Block to add the Grid Definition to. */
1015
1073
  buildingBlock?: InputMaybe<Scalars['PRN']['input']>;
1016
1074
  maxRows: Scalars['Int']['input'];
1017
1075
  };
@@ -1053,6 +1111,8 @@ export type CreateOrganizationInput = {
1053
1111
  };
1054
1112
 
1055
1113
  export type CreatePathPartFromParentInput = {
1114
+ /** The PRN of the default root Building Block to use for new Content Experiences under this Path Part. */
1115
+ defaultRootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
1056
1116
  /** The PRN of the parent Path Part. */
1057
1117
  parent: Scalars['String']['input'];
1058
1118
  /** The slug of the Path Part. This is unique among siblings. */
@@ -1062,6 +1122,8 @@ export type CreatePathPartFromParentInput = {
1062
1122
  export type CreatePathPartFromPathInput = {
1063
1123
  /** The Channel of the new Path Part. */
1064
1124
  channel: Scalars['PRN']['input'];
1125
+ /** The PRN of the default root Building Block to use for new Content Experiences under this Path Part. */
1126
+ defaultRootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
1065
1127
  /** The path of the Path Part. This is unique per Channel. Must contain a leading '/'. If the path contains slugs that do not exist, it will recursively create them. */
1066
1128
  path: Scalars['String']['input'];
1067
1129
  };
@@ -1095,6 +1157,11 @@ export type CreateThemeInput = {
1095
1157
  repositoryUrl: Scalars['String']['input'];
1096
1158
  };
1097
1159
 
1160
+ export type CreateUserMetadataInput = {
1161
+ key: UserMetadataKey;
1162
+ value: Scalars['JSON']['input'];
1163
+ };
1164
+
1098
1165
  export type CreateValueTypeContentValidationRuleInput = {
1099
1166
  settings: ValueTypeContentValidationRuleSettingsInput;
1100
1167
  targetField: Scalars['String']['input'];
@@ -1486,7 +1553,7 @@ export type Mutation = {
1486
1553
  archiveIssues: Array<Issue>;
1487
1554
  /** Bootstrap the first PlateMaintainer on a fresh deployment using a shared secret. */
1488
1555
  bootstrapPlateMaintainer: Scalars['Boolean']['output'];
1489
- /** Set the image hash for an asset in the Platform Service database. */
1556
+ /** Analyze asset and store the results in the database. */
1490
1557
  casAnalyzeAsset: SuccessResponse;
1491
1558
  /** Confirm an Asset upload. Unconfirmed Assets are deleted. */
1492
1559
  confirmAssetUpload: Array<Asset>;
@@ -1567,6 +1634,8 @@ export type Mutation = {
1567
1634
  createTag: Array<Tag>;
1568
1635
  /** Creates one or many new Themes. */
1569
1636
  createTheme: Array<Theme>;
1637
+ /** Creates UserMetadata for the current User. */
1638
+ createUserMetadata: Array<UserMetadata>;
1570
1639
  createValueTypeContentValidationRule: ContentValidationRule;
1571
1640
  /** Declines an Invitation for the current User (e.g. the logged in user) */
1572
1641
  declineInvitation: Invitation;
@@ -1587,6 +1656,8 @@ export type Mutation = {
1587
1656
  * See the wiki for an example: https://plate.atlassian.net/wiki/spaces/DW/pages/1488945153/Asset+Manager#Uploading-Assets
1588
1657
  */
1589
1658
  generateAssetUploadUrl: Array<GeneratedUploadUrl>;
1659
+ /** Publishes an entity. Throws NotFoundException when no entity could be found. */
1660
+ publish: Array<Scalars['Boolean']['output']>;
1590
1661
  /** Regenerate one or many new ApiTokens. */
1591
1662
  regenerateApiToken: Array<CreateApiTokenResponse>;
1592
1663
  removeAccessibleContentItem: Array<Scalars['JSON']['output']>;
@@ -1707,12 +1778,16 @@ export type Mutation = {
1707
1778
  * Throws NotFoundException when no Theme could be found.
1708
1779
  */
1709
1780
  removeTheme: Array<Theme>;
1781
+ /** Removes UserMetadata for the current User. */
1782
+ removeUserMetadata: Array<UserMetadata>;
1710
1783
  /** Starts the creation of the a given seed for the current organization. This removes existing content and creates new content */
1711
1784
  runSeeder: Scalars['Boolean']['output'];
1712
1785
  /** Synchronizes the current state of the given Blueprint to all of its instances. */
1713
1786
  syncBlueprint: Scalars['Boolean']['output'];
1714
1787
  /** Syncs the visibility of a Tag to its descendants. */
1715
1788
  syncTagVisibilityToDescendants: Array<Scalars['Boolean']['output']>;
1789
+ /** Unpublishes an entity. Throws NotFoundException when no entity could be found. */
1790
+ unpublish: Array<Scalars['Boolean']['output']>;
1716
1791
  updateAccessibleContentItem: Array<Scalars['JSON']['output']>;
1717
1792
  updateAllowedValuesContentValidationRule: ContentValidationRule;
1718
1793
  /**
@@ -1813,11 +1888,15 @@ export type Mutation = {
1813
1888
  * Throws NotFoundException when no Tag could be found.
1814
1889
  */
1815
1890
  updateTag: Array<Tag>;
1891
+ /** Update the tag co-occurrence counts based on the previous and current tag set of a Content Item or Content Experience. Added and removed tags will be identified and the corresponding co-occurrence counts are updated. */
1892
+ updateTagCoOccurrenceCounts: SuccessResponse;
1816
1893
  /**
1817
1894
  * Updates one or many Themes with new values.
1818
1895
  * Throws NotFoundException when no Theme could be found.
1819
1896
  */
1820
1897
  updateTheme: Array<Theme>;
1898
+ /** Updates UserMetadata for the current User. */
1899
+ updateUserMetadata: Array<UserMetadata>;
1821
1900
  updateValueTypeContentValidationRule: ContentValidationRule;
1822
1901
  };
1823
1902
 
@@ -2017,6 +2096,11 @@ export type MutationCreateThemeArgs = {
2017
2096
  };
2018
2097
 
2019
2098
 
2099
+ export type MutationCreateUserMetadataArgs = {
2100
+ input: Array<CreateUserMetadataInput>;
2101
+ };
2102
+
2103
+
2020
2104
  export type MutationCreateValueTypeContentValidationRuleArgs = {
2021
2105
  input: CreateValueTypeContentValidationRuleInput;
2022
2106
  };
@@ -2047,6 +2131,11 @@ export type MutationGenerateAssetUploadUrlArgs = {
2047
2131
  };
2048
2132
 
2049
2133
 
2134
+ export type MutationPublishArgs = {
2135
+ prns: Array<Scalars['PRN']['input']>;
2136
+ };
2137
+
2138
+
2050
2139
  export type MutationRegenerateApiTokenArgs = {
2051
2140
  prn: Array<Scalars['PRN']['input']>;
2052
2141
  };
@@ -2172,6 +2261,11 @@ export type MutationRemoveThemeArgs = {
2172
2261
  };
2173
2262
 
2174
2263
 
2264
+ export type MutationRemoveUserMetadataArgs = {
2265
+ key: Array<UserMetadataKey>;
2266
+ };
2267
+
2268
+
2175
2269
  export type MutationRunSeederArgs = {
2176
2270
  seedType: SeedType;
2177
2271
  withContent: Scalars['Boolean']['input'];
@@ -2188,6 +2282,11 @@ export type MutationSyncTagVisibilityToDescendantsArgs = {
2188
2282
  };
2189
2283
 
2190
2284
 
2285
+ export type MutationUnpublishArgs = {
2286
+ prn: Array<Scalars['PRN']['input']>;
2287
+ };
2288
+
2289
+
2191
2290
  export type MutationUpdateAccessibleContentItemArgs = {
2192
2291
  input: Array<UpdateAccessibleContentItemInput>;
2193
2292
  };
@@ -2323,11 +2422,22 @@ export type MutationUpdateTagArgs = {
2323
2422
  };
2324
2423
 
2325
2424
 
2425
+ export type MutationUpdateTagCoOccurrenceCountsArgs = {
2426
+ currentTags?: InputMaybe<Array<Scalars['PRN']['input']>>;
2427
+ previousTags?: InputMaybe<Array<Scalars['PRN']['input']>>;
2428
+ };
2429
+
2430
+
2326
2431
  export type MutationUpdateThemeArgs = {
2327
2432
  input: Array<UpdateThemeInput>;
2328
2433
  };
2329
2434
 
2330
2435
 
2436
+ export type MutationUpdateUserMetadataArgs = {
2437
+ input: Array<UpdateUserMetadataInput>;
2438
+ };
2439
+
2440
+
2331
2441
  export type MutationUpdateValueTypeContentValidationRuleArgs = {
2332
2442
  input: UpdateValueTypeContentValidationRuleInput;
2333
2443
  };
@@ -2412,6 +2522,8 @@ export type PathPart = {
2412
2522
  contentExperience?: Maybe<ContentExperience>;
2413
2523
  contentExperiencePrn?: Maybe<Scalars['PRN']['output']>;
2414
2524
  createdAt: Scalars['DateTime']['output'];
2525
+ /** The default root Building Block to use for new Content Experiences under this Path Part. */
2526
+ defaultRootBuildingBlock?: Maybe<BuildingBlock>;
2415
2527
  /** Whether this Path Part has a Content Experience. */
2416
2528
  hasContentExperience: Scalars['Boolean']['output'];
2417
2529
  organization?: Maybe<Organization>;
@@ -2467,6 +2579,11 @@ export type PatternFlag = {
2467
2579
  name: Scalars['String']['input'];
2468
2580
  };
2469
2581
 
2582
+ export type PdfSimilarityDetectionConfig = {
2583
+ textSimilarityThreshold?: InputMaybe<Scalars['Float']['input']>;
2584
+ visualSimilarityThreshold?: InputMaybe<Scalars['Float']['input']>;
2585
+ };
2586
+
2470
2587
  export type PrnArrayFilter = {
2471
2588
  /** Contains */
2472
2589
  _contains?: InputMaybe<Array<Scalars['PRN']['input']>>;
@@ -2530,6 +2647,8 @@ export type Query = {
2530
2647
  buildingBlockFieldFulfillments: BuildingBlockFieldFulfillmentsConnection;
2531
2648
  /** Orders and paginates all BuildingBlockFields. */
2532
2649
  buildingBlockFields: BuildingBlockFieldsConnection;
2650
+ /** Orders and paginates all BuildingBlocks. */
2651
+ buildingBlocks: BuildingBlocksConnection;
2533
2652
  /** True when no Plate maintainers exist yet and bootstrap is allowed. */
2534
2653
  canBootstrapMaintainer: Scalars['Boolean']['output'];
2535
2654
  /** Detect CAST matches with database reusable entries and return an array with the suggestions, Ordered by occurrence in the text. Matches are based on plaintext. */
@@ -2571,6 +2690,10 @@ export type Query = {
2571
2690
  findSimilarImageContentValues: Array<CasImageContentValueMatch>;
2572
2691
  /** Get similar image Content Values within the database from an asset PRN input. Use similarity score based on image hashes to find potential duplicates. */
2573
2692
  findSimilarImageContentValuesFromAsset: Array<CasImageContentValueMatch>;
2693
+ /** Get similar PDF Content Values. Thresholds configurable via config parameter. */
2694
+ findSimilarPdfContentValues: Array<CasPdfContentValueMatch>;
2695
+ /** Get similar PDF Content Values from an asset PRN input. Thresholds configurable via config parameter. */
2696
+ findSimilarPdfContentValuesFromAsset: Array<CasPdfContentValueMatch>;
2574
2697
  /** Finds one or many Grids by PRN. Throws NotFoundException when no Grid could be found. */
2575
2698
  grid: Array<Grid>;
2576
2699
  /** Finds one or many GridDefinitions by PRN. Throws NotFoundException when no GridDefinition could be found. */
@@ -2616,6 +2739,10 @@ export type Query = {
2616
2739
  theme: Array<Theme>;
2617
2740
  /** Orders and paginates all Themes. */
2618
2741
  themes: ThemesConnection;
2742
+ /** Finds a single UserMetadata entry for the current User by key. */
2743
+ userMetadataForCurrentUser: UserMetadata;
2744
+ /** Finds all UserMetadata for the current User. */
2745
+ userMetadatasForCurrentUser: Array<UserMetadata>;
2619
2746
  };
2620
2747
 
2621
2748
 
@@ -2682,6 +2809,13 @@ export type QueryBuildingBlockFieldsArgs = {
2682
2809
  };
2683
2810
 
2684
2811
 
2812
+ export type QueryBuildingBlocksArgs = {
2813
+ orderBy?: InputMaybe<OrderOptionsInput>;
2814
+ paginate: PaginationOptionsInput;
2815
+ where?: InputMaybe<Array<BuildingBlocksFilterInput>>;
2816
+ };
2817
+
2818
+
2685
2819
  export type QueryCastSuggestionsArgs = {
2686
2820
  config?: InputMaybe<DatabaseTextMatchConfig>;
2687
2821
  inputCast: Scalars['CAST']['input'];
@@ -2800,6 +2934,20 @@ export type QueryFindSimilarImageContentValuesFromAssetArgs = {
2800
2934
  };
2801
2935
 
2802
2936
 
2937
+ export type QueryFindSimilarPdfContentValuesArgs = {
2938
+ config?: InputMaybe<PdfSimilarityDetectionConfig>;
2939
+ contentValuePrnString: Scalars['String']['input'];
2940
+ limit?: InputMaybe<Scalars['Int']['input']>;
2941
+ };
2942
+
2943
+
2944
+ export type QueryFindSimilarPdfContentValuesFromAssetArgs = {
2945
+ assetPrnString: Scalars['String']['input'];
2946
+ config?: InputMaybe<PdfSimilarityDetectionConfig>;
2947
+ limit?: InputMaybe<Scalars['Int']['input']>;
2948
+ };
2949
+
2950
+
2803
2951
  export type QueryGridArgs = {
2804
2952
  prn: Array<Scalars['PRN']['input']>;
2805
2953
  };
@@ -2908,6 +3056,16 @@ export type QueryThemesArgs = {
2908
3056
  where?: InputMaybe<Array<ThemesFilterInput>>;
2909
3057
  };
2910
3058
 
3059
+
3060
+ export type QueryUserMetadataForCurrentUserArgs = {
3061
+ key: UserMetadataKey;
3062
+ };
3063
+
3064
+
3065
+ export type QueryUserMetadatasForCurrentUserArgs = {
3066
+ where?: InputMaybe<Array<UserMetadataFilterInput>>;
3067
+ };
3068
+
2911
3069
  export type RegexExtractionConfig = {
2912
3070
  patterns?: InputMaybe<Array<PatternFlag>>;
2913
3071
  threshold?: InputMaybe<Scalars['Float']['input']>;
@@ -2955,6 +3113,8 @@ export type RemoveBuildingBlockResponse = {
2955
3113
  createdAt: Scalars['DateTime']['output'];
2956
3114
  experienceComponents: Array<ExperienceComponent>;
2957
3115
  gridDefinition?: Maybe<GridDefinition>;
3116
+ /** Whether the Building Block is a root Building Block. */
3117
+ isRoot: Scalars['Boolean']['output'];
2958
3118
  /** The successor in manual sort order for Building Blocks of the same Theme and Organization. Null if this is the last. */
2959
3119
  next?: Maybe<BuildingBlock>;
2960
3120
  organization?: Maybe<Organization>;
@@ -2965,6 +3125,8 @@ export type RemoveBuildingBlockResponse = {
2965
3125
  prn: Scalars['PRN']['output'];
2966
3126
  slug: Scalars['String']['output'];
2967
3127
  theme: Theme;
3128
+ /** The PRN of the Theme this Building Block belongs to. */
3129
+ themePrn: Scalars['PRN']['output'];
2968
3130
  title: Scalars['String']['output'];
2969
3131
  updatedAt: Scalars['DateTime']['output'];
2970
3132
  };
@@ -2981,8 +3143,12 @@ export type RemoveContentExperienceResponse = {
2981
3143
  channelPrn?: Maybe<Scalars['PRN']['output']>;
2982
3144
  createdAt: Scalars['DateTime']['output'];
2983
3145
  experienceComponent: ExperienceComponent;
3146
+ /** Whether this Content Experience is published. */
3147
+ isPublished: Scalars['Boolean']['output'];
2984
3148
  /** The issues that this Content Experience is a subject of */
2985
3149
  issues: Array<Issue>;
3150
+ /** When this Content Experience was last published. Null if never published. */
3151
+ lastPublished?: Maybe<Scalars['DateTime']['output']>;
2986
3152
  organization?: Maybe<Organization>;
2987
3153
  pathPart: PathPart;
2988
3154
  primaryContentItem?: Maybe<ContentItem>;
@@ -3191,10 +3357,6 @@ export type SuccessResponse = {
3191
3357
  status: Scalars['String']['output'];
3192
3358
  };
3193
3359
 
3194
- export enum SuggestionMethod {
3195
- Count = 'COUNT'
3196
- }
3197
-
3198
3360
  export type Tag = {
3199
3361
  __typename?: 'Tag';
3200
3362
  /** The amount of direct children. */
@@ -3246,7 +3408,6 @@ export type TagEdge = {
3246
3408
 
3247
3409
  export type TagSuggestionsConfig = {
3248
3410
  exclude?: InputMaybe<Array<Scalars['String']['input']>>;
3249
- suggestionMethod?: InputMaybe<SuggestionMethod>;
3250
3411
  threshold?: InputMaybe<Scalars['Float']['input']>;
3251
3412
  };
3252
3413
 
@@ -3286,6 +3447,7 @@ export type Theme = {
3286
3447
  buildingBlocks: Array<BuildingBlock>;
3287
3448
  channels: Array<Channel>;
3288
3449
  createdAt: Scalars['DateTime']['output'];
3450
+ defaultRootBuildingBlock?: Maybe<BuildingBlock>;
3289
3451
  name: Scalars['String']['output'];
3290
3452
  organization?: Maybe<Organization>;
3291
3453
  prn: Scalars['PRN']['output'];
@@ -3407,6 +3569,8 @@ export type UpdateContentExperienceInput = {
3407
3569
  preview?: InputMaybe<Scalars['PRN']['input']>;
3408
3570
  primaryContentItem?: InputMaybe<Scalars['PRN']['input']>;
3409
3571
  prn: Scalars['PRN']['input'];
3572
+ /** The PRN of the root Building Block to use for the Content Experience. */
3573
+ rootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
3410
3574
  /** The SEO description for the Content Experience. */
3411
3575
  seoDescription?: InputMaybe<Scalars['String']['input']>;
3412
3576
  /** The SEO title for the Content Experience. */
@@ -3525,6 +3689,8 @@ export type UpdatePathPartByPathInput = {
3525
3689
 
3526
3690
  /** Input to update a Path Part. Cannot update the root Path Part (slug ""). */
3527
3691
  export type UpdatePathPartInput = {
3692
+ /** The PRN of the default root Building Block to use for new Content Experiences under this Path Part. */
3693
+ defaultRootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
3528
3694
  parent?: InputMaybe<Scalars['String']['input']>;
3529
3695
  prn: Scalars['PRN']['input'];
3530
3696
  /** The slug of the Path Part. This is unique among siblings. */
@@ -3555,11 +3721,18 @@ export type UpdateTagInput = {
3555
3721
  };
3556
3722
 
3557
3723
  export type UpdateThemeInput = {
3724
+ /** The PRN of the default root Building Block to use for new Content Experiences. */
3725
+ defaultRootBuildingBlock?: InputMaybe<Scalars['PRN']['input']>;
3558
3726
  name?: InputMaybe<Scalars['String']['input']>;
3559
3727
  prn: Scalars['PRN']['input'];
3560
3728
  repositoryUrl?: InputMaybe<Scalars['String']['input']>;
3561
3729
  };
3562
3730
 
3731
+ export type UpdateUserMetadataInput = {
3732
+ key: UserMetadataKey;
3733
+ value: Scalars['JSON']['input'];
3734
+ };
3735
+
3563
3736
  export type UpdateValueTypeContentValidationRuleInput = {
3564
3737
  prn: Scalars['PRN']['input'];
3565
3738
  settings: ValueTypeContentValidationRuleSettingsInput;
@@ -3572,10 +3745,33 @@ export type User = Subject & {
3572
3745
  isPlateMaintainer: Scalars['Boolean']['output'];
3573
3746
  /** Can have values 'en' or 'nl'. */
3574
3747
  language: Scalars['String']['output'];
3748
+ metadata: Array<UserMetadata>;
3575
3749
  name: Name;
3576
3750
  roleAssignments: Array<RoleAssignment>;
3577
3751
  };
3578
3752
 
3753
+ export type UserMetadata = {
3754
+ __typename?: 'UserMetadata';
3755
+ createdAt: Scalars['DateTime']['output'];
3756
+ key: UserMetadataKey;
3757
+ updatedAt: Scalars['DateTime']['output'];
3758
+ user: User;
3759
+ userId: Scalars['String']['output'];
3760
+ value: Scalars['JSON']['output'];
3761
+ };
3762
+
3763
+ /** The filter input type for 'UserMetadata'. Objects/maps are treated as AND, while arrays are treated as OR. */
3764
+ export type UserMetadataFilterInput = {
3765
+ _not?: InputMaybe<Array<UserMetadataFilterInput>>;
3766
+ createdAt?: InputMaybe<Array<DateFilter>>;
3767
+ key?: InputMaybe<Array<StringFilter>>;
3768
+ updatedAt?: InputMaybe<Array<DateFilter>>;
3769
+ };
3770
+
3771
+ export enum UserMetadataKey {
3772
+ Onboarding = 'ONBOARDING'
3773
+ }
3774
+
3579
3775
  export type ValueTypeContentValidationRuleSettings = {
3580
3776
  __typename?: 'ValueTypeContentValidationRuleSettings';
3581
3777
  allowedTypes: Array<ContentValueTypeNames>;