0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-09 11:52:54 +01:00

COMPATIBILITY: Various core file changes

The completion of the move to ember-cli in core requires a move to an independent asset pipeline. The wizard app itself will be upgraded to ember-cli when I have time. See further:
- fcb4e5a1a1
- 1b4692039e
- a69b914710
Dieser Commit ist enthalten in:
Angus McLeod 2022-06-22 09:14:55 +02:00
Ursprung 70329f209a
Commit ce3d2ced55
24 geänderte Dateien mit 28114 neuen und 31 gelöschten Zeilen

Datei anzeigen

@ -132,8 +132,3 @@ jobs:
export COVERAGE=1 export COVERAGE=1
fi fi
bin/rake plugin:spec[${{ steps.repo-name.outputs.value }}] bin/rake plugin:spec[${{ steps.repo-name.outputs.value }}]
- name: Plugin QUnit
if: matrix.build_type == 'frontend'
run: LOAD_PLUGINS=1 QUNIT_EMBER_CLI=0 QUNIT_SKIP_CORE=1 bin/rake qunit:test['600000','/w/qunit']
timeout-minutes: 10

Datei anzeigen

@ -15,7 +15,7 @@
<%= preload_script "wizard-raw-templates" %> <%= preload_script "wizard-raw-templates" %>
<%= preload_script "wizard-plugin" %> <%= preload_script "wizard-plugin" %>
<%= preload_script "pretty-text-bundle" %> <%= preload_script "pretty-text-bundle" %>
<script src="<%= ExtraLocalesController.url("wizard") %>"></script> <%= preload_script_url ExtraLocalesController.url("wizard") %>
<%= csrf_meta_tags %> <%= csrf_meta_tags %>
<%- unless customization_disabled? %> <%- unless customization_disabled? %>
@ -34,7 +34,7 @@
<title><%= wizard_page_title %></title> <title><%= wizard_page_title %></title>
</head> </head>
<body class='custom-wizard'> <body class='custom-wizard wizard'>
<%- unless customization_disabled? %> <%- unless customization_disabled? %>
<%= raw wizard_theme_lookup("header") %> <%= raw wizard_theme_lookup("header") %>
<%- end %> <%- end %>

Datei anzeigen

@ -0,0 +1,432 @@
var define, requirejs;
(function () {
let JS_MODULES = {};
let ALIASES = {
"ember-addons/ember-computed-decorators":
"discourse-common/utils/decorators",
"discourse/lib/raw-templates": "discourse-common/lib/raw-templates",
"preload-store": "discourse/lib/preload-store",
"fixtures/user_fixtures": "discourse/tests/fixtures/user-fixtures",
};
let ALIAS_PREPEND = {
fixtures: "discourse/tests/",
helpers: "discourse/tests/",
};
// In future versions of ember we don't need this
if (typeof Ember !== "undefined") {
JS_MODULES = {
jquery: { default: $ },
"@ember/array": {
default: Ember.Array,
A: Ember.A,
isArray: Ember.isArray,
},
"@ember/array/proxy": {
default: Ember.ArrayProxy,
},
"@ember/component": {
default: Ember.Component,
},
"@ember/controller": {
default: Ember.Controller,
inject: Ember.inject.controller,
},
"@ember/debug": {
assert: Ember.assert,
runInDebug: Ember.runInDebug,
warn: Ember.warn,
},
"@ember/object": {
action: Ember._action,
default: Ember.Object,
get: Ember.get,
getProperties: Ember.getProperties,
set: Ember.set,
setProperties: Ember.setProperties,
computed: Ember.computed,
defineProperty: Ember.defineProperty,
observer: Ember.observer,
},
"@ember/object/computed": {
alias: Ember.computed.alias,
and: Ember.computed.and,
bool: Ember.computed.bool,
collect: Ember.computed.collect,
deprecatingAlias: Ember.computed.deprecatingAlias,
empty: Ember.computed.empty,
equal: Ember.computed.equal,
filter: Ember.computed.filter,
filterBy: Ember.computed.filterBy,
gt: Ember.computed.gt,
gte: Ember.computed.gte,
intersect: Ember.computed.intersect,
lt: Ember.computed.lt,
lte: Ember.computed.lte,
map: Ember.computed.map,
mapBy: Ember.computed.mapBy,
match: Ember.computed.match,
max: Ember.computed.max,
min: Ember.computed.min,
none: Ember.computed.none,
not: Ember.computed.not,
notEmpty: Ember.computed.notEmpty,
oneWay: Ember.computed.oneWay,
or: Ember.computed.or,
readOnly: Ember.computed.readOnly,
reads: Ember.computed.reads,
setDiff: Ember.computed.setDiff,
sort: Ember.computed.sort,
sum: Ember.computed.sum,
union: Ember.computed.union,
uniq: Ember.computed.uniq,
uniqBy: Ember.computed.uniqBy,
},
"@ember/object/mixin": { default: Ember.Mixin },
"@ember/object/proxy": { default: Ember.ObjectProxy },
"@ember/object/promise-proxy-mixin": { default: Ember.PromiseProxyMixin },
"@ember/object/evented": {
default: Ember.Evented,
on: Ember.on,
},
"@ember/routing/route": { default: Ember.Route },
"@ember/routing/router": { default: Ember.Router },
"@ember/runloop": {
bind: Ember.run.bind,
cancel: Ember.run.cancel,
debounce: Ember.testing ? Ember.run : Ember.run.debounce,
later: Ember.run.later,
next: Ember.run.next,
once: Ember.run.once,
run: Ember.run,
schedule: Ember.run.schedule,
scheduleOnce: Ember.run.scheduleOnce,
throttle: Ember.run.throttle,
},
"@ember/service": {
default: Ember.Service,
inject: Ember.inject.service,
},
"@ember/utils": {
isBlank: Ember.isBlank,
isEmpty: Ember.isEmpty,
isNone: Ember.isNone,
isPresent: Ember.isPresent,
},
rsvp: {
asap: Ember.RSVP.asap,
all: Ember.RSVP.all,
allSettled: Ember.RSVP.allSettled,
race: Ember.RSVP.race,
hash: Ember.RSVP.hash,
hashSettled: Ember.RSVP.hashSettled,
rethrow: Ember.RSVP.rethrow,
defer: Ember.RSVP.defer,
denodeify: Ember.RSVP.denodeify,
resolve: Ember.RSVP.resolve,
reject: Ember.RSVP.reject,
map: Ember.RSVP.map,
filter: Ember.RSVP.filter,
default: Ember.RSVP,
Promise: Ember.RSVP.Promise,
EventTarget: Ember.RSVP.EventTarget,
},
"@ember/string": {
w: Ember.String.w,
dasherize: Ember.String.dasherize,
decamelize: Ember.String.decamelize,
camelize: Ember.String.camelize,
classify: Ember.String.classify,
underscore: Ember.String.underscore,
capitalize: Ember.String.capitalize,
},
"@ember/template": {
htmlSafe: Ember.String.htmlSafe,
},
"@ember/application": {
default: Ember.Application,
setOwner: Ember.setOwner,
getOwner: Ember.getOwner,
},
"@ember/component/helper": {
default: Ember.Helper,
},
"@ember/component/text-field": {
default: Ember.TextField,
},
"@ember/component/text-area": {
default: Ember.TextArea,
},
"@ember/error": {
default: Ember.error,
},
"@ember/object/internals": {
guidFor: Ember.guidFor,
},
"@ember/test": {
registerWaiter: Ember.Test && Ember.Test.registerWaiter,
unregisterWaiter: Ember.Test && Ember.Test.unregisterWaiter,
},
I18n: {
// eslint-disable-next-line
default: I18n,
},
};
}
let _isArray;
if (!Array.isArray) {
_isArray = function (x) {
return Object.prototype.toString.call(x) === "[object Array]";
};
} else {
_isArray = Array.isArray;
}
let registry = {};
let seen = {};
let FAILED = false;
let uuid = 0;
function tryFinally(tryable, finalizer) {
try {
return tryable();
} finally {
finalizer();
}
}
function unsupportedModule(length) {
throw new Error(
"an unsupported module was defined, expected `define(name, deps, module)` instead got: `" +
length +
"` arguments to define`"
);
}
function deprecatedModule(depricated, useInstead) {
let warning = "[DEPRECATION] `" + depricated + "` is deprecated.";
if (useInstead) {
warning += " Please use `" + useInstead + "` instead.";
}
// eslint-disable-next-line no-console
console.warn(warning);
}
let defaultDeps = ["require", "exports", "module"];
function Module(name, deps, callback, exports) {
this.id = uuid++;
this.name = name;
this.deps = !deps.length && callback.length ? defaultDeps : deps;
this.exports = exports || {};
this.callback = callback;
this.state = undefined;
this._require = undefined;
}
Module.prototype.makeRequire = function () {
let name = transformForAliases(this.name);
return (
this._require ||
(this._require = function (dep) {
return requirejs(resolve(dep, name));
})
);
};
define = function (name, deps, callback) {
if (arguments.length < 2) {
unsupportedModule(arguments.length);
}
if (!_isArray(deps)) {
callback = deps;
deps = [];
}
registry[name] = new Module(name, deps, callback);
};
// we don't support all of AMD
// define.amd = {};
// we will support petals...
define.petal = {};
function Alias(path) {
this.name = path;
}
define.alias = function (path) {
return new Alias(path);
};
function reify(mod, name, rseen) {
let deps = mod.deps;
let length = deps.length;
let reified = new Array(length);
let dep;
// TODO: new Module
// TODO: seen refactor
let module = {};
for (let i = 0, l = length; i < l; i++) {
dep = deps[i];
if (dep === "exports") {
module.exports = reified[i] = rseen;
} else if (dep === "require") {
reified[i] = mod.makeRequire();
} else if (dep === "module") {
mod.exports = rseen;
module = reified[i] = mod;
} else {
reified[i] = requireFrom(resolve(dep, name), name);
}
}
return {
deps: reified,
module,
};
}
function requireFrom(name, origin) {
name = transformForAliases(name);
if (name === "discourse") {
// eslint-disable-next-line no-console
console.log(
"discourse has been moved to `discourse/app` - please update your code"
);
name = "discourse/app";
}
if (name === "discourse/models/input-validation") {
// eslint-disable-next-line no-console
console.log(
"input-validation has been removed and should be replaced with `@ember/object`"
);
name = "@ember/object";
}
let mod = JS_MODULES[name] || registry[name];
if (!mod) {
throw new Error(
"Could not find module `" + name + "` imported from `" + origin + "`"
);
}
return requirejs(name);
}
function missingModule(name) {
throw new Error("Could not find module " + name);
}
function transformForAliases(name) {
let alias = ALIASES[name];
if (!alias) {
let segment = name.split("/")[0];
let prepend = ALIAS_PREPEND[segment];
if (!prepend) {
return name;
}
alias = prepend + name;
}
deprecatedModule(name, alias);
return alias;
}
requirejs = require = function (name) {
name = transformForAliases(name);
if (JS_MODULES[name]) {
return JS_MODULES[name];
}
let mod = registry[name];
if (mod && mod.callback instanceof Alias) {
mod = registry[mod.callback.name];
}
if (!mod) {
missingModule(name);
}
if (mod.state !== FAILED && seen.hasOwnProperty(name)) {
return seen[name];
}
let reified;
let module;
let loaded = false;
seen[name] = {}; // placeholder for run-time cycles
tryFinally(
function () {
reified = reify(mod, name, seen[name]);
module = mod.callback.apply(this, reified.deps);
loaded = true;
},
function () {
if (!loaded) {
mod.state = FAILED;
}
}
);
let obj;
if (module === undefined && reified.module.exports) {
obj = reified.module.exports;
} else {
obj = seen[name] = module;
}
if (
obj !== null &&
(typeof obj === "object" || typeof obj === "function") &&
obj["default"] === undefined
) {
obj["default"] = obj;
}
return (seen[name] = obj);
};
window.requireModule = requirejs;
function resolve(child, name) {
if (child.charAt(0) !== ".") {
return child;
}
let parts = child.split("/");
let nameParts = name.split("/");
let parentBase = nameParts.slice(0, -1);
for (let i = 0, l = parts.length; i < l; i++) {
let part = parts[i];
if (part === "..") {
if (parentBase.length === 0) {
throw new Error("Cannot access parent module of root");
}
parentBase.pop();
} else if (part === ".") {
continue;
} else {
parentBase.push(part);
}
}
return parentBase.join("/");
}
requirejs.entries = requirejs._eak_seen = registry;
requirejs.clear = function () {
requirejs.entries = requirejs._eak_seen = registry = {};
seen = {};
};
})();

Datei anzeigen

@ -0,0 +1,67 @@
define("message-bus-client", ["exports"], function (__exports__) {
__exports__.default = window.MessageBus;
});
define("ember-buffered-proxy/proxy", ["exports"], function (__exports__) {
__exports__.default = window.BufferedProxy;
});
define("bootbox", ["exports"], function (__exports__) {
__exports__.default = window.bootbox;
});
define("xss", ["exports"], function (__exports__) {
__exports__.default = window.filterXSS;
});
define("@discourse/itsatrap", ["exports"], function (__exports__) {
__exports__.default = window.ItsATrap;
});
define("@popperjs/core", ["exports"], function (__exports__) {
__exports__.default = window.Popper;
__exports__.createPopper = window.Popper.createPopper;
__exports__.defaultModifiers = window.Popper.defaultModifiers;
__exports__.popperGenerator = window.Popper.popperGenerator;
});
define("tippy.js", ["exports"], function (__exports__) {
__exports__.default = window.tippy;
});
define("@uppy/core", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.Core;
__exports__.BasePlugin = window.Uppy.Core.BasePlugin;
});
define("@uppy/aws-s3", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.AwsS3;
});
define("@uppy/aws-s3-multipart", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.AwsS3Multipart;
});
define("@uppy/xhr-upload", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.XHRUpload;
});
define("@uppy/drop-target", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.DropTarget;
});
define("@uppy/utils/lib/delay", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.Utils.delay;
});
define("@uppy/utils/lib/EventTracker", ["exports"], function (__exports__) {
__exports__.default = window.Uppy.Utils.EventTracker;
});
define("@uppy/utils/lib/AbortController", ["exports"], function (__exports__) {
__exports__.AbortController =
window.Uppy.Utils.AbortControllerLib.AbortController;
__exports__.AbortSignal = window.Uppy.Utils.AbortControllerLib.AbortSignal;
__exports__.createAbortError =
window.Uppy.Utils.AbortControllerLib.createAbortError;
});

Datei anzeigen

@ -0,0 +1,7 @@
<%
if @force_ember_debug || Rails.env.development? || Rails.env.test?
require_asset("ember.debug.js")
else
require_asset("ember.prod.js")
end
%>

Datei anzeigen

@ -0,0 +1,5 @@
//= require legacy/set-prototype-polyfill
//= require legacy/env
//= require legacy/jquery
//= require legacy/ember_include
//= require legacy/discourse-loader

Datei anzeigen

@ -0,0 +1,3 @@
window.ENV = {};
window.EmberENV = window.EmberENV || {};
window.EmberENV.FORCE_JQUERY = true;

Datei-Diff unterdrückt, da er zu groß ist Diff laden

Datei-Diff unterdrückt, da er zu groß ist Diff laden

10872
assets/javascripts/legacy/jquery.js gevendort Normale Datei

Datei-Diff unterdrückt, da er zu groß ist Diff laden

Datei-Diff unterdrückt, da er zu groß ist Diff laden

Datei anzeigen

@ -0,0 +1,8 @@
/* eslint-disable */
Object.setPrototypeOf =
Object.setPrototypeOf ||
function (obj, proto) {
obj.__proto__ = proto;
return obj;
};
/* eslint-enable */

Datei anzeigen

@ -0,0 +1,2 @@
//= require legacy/handlebars.runtime
//= require handlebars-shim

Datei-Diff unterdrückt, da er zu groß ist Diff laden

Dateidiff unterdrückt, weil mindestens eine Zeile zu lang ist

Datei anzeigen

@ -0,0 +1,4 @@
// Just a wrapper from the standalone browserified virtual-dom
define("virtual-dom", [], function() {
return virtualDom;
});

Datei-Diff unterdrückt, da er zu groß ist Diff laden

Datei anzeigen

@ -57,16 +57,8 @@
//= require ember-addons/macro-alias //= require ember-addons/macro-alias
//= require ember-addons/fmt //= require ember-addons/fmt
//= require polyfills //= require polyfills
//= require markdown-it-bundle.js
//= require markdown-it-bundle //= require legacy/discourse-shims
//= require template_include.js
//= require itsatrap.js
//= require caret_position.js
//= require popper.js
//= require uppy.js
//= require bootstrap-modal.js
//= require bootbox.js
//= require discourse-shims
//= require ./wizard/application //= require ./wizard/application
//= require ./wizard/router //= require ./wizard/router

Datei anzeigen

@ -1,10 +1,12 @@
//= require ember_jquery //= require legacy/ember_jquery
//= require template_include.js //= require legacy/template_include.js
//= require uppy.js //= require legacy/uppy.js
//= require bootstrap-modal.js //= require bootstrap-modal.js
//= require bootbox.js //= require bootbox.js
//= require virtual-dom //= require legacy/virtual-dom
//= require virtual-dom-amd //= require legacy/virtual-dom-amd
//= require popper.js //= require legacy/itsatrap.js
//= require tippy.umd.js //= require caret_position.js
//= require legacy/popper.js
//= require legacy/tippy.umd.js
//= require wizard-shims //= require wizard-shims

Datei anzeigen

@ -1,4 +1,4 @@
.custom-wizard { body.custom-wizard {
.wizard-field { .wizard-field {
margin-bottom: 1em; margin-bottom: 1em;

Datei anzeigen

@ -1,4 +1,4 @@
.custom-wizard { body.custom-wizard {
.wizard-step-form { .wizard-step-form {
.wizard-btn { .wizard-btn {
margin: 0; margin: 0;

Datei anzeigen

@ -1,4 +1,4 @@
.custom-wizard { body.custom-wizard .wizard-column {
.wizard-step-contents { .wizard-step-contents {
position: relative; position: relative;
display: flex; display: flex;
@ -9,7 +9,7 @@
margin-bottom: 10px; margin-bottom: 10px;
} }
.wizard-step-title { h1.wizard-step-title {
flex: 0; flex: 0;
p { p {

Datei anzeigen

@ -1,10 +1,12 @@
.custom-wizard { body.custom-wizard {
background-color: var(--secondary); background: var(--secondary);
color: var(--primary); color: var(--primary);
font-size: 1.1em; font-size: 1.1em;
padding: 1.5em 0;
.wizard-column { .wizard-column {
background-color: var(--secondary); background-color: var(--secondary);
margin: 0 auto;
.wizard-field .input-area { .wizard-field .input-area {
margin: 0.5em 0; margin: 0.5em 0;
@ -62,7 +64,7 @@
/* IE11 hacks */ /* IE11 hacks */
@media all and (-ms-high-contrast: none) { @media all and (-ms-high-contrast: none) {
.custom-wizard { body.custom-wizard {
div.wizard-step-contents { div.wizard-step-contents {
display: block; display: block;
} }

Datei anzeigen

@ -1,10 +1,15 @@
@import "color_definitions";
@import "vendor/normalize";
@import "vendor/normalize-ext";
@import "common/foundation/colors"; @import "common/foundation/colors";
@import "common/foundation/variables"; @import "common/foundation/variables";
@import "common/foundation/base"; @import "common/foundation/base";
@import "common/base/code_highlighting"; @import "common/base/code_highlighting";
@import "common/base/modal"; @import "common/base/modal";
@import "common/base/onebox"; @import "common/base/onebox";
@import "common/select-kit/_index";
@import "common/components/buttons"; @import "common/components/buttons";
@import "common/components/svg";
@import "common/d-editor"; @import "common/d-editor";
@import "desktop/modal"; @import "desktop/modal";
@import "common/input_tip"; @import "common/input_tip";