@forge/manifest 3.2.0-next.4 → 3.2.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.
@@ -80,6 +80,29 @@
80
80
  ]
81
81
  }
82
82
  }
83
+ },
84
+ "storage": {
85
+ "description": "Options related to hosted storage",
86
+ "type": "object",
87
+ "required": [
88
+ "classifications"
89
+ ],
90
+ "additionalProperties": false,
91
+ "properties": {
92
+ "classifications": {
93
+ "description": "Labels to classify the type of data stored",
94
+ "type": "array",
95
+ "items": {
96
+ "type": "string",
97
+ "enum": [
98
+ "ugc",
99
+ "pii",
100
+ "other"
101
+ ]
102
+ },
103
+ "minItems": 1
104
+ }
105
+ }
83
106
  }
84
107
  },
85
108
  "required": [
@@ -6205,10 +6228,10 @@
6205
6228
  "type": "object",
6206
6229
  "anyOf": [
6207
6230
  {
6208
- "$ref": "#/definitions/singleCondition"
6231
+ "$ref": "#/definitions/compositeCondition"
6209
6232
  },
6210
6233
  {
6211
- "$ref": "#/definitions/compositeCondition"
6234
+ "$ref": "#/definitions/singleCondition"
6212
6235
  }
6213
6236
  ]
6214
6237
  },
@@ -6331,10 +6354,10 @@
6331
6354
  "type": "object",
6332
6355
  "anyOf": [
6333
6356
  {
6334
- "$ref": "#/definitions/singleCondition"
6357
+ "$ref": "#/definitions/compositeCondition"
6335
6358
  },
6336
6359
  {
6337
- "$ref": "#/definitions/compositeCondition"
6360
+ "$ref": "#/definitions/singleCondition"
6338
6361
  }
6339
6362
  ]
6340
6363
  },
@@ -6631,6 +6654,22 @@
6631
6654
  "title": "Inline Dialog Options",
6632
6655
  "description": "\n\nOptions for an inline dialog target\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"inlinedialog\",\n \"options\": {\n \"onHover\": true,\n \"offsetX\": \"30px\",\n \"offsetY\": \"20px\"\n }\n }\n }\n\n\n"
6633
6656
  },
6657
+ {
6658
+ "properties": {
6659
+ "key": {
6660
+ "maxLength": 100,
6661
+ "type": "string",
6662
+ "fieldDescription": "\n\n<p>The key of a <a href=\"../dialog/\">Dialog</a> module declared in this Connect add-on.</p>\n\n <p>\n The dialog module will include the <a href=\"../dialog-options/\">Dialog Options</a>\n that would otherwise need to be specified directly in this options object.\n </p>\n\n"
6663
+ }
6664
+ },
6665
+ "required": [
6666
+ "key"
6667
+ ],
6668
+ "shortClassName": "dialogModuleOptions",
6669
+ "type": "object",
6670
+ "title": "Dialog Module Options",
6671
+ "description": "\n\nOptions for a web-item targeting a common <a href=\"../dialog/\">dialog module</a>.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"dialogmodule\",\n \"options\": {\n \"key\": \"dialog-module-key\"\n }\n }\n }\n\n\n"
6672
+ },
6634
6673
  {
6635
6674
  "properties": {
6636
6675
  "size": {
@@ -6675,22 +6714,6 @@
6675
6714
  "type": "object",
6676
6715
  "title": "Dialog Options",
6677
6716
  "description": "\n\nOptions for a modal dialog <a href=\"../web-item-target/\">web item target</a> or <a href=\"../dialog/\">common module</a>.\n\n <p>\n These options are a subset of those available via the <a href=\"../../jsapi/dialog/\">JavaScript API</a>.\n </p>\n\n <h2>Web Item Example</h2>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"dialog\",\n \"options\": {\n \"height\": \"100px\",\n \"width\": \"200px\"\n }\n }\n }\n\n\n\n\n <h2>Dialog Example</h2>\n\n\n\n\n\n {\n \"modules\": {\n \"dialogs\": [\n {\n \"url\": \"/my-dialog-content\",\n \"options\": {\n \"size\": \"fullscreen\",\n \"header\": {\n \"value\": \"Example Dialog\"\n }\n },\n \"key\": \"dialog-module-key\"\n }\n ]\n }\n }\n\n\n"
6678
- },
6679
- {
6680
- "properties": {
6681
- "key": {
6682
- "maxLength": 100,
6683
- "type": "string",
6684
- "fieldDescription": "\n\n<p>The key of a <a href=\"../dialog/\">Dialog</a> module declared in this Connect add-on.</p>\n\n <p>\n The dialog module will include the <a href=\"../dialog-options/\">Dialog Options</a>\n that would otherwise need to be specified directly in this options object.\n </p>\n\n"
6685
- }
6686
- },
6687
- "required": [
6688
- "key"
6689
- ],
6690
- "shortClassName": "dialogModuleOptions",
6691
- "type": "object",
6692
- "title": "Dialog Module Options",
6693
- "description": "\n\nOptions for a web-item targeting a common <a href=\"../dialog/\">dialog module</a>.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"dialogmodule\",\n \"options\": {\n \"key\": \"dialog-module-key\"\n }\n }\n }\n\n\n"
6694
6717
  }
6695
6718
  ]
6696
6719
  },
@@ -6781,10 +6804,10 @@
6781
6804
  "type": "object",
6782
6805
  "anyOf": [
6783
6806
  {
6784
- "$ref": "#/definitions/singleCondition"
6807
+ "$ref": "#"
6785
6808
  },
6786
6809
  {
6787
- "$ref": "#"
6810
+ "$ref": "#/definitions/singleCondition"
6788
6811
  }
6789
6812
  ]
6790
6813
  },
@@ -6859,10 +6882,10 @@
6859
6882
  "type": "object",
6860
6883
  "anyOf": [
6861
6884
  {
6862
- "$ref": "#/definitions/singleCondition"
6885
+ "$ref": "#/definitions/compositeCondition"
6863
6886
  },
6864
6887
  {
6865
- "$ref": "#/definitions/compositeCondition"
6888
+ "$ref": "#/definitions/singleCondition"
6866
6889
  }
6867
6890
  ]
6868
6891
  },
@@ -7010,33 +7033,6 @@
7010
7033
  "items": {
7011
7034
  "type": "object",
7012
7035
  "anyOf": [
7013
- {
7014
- "properties": {
7015
- "condition": {
7016
- "maxLength": 100,
7017
- "type": "string",
7018
- "fieldDescription": "\n\nA string indicating the name of the condition\n\n"
7019
- },
7020
- "invert": {
7021
- "type": "boolean",
7022
- "fieldDescription": "\n\nA flag indicating whether to invert the boolean result of the condition.\n\n",
7023
- "defaultValue": "false"
7024
- },
7025
- "params": {
7026
- "additionalProperties": true,
7027
- "type": "object",
7028
- "fieldTitle": "Object",
7029
- "fieldDescription": "\n\nThis object represents a map of key/value pairs, where each property name and value corresponds to the parameter name and value respectively.\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"params\": {\n \"someOtherProperty\": \"someValue\",\n \"myCustomProperty\": \"myValue\"\n }\n }\n\n\n"
7030
- }
7031
- },
7032
- "required": [
7033
- "condition"
7034
- ],
7035
- "shortClassName": "singleConditionBean",
7036
- "type": "object",
7037
- "title": "Single Condition",
7038
- "description": "\n\nSingle Conditions are either provided by the host application. See the complete documentation of\n [Conditions](../../conditions/) for more information.\n\n To invert a condition, add the attribute ``invert=\"true\"`` to the condition element.\n This is useful where you want to show the section if a certain condition is not satisfied.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"condition\": \"user_is_logged_in\",\n \"invert\": false\n }\n\n\n"
7039
- },
7040
7036
  {
7041
7037
  "properties": {
7042
7038
  "conditions": {
@@ -7044,10 +7040,10 @@
7044
7040
  "type": "object",
7045
7041
  "anyOf": [
7046
7042
  {
7047
- "$ref": "#"
7043
+ "$ref": "#/definitions/singleCondition"
7048
7044
  },
7049
7045
  {
7050
- "$ref": "#/definitions/singleCondition"
7046
+ "$ref": "#"
7051
7047
  }
7052
7048
  ]
7053
7049
  },
@@ -7069,6 +7065,33 @@
7069
7065
  "type": "object",
7070
7066
  "title": "Composite Condition",
7071
7067
  "description": "\n\nComposite Conditions are composed of a collection of [Single Condition](../single-condition/) / Composite Conditions\n and a type attribute.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"conditions\": [\n {\n \"or\": [\n {\n \"condition\": \"can_attach_file_to_issue\",\n \"invert\": false\n },\n {\n \"condition\": \"is_issue_assigned_to_current_user\",\n \"invert\": false\n }\n ]\n },\n {\n \"condition\": \"user_is_logged_in\",\n \"invert\": false\n }\n ]\n }\n\n\n"
7068
+ },
7069
+ {
7070
+ "properties": {
7071
+ "condition": {
7072
+ "maxLength": 100,
7073
+ "type": "string",
7074
+ "fieldDescription": "\n\nA string indicating the name of the condition\n\n"
7075
+ },
7076
+ "invert": {
7077
+ "type": "boolean",
7078
+ "fieldDescription": "\n\nA flag indicating whether to invert the boolean result of the condition.\n\n",
7079
+ "defaultValue": "false"
7080
+ },
7081
+ "params": {
7082
+ "additionalProperties": true,
7083
+ "type": "object",
7084
+ "fieldTitle": "Object",
7085
+ "fieldDescription": "\n\nThis object represents a map of key/value pairs, where each property name and value corresponds to the parameter name and value respectively.\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"params\": {\n \"someOtherProperty\": \"someValue\",\n \"myCustomProperty\": \"myValue\"\n }\n }\n\n\n"
7086
+ }
7087
+ },
7088
+ "required": [
7089
+ "condition"
7090
+ ],
7091
+ "shortClassName": "singleConditionBean",
7092
+ "type": "object",
7093
+ "title": "Single Condition",
7094
+ "description": "\n\nSingle Conditions are either provided by the host application. See the complete documentation of\n [Conditions](../../conditions/) for more information.\n\n To invert a condition, add the attribute ``invert=\"true\"`` to the condition element.\n This is useful where you want to show the section if a certain condition is not satisfied.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"condition\": \"user_is_logged_in\",\n \"invert\": false\n }\n\n\n"
7072
7095
  }
7073
7096
  ]
7074
7097
  },
@@ -7374,62 +7397,6 @@
7374
7397
  "title": "TextControl",
7375
7398
  "description": "\n\nDefines a text field which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7376
7399
  },
7377
- {
7378
- "properties": {
7379
- "controls": {
7380
- "items": {
7381
- "properties": {
7382
- "label": {
7383
- "$ref": "#/definitions/i18nProperty",
7384
- "fieldDescription": "\n\nText which will appear inside the button\n\n"
7385
- },
7386
- "type": {
7387
- "enum": [
7388
- "button",
7389
- "BUTTON"
7390
- ],
7391
- "type": "string",
7392
- "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
7393
- },
7394
- "key": {
7395
- "pattern": "^[a-zA-Z0-9-]+$",
7396
- "maxLength": 100,
7397
- "type": "string",
7398
- "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
7399
- }
7400
- },
7401
- "required": [
7402
- "label",
7403
- "type",
7404
- "key"
7405
- ],
7406
- "additionalProperties": true,
7407
- "shortClassName": "buttonControlBean",
7408
- "type": "object",
7409
- "title": "ButtonControl",
7410
- "description": "\n\nDefines a button which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7411
- },
7412
- "type": "array",
7413
- "fieldDescription": "\n\nControls which will appear in the control group\n\n"
7414
- },
7415
- "type": {
7416
- "enum": [
7417
- "group",
7418
- "GROUP"
7419
- ],
7420
- "type": "string",
7421
- "fieldDescription": "\n\nThe type field must be set to 'group'\n\n"
7422
- }
7423
- },
7424
- "required": [
7425
- "controls",
7426
- "type"
7427
- ],
7428
- "shortClassName": "controlGroupBean",
7429
- "type": "object",
7430
- "title": "ControlGroup",
7431
- "description": "\n\nDefines a ControlGroup which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n [\n {\n \"type\": \"group\",\n \"controls\": [\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n },\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 1\"\n },\n \"key\": \"my-custom-control-1\"\n }\n ]\n }\n ]\n\n\n"
7432
- },
7433
7400
  {
7434
7401
  "properties": {
7435
7402
  "controls": {
@@ -7530,6 +7497,62 @@
7530
7497
  "type": "object",
7531
7498
  "title": "ButtonControl",
7532
7499
  "description": "\n\nDefines a button which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7500
+ },
7501
+ {
7502
+ "properties": {
7503
+ "controls": {
7504
+ "items": {
7505
+ "properties": {
7506
+ "label": {
7507
+ "$ref": "#/definitions/i18nProperty",
7508
+ "fieldDescription": "\n\nText which will appear inside the button\n\n"
7509
+ },
7510
+ "type": {
7511
+ "enum": [
7512
+ "button",
7513
+ "BUTTON"
7514
+ ],
7515
+ "type": "string",
7516
+ "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
7517
+ },
7518
+ "key": {
7519
+ "pattern": "^[a-zA-Z0-9-]+$",
7520
+ "maxLength": 100,
7521
+ "type": "string",
7522
+ "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
7523
+ }
7524
+ },
7525
+ "required": [
7526
+ "label",
7527
+ "type",
7528
+ "key"
7529
+ ],
7530
+ "additionalProperties": true,
7531
+ "shortClassName": "buttonControlBean",
7532
+ "type": "object",
7533
+ "title": "ButtonControl",
7534
+ "description": "\n\nDefines a button which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7535
+ },
7536
+ "type": "array",
7537
+ "fieldDescription": "\n\nControls which will appear in the control group\n\n"
7538
+ },
7539
+ "type": {
7540
+ "enum": [
7541
+ "group",
7542
+ "GROUP"
7543
+ ],
7544
+ "type": "string",
7545
+ "fieldDescription": "\n\nThe type field must be set to 'group'\n\n"
7546
+ }
7547
+ },
7548
+ "required": [
7549
+ "controls",
7550
+ "type"
7551
+ ],
7552
+ "shortClassName": "controlGroupBean",
7553
+ "type": "object",
7554
+ "title": "ControlGroup",
7555
+ "description": "\n\nDefines a ControlGroup which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n [\n {\n \"type\": \"group\",\n \"controls\": [\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n },\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 1\"\n },\n \"key\": \"my-custom-control-1\"\n }\n ]\n }\n ]\n\n\n"
7533
7556
  }
7534
7557
  ]
7535
7558
  },
@@ -7824,38 +7847,6 @@
7824
7847
  "items": {
7825
7848
  "type": "object",
7826
7849
  "anyOf": [
7827
- {
7828
- "properties": {
7829
- "macroParameter": {
7830
- "maxLength": 100,
7831
- "type": "string",
7832
- "fieldDescription": "\n\nThe Macro Parameter identifier used to store the text\n\n"
7833
- },
7834
- "type": {
7835
- "enum": [
7836
- "text",
7837
- "TEXT"
7838
- ],
7839
- "type": "string",
7840
- "fieldDescription": "\n\nThe type field must be set to 'text'\n\n"
7841
- },
7842
- "key": {
7843
- "pattern": "^[a-zA-Z0-9-]+$",
7844
- "maxLength": 100,
7845
- "type": "string",
7846
- "fieldDescription": "\n\nA key to identify this module.\n\n This key must be unique relative to the add on, with the exception of Confluence macros: Their keys need to be\n globally unique.\n\n Keys must only contain alphanumeric characters and dashes.\n\n The key is used to generate the url to your add-on's module. The url is generated as a combination of your add-on\n key and module key. For example, an add-on which looks like:\n\n {\n \"key\": \"my-addon\",\n \"modules\": {\n \"configurePage\": {\n \"key\": \"configure-me\",\n }\n }\n }\n\n Will have a configuration page module with a URL of `/plugins/servlet/ac/my-addon/configure-me`.\n\n"
7847
- }
7848
- },
7849
- "required": [
7850
- "macroParameter",
7851
- "type",
7852
- "key"
7853
- ],
7854
- "shortClassName": "textControlBean",
7855
- "type": "object",
7856
- "title": "TextControl",
7857
- "description": "\n\nDefines a text field which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7858
- },
7859
7850
  {
7860
7851
  "properties": {
7861
7852
  "controls": {
@@ -7925,6 +7916,70 @@
7925
7916
  "title": "ToggleGroup",
7926
7917
  "description": "\n\nDefines a ToggleGroup which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n [\n {\n \"type\": \"togglegroup\",\n \"macroParameter\": \"toggleGroupMacroParameter\",\n \"controls\": [\n {\n \"type\": \"togglebutton\",\n \"macroParameterValue\": \"macroParameterValue 0\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-toggle-button-0\"\n },\n {\n \"type\": \"togglebutton\",\n \"macroParameterValue\": \"macroParameterValue 1\",\n \"label\": {\n \"value\": \"My Custom Control 1\"\n },\n \"key\": \"my-custom-toggle-button-1\"\n }\n ]\n }\n ]\n\n\n"
7927
7918
  },
7919
+ {
7920
+ "properties": {
7921
+ "macroParameter": {
7922
+ "maxLength": 100,
7923
+ "type": "string",
7924
+ "fieldDescription": "\n\nThe Macro Parameter identifier used to store the text\n\n"
7925
+ },
7926
+ "type": {
7927
+ "enum": [
7928
+ "text",
7929
+ "TEXT"
7930
+ ],
7931
+ "type": "string",
7932
+ "fieldDescription": "\n\nThe type field must be set to 'text'\n\n"
7933
+ },
7934
+ "key": {
7935
+ "pattern": "^[a-zA-Z0-9-]+$",
7936
+ "maxLength": 100,
7937
+ "type": "string",
7938
+ "fieldDescription": "\n\nA key to identify this module.\n\n This key must be unique relative to the add on, with the exception of Confluence macros: Their keys need to be\n globally unique.\n\n Keys must only contain alphanumeric characters and dashes.\n\n The key is used to generate the url to your add-on's module. The url is generated as a combination of your add-on\n key and module key. For example, an add-on which looks like:\n\n {\n \"key\": \"my-addon\",\n \"modules\": {\n \"configurePage\": {\n \"key\": \"configure-me\",\n }\n }\n }\n\n Will have a configuration page module with a URL of `/plugins/servlet/ac/my-addon/configure-me`.\n\n"
7939
+ }
7940
+ },
7941
+ "required": [
7942
+ "macroParameter",
7943
+ "type",
7944
+ "key"
7945
+ ],
7946
+ "shortClassName": "textControlBean",
7947
+ "type": "object",
7948
+ "title": "TextControl",
7949
+ "description": "\n\nDefines a text field which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7950
+ },
7951
+ {
7952
+ "properties": {
7953
+ "label": {
7954
+ "$ref": "#/definitions/i18nProperty",
7955
+ "fieldDescription": "\n\nText which will appear inside the button\n\n"
7956
+ },
7957
+ "type": {
7958
+ "enum": [
7959
+ "button",
7960
+ "BUTTON"
7961
+ ],
7962
+ "type": "string",
7963
+ "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
7964
+ },
7965
+ "key": {
7966
+ "pattern": "^[a-zA-Z0-9-]+$",
7967
+ "maxLength": 100,
7968
+ "type": "string",
7969
+ "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
7970
+ }
7971
+ },
7972
+ "required": [
7973
+ "label",
7974
+ "type",
7975
+ "key"
7976
+ ],
7977
+ "additionalProperties": true,
7978
+ "shortClassName": "buttonControlBean",
7979
+ "type": "object",
7980
+ "title": "ButtonControl",
7981
+ "description": "\n\nDefines a button which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
7982
+ },
7928
7983
  {
7929
7984
  "properties": {
7930
7985
  "controls": {
@@ -7980,38 +8035,6 @@
7980
8035
  "type": "object",
7981
8036
  "title": "ControlGroup",
7982
8037
  "description": "\n\nDefines a ControlGroup which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n [\n {\n \"type\": \"group\",\n \"controls\": [\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n },\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 1\"\n },\n \"key\": \"my-custom-control-1\"\n }\n ]\n }\n ]\n\n\n"
7983
- },
7984
- {
7985
- "properties": {
7986
- "label": {
7987
- "$ref": "#/definitions/i18nProperty",
7988
- "fieldDescription": "\n\nText which will appear inside the button\n\n"
7989
- },
7990
- "type": {
7991
- "enum": [
7992
- "button",
7993
- "BUTTON"
7994
- ],
7995
- "type": "string",
7996
- "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
7997
- },
7998
- "key": {
7999
- "pattern": "^[a-zA-Z0-9-]+$",
8000
- "maxLength": 100,
8001
- "type": "string",
8002
- "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
8003
- }
8004
- },
8005
- "required": [
8006
- "label",
8007
- "type",
8008
- "key"
8009
- ],
8010
- "additionalProperties": true,
8011
- "shortClassName": "buttonControlBean",
8012
- "type": "object",
8013
- "title": "ButtonControl",
8014
- "description": "\n\nDefines a button which may appear in control extension points such as the property panel\n\n <p><b>Example</b></p>\n\n\n\n\n\n {\n \"type\": \"button\",\n \"label\": {\n \"value\": \"My Custom Control 0\"\n },\n \"key\": \"my-custom-control-0\"\n }\n\n\n"
8015
8038
  }
8016
8039
  ]
8017
8040
  },
@@ -8292,6 +8315,22 @@
8292
8315
  "title": "Dialog Options",
8293
8316
  "description": "\n\nOptions for a modal dialog <a href=\"../web-item-target/\">web item target</a> or <a href=\"../dialog/\">common module</a>.\n\n <p>\n These options are a subset of those available via the <a href=\"../../jsapi/dialog/\">JavaScript API</a>.\n </p>\n\n <h2>Web Item Example</h2>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"dialog\",\n \"options\": {\n \"height\": \"100px\",\n \"width\": \"200px\"\n }\n }\n }\n\n\n\n\n <h2>Dialog Example</h2>\n\n\n\n\n\n {\n \"modules\": {\n \"dialogs\": [\n {\n \"url\": \"/my-dialog-content\",\n \"options\": {\n \"size\": \"fullscreen\",\n \"header\": {\n \"value\": \"Example Dialog\"\n }\n },\n \"key\": \"dialog-module-key\"\n }\n ]\n }\n }\n\n\n"
8294
8317
  },
8318
+ {
8319
+ "properties": {
8320
+ "key": {
8321
+ "maxLength": 100,
8322
+ "type": "string",
8323
+ "fieldDescription": "\n\n<p>The key of a <a href=\"../dialog/\">Dialog</a> module declared in this Connect add-on.</p>\n\n <p>\n The dialog module will include the <a href=\"../dialog-options/\">Dialog Options</a>\n that would otherwise need to be specified directly in this options object.\n </p>\n\n"
8324
+ }
8325
+ },
8326
+ "required": [
8327
+ "key"
8328
+ ],
8329
+ "shortClassName": "dialogModuleOptions",
8330
+ "type": "object",
8331
+ "title": "Dialog Module Options",
8332
+ "description": "\n\nOptions for a web-item targeting a common <a href=\"../dialog/\">dialog module</a>.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"dialogmodule\",\n \"options\": {\n \"key\": \"dialog-module-key\"\n }\n }\n }\n\n\n"
8333
+ },
8295
8334
  {
8296
8335
  "properties": {
8297
8336
  "offsetX": {
@@ -8338,22 +8377,6 @@
8338
8377
  "type": "object",
8339
8378
  "title": "Inline Dialog Options",
8340
8379
  "description": "\n\nOptions for an inline dialog target\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"inlinedialog\",\n \"options\": {\n \"onHover\": true,\n \"offsetX\": \"30px\",\n \"offsetY\": \"20px\"\n }\n }\n }\n\n\n"
8341
- },
8342
- {
8343
- "properties": {
8344
- "key": {
8345
- "maxLength": 100,
8346
- "type": "string",
8347
- "fieldDescription": "\n\n<p>The key of a <a href=\"../dialog/\">Dialog</a> module declared in this Connect add-on.</p>\n\n <p>\n The dialog module will include the <a href=\"../dialog-options/\">Dialog Options</a>\n that would otherwise need to be specified directly in this options object.\n </p>\n\n"
8348
- }
8349
- },
8350
- "required": [
8351
- "key"
8352
- ],
8353
- "shortClassName": "dialogModuleOptions",
8354
- "type": "object",
8355
- "title": "Dialog Module Options",
8356
- "description": "\n\nOptions for a web-item targeting a common <a href=\"../dialog/\">dialog module</a>.\n\n <h3>Example</h3>\n\n\n\n\n\n {\n \"target\": {\n \"type\": \"dialogmodule\",\n \"options\": {\n \"key\": \"dialog-module-key\"\n }\n }\n }\n\n\n"
8357
8380
  }
8358
8381
  ]
8359
8382
  },
@@ -8768,6 +8791,41 @@
8768
8791
  },
8769
8792
  "baseUrl": {
8770
8793
  "type": "string"
8794
+ },
8795
+ "operations": {
8796
+ "description": "The type of operations done in the remote",
8797
+ "type": "array",
8798
+ "items": {
8799
+ "type": "string",
8800
+ "enum": [
8801
+ "storage",
8802
+ "other"
8803
+ ]
8804
+ },
8805
+ "minItems": 1
8806
+ },
8807
+ "storage": {
8808
+ "description": "Options related to remote storage",
8809
+ "type": "object",
8810
+ "required": [
8811
+ "classifications"
8812
+ ],
8813
+ "additionalProperties": false,
8814
+ "properties": {
8815
+ "classifications": {
8816
+ "description": "Labels to classify the type of data stored",
8817
+ "type": "array",
8818
+ "items": {
8819
+ "type": "string",
8820
+ "enum": [
8821
+ "ugc",
8822
+ "pii",
8823
+ "other"
8824
+ ]
8825
+ },
8826
+ "minItems": 1
8827
+ }
8828
+ }
8771
8829
  }
8772
8830
  }
8773
8831
  }
@@ -9651,10 +9709,10 @@
9651
9709
  "type": "object",
9652
9710
  "anyOf": [
9653
9711
  {
9654
- "$ref": "#"
9712
+ "$ref": "#/definitions/singleCondition"
9655
9713
  },
9656
9714
  {
9657
- "$ref": "#/definitions/singleCondition"
9715
+ "$ref": "#"
9658
9716
  }
9659
9717
  ]
9660
9718
  },