0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-25 18:50:27 +01:00

Merge pull request #93 from paviliondev/es-lint

Apply es-lint to javascripts/discourse
Dieser Commit ist enthalten in:
Angus McLeod 2021-04-12 15:58:07 +10:00 committet von GitHub
Commit c02ae44a82
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 4AEE18F83AFDEB23
27 geänderte Dateien mit 82 neuen und 101 gelöschten Zeilen

Datei anzeigen

@ -1,6 +1,7 @@
import Component from "@ember/component";
import discourseComputed, { observes } from "discourse-common/utils/decorators";
import { or, alias } from "@ember/object/computed";
import { alias, or } from "@ember/object/computed";
import I18n from "I18n";
const generateContent = function (array, type) {
return array.map((key) => ({
@ -34,7 +35,7 @@ export default Component.extend({
},
@discourseComputed("field.klass")
serializerContent(klass, p2) {
serializerContent(klass) {
const serializers = this.get(`${klass}Serializers`);
if (serializers) {
@ -66,21 +67,21 @@ export default Component.extend({
"field.serializers"
)
saveDisabled(saving) {
if (saving) return true;
if (saving) {return true;}
const originalField = this.originalField;
if (!originalField) return false;
if (!originalField) {return false;}
return ["name", "klass", "type", "serializers"].every((attr) => {
let current = this.get(attr);
let original = originalField[attr];
if (!current) return false;
if (!current) {return false;}
if (attr == "serializers") {
if (attr === "serializers") {
return this.compareArrays(current, original);
} else {
return current == original;
return current === original;
}
});
},

Datei anzeigen

@ -7,7 +7,7 @@ export default Component.extend({
@discourseComputed("showAdvanced")
toggleClass(showAdvanced) {
let classes = "btn";
if (showAdvanced) classes += " btn-primary";
if (showAdvanced) {classes += " btn-primary";}
return classes;
},

Datei anzeigen

@ -1,11 +1,10 @@
import { default as discourseComputed } from "discourse-common/utils/decorators";
import { equal, empty, or, and } from "@ember/object/computed";
import { generateName, selectKitContent } from "../lib/wizard";
import { and, empty, equal, or } from "@ember/object/computed";
import { notificationLevels, selectKitContent } from "../lib/wizard";
import { computed } from "@ember/object";
import wizardSchema from "../lib/wizard-schema";
import UndoChanges from "../mixins/undo-changes";
import Component from "@ember/component";
import { notificationLevels } from "../lib/wizard";
import I18n from "I18n";
export default Component.extend(UndoChanges, {
@ -43,7 +42,7 @@ export default Component.extend(UndoChanges, {
name: I18n.t(`admin.wizard.action.${type}.label`),
};
}),
availableNotificationLevels: notificationLevels.map((type, index) => {
availableNotificationLevels: notificationLevels.map((type) => {
return {
id: type,
name: I18n.t(
@ -92,7 +91,7 @@ export default Component.extend(UndoChanges, {
@discourseComputed("apis", "action.api")
availableEndpoints(apis, api) {
if (!api) return [];
if (!api) {return [];}
return apis.find((a) => a.name === api).endpoints;
},
});

Datei anzeigen

@ -1,5 +1,5 @@
import { default as discourseComputed } from "discourse-common/utils/decorators";
import { equal, or, alias } from "@ember/object/computed";
import { alias, equal, or } from "@ember/object/computed";
import { computed } from "@ember/object";
import { selectKitContent } from "../lib/wizard";
import UndoChanges from "../mixins/undo-changes";

Datei anzeigen

@ -1,5 +1,4 @@
import Component from "@ember/component";
import { default as discourseComputed } from "discourse-common/utils/decorators";
export default Component.extend({
classNames: "wizard-custom-step",

Datei anzeigen

@ -1,15 +1,15 @@
import {
default as discourseComputed,
on,
observes,
on,
} from "discourse-common/utils/decorators";
import { generateName } from "../lib/wizard";
import {
default as wizardSchema,
setWizardDefaults,
default as wizardSchema,
} from "../lib/wizard-schema";
import { notEmpty } from "@ember/object/computed";
import { scheduleOnce, bind } from "@ember/runloop";
import { scheduleOnce } from "@ember/runloop";
import EmberObject from "@ember/object";
import Component from "@ember/component";
import { A } from "@ember/array";
@ -53,7 +53,7 @@ export default Component.extend({
"items.@each.title"
)
links(current, items) {
if (!items) return;
if (!items) {return;}
return items.map((item) => {
if (item) {

Datei anzeigen

@ -3,7 +3,6 @@ import { gt } from "@ember/object/computed";
import { computed } from "@ember/object";
import { defaultConnector } from "../lib/wizard-mapper";
import { later } from "@ember/runloop";
import { observes } from "discourse-common/utils/decorators";
import I18n from "I18n";
export default Component.extend({

Datei anzeigen

@ -1,11 +1,11 @@
import { computed, set } from "@ember/object";
import { alias, equal, or, not } from "@ember/object/computed";
import { alias, equal, not, or } from "@ember/object/computed";
import {
newPair,
connectorContent,
inputTypesContent,
defaultSelectionType,
defaultConnector,
defaultSelectionType,
inputTypesContent,
newPair,
} from "../lib/wizard-mapper";
import Component from "@ember/component";
import { observes } from "discourse-common/utils/decorators";

Datei anzeigen

@ -1,6 +1,6 @@
import { connectorContent } from "../lib/wizard-mapper";
import { gt, or, alias } from "@ember/object/computed";
import { computed, observes } from "@ember/object";
import { alias, gt } from "@ember/object/computed";
import { computed } from "@ember/object";
import Component from "@ember/component";
export default Component.extend({

Datei anzeigen

@ -1,13 +1,12 @@
import { alias, or, gt } from "@ember/object/computed";
import { alias, gt, or } from "@ember/object/computed";
import { computed } from "@ember/object";
import {
default as discourseComputed,
observes,
on,
observes
} from "discourse-common/utils/decorators";
import { getOwner } from "discourse-common/lib/get-owner";
import { defaultSelectionType, selectionTypes } from "../lib/wizard-mapper";
import { snakeCase, generateName, userProperties } from "../lib/wizard";
import { generateName, snakeCase, userProperties } from "../lib/wizard";
import Component from "@ember/component";
import { bind, later } from "@ember/runloop";
import I18n from "I18n";
@ -135,7 +134,7 @@ export default Component.extend({
},
documentClick(e) {
if (this._state == "destroying") return;
if (this._state === "destroying") {return;}
let $target = $(e.target);
if (!$target.parents(".type-selector").length && this.showTypes) {
@ -249,7 +248,7 @@ export default Component.extend({
},
@discourseComputed("activeType", "inputType")
placeholderKey(activeType, inputType) {
placeholderKey(activeType) {
if (
activeType === "text" &&
this.options[`${this.selectorType}Placeholder`]
@ -275,14 +274,14 @@ export default Component.extend({
optionEnabled(type) {
const options = this.options;
if (!options) return false;
if (!options) {return false;}
const option = options[type];
if (option === true) return true;
if (typeof option !== "string") return false;
if (option === true) {return true;}
if (typeof option !== "string") {return false;}
return option.split(",").filter((option) => {
return [this.selectorType, this.inputType].indexOf(option) !== -1;
return option.split(",").filter((o) => {
return [this.selectorType, this.inputType].indexOf(o) !== -1;
}).length;
},

Datei anzeigen

@ -1,10 +1,5 @@
import { getOwner } from "discourse-common/lib/get-owner";
import { newInput, selectionTypes } from "../lib/wizard-mapper";
import {
default as discourseComputed,
observes,
on,
} from "discourse-common/utils/decorators";
import discourseComputed from "discourse-common/utils/decorators";
import { later } from "@ember/runloop";
import Component from "@ember/component";
import { A } from "@ember/array";

Datei anzeigen

@ -19,7 +19,7 @@ export default Component.extend({
init() {
this._super(...arguments);
if (!this.validations) return;
if (!this.validations) {return;}
if (!this.field.validations) {
const validations = {};

Datei anzeigen

@ -1,7 +1,4 @@
import {
default as discourseComputed,
on,
} from "discourse-common/utils/decorators";
import discourseComputed from "discourse-common/utils/decorators";
import { notEmpty } from "@ember/object/computed";
import { userProperties } from "../lib/wizard";
import { scheduleOnce } from "@ember/runloop";

Datei anzeigen

@ -2,7 +2,7 @@ import { ajax } from "discourse/lib/ajax";
import { popupAjaxError } from "discourse/lib/ajax-error";
import CustomWizardApi from "../models/custom-wizard-api";
import { default as discourseComputed } from "discourse-common/utils/decorators";
import { not, and, equal } from "@ember/object/computed";
import { and, equal, not } from "@ember/object/computed";
import { selectKitContent } from "../lib/wizard";
import Controller from "@ember/controller";
import I18n from "I18n";
@ -64,8 +64,8 @@ export default Controller.extend({
threeLeggedOauth
) {
if (saveDisabled || !authType || !tokenUrl || !clientId || !clientSecret)
return true;
if (threeLeggedOauth) return !authUrl;
{return true;}
if (threeLeggedOauth) {return !authUrl;}
return false;
},
@ -146,16 +146,16 @@ export default Controller.extend({
const api = this.get("api");
const name = api.name;
const authType = api.authType;
let refreshList = false;
let refreshList = false; // eslint-disable-line
let error;
if (!name || !authType) return;
if (!name || !authType) {return;}
let data = {
auth_type: authType,
};
if (api.title) data["title"] = api.title;
if (api.title) {data["title"] = api.title;}
const originalTitle = this.get("api.originalTitle");
if (api.get("isNew") || (originalTitle && api.title !== originalTitle)) {
@ -232,7 +232,7 @@ export default Controller.extend({
remove() {
const name = this.get("api.name");
if (!name) return;
if (!name) {return;}
this.set("updating", true);
@ -250,7 +250,7 @@ export default Controller.extend({
clearLogs() {
const name = this.get("api.name");
if (!name) return;
if (!name) {return;}
ajax(`/admin/wizards/api/${name.underscore()}/logs`, {
type: "DELETE",

Datei anzeigen

@ -1,9 +1,5 @@
import Controller from "@ember/controller";
import EmberObject from "@ember/object";
import { ajax } from "discourse/lib/ajax";
import { popupAjaxError } from "discourse/lib/ajax-error";
import CustomWizardCustomField from "../models/custom-wizard-custom-field";
import { default as discourseComputed } from "discourse-common/utils/decorators";
export default Controller.extend({
messageKey: "create",
@ -49,7 +45,7 @@ export default Controller.extend({
},
removeField(field) {
return CustomWizardCustomField.destroyField(field).then((result) => {
return CustomWizardCustomField.destroyField(field).then(() => {
this.get("customFields").removeObject(field);
});
},

Datei anzeigen

@ -1,6 +1,4 @@
import { default as computed } from "discourse-common/utils/decorators";
import { popupAjaxError } from "discourse/lib/ajax-error";
import { ajax } from "discourse/lib/ajax";
import discourseComputed from "discourse-common/utils/decorators";
import { notEmpty } from "@ember/object/computed";
import CustomWizardLogs from "../models/custom-wizard-logs";
import Controller from "@ember/controller";
@ -13,7 +11,7 @@ export default Controller.extend({
logs: [],
loadLogs() {
if (!this.canLoadMore) return;
if (!this.canLoadMore) {return;}
this.set("refreshing", true);
@ -27,7 +25,7 @@ export default Controller.extend({
.finally(() => this.set("refreshing", false));
},
@computed("hasLogs", "refreshing")
@discourseComputed("hasLogs", "refreshing")
noResults(hasLogs, refreshing) {
return !hasLogs && !refreshing;
},

Datei anzeigen

@ -1,8 +1,5 @@
import Controller from "@ember/controller";
import {
default as discourseComputed,
observes,
} from "discourse-common/utils/decorators";
import { observes } from "discourse-common/utils/decorators";
import { empty } from "@ember/object/computed";
import CustomWizardManager from "../models/custom-wizard-manager";
import { A } from "@ember/array";
@ -196,7 +193,7 @@ export default Controller.extend({
},
destroy() {
const destroyWizards = this.get("destroyWizards");
let destroyWizards = this.get("destroyWizards");
if (!destroyWizards.length) {
this.setMessage("error", "none_selected");
@ -227,7 +224,7 @@ export default Controller.extend({
if (result.destroyed.length) {
const destroyedIds = result.destroyed.map((d) => d.id);
const destroyWizards = this.get("destroyWizards");
destroyWizards = this.get("destroyWizards");
const wizards = this.get("wizards");
wizards.removeObjects(

Datei anzeigen

@ -1,18 +1,14 @@
import {
default as discourseComputed,
observes,
on,
observes
} from "discourse-common/utils/decorators";
import { notEmpty, alias } from "@ember/object/computed";
import { notEmpty } from "@ember/object/computed";
import showModal from "discourse/lib/show-modal";
import { generateId, wizardFieldList } from "../lib/wizard";
import { buildProperties } from "../lib/wizard-json";
import { dasherize } from "@ember/string";
import EmberObject from "@ember/object";
import { scheduleOnce, later } from "@ember/runloop";
import { later, scheduleOnce } from "@ember/runloop";
import Controller from "@ember/controller";
import copyText from "discourse/lib/copy-text";
import CustomWizard from "../models/custom-wizard";
import I18n from "I18n";
export default Controller.extend({

Datei anzeigen

@ -1,4 +1,3 @@
import { withPluginApi } from "discourse/lib/plugin-api";
import DiscourseURL from "discourse/lib/url";
export default {
@ -6,7 +5,7 @@ export default {
initialize(container) {
const siteSettings = container.lookup("site-settings:main");
if (!siteSettings.custom_wizard_enabled) return;
if (!siteSettings.custom_wizard_enabled) {return;}
const existing = DiscourseURL.routeTo;
DiscourseURL.routeTo = function (path, opts) {

Datei anzeigen

@ -8,7 +8,7 @@ export default {
const messageBus = container.lookup("message-bus:main");
const siteSettings = container.lookup("site-settings:main");
if (!siteSettings.custom_wizard_enabled || !messageBus) return;
if (!siteSettings.custom_wizard_enabled || !messageBus) {return;}
messageBus.subscribe("/redirect_to_wizard", function (wizardId) {
const wizardUrl = window.location.origin + "/w/" + wizardId;

Datei anzeigen

@ -1,4 +1,4 @@
import { listProperties, camelCase, snakeCase } from "../lib/wizard";
import { camelCase, listProperties } from "../lib/wizard";
import wizardSchema from "../lib/wizard-schema";
import EmberObject from "@ember/object";
import { A } from "@ember/array";

Datei anzeigen

@ -4,6 +4,13 @@ import I18n from "I18n";
// Inputs
const selectableInputTypes = [
'conditional',
'assignment',
'association',
'validation'
];
function defaultInputType(options = {}) {
return options.inputTypes.split(",")[0];
}
@ -43,13 +50,13 @@ function defaultConnector(connectorType, inputType, options = {}) {
return defaultInputType(options);
}
if (connectorType === "pair") {
if (inputType === "conditional") return "equal";
if (inputType === "association") return "association";
if (inputType === "validation") return "equal";
if (inputType === "conditional") {return "equal";}
if (inputType === "association") {return "association";}
if (inputType === "validation") {return "equal";}
}
if (connectorType === "output") {
if (inputType === "conditional") return "then";
if (inputType === "assignment") return "set";
if (inputType === "conditional") {return "then";}
if (inputType === "assignment") {return "set";}
}
return "equal";
}

Datei anzeigen

@ -1,4 +1,4 @@
import { set, get } from "@ember/object";
import { get, set } from "@ember/object";
const wizard = {
basic: {
@ -225,7 +225,7 @@ if (Discourse.SiteSettings.wizard_apis_enabled) {
};
}
export function setWizardDefaults(obj, itemType, opts = {}) {
export function setWizardDefaults(obj, itemType) {
const objSchema = wizardSchema[itemType];
const basicDefaults = objSchema.basic;

Datei anzeigen

@ -9,7 +9,7 @@ function generateName(id) {
return id ? sentenceCase(id) : "";
}
function generateId(name, opts = {}) {
function generateId(name) {
return name ? snakeCase(name) : "";
}
@ -60,10 +60,10 @@ const notificationLevels = [
"muted",
];
function listProperties(type, opts = {}) {
let properties = Object.keys(wizardSchema[type].basic);
function listProperties(itemType, opts = {}) {
let properties = Object.keys(wizardSchema[itemType].basic);
const types = wizardSchema[type].types;
const types = wizardSchema[itemType].types;
if (types) {
let typeProperties = [];

Datei anzeigen

@ -1,8 +1,7 @@
import { listProperties } from "../lib/wizard";
import { default as wizardSchema } from "../lib/wizard-schema";
import { set, get } from "@ember/object";
import { get, set } from "@ember/object";
import Mixin from "@ember/object/mixin";
import { observes } from "discourse-common/utils/decorators";
import { deepEqual } from "discourse-common/lib/object";
export default Mixin.create({
@ -97,7 +96,6 @@ export default Mixin.create({
actions: {
undoChanges() {
const componentType = this.componentType;
const original = this.get("originalObject");
const obj = this.get(componentType);
this.removeObservers(obj.type);
@ -118,6 +116,7 @@ export default Mixin.create({
this.setupObservers(type);
},
// eslint-disable-next-line
mappedFieldUpdated(property, mappedComponent, type) {
const obj = this.get(this.componentType);
obj.notifyPropertyChange(property);

Datei anzeigen

@ -1,7 +1,7 @@
import { ajax } from "discourse/lib/ajax";
import EmberObject from "@ember/object";
import { buildProperties, present, mapped } from "../lib/wizard-json";
import { listProperties, camelCase, snakeCase } from "../lib/wizard";
import { buildProperties, mapped, present } from "../lib/wizard-json";
import { listProperties, snakeCase } from "../lib/wizard";
import wizardSchema from "../lib/wizard-schema";
import { Promise } from "rsvp";
import { popupAjaxError } from "discourse/lib/ajax-error";
@ -132,7 +132,7 @@ const CustomWizard = EmberObject.extend({
},
buildMappedJson(inputs) {
if (!inputs || !inputs.length) return false;
if (!inputs || !inputs.length) {return false;}
let result = [];

Datei anzeigen

@ -8,7 +8,7 @@ export default DiscourseRoute.extend({
setupController(controller, model) {
const showParams = this.paramsFor("adminWizardsApiShow");
const apiName = showParams.name == "create" ? null : showParams.name;
const apiName = showParams.name === "create" ? null : showParams.name;
const apiList = (model || []).map((api) => {
return {
id: api.name,