diff --git a/.github/config.json b/.github/config.json index bc99c2ed07..c4621136f1 100644 --- a/.github/config.json +++ b/.github/config.json @@ -1 +1,446 @@ -"{ runners: [Collection] }" \ No newline at end of file +{ + "runners": [ + { + "versioning": { + "source": "milestones", + "type": "SemVer" + }, + "prereleaseName": "alpha", + "issue": { + "labels": { + "Actions Pod": { + "conditions": [ + { + "label": "JS",export default { + results: [], + labels: () => { + return Fetch_Label_Config.data.runners + }, + getPodLabels: () => { + return Object.keys(Fetch_Label_Config.data.runners[0].issue.labels); + }, + getPodForLabel: (label) => { + const config = Fetch_Label_Config.data.runners; + const pods = this.getPodLabels(); + let foundPod; + pods.map((podLabel) => { + const foundLabel = config[0].issue.labels[podLabel].conditions.find((condition) => { + return condition.label === label + }) + if (foundLabel) { + foundPod = podLabel + } + }); + return foundPod; + }, + removeLabelFromPods: (label, config) => { + const pods = this.getPodLabels(); + pods.map((podLabel) => { + config[0].issue.labels[podLabel].conditions = config[0].issue.labels[podLabel].conditions.filter((condition) => { + return condition.label !== label + }) + }); + return config; + }, + moveLabelPod: (config) => { + let cleanConfig = this.removeLabelFromPods(Table1.selectedRow.name, config); + config[0].issue.labels[edit_pod.selectedOptionValue].conditions.push({ + label: Table1.selectedRow.name, + type: "hasLabel", + value: true + }); + return config; + }, + renameConfigLabel: (config) => { + const podLabels = this.getPodLabels(); + const changedLabel = Table1.selectedRow.name; + let podLabelUpdated = podLabels.includes(changedLabel); + podLabels.map((label) => { + const conditions = config[0].issue.labels[label].conditions; + conditions.map((condition) => { + showAlert(changedLabel); + if (condition.label === changedLabel) { + condition.label = edit_name.text + } + }) + }) + if (podLabelUpdated) { + config[0].issue.labels[edit_name.text] = config[0].issue.labels[changedLabel] + if (edit_name.text !== changedLabel) + config[0].issue.labels = _.omit(config[0].issue.labels, changedLabel) + } + return config; + }, + getNewLabelData: () => { + let newConfig = this.moveLabelPod(Fetch_Label_Config.data.runners); + newConfig = this.renameConfigLabel(newConfig); + return newConfig; + }, + updateLabel: () => { + Update_Label.run(() => { + let newConfig = this.moveLabelPod(Fetch_Label_Config.data.runners); + newConfig = this.renameConfigLabel(newConfig); + Update_Label_Config.run(() => { + LabelConfigDao.refreshPage(); + }, undefined, newConfig); + }); + }, + refreshPage: () => { + Fetch_Labels.run(); + if (Table1.searchText.length > 0) + search_labels.run(); + Fetch_Label_Config.run(); + }, + create: () => { + Create_Label.run(() => { + let config = Fetch_Label_Config.data; + config[0].issue.labels[pod_selector.selectedOptionValue].conditions.push({ + label: label_name.text, + type: "hasLabel", + value: true + }); + Update_Label_Config.run(() => { + LabelConfigDao.refreshPage(); + resetWidget('Modal1', true); + }, undefined, config); + }) + }, + delete: () => { + const config = this.removeLabelFromPods(Table1.selectedRow.name, Fetch_Label_Config.data); + Delete_Label.run(() => { + Update_Label_Config.run(() => this.refreshPage(), undefined, this.params); + }, undefined, config); + } +} + "type": "hasLabel", + "value": true + }, + { + "label": "Datasources", + "type": "hasLabel", + "value": true + }, + { + "label": "Google Sheets", + "type": "hasLabel", + "value": true + }, + { + "label": "API pane", + "type": "hasLabel", + "value": true + }, + { + "label": "Query Editor", + "type": "hasLabel", + "value": true + }, + { + "label": "Auto Complete", + "type": "hasLabel", + "value": true + }, + { + "label": "Actions", + "type": "hasLabel", + "value": true + }, + { + "label": "New Integration", + "type": "hasLabel", + "value": true + }, + { + "label": "JSEditor", + "type": "hasLabel", + "value": true + }, + { + "label": "JSSnippets", + "type": "hasLabel", + "value": true + }, + { + "label": "JSLinting&Error", + "type": "hasLabel", + "value": true + } + ], + "requires": 1 + }, + "Widgets": { + "conditions": [ + { + "label": "Button Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Chart Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Checkbox Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Container Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Date Picker Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Select Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "File Picker Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Form Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Image Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Input Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "List Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "MultiSelect Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Map Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Modal Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Radio Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Rich Text Editor Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Tab Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Table Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Text Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "Video Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "New Widget", + "type": "hasLabel", + "value": true + }, + { + "label": "iFrame", + "type": "hasLabel", + "value": true + }, + { + "label": "Menu Button", + "type": "hasLabel", + "value": true + }, + { + "label": "Divider", + "type": "hasLabel", + "value": true + }, + { + "label": "Rating", + "type": "hasLabel", + "value": true + }, + { + "label": "Widget Validation", + "type": "hasLabel", + "value": true + }, + { + "label": "Widgets", + "type": "hasLabel", + "value": true + }, + { + "label": "reallabel", + "type": "hasLabel", + "value": true + } + ], + "requires": 1 + }, + "Platform": { + "conditions": [ + { + "label": "ACL", + "type": "hasLabel", + "value": true + }, + { + "label": "Debugger", + "type": "hasLabel", + "value": true + }, + { + "label": "Import-Export-App", + "type": "hasLabel", + "value": true + }, + { + "label": "Omnibar", + "type": "hasLabel", + "value": true + }, + { + "label": "Login / Signup", + "type": "hasLabel", + "value": true + }, + { + "label": "Entity Explorer", + "type": "hasLabel", + "value": true + }, + { + "label": "Example apps", + "type": "hasLabel", + "value": true + }, + { + "label": "Deployment", + "type": "hasLabel", + "value": true + }, + { + "label": "Home Page", + "type": "hasLabel", + "value": true + }, + { + "label": "In App Comms", + "type": "hasLabel", + "value": true + }, + { + "label": "Generate Page", + "type": "hasLabel", + "value": true + }, + { + "label": "Settings", + "type": "hasLabel", + "value": true + }, + { + "label": "Telemetry", + "type": "hasLabel", + "value": true + }, + { + "label": "Editor", + "type": "hasLabel", + "value": true + }, + { + "label": "Version Control", + "type": "hasLabel", + "value": true + }, + { + "label": "Collaboration", + "type": "hasLabel", + "value": true + }, + { + "label": "Platform", + "type": "hasLabel", + "value": true + }, + { + "label": "Onboarding", + "type": "hasLabel", + "value": true + } + ], + "requires": 1 + }, + "UI Building Pod": { + "conditions": [ + { + "label": "Widgets", + "type": "hasLabel", + "value": true + }, + { + "label": "Pages", + "type": "hasLabel", + "value": true + }, + { + "label": "Property Pane", + "type": "hasLabel", + "value": true + }, + { + "label": "UI Building", + "type": "hasLabel", + "value": true + }, + { + "label": "UI Performance", + "type": "hasLabel", + "value": true + } + ], + "requires": 1 + } + } + }, + "root": "." + } + ] +}