@relyio/cli 0.5.0 → 0.7.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.
Files changed (2) hide show
  1. package/dist/index.js +174 -226
  2. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -920,10 +920,10 @@ var init_exit_codes = __esm({
920
920
  }
921
921
  });
922
922
 
923
- // ../../platform/api-contract/dist/chunk-HN42AOXD.js
923
+ // ../../platform/api-contract/dist/chunk-PVEJCUTN.js
924
924
  var ERROR_CODES;
925
- var init_chunk_HN42AOXD = __esm({
926
- "../../platform/api-contract/dist/chunk-HN42AOXD.js"() {
925
+ var init_chunk_PVEJCUTN = __esm({
926
+ "../../platform/api-contract/dist/chunk-PVEJCUTN.js"() {
927
927
  ERROR_CODES = {
928
928
  MISSING_API_KEY: { status: 401 },
929
929
  INVALID_API_KEY: { status: 401 },
@@ -1002,6 +1002,25 @@ var init_chunk_HN42AOXD = __esm({
1002
1002
  * 2026-09-27 (REL-1316).
1003
1003
  */
1004
1004
  ORGANIZATION_DELETE_BLOCKED: { status: 409 },
1005
+ /**
1006
+ * Added by REL-1730, the fifth name added to §4's approved seventeen.
1007
+ *
1008
+ * A Clerk session is valid the moment someone signs up, and the User's row
1009
+ * in Manage is written later, when Clerk's `user.created` webhook arrives.
1010
+ * In between, Manage refused every request with `INVALID_API_KEY` — the code
1011
+ * a forged token gets — so only the message told "wait" from "sign in
1012
+ * again", and a new invitee landing after sign-up met exactly that window.
1013
+ * It passes Decision 3's test: a client reading it keeps the session and
1014
+ * asks again after `Retry-After`, which no other code tells it. 503 with
1015
+ * `Retry-After` because it is a wait on a dependency rather than a refused
1016
+ * credential (`INV-API-INDETERMINATE-HAS-A-STATUS`); `SERVICE_INDETERMINATE`
1017
+ * was not reused because a client cannot tell from it that the credential
1018
+ * is good and the wait is bounded by a webhook.
1019
+ *
1020
+ * A **customer-facing naming decision**, approved by the product owner on
1021
+ * 2026-10-01 (REL-1721).
1022
+ */
1023
+ USER_NOT_PROVISIONED: { status: 503 },
1005
1024
  RESOURCE_NOT_FOUND: { status: 404 },
1006
1025
  RESOURCE_CONFLICT: { status: 409 },
1007
1026
  RESOURCE_EXPIRED: { status: 410 },
@@ -1048,7 +1067,7 @@ function readError(body) {
1048
1067
  var ContractBodyError;
1049
1068
  var init_client2 = __esm({
1050
1069
  "../../platform/api-contract/dist/client/index.js"() {
1051
- init_chunk_HN42AOXD();
1070
+ init_chunk_PVEJCUTN();
1052
1071
  ContractBodyError = class extends Error {
1053
1072
  body;
1054
1073
  constructor(message, body) {
@@ -1486,8 +1505,8 @@ function isBuiltInRole(roleId) {
1486
1505
  return BUILT_IN_ROLES.includes(roleId);
1487
1506
  }
1488
1507
  var FallbackChainSchema, BaseFieldConfigSchema, ShortTextConfigSchema, LongTextConfigSchema, RichTextConfigSchema, EmailConfigSchema, UrlConfigSchema, SlugConfigSchema, IntegerConfigSchema, DecimalConfigSchema, BooleanConfigSchema, EnumConfigSchema, DateConfigSchema, DateTimeConfigSchema, ReferenceStrengthSchema, OnTargetDeleteSchema, ReferenceTargetSchema, ReferenceConfigSchema, AI_INSTRUCTIONS_MAX_CHARS, AIConfigSchema, FieldAIConfigSchema, AssetAIConfigSchema, BaseUIConfigSchema, TextUIOptionsSchema, LongTextUIOptionsSchema, RichTextUIOptionsSchema, SlugUIOptionsSchema, NumericUIOptionsSchema, BooleanUIOptionsSchema, EnumUIOptionsSchema, DateUIOptionsSchema, DateTimeUIOptionsSchema, ReferenceUIOptionsSchema, TagsUIOptionsSchema, ListUIOptionsSchema, ComponentUIOptionsSchema, UIConfigSchema, RuleConditionSchema, RuleConditionsSchema, VisibilityRuleSchema, RequirementRuleSchema, ValidationRuleSchema, ReadOnlyRuleSchema, FieldRuleSchema, LocalizationConfigSchema, FieldSchema, TagsConfigSchema, ListConfigSchema, BUILT_IN_ROLES, ROLE_ACTIONS, RoleActionSchema, BuiltInRoleSchema, roleIdPattern, RoleIdSchema, accessTagPattern, AccessTagSchema, AccessTagsArraySchema, ResourcePermissionSchema, FieldVisibilitySchema, RolePermissionsSchema, RoleSchema, RolesArraySchema, FILTER_OPERATORS, FilterOperatorSchema, TEXT_OPERATORS, LONG_TEXT_OPERATORS, NUMERIC_OPERATORS, BOOLEAN_OPERATORS, ENUM_OPERATORS, DATE_OPERATORS, REFERENCE_OPERATORS, TAGS_OPERATORS, FIELD_TYPE_OPERATORS, TimeUnitSchema, RelativeDateValueSchema, COLUMN_RENDERERS, ColumnRendererSchema;
1489
- var init_chunk_BUTRMHUP = __esm({
1490
- "../../domain/schema/dist/chunk-BUTRMHUP.js"() {
1508
+ var init_chunk_6DD2XLHF = __esm({
1509
+ "../../domain/schema/dist/chunk-6DD2XLHF.js"() {
1491
1510
  init_chunk_6PLZZWGE();
1492
1511
  init_chunk_JH6U6ENN();
1493
1512
  FallbackChainSchema = z.object({
@@ -2508,9 +2527,9 @@ function resolveAssetType(def) {
2508
2527
  };
2509
2528
  }
2510
2529
  var FieldsetSchema, stageIdPattern, WorkflowEscalationSchema, WorkflowAutoAssignSchema, WorkflowStageSchema, WorkflowConfigSchema, ContentTypeWorkflowSchema, ASSET_KINDS, FORBIDDEN_ASSET_TYPE_FIELD_TYPES, IMAGE_OUTPUT_FORMATS, IMAGE_FIT_MODES, CF_IMAGES_LIMITS, DEFAULT_IMAGE_SOURCE, UNKNOWN_INPUT_MESSAGE, INPUT_CYCLE_MESSAGE, FitSchema, OutputFormatSchema, ImageTransformSchema, ImageUploadConfigSchema, VideoUploadConfigSchema, FileUploadConfigSchema, ImageExifConfigSchema, VariantDefinitionSchema, ImageSourceConfigSchema, ImageKindConfigSchema, VideoPosterConfigSchema, VideoCaptionsConfigSchema, VideoDownloadConfigSchema, VideoWatermarkConfigSchema, VideoKindConfigSchema, FileScanConfigSchema, FileKindConfigSchema, AssetTypeSchema;
2511
- var init_chunk_CE6CNF7I = __esm({
2512
- "../../domain/schema/dist/chunk-CE6CNF7I.js"() {
2513
- init_chunk_BUTRMHUP();
2530
+ var init_chunk_CPSW6QTD = __esm({
2531
+ "../../domain/schema/dist/chunk-CPSW6QTD.js"() {
2532
+ init_chunk_6DD2XLHF();
2514
2533
  FieldsetSchema = z.object({
2515
2534
  id: z.string().regex(
2516
2535
  /^[a-zA-Z][a-zA-Z0-9_]*$/,
@@ -3043,6 +3062,17 @@ function parseSelectExpression(expression) {
3043
3062
  }
3044
3063
  return { ok: true, path: path25, operation };
3045
3064
  }
3065
+ function isFilterGroupShape(value) {
3066
+ return value !== null && typeof value === "object" && !Array.isArray(value) && Object.hasOwn(value, "conditions");
3067
+ }
3068
+ function refusingFilterGroups(schema, message) {
3069
+ return z.preprocess((value, ctx) => {
3070
+ if (isFilterGroupShape(value)) {
3071
+ ctx.addIssue({ code: z.ZodIssueCode.custom, message, fatal: true });
3072
+ }
3073
+ return value;
3074
+ }, schema);
3075
+ }
3046
3076
  function filterValueWith(range, relativeDate) {
3047
3077
  return z.union([
3048
3078
  // Simple values
@@ -3062,11 +3092,11 @@ function filterValueWith(range, relativeDate) {
3062
3092
  // ISO date string
3063
3093
  ]);
3064
3094
  }
3065
- var QUERY_BLOCKS, queryBlocksOf, QUERY_BLOCKS_SPELLED, queryRunsBlock, QUERY_FILTER_OPERATORS, isQueryFilterOperator, QUERY_FILTER_OPERATOR_NAMES, SPELLED, FIELD_PATH, AGGREGATE_OPERATORS, isAggregateOperator, AGGREGATE_OPERATOR_NAMES, INCLUDE_MODIFIER_NAMES, INCLUDE_MODIFIERS, isIncludeModifier, INCLUDE_EXPRESSION, SUPPORTED, MAX_SELECT_OPERATION_ARGUMENT, withoutArguments, SELECT_STRING_OPERATIONS, isSelectStringOperationName, SELECT_STRING_OPERATION_NAMES, OPERATION_SPELLING, NON_NEGATIVE_INTEGER, VIEW_SLUG_PATTERN, VIEW_SLUG_MESSAGE, RangeValueSchema, FilterValueSchema, FilterConditionSchema, LogicalOperatorSchema, FilterGroupSchema, ColumnConfigSchema, MetadataFieldConfigSchema, MetadataLineConfigSchema, TableSettingsSchema, ViewScopeSchema, contentTypeScope, contentTypesScope, allScope, entryTypeScope, DeclaredViewScopeSchema, DeclaredFilterValueSchema, ViewDSLSchema, ViewVisibilitySchema, ViewSourceSchema, SchemaViewDefinitionSchema;
3066
- var init_chunk_QG7U6KYM = __esm({
3067
- "../../domain/schema/dist/chunk-QG7U6KYM.js"() {
3095
+ var QUERY_BLOCKS, queryBlocksOf, QUERY_BLOCKS_SPELLED, queryRunsBlock, QUERY_FILTER_OPERATORS, isQueryFilterOperator, QUERY_FILTER_OPERATOR_NAMES, SPELLED, FIELD_PATH, AGGREGATE_OPERATORS, isAggregateOperator, AGGREGATE_OPERATOR_NAMES, INCLUDE_MODIFIER_NAMES, INCLUDE_MODIFIERS, isIncludeModifier, INCLUDE_EXPRESSION, SUPPORTED, MAX_SELECT_OPERATION_ARGUMENT, withoutArguments, SELECT_STRING_OPERATIONS, isSelectStringOperationName, SELECT_STRING_OPERATION_NAMES, OPERATION_SPELLING, NON_NEGATIVE_INTEGER, VIEW_SLUG_PATTERN, VIEW_SLUG_MESSAGE, SCHEMA_VIEW_FILTER_GROUP_REFUSAL, SAVED_VIEW_FILTER_GROUP_REFUSAL, RangeValueSchema, ColumnConfigSchema, MetadataFieldConfigSchema, MetadataLineConfigSchema, TableSettingsSchema, ViewScopeSchema, contentTypeScope, contentTypesScope, allScope, entryTypeScope, DeclaredViewScopeSchema, DeclaredFilterValueSchema, SchemaViewFilterSchema, SchemaViewDefinitionSchema;
3096
+ var init_chunk_7RCGVRNT = __esm({
3097
+ "../../domain/schema/dist/chunk-7RCGVRNT.js"() {
3068
3098
  init_chunk_46JQ2NQ5();
3069
- init_chunk_BUTRMHUP();
3099
+ init_chunk_6DD2XLHF();
3070
3100
  QUERY_BLOCKS = ["fetch", "aggregate", "search"];
3071
3101
  queryBlocksOf = (query) => QUERY_BLOCKS.filter((block) => Boolean(query[block]));
3072
3102
  QUERY_BLOCKS_SPELLED = QUERY_BLOCKS.join(", ");
@@ -3166,52 +3196,13 @@ var init_chunk_QG7U6KYM = __esm({
3166
3196
  NON_NEGATIVE_INTEGER = /^\d+$/;
3167
3197
  VIEW_SLUG_PATTERN = /^[a-z][a-z0-9-]*$/;
3168
3198
  VIEW_SLUG_MESSAGE = "Slug must be lowercase, start with a letter, and contain only letters, numbers, and hyphens";
3199
+ SCHEMA_VIEW_FILTER_GROUP_REFUSAL = "A view's filters are a flat list, joined by AND: a filter group (an `operator` with `conditions`) is not accepted. List each of its conditions as a filter of its own, or use `isAnyOf` for an OR within one field.";
3200
+ SAVED_VIEW_FILTER_GROUP_REFUSAL = "A View's filters are flat Conditions, joined by AND: a filter group (an `operator` with `conditions`) is not accepted. Save each of its conditions as a Condition of its own, or use `in` for an OR within one Property.";
3169
3201
  RangeValueSchema = z.object({
3170
3202
  from: z.union([z.string(), z.number(), z.date()]),
3171
3203
  to: z.union([z.string(), z.number(), z.date()])
3172
3204
  });
3173
- FilterValueSchema = filterValueWith(RangeValueSchema, RelativeDateValueSchema);
3174
- FilterConditionSchema = z.object({
3175
- /**
3176
- * Unique ID for this condition (for UI state management)
3177
- * Accepts any string (UUID, or generated IDs like "filter-1")
3178
- */
3179
- id: z.string().optional(),
3180
- /**
3181
- * The field ID to filter on
3182
- * For system fields: 'id', 'status', 'createdAt', 'updatedAt', etc.
3183
- * For custom fields: the field ID from the schema
3184
- */
3185
- fieldId: z.string().min(1),
3186
- /**
3187
- * The field type - needed for validation and MongoDB path resolution
3188
- * Use 'system' for system fields
3189
- */
3190
- fieldType: z.string(),
3191
- /**
3192
- * The content type this field belongs to
3193
- * Required for custom fields, null for system fields
3194
- */
3195
- contentType: z.string().nullish(),
3196
- /**
3197
- * The filter operator
3198
- */
3199
- operator: FilterOperatorSchema,
3200
- /**
3201
- * The filter value
3202
- * Type depends on operator and field type
3203
- */
3204
- value: FilterValueSchema.optional()
3205
- });
3206
- LogicalOperatorSchema = z.enum(["and", "or"]);
3207
- FilterGroupSchema = z.lazy(
3208
- () => z.object({
3209
- // Accepts any string (UUID, or generated IDs like "group-1", "root-group")
3210
- id: z.string().optional(),
3211
- operator: LogicalOperatorSchema,
3212
- conditions: z.array(z.union([FilterConditionSchema, FilterGroupSchema]))
3213
- })
3214
- );
3205
+ filterValueWith(RangeValueSchema, RelativeDateValueSchema);
3215
3206
  ColumnConfigSchema = z.object({
3216
3207
  /**
3217
3208
  * Unique ID for this column
@@ -3356,106 +3347,14 @@ var init_chunk_QG7U6KYM = __esm({
3356
3347
  RangeValueSchema.strict(),
3357
3348
  RelativeDateValueSchema.strict()
3358
3349
  );
3359
- ViewDSLSchema = z.object({
3360
- /**
3361
- * View scope - what content types this view applies to
3362
- */
3363
- scope: ViewScopeSchema,
3364
- /**
3365
- * Filter configuration
3366
- * If not provided or empty, no filters are applied
3367
- */
3368
- filters: FilterGroupSchema.optional(),
3369
- /**
3370
- * Table settings
3371
- * If not provided, uses default table settings
3372
- */
3373
- tableSettings: TableSettingsSchema.optional(),
3374
- /**
3375
- * Sort configuration
3376
- */
3377
- sort: z.object({
3350
+ SchemaViewFilterSchema = refusingFilterGroups(
3351
+ z.object({
3378
3352
  field: z.string(),
3379
- direction: z.enum(["asc", "desc"])
3380
- }).optional(),
3381
- /**
3382
- * Pagination defaults
3383
- */
3384
- pagination: z.object({
3385
- limit: z.number().int().positive().default(20),
3386
- offset: z.number().int().min(0).default(0)
3387
- }).optional()
3388
- });
3389
- ViewVisibilitySchema = z.enum(["private", "shared"]);
3390
- ViewSourceSchema = z.enum(["schema", "user"]);
3391
- z.object({
3392
- /**
3393
- * Unique view ID
3394
- */
3395
- id: z.string().uuid(),
3396
- /**
3397
- * Project ID this view belongs to
3398
- */
3399
- projectId: z.string().uuid(),
3400
- /**
3401
- * Dataset ID this view belongs to
3402
- */
3403
- datasetId: z.string().uuid(),
3404
- /**
3405
- * View name (user-facing)
3406
- */
3407
- name: z.string().min(1).max(100),
3408
- /**
3409
- * URL-friendly slug for the view (unique per dataset)
3410
- * Used in Studio URLs like /studio/views/:slug
3411
- */
3412
- slug: z.string().regex(VIEW_SLUG_PATTERN, VIEW_SLUG_MESSAGE),
3413
- /**
3414
- * Optional description
3415
- */
3416
- description: z.string().max(500).optional(),
3417
- /**
3418
- * View icon (emoji or icon name)
3419
- */
3420
- icon: z.string().optional(),
3421
- /**
3422
- * View color (for UI)
3423
- */
3424
- color: z.string().optional(),
3425
- /**
3426
- * The ViewDSL configuration
3427
- */
3428
- config: ViewDSLSchema,
3429
- /**
3430
- * View source - where this view was defined
3431
- */
3432
- source: ViewSourceSchema,
3433
- /**
3434
- * View visibility (only applies to user-created views)
3435
- */
3436
- visibility: ViewVisibilitySchema.optional(),
3437
- /**
3438
- * User ID who created this view (for user-created views)
3439
- */
3440
- createdBy: z.string().uuid().optional(),
3441
- /**
3442
- * Schema view ID (for schema-defined views, to track updates)
3443
- */
3444
- schemaViewId: z.string().optional(),
3445
- /**
3446
- * Sort order in the sidebar
3447
- */
3448
- sortOrder: z.number().int().min(0).optional(),
3449
- /**
3450
- * Whether this view is pinned to the sidebar
3451
- */
3452
- pinned: z.boolean().optional(),
3453
- /**
3454
- * Timestamps
3455
- */
3456
- createdAt: z.date().optional(),
3457
- updatedAt: z.date().optional()
3458
- });
3353
+ operator: FilterOperatorSchema,
3354
+ value: DeclaredFilterValueSchema.optional()
3355
+ }).strict(),
3356
+ SCHEMA_VIEW_FILTER_GROUP_REFUSAL
3357
+ );
3459
3358
  SchemaViewDefinitionSchema = z.object({
3460
3359
  /**
3461
3360
  * Unique ID for this view (within the schema)
@@ -3487,39 +3386,25 @@ var init_chunk_QG7U6KYM = __esm({
3487
3386
  */
3488
3387
  scope: DeclaredViewScopeSchema,
3489
3388
  /**
3490
- * Filter configuration (simplified for YAML)
3389
+ * The view's filters: a flat list, joined by AND. A filter group is refused by name
3390
+ * (REL-1630).
3491
3391
  */
3492
- filters: z.array(
3493
- z.union([
3494
- // Simple condition
3495
- z.object({
3496
- field: z.string(),
3497
- operator: FilterOperatorSchema,
3498
- value: DeclaredFilterValueSchema.optional()
3499
- }).strict(),
3500
- // Group
3501
- z.object({
3502
- operator: LogicalOperatorSchema,
3503
- conditions: z.array(
3504
- z.object({
3505
- field: z.string(),
3506
- operator: FilterOperatorSchema,
3507
- value: DeclaredFilterValueSchema.optional()
3508
- }).strict()
3509
- )
3510
- }).strict()
3511
- ])
3512
- ).optional(),
3392
+ filters: z.array(SchemaViewFilterSchema).optional(),
3513
3393
  /**
3514
- * Columns to display (field IDs)
3394
+ * Columns to display (field IDs). Display configuration, never part of a list read, so these
3395
+ * name field IDs as written (`title`), not the entries list's Properties — unlike `filters`
3396
+ * and `sort` (REL-1696).
3515
3397
  */
3516
3398
  columns: z.array(z.string()).optional(),
3517
3399
  /**
3518
- * Metadata line fields (field IDs)
3400
+ * Metadata line fields (field IDs). Display configuration like `columns`, named the same way.
3519
3401
  */
3520
3402
  metadataFields: z.array(z.string()).max(3).optional(),
3521
3403
  /**
3522
- * Default sort
3404
+ * Default sort. The Studio puts it in the entries read beside the filters (ADR 0008), so its
3405
+ * `field` names the entries list's Property — `_metadata.updatedAt`, `fields.title` — and
3406
+ * deploy refuses one the entries list does not sort by, as it refuses a filter it cannot
3407
+ * narrow by (REL-1696).
3523
3408
  */
3524
3409
  sort: z.object({
3525
3410
  field: z.string(),
@@ -3686,13 +3571,13 @@ function isCommonProtocol(protocol) {
3686
3571
  const commonProtocols = ["http", "https", "ftp", "ftps", "sftp", "file", "mailto", "tel"];
3687
3572
  return commonProtocols.includes(protocol.toLowerCase());
3688
3573
  }
3689
- var QUERY_ENDPOINT_SEGMENT, QUERY_ENDPOINT_PATTERN, PARAMETER_EXPRESSION_SOURCE, parameterExpressionMatcher, ANCHORED_PARAMETER_EXPRESSION, parseDefault, parseParameterExpression, collectParameterExpressions, endpointPathParameters, ParameterExpressionStringSchema, QUERY_PARAMETER_TYPES, QueryParameterTypeSchema, QueryParameterScalarSchema, QueryParameterSchema, typeOfDefault, declareQueryParameters, SEARCH_SCORE_SORT_KEYS, isSearchScoreSortKey, QUERY_SYSTEM_FIELDS, isQuerySystemField, QUERY_STORAGE_PATH_PREFIX, QUERY_SYSTEM_ROOTS, SEARCH_SELECT_COLUMNS, isSearchSelectColumn, parseDynamicParameter, ParameterizedLimitSchema, ParameterizedOffsetSchema, ScalarSchema, WhereOperatorObjectSchema, FilterOperatorObjectSchema, HavingOperatorObjectSchema, WhereValueSchema, WhereConditionSchema, SortConditionSchema, EnhancedIncludeObjectSchema, IncludeDefinitionSchema, SelectMappingSchema, FilterDefinitionSchema, FullTextSearchSchema, ContentTypesSchema, SearchBlockSchema, AggregationMetricSchema, QueryCardinalitySchema, QueryCachePolicySchema, FetchBlockSchema, AggregateBlockSchema, IncludeSubQueriesSchema, QueryDefinitionSchema, CACHE_POLICY_STRING, normalizeQueryCachePolicy, CONTENT_API_ROUTE_SEGMENTS, RESERVED_TYPE_IDS, getComponentIdFromType, ComponentSchema, ContentTypeSchema, SettingsGroupSchema, SchemaDefinitionSchema;
3690
- var init_chunk_LKXAZEW4 = __esm({
3691
- "../../domain/schema/dist/chunk-LKXAZEW4.js"() {
3692
- init_chunk_CE6CNF7I();
3693
- init_chunk_QG7U6KYM();
3574
+ var QUERY_ENDPOINT_SEGMENT, QUERY_ENDPOINT_PATTERN, PARAMETER_EXPRESSION_SOURCE, parameterExpressionMatcher, ANCHORED_PARAMETER_EXPRESSION, parseDefault, parseParameterExpression, collectParameterExpressions, endpointPathParameters, ParameterExpressionStringSchema, QUERY_PARAMETER_TYPES, QueryParameterTypeSchema, QueryParameterScalarSchema, QueryParameterSchema, typeOfDefault, declareQueryParameters, SEARCH_SCORE_SORT_KEYS, isSearchScoreSortKey, QUERY_SYSTEM_FIELDS, isQuerySystemField, QUERY_STORAGE_PATH_PREFIX, QUERY_SYSTEM_ROOTS, SEARCH_SELECT_COLUMNS, isSearchSelectColumn, parseDynamicParameter, ParameterizedLimitSchema, ParameterizedOffsetSchema, ScalarSchema, WhereOperatorObjectSchema, FilterOperatorObjectSchema, HavingOperatorObjectSchema, WhereValueSchema, WhereConditionSchema, SortConditionSchema, EnhancedIncludeObjectSchema, IncludeDefinitionSchema, SelectMappingSchema, FilterDefinitionSchema, FullTextSearchSchema, ContentTypesSchema, SearchBlockSchema, AggregationMetricSchema, QueryCardinalitySchema, QueryCachePolicySchema, FetchBlockSchema, AggregateBlockSchema, IncludeSubQueriesSchema, QueryDefinitionSchema, CACHE_POLICY_STRING, normalizeQueryCachePolicy, CONTENT_API_ROUTE_SEGMENTS, RESERVED_TYPE_IDS, getComponentIdFromType, ComponentSchema, ContentTypeSchema, SettingsGroupSchema, SchemaDefinitionSchema, SavedViewFilterSchema;
3575
+ var init_chunk_HPVV5V4C = __esm({
3576
+ "../../domain/schema/dist/chunk-HPVV5V4C.js"() {
3577
+ init_chunk_CPSW6QTD();
3578
+ init_chunk_7RCGVRNT();
3694
3579
  init_chunk_W6RFZ2TV();
3695
- init_chunk_BUTRMHUP();
3580
+ init_chunk_6DD2XLHF();
3696
3581
  QUERY_ENDPOINT_SEGMENT = "api";
3697
3582
  QUERY_ENDPOINT_PATTERN = new RegExp(
3698
3583
  String.raw`^\/${QUERY_ENDPOINT_SEGMENT}\/([a-zA-Z0-9\-_/]|\{[a-zA-Z][a-zA-Z0-9_]*\})*$`
@@ -4576,6 +4461,37 @@ var init_chunk_LKXAZEW4 = __esm({
4576
4461
  validateContentTypeWorkflow(assetTypeId, assetType, "assetTypes");
4577
4462
  }
4578
4463
  });
4464
+ SavedViewFilterSchema = refusingFilterGroups(
4465
+ z.record(z.string(), z.unknown()),
4466
+ SAVED_VIEW_FILTER_GROUP_REFUSAL
4467
+ );
4468
+ z.object({
4469
+ /** Which entries the View lists: one content type, several, one entry type, or all of them. */
4470
+ scope: ViewScopeSchema,
4471
+ /** Columns, metadata line, default page size and row density. */
4472
+ tableSettings: TableSettingsSchema.optional(),
4473
+ /** The order the entries are listed in unless the reader asks for another. */
4474
+ sort: z.object({
4475
+ field: z.string(),
4476
+ direction: z.enum(["asc", "desc"])
4477
+ }).optional(),
4478
+ /** The default page. */
4479
+ pagination: z.object({
4480
+ limit: z.number().int().positive().default(20),
4481
+ offset: z.number().int().min(0).default(0)
4482
+ }).optional(),
4483
+ /** The Filters, joined by AND; none lists every entry the scope holds. */
4484
+ filters: refusingFilterGroups(
4485
+ z.array(SavedViewFilterSchema),
4486
+ SAVED_VIEW_FILTER_GROUP_REFUSAL
4487
+ ).optional()
4488
+ });
4489
+ }
4490
+ });
4491
+
4492
+ // ../../domain/schema/dist/chunk-IJSOONHT.js
4493
+ var init_chunk_IJSOONHT = __esm({
4494
+ "../../domain/schema/dist/chunk-IJSOONHT.js"() {
4579
4495
  }
4580
4496
  });
4581
4497
  function emptyDefinition() {
@@ -4654,33 +4570,9 @@ var init_chunk_EGQAMYAG = __esm({
4654
4570
  }
4655
4571
  });
4656
4572
 
4657
- // ../../domain/schema/dist/chunk-LDBRHF5K.js
4658
- var TABLE_SYSTEM_FIELD_KINDS;
4659
- var init_chunk_LDBRHF5K = __esm({
4660
- "../../domain/schema/dist/chunk-LDBRHF5K.js"() {
4661
- init_chunk_BUTRMHUP();
4662
- init_chunk_6PLZZWGE();
4663
- TABLE_SYSTEM_FIELD_KINDS = {
4664
- id: "text",
4665
- contentType: "choice",
4666
- status: "text",
4667
- createdAt: "date",
4668
- updatedAt: "date",
4669
- publishedAt: "date",
4670
- createdBy: "reference",
4671
- updatedBy: "reference"
4672
- };
4673
- ({
4674
- ...TABLE_SYSTEM_FIELD_KINDS,
4675
- "file.status": "text",
4676
- "file.backend": "text",
4677
- "file.mimeType": "text",
4678
- "file.fileName": "text",
4679
- "file.size": "number",
4680
- "file.extracted.width": "number",
4681
- "file.extracted.height": "number",
4682
- "file.extracted.duration": "number"
4683
- });
4573
+ // ../../domain/schema/dist/chunk-NGOOYRLJ.js
4574
+ var init_chunk_NGOOYRLJ = __esm({
4575
+ "../../domain/schema/dist/chunk-NGOOYRLJ.js"() {
4684
4576
  }
4685
4577
  });
4686
4578
 
@@ -4701,13 +4593,66 @@ var init_chunk_QSWR2YJN = __esm({
4701
4593
  }
4702
4594
  });
4703
4595
 
4704
- // ../../domain/schema/dist/chunk-GICJZDXP.js
4705
- var init_chunk_GICJZDXP = __esm({
4706
- "../../domain/schema/dist/chunk-GICJZDXP.js"() {
4707
- init_chunk_CE6CNF7I();
4596
+ // ../../domain/schema/dist/chunk-BLVEM2X5.js
4597
+ var init_chunk_BLVEM2X5 = __esm({
4598
+ "../../domain/schema/dist/chunk-BLVEM2X5.js"() {
4599
+ init_chunk_CPSW6QTD();
4708
4600
  init_chunk_QSWR2YJN();
4709
- init_chunk_BUTRMHUP();
4601
+ init_chunk_6DD2XLHF();
4602
+ init_chunk_6PLZZWGE();
4603
+ }
4604
+ });
4605
+
4606
+ // ../../domain/schema/dist/chunk-57HAIHG3.js
4607
+ var init_chunk_57HAIHG3 = __esm({
4608
+ "../../domain/schema/dist/chunk-57HAIHG3.js"() {
4609
+ }
4610
+ });
4611
+
4612
+ // ../../domain/schema/dist/chunk-CIGYSWUJ.js
4613
+ var TABLE_SYSTEM_FIELD_KINDS;
4614
+ var init_chunk_CIGYSWUJ = __esm({
4615
+ "../../domain/schema/dist/chunk-CIGYSWUJ.js"() {
4616
+ init_chunk_NGOOYRLJ();
4617
+ init_chunk_BLVEM2X5();
4618
+ init_chunk_57HAIHG3();
4619
+ init_chunk_6DD2XLHF();
4710
4620
  init_chunk_6PLZZWGE();
4621
+ TABLE_SYSTEM_FIELD_KINDS = {
4622
+ id: "text",
4623
+ contentType: "choice",
4624
+ status: "choice",
4625
+ createdAt: "date",
4626
+ updatedAt: "date",
4627
+ publishedAt: "date",
4628
+ createdBy: "reference",
4629
+ updatedBy: "reference",
4630
+ entryType: "choice",
4631
+ localeStatus: "choice",
4632
+ hasUnpublishedWork: "boolean",
4633
+ releaseId: "reference",
4634
+ workflowStageId: "choice",
4635
+ workflowPaused: "boolean",
4636
+ workflowPausedReason: "choice",
4637
+ workflowPriority: "choice",
4638
+ workflowAssignedTo: "reference",
4639
+ workflowSubmittedBy: "reference",
4640
+ workflowDueDate: "date",
4641
+ workflowSubmittedAt: "date",
4642
+ "validation.isValid": "boolean",
4643
+ publishedBy: "reference"
4644
+ };
4645
+ ({
4646
+ ...TABLE_SYSTEM_FIELD_KINDS,
4647
+ "file.status": "choice",
4648
+ "file.backend": "choice",
4649
+ "file.mimeType": "text",
4650
+ "file.fileName": "text",
4651
+ "file.size": "number",
4652
+ "file.extracted.width": "number",
4653
+ "file.extracted.height": "number",
4654
+ "file.extracted.duration": "number"
4655
+ });
4711
4656
  }
4712
4657
  });
4713
4658
  function containerIndex(record) {
@@ -5345,16 +5290,19 @@ function notComparedWarning(part, refusals) {
5345
5290
  var USAGE_CONTAINERS, BaseValidator, ValidationUtils, NamingValidator, StructuralValidator, FieldConfigValidator, CrossReferenceValidator, ComponentValidator, ComponentFieldTypeValidator, ComponentValidationUtils, ComponentReusabilityValidator, ComponentFieldStructureValidator, ComponentUsageContextValidator, ComponentNestingValidator, FieldsetValidator, CONTENT_TYPE_PROPS, COMPONENT_PROPS, GROUP_PROPS, QUERY_BASIC_PROPS, QUERY_OPTIONAL_PROPS, QUERY_DSL_BLOCKS, LOCALE_PROPS, ROLE_PROPS, WORKFLOW_STAGE_PROPS, VIEW_PROPS, FIELDSET_PROPS, ASSET_TYPE_PROPS, ASSET_KIND_BLOCKS, ASSET_KIND_KEY_MARKER, FILE_LOCALIZATION_MARKER, FIELD_REQUIRED_CHANGE_KEY, SchemaDiffer, ADDED_LABEL, CROSS_VERSION_CHECKS, CROSS_VERSION_CODES, EvolutionValidator, HierarchicalContentValidator, FieldRulesValidator, LocalizationValidator, LocaleConfigValidator, SettingsGroupsValidator, SingletonContentTypesValidator, FORBIDDEN_TYPES, AssetTypesValidator, FieldUIValidator, BENEATH, ANY_JOIN, DslQueryValidator, DataIntegrityValidator, RolesValidator, EVOLUTION_VALIDATOR_KEY, CROSS_VERSION_CHECKS_SKIPPED, ValidationPipeline, SchemaValidator, FIELD_SECTIONS, OPERATION_TIER, DEPLOY_VALIDATION_CONFIG;
5346
5291
  var init_dist2 = __esm({
5347
5292
  "../../domain/schema/dist/index.js"() {
5348
- init_chunk_LKXAZEW4();
5293
+ init_chunk_HPVV5V4C();
5294
+ init_chunk_IJSOONHT();
5349
5295
  init_chunk_EGQAMYAG();
5350
- init_chunk_LDBRHF5K();
5351
- init_chunk_GICJZDXP();
5352
- init_chunk_CE6CNF7I();
5296
+ init_chunk_CIGYSWUJ();
5297
+ init_chunk_NGOOYRLJ();
5298
+ init_chunk_BLVEM2X5();
5299
+ init_chunk_CPSW6QTD();
5353
5300
  init_chunk_QSWR2YJN();
5354
- init_chunk_QG7U6KYM();
5301
+ init_chunk_7RCGVRNT();
5355
5302
  init_chunk_46JQ2NQ5();
5356
5303
  init_chunk_W6RFZ2TV();
5357
- init_chunk_BUTRMHUP();
5304
+ init_chunk_57HAIHG3();
5305
+ init_chunk_6DD2XLHF();
5358
5306
  init_chunk_6PLZZWGE();
5359
5307
  init_chunk_JH6U6ENN();
5360
5308
  USAGE_CONTAINERS = [
@@ -21561,7 +21509,7 @@ var init_banner = __esm({
21561
21509
  init_dev_cockpit_context();
21562
21510
  init_dev_cockpit_format();
21563
21511
  init_startup_info();
21564
- CLI_VERSION2 = "0.5.0" ;
21512
+ CLI_VERSION2 = "0.7.0" ;
21565
21513
  BRAND_GLYPH = "\u25B6";
21566
21514
  BRAND_NAME = "RelyIO";
21567
21515
  LABEL_WIDTH = 9;
@@ -31191,7 +31139,7 @@ function sandboxCommands(program2) {
31191
31139
  }
31192
31140
 
31193
31141
  // src/commands/version.ts
31194
- var CLI_VERSION = "0.5.0" ;
31142
+ var CLI_VERSION = "0.7.0" ;
31195
31143
  async function handleVersion(_options) {
31196
31144
  console.log(heading("RelyIO CLI Version Information"));
31197
31145
  const versionInfo = [
@@ -35465,7 +35413,7 @@ Examples:
35465
35413
  }
35466
35414
 
35467
35415
  // src/index.ts
35468
- var CLI_VERSION3 = "0.5.0" ;
35416
+ var CLI_VERSION3 = "0.7.0" ;
35469
35417
  var program = new Command();
35470
35418
  program.name("relyio").description("RelyIO CLI - Content Management, Simplified").version(CLI_VERSION3);
35471
35419
  registerGlobalOptions(program);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@relyio/cli",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "description": "RelyIO is coming soon — this package is not ready for general use yet.",
5
5
  "bugs": {
6
6
  "email": "team@relyio.com"
@@ -68,11 +68,11 @@
68
68
  "@relyio/codegen-core": "1.0.0",
69
69
  "@relyio/codegen-python": "0.1.0",
70
70
  "@relyio/codegen-typescript": "1.0.0",
71
- "@relyio/device-auth": "0.0.0",
72
71
  "@relyio/eslint-config": "0.0.0",
72
+ "@relyio/device-auth": "0.0.0",
73
73
  "@relyio/schema": "0.0.1",
74
74
  "@relyio/tenancy": "0.1.0",
75
- "@relyio/sdk": "0.8.0"
75
+ "@relyio/sdk": "0.11.0"
76
76
  },
77
77
  "publishConfig": {
78
78
  "access": "public"