@gooddata/sdk-code-schemas 11.29.0-alpha.1 → 11.29.0-alpha.10

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.
@@ -2369,7 +2369,7 @@
2369
2369
  "properties": {
2370
2370
  "type": {
2371
2371
  "type": "string",
2372
- "enum": ["date_filter", "attribute_filter", "filter_group"]
2372
+ "enum": ["date_filter", "attribute_filter", "text_filter", "filter_group"]
2373
2373
  }
2374
2374
  },
2375
2375
  "required": ["type"],
@@ -2402,6 +2402,10 @@
2402
2402
  "if": { "properties": { "type": { "const": "attribute_filter" } } },
2403
2403
  "then": { "$ref": "#/$defs/dashboardAttributeFilter" }
2404
2404
  },
2405
+ {
2406
+ "if": { "properties": { "type": { "const": "text_filter" } } },
2407
+ "then": { "$ref": "#/$defs/dashboardTextFilter" }
2408
+ },
2405
2409
  {
2406
2410
  "if": { "properties": { "type": { "const": "filter_group" } } },
2407
2411
  "then": { "$ref": "#/$defs/dashboardFilterGroup" }
@@ -2817,7 +2821,7 @@
2817
2821
  "properties": {
2818
2822
  "type": {
2819
2823
  "type": "string",
2820
- "enum": ["date_filter", "attribute_filter", "filter_group"]
2824
+ "enum": ["date_filter", "attribute_filter", "text_filter", "filter_group"]
2821
2825
  }
2822
2826
  },
2823
2827
  "required": ["type"],
@@ -2850,6 +2854,10 @@
2850
2854
  "if": { "properties": { "type": { "const": "attribute_filter" } } },
2851
2855
  "then": { "$ref": "#/$defs/dashboardAttributeFilter" }
2852
2856
  },
2857
+ {
2858
+ "if": { "properties": { "type": { "const": "text_filter" } } },
2859
+ "then": { "$ref": "#/$defs/dashboardTextFilter" }
2860
+ },
2853
2861
  {
2854
2862
  "if": { "properties": { "type": { "const": "filter_group" } } },
2855
2863
  "then": { "$ref": "#/$defs/dashboardFilterGroup" }
@@ -3170,6 +3178,214 @@
3170
3178
  "mode": "property"
3171
3179
  }
3172
3180
  },
3181
+ "dashboardTextFilter": {
3182
+ "type": "object",
3183
+ "title": "Dashboard text filter",
3184
+ "description": "A dashboard text filter",
3185
+ "properties": {
3186
+ "title": { "type": "string", "description": "Optional title of the filter" },
3187
+ "using": {
3188
+ "description": "Attribute or label to use in this filter.",
3189
+ "oneOf": [
3190
+ { "$ref": "#/$defs/attributeIdentifier" },
3191
+ { "$ref": "#/$defs/labelIdentifier" }
3192
+ ],
3193
+ "$semantic": { "type": "one_attribute_item_only" }
3194
+ },
3195
+ "case_sensitive": { "type": "boolean" },
3196
+ "display_as": {
3197
+ "type": "string",
3198
+ "description": "Configures the label used for representing attribute filter elements in UI.",
3199
+ "$ref": "#/$defs/displayAsLabelIdentifier"
3200
+ },
3201
+ "mode": {
3202
+ "type": "string",
3203
+ "enum": ["readonly", "hidden", "active"],
3204
+ "description": "Setting filter mode to readonly will disable the filter. Setting it to hidden will hide the filter from the dashboard. Setting it to active will enable the filter."
3205
+ },
3206
+ "parents": {
3207
+ "type": "array",
3208
+ "description": "An ids of the parent local attribute, text, or date filter",
3209
+ "uniqueItems": true,
3210
+ "items": {
3211
+ "oneOf": [
3212
+ {
3213
+ "type": "string",
3214
+ "title": "Local attribute filter",
3215
+ "description": "Local attribute, text, or date filter to use as parent",
3216
+ "$semantic": {
3217
+ "type": "reference",
3218
+ "sources": [
3219
+ "current.dashboard.attribute_filter.localId",
3220
+ "current.dashboard.text_filter.localId",
3221
+ "current.dashboard.date_filter.localId"
3222
+ ]
3223
+ }
3224
+ },
3225
+ {
3226
+ "type": "object",
3227
+ "title": "Local date filter",
3228
+ "properties": {
3229
+ "using": {
3230
+ "type": "string",
3231
+ "description": "Local date filter to use as parent",
3232
+ "$semantic": {
3233
+ "type": "reference",
3234
+ "source": "current.dashboard.date_filter.localId"
3235
+ }
3236
+ },
3237
+ "common": {
3238
+ "type": "boolean",
3239
+ "description": "Whether the parent filter is common date or special date"
3240
+ }
3241
+ },
3242
+ "required": ["using", "common"]
3243
+ }
3244
+ ]
3245
+ }
3246
+ },
3247
+ "metric_filters": {
3248
+ "type": "array",
3249
+ "description": "An id of the attributes, labels, facts or metrics to validate the filter by",
3250
+ "uniqueItems": true,
3251
+ "items": {
3252
+ "type": "string",
3253
+ "$semantic": {
3254
+ "type": "reference",
3255
+ "sources": ["attribute.id", "label.id", "fact.id", "metric.id"],
3256
+ "typePrefix": true
3257
+ }
3258
+ }
3259
+ }
3260
+ },
3261
+ "oneOf": [
3262
+ {
3263
+ "properties": {
3264
+ "title": { "type": "string", "description": "Optional title of the filter" },
3265
+ "type": { "type": "string", "enum": ["text_filter"] },
3266
+ "using": {
3267
+ "description": "Attribute or label to use in this filter.",
3268
+ "oneOf": [
3269
+ { "$ref": "#/$defs/attributeIdentifier" },
3270
+ { "$ref": "#/$defs/labelIdentifier" }
3271
+ ],
3272
+ "$semantic": { "type": "one_attribute_item_only" }
3273
+ },
3274
+ "condition": { "enum": ["is", "isNot"] },
3275
+ "values": { "type": "array", "items": { "type": ["string", "null"] } },
3276
+ "case_sensitive": { "type": "boolean" },
3277
+ "display_as": {
3278
+ "type": "string",
3279
+ "description": "Configures the label used for representing attribute filter elements in UI.",
3280
+ "$ref": "#/$defs/displayAsLabelIdentifier"
3281
+ },
3282
+ "mode": {
3283
+ "type": "string",
3284
+ "enum": ["readonly", "hidden", "active"],
3285
+ "description": "Setting filter mode to readonly will disable the filter. Setting it to hidden will hide the filter from the dashboard. Setting it to active will enable the filter."
3286
+ },
3287
+ "parents": {
3288
+ "type": "array",
3289
+ "description": "An ids of the parent local attribute, text, or date filter",
3290
+ "uniqueItems": true,
3291
+ "items": {
3292
+ "oneOf": [
3293
+ {
3294
+ "type": "string",
3295
+ "title": "Local attribute filter",
3296
+ "description": "Local attribute, text, or date filter to use as parent",
3297
+ "$semantic": {
3298
+ "type": "reference",
3299
+ "sources": [
3300
+ "current.dashboard.attribute_filter.localId",
3301
+ "current.dashboard.text_filter.localId",
3302
+ "current.dashboard.date_filter.localId"
3303
+ ]
3304
+ }
3305
+ },
3306
+ {
3307
+ "type": "object",
3308
+ "title": "Local date filter",
3309
+ "properties": {
3310
+ "using": {
3311
+ "type": "string",
3312
+ "description": "Local date filter to use as parent",
3313
+ "$semantic": {
3314
+ "type": "reference",
3315
+ "source": "current.dashboard.date_filter.localId"
3316
+ }
3317
+ },
3318
+ "common": {
3319
+ "type": "boolean",
3320
+ "description": "Whether the parent filter is common date or special date"
3321
+ }
3322
+ },
3323
+ "required": ["using", "common"]
3324
+ }
3325
+ ]
3326
+ }
3327
+ },
3328
+ "metric_filters": {
3329
+ "type": "array",
3330
+ "description": "An id of the attributes, labels, facts or metrics to validate the filter by",
3331
+ "uniqueItems": true,
3332
+ "items": {
3333
+ "type": "string",
3334
+ "$semantic": {
3335
+ "type": "reference",
3336
+ "sources": ["attribute.id", "label.id", "fact.id", "metric.id"],
3337
+ "typePrefix": true
3338
+ }
3339
+ }
3340
+ }
3341
+ },
3342
+ "required": ["type", "using", "condition", "values"]
3343
+ },
3344
+ {
3345
+ "properties": {
3346
+ "title": { "type": "string", "description": "Optional title of the filter" },
3347
+ "type": { "type": "string", "enum": ["text_filter"] },
3348
+ "using": {
3349
+ "description": "Attribute or label to use in this filter.",
3350
+ "oneOf": [
3351
+ { "$ref": "#/$defs/attributeIdentifier" },
3352
+ { "$ref": "#/$defs/labelIdentifier" }
3353
+ ],
3354
+ "$semantic": { "type": "one_attribute_item_only" }
3355
+ },
3356
+ "condition": {
3357
+ "enum": [
3358
+ "contains",
3359
+ "doesNotContain",
3360
+ "startsWith",
3361
+ "doesNotStartWith",
3362
+ "endsWith",
3363
+ "doesNotEndWith"
3364
+ ]
3365
+ },
3366
+ "value": { "type": "string" },
3367
+ "case_sensitive": { "type": "boolean" },
3368
+ "display_as": {
3369
+ "type": "string",
3370
+ "description": "Configures the label used for representing attribute filter elements in UI.",
3371
+ "$ref": "#/$defs/displayAsLabelIdentifier"
3372
+ },
3373
+ "mode": {
3374
+ "type": "string",
3375
+ "enum": ["readonly", "hidden", "active"],
3376
+ "description": "Setting filter mode to readonly will disable the filter. Setting it to hidden will hide the filter from the dashboard. Setting it to active will enable the filter."
3377
+ }
3378
+ },
3379
+ "required": ["type", "using", "condition", "value"]
3380
+ }
3381
+ ],
3382
+ "required": ["type", "using", "condition"],
3383
+ "$semantic": {
3384
+ "type": "definition",
3385
+ "source": "current.dashboard.text_filter.localId",
3386
+ "mode": "property"
3387
+ }
3388
+ },
3173
3389
  "dashboardFilterGroup": {
3174
3390
  "type": "object",
3175
3391
  "title": "Dashboard filter group",
@@ -3194,7 +3410,10 @@
3194
3410
  "patternProperties": {
3195
3411
  "^(?!\\.)[.A-Za-z0-9_-]{1,255}$": {
3196
3412
  "properties": {
3197
- "type": { "type": "string", "enum": ["date_filter", "attribute_filter"] }
3413
+ "type": {
3414
+ "type": "string",
3415
+ "enum": ["date_filter", "attribute_filter", "text_filter"]
3416
+ }
3198
3417
  },
3199
3418
  "required": ["type"],
3200
3419
  "allOf": [
@@ -3225,6 +3444,10 @@
3225
3444
  {
3226
3445
  "if": { "properties": { "type": { "const": "attribute_filter" } } },
3227
3446
  "then": { "$ref": "#/$defs/dashboardAttributeFilter" }
3447
+ },
3448
+ {
3449
+ "if": { "properties": { "type": { "const": "text_filter" } } },
3450
+ "then": { "$ref": "#/$defs/dashboardTextFilter" }
3228
3451
  }
3229
3452
  ]
3230
3453
  }
@@ -3260,6 +3483,10 @@
3260
3483
  },
3261
3484
  "then": { "$ref": "#/$defs/queryAttributeFilter" }
3262
3485
  },
3486
+ {
3487
+ "if": { "properties": { "type": { "enum": ["text_filter"] } }, "required": ["type"] },
3488
+ "then": { "$ref": "#/$defs/queryTextFilter" }
3489
+ },
3263
3490
  {
3264
3491
  "if": {
3265
3492
  "properties": { "type": { "enum": ["metric_value_filter"] } },
@@ -3279,7 +3506,13 @@
3279
3506
  "properties": {
3280
3507
  "type": {
3281
3508
  "type": "string",
3282
- "enum": ["date_filter", "attribute_filter", "metric_value_filter", "ranking_filter"]
3509
+ "enum": [
3510
+ "date_filter",
3511
+ "attribute_filter",
3512
+ "text_filter",
3513
+ "metric_value_filter",
3514
+ "ranking_filter"
3515
+ ]
3283
3516
  }
3284
3517
  },
3285
3518
  "required": ["type"]
@@ -3522,6 +3755,92 @@
3522
3755
  }
3523
3756
  ]
3524
3757
  },
3758
+ "queryTextFilter": {
3759
+ "title": "Text Filter",
3760
+ "type": "object",
3761
+ "properties": {
3762
+ "type": { "type": "string", "enum": ["text_filter"] },
3763
+ "using": {
3764
+ "description": "Attribute or label to use in this filter.",
3765
+ "oneOf": [
3766
+ { "$ref": "#/$defs/attributeIdentifier" },
3767
+ { "$ref": "#/$defs/labelIdentifier" }
3768
+ ]
3769
+ },
3770
+ "case_sensitive": { "type": "boolean" },
3771
+ "display_as": {
3772
+ "type": "string",
3773
+ "description": "Configures the label used for representing attribute filter elements in UI.",
3774
+ "$ref": "#/$defs/displayAsLabelIdentifier"
3775
+ }
3776
+ },
3777
+ "oneOf": [
3778
+ {
3779
+ "properties": {
3780
+ "type": { "type": "string", "enum": ["text_filter"] },
3781
+ "using": {
3782
+ "description": "Attribute or label to use in this filter.",
3783
+ "oneOf": [
3784
+ { "$ref": "#/$defs/attributeIdentifier" },
3785
+ { "$ref": "#/$defs/labelIdentifier" }
3786
+ ]
3787
+ },
3788
+ "condition": { "enum": ["is", "isNot"] },
3789
+ "values": { "type": "array", "items": { "type": ["string", "null"] } },
3790
+ "case_sensitive": { "type": "boolean" },
3791
+ "display_as": {
3792
+ "type": "string",
3793
+ "description": "Configures the label used for representing attribute filter elements in UI.",
3794
+ "$ref": "#/$defs/displayAsLabelIdentifier"
3795
+ }
3796
+ },
3797
+ "required": ["type", "using", "condition", "values"]
3798
+ },
3799
+ {
3800
+ "properties": {
3801
+ "type": { "type": "string", "enum": ["text_filter"] },
3802
+ "using": {
3803
+ "description": "Attribute or label to use in this filter.",
3804
+ "oneOf": [
3805
+ { "$ref": "#/$defs/attributeIdentifier" },
3806
+ { "$ref": "#/$defs/labelIdentifier" }
3807
+ ]
3808
+ },
3809
+ "condition": {
3810
+ "enum": [
3811
+ "contains",
3812
+ "doesNotContain",
3813
+ "startsWith",
3814
+ "doesNotStartWith",
3815
+ "endsWith",
3816
+ "doesNotEndWith"
3817
+ ]
3818
+ },
3819
+ "value": { "type": "string" },
3820
+ "case_sensitive": { "type": "boolean" },
3821
+ "display_as": {
3822
+ "type": "string",
3823
+ "description": "Configures the label used for representing attribute filter elements in UI.",
3824
+ "$ref": "#/$defs/displayAsLabelIdentifier"
3825
+ }
3826
+ },
3827
+ "required": ["type", "using", "condition", "value"]
3828
+ }
3829
+ ],
3830
+ "required": ["type", "using", "condition"],
3831
+ "$semantic": [
3832
+ {
3833
+ "type": "definition",
3834
+ "source": "current.widget.visualization.query.filter.localId",
3835
+ "mode": "property"
3836
+ },
3837
+ {
3838
+ "type": "definition",
3839
+ "source": "current.widget.visualization.query.field.filter.localId",
3840
+ "mode": "property"
3841
+ }
3842
+ ]
3843
+ },
3525
3844
  "queryMetricValueFilter": {
3526
3845
  "title": "Metric Value Filter",
3527
3846
  "type": "object",