@forge/manifest 2.5.1-next.4 → 2.6.0-next.8

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.
@@ -5417,10 +5417,10 @@
5417
5417
  "type": "object",
5418
5418
  "anyOf": [
5419
5419
  {
5420
- "$ref": "#/definitions/compositeCondition"
5420
+ "$ref": "#/definitions/singleCondition"
5421
5421
  },
5422
5422
  {
5423
- "$ref": "#/definitions/singleCondition"
5423
+ "$ref": "#/definitions/compositeCondition"
5424
5424
  }
5425
5425
  ]
5426
5426
  },
@@ -5543,10 +5543,10 @@
5543
5543
  "type": "object",
5544
5544
  "anyOf": [
5545
5545
  {
5546
- "$ref": "#/definitions/singleCondition"
5546
+ "$ref": "#/definitions/compositeCondition"
5547
5547
  },
5548
5548
  {
5549
- "$ref": "#/definitions/compositeCondition"
5549
+ "$ref": "#/definitions/singleCondition"
5550
5550
  }
5551
5551
  ]
5552
5552
  },
@@ -5607,10 +5607,10 @@
5607
5607
  "type": "object",
5608
5608
  "anyOf": [
5609
5609
  {
5610
- "$ref": "#/definitions/compositeCondition"
5610
+ "$ref": "#/definitions/singleCondition"
5611
5611
  },
5612
5612
  {
5613
- "$ref": "#/definitions/singleCondition"
5613
+ "$ref": "#/definitions/compositeCondition"
5614
5614
  }
5615
5615
  ]
5616
5616
  },
@@ -5723,10 +5723,10 @@
5723
5723
  "type": "object",
5724
5724
  "anyOf": [
5725
5725
  {
5726
- "$ref": "#/definitions/compositeCondition"
5726
+ "$ref": "#/definitions/singleCondition"
5727
5727
  },
5728
5728
  {
5729
- "$ref": "#/definitions/singleCondition"
5729
+ "$ref": "#/definitions/compositeCondition"
5730
5730
  }
5731
5731
  ]
5732
5732
  },
@@ -5796,6 +5796,53 @@
5796
5796
  "type": "object",
5797
5797
  "fieldDescription": "\n\n<p>An object containing options which vary based on the type of web item target you are implementing.</p>\n\n <p>Currently-allowed options are:</p>\n <ul>\n <li><a href=\"../inline-dialog-options/\">Inline Dialog Options</a> when type is \"inlinedialog\", and</li>\n <li><a href=\"../dialog-options/\">Dialog Options</a> when type is \"dialog\"</li>\n <li><a href=\"../dialog-module-options/\">Dialog Module Options</a> when type is \"dialogmodule\"</li>\n </ul>\n\n",
5798
5798
  "anyOf": [
5799
+ {
5800
+ "properties": {
5801
+ "offsetX": {
5802
+ "maxLength": 10,
5803
+ "type": "string",
5804
+ "fieldDescription": "\n\nSets an offset distance of the inline-dialog from the trigger element along the x-axis in pixels\n\n"
5805
+ },
5806
+ "offsetY": {
5807
+ "maxLength": 10,
5808
+ "type": "string",
5809
+ "fieldDescription": "\n\nSets an offset distance of the inline-dialog from the trigger element along the y-axis in pixels\n\n"
5810
+ },
5811
+ "width": {
5812
+ "maxLength": 10,
5813
+ "type": "string",
5814
+ "fieldDescription": "\n\nSets how wide the dialog is in pixels.\n\n"
5815
+ },
5816
+ "onTop": {
5817
+ "type": "boolean",
5818
+ "fieldDescription": "\n\nDetermines if the dialog should be shown above the trigger or not. If this option is true but there is insufficient room above the trigger the inline-dialog will be flipped to display below it\n\n"
5819
+ },
5820
+ "showDelay": {
5821
+ "type": "integer",
5822
+ "fieldDescription": "\n\nDetermines how long in milliseconds after a show trigger is fired (such as a trigger click) until the dialog is shown\n\n"
5823
+ },
5824
+ "closeOthers": {
5825
+ "type": "boolean",
5826
+ "fieldDescription": "\n\nDetermines if all other dialogs on the screen are closed when this one is opened\n\n"
5827
+ },
5828
+ "persistent": {
5829
+ "type": "boolean",
5830
+ "fieldDescription": "\n\nThis option, ignores the 'closeOthers' option\n\n"
5831
+ },
5832
+ "onHover": {
5833
+ "type": "boolean",
5834
+ "fieldDescription": "\n\nDetermines whether the inline-Dialog will show on a mouseOver or mouseClick of the trigger\n\n"
5835
+ },
5836
+ "isRelativeToMouse": {
5837
+ "type": "boolean",
5838
+ "fieldDescription": "\n\nDetermines if the dialog should be shown relative to where the mouse is at the time of the event trigger (normally a click) if set to false the dialog will show aligned to the left of the trigger with the arrow showing at the center\n\n"
5839
+ }
5840
+ },
5841
+ "shortClassName": "inlineDialogOptions",
5842
+ "type": "object",
5843
+ "title": "Inline Dialog Options",
5844
+ "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"
5845
+ },
5799
5846
  {
5800
5847
  "properties": {
5801
5848
  "key": {
@@ -5856,53 +5903,6 @@
5856
5903
  "type": "object",
5857
5904
  "title": "Dialog Options",
5858
5905
  "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"
5859
- },
5860
- {
5861
- "properties": {
5862
- "offsetX": {
5863
- "maxLength": 10,
5864
- "type": "string",
5865
- "fieldDescription": "\n\nSets an offset distance of the inline-dialog from the trigger element along the x-axis in pixels\n\n"
5866
- },
5867
- "offsetY": {
5868
- "maxLength": 10,
5869
- "type": "string",
5870
- "fieldDescription": "\n\nSets an offset distance of the inline-dialog from the trigger element along the y-axis in pixels\n\n"
5871
- },
5872
- "width": {
5873
- "maxLength": 10,
5874
- "type": "string",
5875
- "fieldDescription": "\n\nSets how wide the dialog is in pixels.\n\n"
5876
- },
5877
- "onTop": {
5878
- "type": "boolean",
5879
- "fieldDescription": "\n\nDetermines if the dialog should be shown above the trigger or not. If this option is true but there is insufficient room above the trigger the inline-dialog will be flipped to display below it\n\n"
5880
- },
5881
- "showDelay": {
5882
- "type": "integer",
5883
- "fieldDescription": "\n\nDetermines how long in milliseconds after a show trigger is fired (such as a trigger click) until the dialog is shown\n\n"
5884
- },
5885
- "closeOthers": {
5886
- "type": "boolean",
5887
- "fieldDescription": "\n\nDetermines if all other dialogs on the screen are closed when this one is opened\n\n"
5888
- },
5889
- "persistent": {
5890
- "type": "boolean",
5891
- "fieldDescription": "\n\nThis option, ignores the 'closeOthers' option\n\n"
5892
- },
5893
- "onHover": {
5894
- "type": "boolean",
5895
- "fieldDescription": "\n\nDetermines whether the inline-Dialog will show on a mouseOver or mouseClick of the trigger\n\n"
5896
- },
5897
- "isRelativeToMouse": {
5898
- "type": "boolean",
5899
- "fieldDescription": "\n\nDetermines if the dialog should be shown relative to where the mouse is at the time of the event trigger (normally a click) if set to false the dialog will show aligned to the left of the trigger with the arrow showing at the center\n\n"
5900
- }
5901
- },
5902
- "shortClassName": "inlineDialogOptions",
5903
- "type": "object",
5904
- "title": "Inline Dialog Options",
5905
- "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"
5906
5906
  }
5907
5907
  ]
5908
5908
  },
@@ -6071,10 +6071,10 @@
6071
6071
  "type": "object",
6072
6072
  "anyOf": [
6073
6073
  {
6074
- "$ref": "#/definitions/compositeCondition"
6074
+ "$ref": "#/definitions/singleCondition"
6075
6075
  },
6076
6076
  {
6077
- "$ref": "#/definitions/singleCondition"
6077
+ "$ref": "#/definitions/compositeCondition"
6078
6078
  }
6079
6079
  ]
6080
6080
  },
@@ -6222,33 +6222,6 @@
6222
6222
  "items": {
6223
6223
  "type": "object",
6224
6224
  "anyOf": [
6225
- {
6226
- "properties": {
6227
- "condition": {
6228
- "maxLength": 100,
6229
- "type": "string",
6230
- "fieldDescription": "\n\nA string indicating the name of the condition\n\n"
6231
- },
6232
- "invert": {
6233
- "type": "boolean",
6234
- "fieldDescription": "\n\nA flag indicating whether to invert the boolean result of the condition.\n\n",
6235
- "defaultValue": "false"
6236
- },
6237
- "params": {
6238
- "additionalProperties": true,
6239
- "type": "object",
6240
- "fieldTitle": "Object",
6241
- "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"
6242
- }
6243
- },
6244
- "required": [
6245
- "condition"
6246
- ],
6247
- "shortClassName": "singleConditionBean",
6248
- "type": "object",
6249
- "title": "Single Condition",
6250
- "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"
6251
- },
6252
6225
  {
6253
6226
  "properties": {
6254
6227
  "conditions": {
@@ -6256,10 +6229,10 @@
6256
6229
  "type": "object",
6257
6230
  "anyOf": [
6258
6231
  {
6259
- "$ref": "#/definitions/singleCondition"
6232
+ "$ref": "#"
6260
6233
  },
6261
6234
  {
6262
- "$ref": "#"
6235
+ "$ref": "#/definitions/singleCondition"
6263
6236
  }
6264
6237
  ]
6265
6238
  },
@@ -6281,6 +6254,33 @@
6281
6254
  "type": "object",
6282
6255
  "title": "Composite Condition",
6283
6256
  "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"
6257
+ },
6258
+ {
6259
+ "properties": {
6260
+ "condition": {
6261
+ "maxLength": 100,
6262
+ "type": "string",
6263
+ "fieldDescription": "\n\nA string indicating the name of the condition\n\n"
6264
+ },
6265
+ "invert": {
6266
+ "type": "boolean",
6267
+ "fieldDescription": "\n\nA flag indicating whether to invert the boolean result of the condition.\n\n",
6268
+ "defaultValue": "false"
6269
+ },
6270
+ "params": {
6271
+ "additionalProperties": true,
6272
+ "type": "object",
6273
+ "fieldTitle": "Object",
6274
+ "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"
6275
+ }
6276
+ },
6277
+ "required": [
6278
+ "condition"
6279
+ ],
6280
+ "shortClassName": "singleConditionBean",
6281
+ "type": "object",
6282
+ "title": "Single Condition",
6283
+ "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"
6284
6284
  }
6285
6285
  ]
6286
6286
  },
@@ -6554,62 +6554,6 @@
6554
6554
  "items": {
6555
6555
  "type": "object",
6556
6556
  "anyOf": [
6557
- {
6558
- "properties": {
6559
- "controls": {
6560
- "items": {
6561
- "properties": {
6562
- "label": {
6563
- "$ref": "#/definitions/i18nProperty",
6564
- "fieldDescription": "\n\nText which will appear inside the button\n\n"
6565
- },
6566
- "type": {
6567
- "enum": [
6568
- "button",
6569
- "BUTTON"
6570
- ],
6571
- "type": "string",
6572
- "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
6573
- },
6574
- "key": {
6575
- "pattern": "^[a-zA-Z0-9-]+$",
6576
- "maxLength": 100,
6577
- "type": "string",
6578
- "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
6579
- }
6580
- },
6581
- "required": [
6582
- "label",
6583
- "type",
6584
- "key"
6585
- ],
6586
- "additionalProperties": true,
6587
- "shortClassName": "buttonControlBean",
6588
- "type": "object",
6589
- "title": "ButtonControl",
6590
- "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"
6591
- },
6592
- "type": "array",
6593
- "fieldDescription": "\n\nControls which will appear in the control group\n\n"
6594
- },
6595
- "type": {
6596
- "enum": [
6597
- "group",
6598
- "GROUP"
6599
- ],
6600
- "type": "string",
6601
- "fieldDescription": "\n\nThe type field must be set to 'group'\n\n"
6602
- }
6603
- },
6604
- "required": [
6605
- "controls",
6606
- "type"
6607
- ],
6608
- "shortClassName": "controlGroupBean",
6609
- "type": "object",
6610
- "title": "ControlGroup",
6611
- "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"
6612
- },
6613
6557
  {
6614
6558
  "properties": {
6615
6559
  "controls": {
@@ -6742,6 +6686,62 @@
6742
6686
  "type": "object",
6743
6687
  "title": "ButtonControl",
6744
6688
  "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"
6689
+ },
6690
+ {
6691
+ "properties": {
6692
+ "controls": {
6693
+ "items": {
6694
+ "properties": {
6695
+ "label": {
6696
+ "$ref": "#/definitions/i18nProperty",
6697
+ "fieldDescription": "\n\nText which will appear inside the button\n\n"
6698
+ },
6699
+ "type": {
6700
+ "enum": [
6701
+ "button",
6702
+ "BUTTON"
6703
+ ],
6704
+ "type": "string",
6705
+ "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
6706
+ },
6707
+ "key": {
6708
+ "pattern": "^[a-zA-Z0-9-]+$",
6709
+ "maxLength": 100,
6710
+ "type": "string",
6711
+ "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
6712
+ }
6713
+ },
6714
+ "required": [
6715
+ "label",
6716
+ "type",
6717
+ "key"
6718
+ ],
6719
+ "additionalProperties": true,
6720
+ "shortClassName": "buttonControlBean",
6721
+ "type": "object",
6722
+ "title": "ButtonControl",
6723
+ "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"
6724
+ },
6725
+ "type": "array",
6726
+ "fieldDescription": "\n\nControls which will appear in the control group\n\n"
6727
+ },
6728
+ "type": {
6729
+ "enum": [
6730
+ "group",
6731
+ "GROUP"
6732
+ ],
6733
+ "type": "string",
6734
+ "fieldDescription": "\n\nThe type field must be set to 'group'\n\n"
6735
+ }
6736
+ },
6737
+ "required": [
6738
+ "controls",
6739
+ "type"
6740
+ ],
6741
+ "shortClassName": "controlGroupBean",
6742
+ "type": "object",
6743
+ "title": "ControlGroup",
6744
+ "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"
6745
6745
  }
6746
6746
  ]
6747
6747
  },
@@ -7038,59 +7038,35 @@
7038
7038
  "anyOf": [
7039
7039
  {
7040
7040
  "properties": {
7041
- "controls": {
7042
- "items": {
7043
- "properties": {
7044
- "label": {
7045
- "$ref": "#/definitions/i18nProperty",
7046
- "fieldDescription": "\n\nText which will appear inside the button\n\n"
7047
- },
7048
- "type": {
7049
- "enum": [
7050
- "button",
7051
- "BUTTON"
7052
- ],
7053
- "type": "string",
7054
- "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
7055
- },
7056
- "key": {
7057
- "pattern": "^[a-zA-Z0-9-]+$",
7058
- "maxLength": 100,
7059
- "type": "string",
7060
- "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
7061
- }
7062
- },
7063
- "required": [
7064
- "label",
7065
- "type",
7066
- "key"
7067
- ],
7068
- "additionalProperties": true,
7069
- "shortClassName": "buttonControlBean",
7070
- "type": "object",
7071
- "title": "ButtonControl",
7072
- "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"
7073
- },
7074
- "type": "array",
7075
- "fieldDescription": "\n\nControls which will appear in the control group\n\n"
7041
+ "macroParameter": {
7042
+ "maxLength": 100,
7043
+ "type": "string",
7044
+ "fieldDescription": "\n\nThe Macro Parameter identifier used to store the text\n\n"
7076
7045
  },
7077
7046
  "type": {
7078
7047
  "enum": [
7079
- "group",
7080
- "GROUP"
7048
+ "text",
7049
+ "TEXT"
7081
7050
  ],
7082
7051
  "type": "string",
7083
- "fieldDescription": "\n\nThe type field must be set to 'group'\n\n"
7052
+ "fieldDescription": "\n\nThe type field must be set to 'text'\n\n"
7053
+ },
7054
+ "key": {
7055
+ "pattern": "^[a-zA-Z0-9-]+$",
7056
+ "maxLength": 100,
7057
+ "type": "string",
7058
+ "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"
7084
7059
  }
7085
7060
  },
7086
7061
  "required": [
7087
- "controls",
7088
- "type"
7062
+ "macroParameter",
7063
+ "type",
7064
+ "key"
7089
7065
  ],
7090
- "shortClassName": "controlGroupBean",
7066
+ "shortClassName": "textControlBean",
7091
7067
  "type": "object",
7092
- "title": "ControlGroup",
7093
- "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"
7068
+ "title": "TextControl",
7069
+ "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"
7094
7070
  },
7095
7071
  {
7096
7072
  "properties": {
@@ -7124,38 +7100,6 @@
7124
7100
  "title": "ButtonControl",
7125
7101
  "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"
7126
7102
  },
7127
- {
7128
- "properties": {
7129
- "macroParameter": {
7130
- "maxLength": 100,
7131
- "type": "string",
7132
- "fieldDescription": "\n\nThe Macro Parameter identifier used to store the text\n\n"
7133
- },
7134
- "type": {
7135
- "enum": [
7136
- "text",
7137
- "TEXT"
7138
- ],
7139
- "type": "string",
7140
- "fieldDescription": "\n\nThe type field must be set to 'text'\n\n"
7141
- },
7142
- "key": {
7143
- "pattern": "^[a-zA-Z0-9-]+$",
7144
- "maxLength": 100,
7145
- "type": "string",
7146
- "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"
7147
- }
7148
- },
7149
- "required": [
7150
- "macroParameter",
7151
- "type",
7152
- "key"
7153
- ],
7154
- "shortClassName": "textControlBean",
7155
- "type": "object",
7156
- "title": "TextControl",
7157
- "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"
7158
- },
7159
7103
  {
7160
7104
  "properties": {
7161
7105
  "controls": {
@@ -7224,6 +7168,62 @@
7224
7168
  "type": "object",
7225
7169
  "title": "ToggleGroup",
7226
7170
  "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"
7171
+ },
7172
+ {
7173
+ "properties": {
7174
+ "controls": {
7175
+ "items": {
7176
+ "properties": {
7177
+ "label": {
7178
+ "$ref": "#/definitions/i18nProperty",
7179
+ "fieldDescription": "\n\nText which will appear inside the button\n\n"
7180
+ },
7181
+ "type": {
7182
+ "enum": [
7183
+ "button",
7184
+ "BUTTON"
7185
+ ],
7186
+ "type": "string",
7187
+ "fieldDescription": "\n\nThe type field must be set to 'button'\n\n"
7188
+ },
7189
+ "key": {
7190
+ "pattern": "^[a-zA-Z0-9-]+$",
7191
+ "maxLength": 100,
7192
+ "type": "string",
7193
+ "fieldDescription": "\n\nA key to identify the control. Keys must only contain alphanumeric characters and dashes, and must be unique\n\n"
7194
+ }
7195
+ },
7196
+ "required": [
7197
+ "label",
7198
+ "type",
7199
+ "key"
7200
+ ],
7201
+ "additionalProperties": true,
7202
+ "shortClassName": "buttonControlBean",
7203
+ "type": "object",
7204
+ "title": "ButtonControl",
7205
+ "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"
7206
+ },
7207
+ "type": "array",
7208
+ "fieldDescription": "\n\nControls which will appear in the control group\n\n"
7209
+ },
7210
+ "type": {
7211
+ "enum": [
7212
+ "group",
7213
+ "GROUP"
7214
+ ],
7215
+ "type": "string",
7216
+ "fieldDescription": "\n\nThe type field must be set to 'group'\n\n"
7217
+ }
7218
+ },
7219
+ "required": [
7220
+ "controls",
7221
+ "type"
7222
+ ],
7223
+ "shortClassName": "controlGroupBean",
7224
+ "type": "object",
7225
+ "title": "ControlGroup",
7226
+ "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"
7227
7227
  }
7228
7228
  ]
7229
7229
  },
@@ -7426,10 +7426,10 @@
7426
7426
  "type": "object",
7427
7427
  "anyOf": [
7428
7428
  {
7429
- "$ref": "#/definitions/singleCondition"
7429
+ "$ref": "#/definitions/compositeCondition"
7430
7430
  },
7431
7431
  {
7432
- "$ref": "#/definitions/compositeCondition"
7432
+ "$ref": "#/definitions/singleCondition"
7433
7433
  }
7434
7434
  ]
7435
7435
  },
@@ -7506,6 +7506,22 @@
7506
7506
  "title": "Inline Dialog Options",
7507
7507
  "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"
7508
7508
  },
7509
+ {
7510
+ "properties": {
7511
+ "key": {
7512
+ "maxLength": 100,
7513
+ "type": "string",
7514
+ "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"
7515
+ }
7516
+ },
7517
+ "required": [
7518
+ "key"
7519
+ ],
7520
+ "shortClassName": "dialogModuleOptions",
7521
+ "type": "object",
7522
+ "title": "Dialog Module Options",
7523
+ "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"
7524
+ },
7509
7525
  {
7510
7526
  "properties": {
7511
7527
  "size": {
@@ -7550,22 +7566,6 @@
7550
7566
  "type": "object",
7551
7567
  "title": "Dialog Options",
7552
7568
  "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"
7553
- },
7554
- {
7555
- "properties": {
7556
- "key": {
7557
- "maxLength": 100,
7558
- "type": "string",
7559
- "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"
7560
- }
7561
- },
7562
- "required": [
7563
- "key"
7564
- ],
7565
- "shortClassName": "dialogModuleOptions",
7566
- "type": "object",
7567
- "title": "Dialog Module Options",
7568
- "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"
7569
7569
  }
7570
7570
  ]
7571
7571
  },
@@ -8855,10 +8855,10 @@
8855
8855
  "type": "object",
8856
8856
  "anyOf": [
8857
8857
  {
8858
- "$ref": "#/definitions/singleCondition"
8858
+ "$ref": "#"
8859
8859
  },
8860
8860
  {
8861
- "$ref": "#"
8861
+ "$ref": "#/definitions/singleCondition"
8862
8862
  }
8863
8863
  ]
8864
8864
  },