comfortable_media_surfer 3.0.0 → 3.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitattributes +1 -0
- data/.github/workflows/coveralls.yml +13 -1
- data/.github/workflows/rubyonrails.yml +15 -3
- data/.gitignore +4 -0
- data/.rubocop.yml +4 -1
- data/CHANGELOG.md +59 -0
- data/CONTRIBUTING.md +4 -2
- data/Gemfile +6 -2
- data/README.md +60 -25
- data/app/assets/builds/.keep +0 -0
- data/app/assets/config/manifest.js +1 -0
- data/app/assets/javascripts/comfy/admin/cms/application.js +21 -36
- data/app/assets/javascripts/comfy/admin/cms/base.js +6 -5
- data/app/assets/javascripts/comfy/admin/cms/codemirror.js +22 -10
- data/app/assets/javascripts/comfy/admin/cms/diff.js +7 -5
- data/app/assets/javascripts/comfy/admin/cms/file_link.js +17 -11
- data/app/assets/javascripts/comfy/admin/cms/file_upload.js +67 -41
- data/app/assets/javascripts/comfy/admin/cms/files_modal.js +20 -13
- data/app/assets/javascripts/comfy/admin/cms/sortable_list.js +28 -19
- data/app/assets/javascripts/comfy/admin/cms/timepicker.js +20 -12
- data/app/assets/javascripts/comfy/admin/cms/wysiwyg.js +39 -20
- data/app/assets/javascripts/comfy/vendor/diff/pretty_text_diff.js +30 -18
- data/app/assets/javascripts/comfy/vendor/redactor/definedlinks.js +31 -34
- data/app/assets/javascripts/comfy/vendor/redactor/filemanager.js +77 -62
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/hr.js +78 -76
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/nb.js +76 -74
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/pl.js +77 -75
- data/app/assets/javascripts/comfy/vendor/redactor/imagemanager.js +66 -55
- data/app/assets/javascripts/comfy/vendor/redactor/table.js +346 -335
- data/app/assets/javascripts/comfy/vendor/redactor/video.js +69 -64
- data/app/assets/javascripts/comfy/vendor/redactor.js +2 -0
- data/app/assets/stylesheets/comfy/admin/cms/application.sass +2 -2
- data/app/assets/stylesheets/comfy/admin/cms/codemirror_overrides.sass +1 -1
- data/app/helpers/comfy/admin/cms_helper.rb +2 -2
- data/comfortable_media_surfer.gemspec +6 -8
- data/config/application.rb +1 -1
- data/config/environments/development.rb +11 -10
- data/config/environments/production.rb +0 -6
- data/config/puma.rb +43 -0
- data/gemfiles/7.1.gemfile +3 -2
- data/gemfiles/7.2.gemfile +3 -2
- data/gemfiles/{6.1.gemfile → 8.0.gemfile} +3 -2
- data/lib/comfortable_media_surfer/engine.rb +3 -8
- data/lib/comfortable_media_surfer/extensions/has_revisions.rb +1 -1
- data/lib/comfortable_media_surfer/render_methods.rb +7 -7
- data/lib/comfortable_media_surfer/version.rb +1 -1
- data/lib/generators/comfy/scaffold/scaffold_generator.rb +1 -1
- data/lib/tasks/cms_assets.rake +19 -0
- data/package-lock.json +379 -0
- data/package.json +23 -0
- data/rakelib/create_release.rake +17 -17
- metadata +16 -152
- data/app/assets/javascripts/comfy/vendor/Moxie.swf +0 -0
- data/app/assets/javascripts/comfy/vendor/Moxie.xap +0 -0
- data/app/assets/javascripts/comfy/vendor/bootstrap.bundle.min.js +0 -7
- data/app/assets/javascripts/comfy/vendor/bootstrap.bundle.min.js.map +0 -1
- data/app/assets/javascripts/comfy/vendor/codemirror/addon/edit/closetag.js +0 -169
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/css/css.js +0 -832
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/htmlmixed/htmlmixed.js +0 -152
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/javascript/javascript.js +0 -875
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/markdown/markdown.js +0 -861
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/xml/xml.js +0 -394
- data/app/assets/javascripts/comfy/vendor/codemirror.js +0 -9653
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ar.js +0 -52
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/bg.js +0 -65
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/bn.js +0 -65
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ca.js +0 -83
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/cs.js +0 -70
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/cy.js +0 -92
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/da.js +0 -71
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/de.js +0 -70
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/default.js +0 -80
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/eo.js +0 -73
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/es.js +0 -69
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/et.js +0 -73
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/fa.js +0 -68
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/fi.js +0 -69
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/fr.js +0 -75
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/gr.js +0 -74
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/he.js +0 -57
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/hi.js +0 -65
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/hr.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/hu.js +0 -72
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/id.js +0 -61
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/it.js +0 -70
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ja.js +0 -57
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ko.js +0 -60
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/lt.js +0 -72
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/lv.js +0 -67
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/mk.js +0 -69
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/mn.js +0 -67
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ms.js +0 -68
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/my.js +0 -69
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/nl.js +0 -75
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/no.js +0 -73
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pa.js +0 -65
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pl.js +0 -68
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pt-BR.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pt.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ro.js +0 -69
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ru.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/si.js +0 -65
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sk.js +0 -70
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sl.js +0 -70
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sq.js +0 -65
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sr.js +0 -69
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sv.js +0 -70
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/th.js +0 -72
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/tr.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/uk.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/vn.js +0 -66
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/zh-CN.js +0 -61
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/zh-TW.js +0 -61
- data/app/assets/javascripts/comfy/vendor/moxie.min.js +0 -16
- data/app/assets/javascripts/comfy/vendor/plupload.dev.js +0 -2497
- data/app/assets/javascripts/comfy/vendor/sortable.min.js +0 -5
- data/app/assets/stylesheets/comfy/vendor/codemirror.css +0 -346
- data/app/assets/stylesheets/comfy/vendor/flatpickr.min.css +0 -13
- data/config/initializers/assets.rb +0 -14
- data/gemfiles/7.0.gemfile +0 -31
@@ -1,152 +0,0 @@
|
|
1
|
-
// CodeMirror, copyright (c) by Marijn Haverbeke and others
|
2
|
-
// Distributed under an MIT license: http://codemirror.net/LICENSE
|
3
|
-
|
4
|
-
(function(mod) {
|
5
|
-
if (typeof exports == "object" && typeof module == "object") // CommonJS
|
6
|
-
mod(require("../../lib/codemirror"), require("../xml/xml"), require("../javascript/javascript"), require("../css/css"));
|
7
|
-
else if (typeof define == "function" && define.amd) // AMD
|
8
|
-
define(["../../lib/codemirror", "../xml/xml", "../javascript/javascript", "../css/css"], mod);
|
9
|
-
else // Plain browser env
|
10
|
-
mod(CodeMirror);
|
11
|
-
})(function(CodeMirror) {
|
12
|
-
"use strict";
|
13
|
-
|
14
|
-
var defaultTags = {
|
15
|
-
script: [
|
16
|
-
["lang", /(javascript|babel)/i, "javascript"],
|
17
|
-
["type", /^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i, "javascript"],
|
18
|
-
["type", /./, "text/plain"],
|
19
|
-
[null, null, "javascript"]
|
20
|
-
],
|
21
|
-
style: [
|
22
|
-
["lang", /^css$/i, "css"],
|
23
|
-
["type", /^(text\/)?(x-)?(stylesheet|css)$/i, "css"],
|
24
|
-
["type", /./, "text/plain"],
|
25
|
-
[null, null, "css"]
|
26
|
-
]
|
27
|
-
};
|
28
|
-
|
29
|
-
function maybeBackup(stream, pat, style) {
|
30
|
-
var cur = stream.current(), close = cur.search(pat);
|
31
|
-
if (close > -1) {
|
32
|
-
stream.backUp(cur.length - close);
|
33
|
-
} else if (cur.match(/<\/?$/)) {
|
34
|
-
stream.backUp(cur.length);
|
35
|
-
if (!stream.match(pat, false)) stream.match(cur);
|
36
|
-
}
|
37
|
-
return style;
|
38
|
-
}
|
39
|
-
|
40
|
-
var attrRegexpCache = {};
|
41
|
-
function getAttrRegexp(attr) {
|
42
|
-
var regexp = attrRegexpCache[attr];
|
43
|
-
if (regexp) return regexp;
|
44
|
-
return attrRegexpCache[attr] = new RegExp("\\s+" + attr + "\\s*=\\s*('|\")?([^'\"]+)('|\")?\\s*");
|
45
|
-
}
|
46
|
-
|
47
|
-
function getAttrValue(text, attr) {
|
48
|
-
var match = text.match(getAttrRegexp(attr))
|
49
|
-
return match ? /^\s*(.*?)\s*$/.exec(match[2])[1] : ""
|
50
|
-
}
|
51
|
-
|
52
|
-
function getTagRegexp(tagName, anchored) {
|
53
|
-
return new RegExp((anchored ? "^" : "") + "<\/\s*" + tagName + "\s*>", "i");
|
54
|
-
}
|
55
|
-
|
56
|
-
function addTags(from, to) {
|
57
|
-
for (var tag in from) {
|
58
|
-
var dest = to[tag] || (to[tag] = []);
|
59
|
-
var source = from[tag];
|
60
|
-
for (var i = source.length - 1; i >= 0; i--)
|
61
|
-
dest.unshift(source[i])
|
62
|
-
}
|
63
|
-
}
|
64
|
-
|
65
|
-
function findMatchingMode(tagInfo, tagText) {
|
66
|
-
for (var i = 0; i < tagInfo.length; i++) {
|
67
|
-
var spec = tagInfo[i];
|
68
|
-
if (!spec[0] || spec[1].test(getAttrValue(tagText, spec[0]))) return spec[2];
|
69
|
-
}
|
70
|
-
}
|
71
|
-
|
72
|
-
CodeMirror.defineMode("htmlmixed", function (config, parserConfig) {
|
73
|
-
var htmlMode = CodeMirror.getMode(config, {
|
74
|
-
name: "xml",
|
75
|
-
htmlMode: true,
|
76
|
-
multilineTagIndentFactor: parserConfig.multilineTagIndentFactor,
|
77
|
-
multilineTagIndentPastTag: parserConfig.multilineTagIndentPastTag
|
78
|
-
});
|
79
|
-
|
80
|
-
var tags = {};
|
81
|
-
var configTags = parserConfig && parserConfig.tags, configScript = parserConfig && parserConfig.scriptTypes;
|
82
|
-
addTags(defaultTags, tags);
|
83
|
-
if (configTags) addTags(configTags, tags);
|
84
|
-
if (configScript) for (var i = configScript.length - 1; i >= 0; i--)
|
85
|
-
tags.script.unshift(["type", configScript[i].matches, configScript[i].mode])
|
86
|
-
|
87
|
-
function html(stream, state) {
|
88
|
-
var style = htmlMode.token(stream, state.htmlState), tag = /\btag\b/.test(style), tagName
|
89
|
-
if (tag && !/[<>\s\/]/.test(stream.current()) &&
|
90
|
-
(tagName = state.htmlState.tagName && state.htmlState.tagName.toLowerCase()) &&
|
91
|
-
tags.hasOwnProperty(tagName)) {
|
92
|
-
state.inTag = tagName + " "
|
93
|
-
} else if (state.inTag && tag && />$/.test(stream.current())) {
|
94
|
-
var inTag = /^([\S]+) (.*)/.exec(state.inTag)
|
95
|
-
state.inTag = null
|
96
|
-
var modeSpec = stream.current() == ">" && findMatchingMode(tags[inTag[1]], inTag[2])
|
97
|
-
var mode = CodeMirror.getMode(config, modeSpec)
|
98
|
-
var endTagA = getTagRegexp(inTag[1], true), endTag = getTagRegexp(inTag[1], false);
|
99
|
-
state.token = function (stream, state) {
|
100
|
-
if (stream.match(endTagA, false)) {
|
101
|
-
state.token = html;
|
102
|
-
state.localState = state.localMode = null;
|
103
|
-
return null;
|
104
|
-
}
|
105
|
-
return maybeBackup(stream, endTag, state.localMode.token(stream, state.localState));
|
106
|
-
};
|
107
|
-
state.localMode = mode;
|
108
|
-
state.localState = CodeMirror.startState(mode, htmlMode.indent(state.htmlState, ""));
|
109
|
-
} else if (state.inTag) {
|
110
|
-
state.inTag += stream.current()
|
111
|
-
if (stream.eol()) state.inTag += " "
|
112
|
-
}
|
113
|
-
return style;
|
114
|
-
};
|
115
|
-
|
116
|
-
return {
|
117
|
-
startState: function () {
|
118
|
-
var state = CodeMirror.startState(htmlMode);
|
119
|
-
return {token: html, inTag: null, localMode: null, localState: null, htmlState: state};
|
120
|
-
},
|
121
|
-
|
122
|
-
copyState: function (state) {
|
123
|
-
var local;
|
124
|
-
if (state.localState) {
|
125
|
-
local = CodeMirror.copyState(state.localMode, state.localState);
|
126
|
-
}
|
127
|
-
return {token: state.token, inTag: state.inTag,
|
128
|
-
localMode: state.localMode, localState: local,
|
129
|
-
htmlState: CodeMirror.copyState(htmlMode, state.htmlState)};
|
130
|
-
},
|
131
|
-
|
132
|
-
token: function (stream, state) {
|
133
|
-
return state.token(stream, state);
|
134
|
-
},
|
135
|
-
|
136
|
-
indent: function (state, textAfter, line) {
|
137
|
-
if (!state.localMode || /^\s*<\//.test(textAfter))
|
138
|
-
return htmlMode.indent(state.htmlState, textAfter);
|
139
|
-
else if (state.localMode.indent)
|
140
|
-
return state.localMode.indent(state.localState, textAfter, line);
|
141
|
-
else
|
142
|
-
return CodeMirror.Pass;
|
143
|
-
},
|
144
|
-
|
145
|
-
innerMode: function (state) {
|
146
|
-
return {state: state.localState || state.htmlState, mode: state.localMode || htmlMode};
|
147
|
-
}
|
148
|
-
};
|
149
|
-
}, "xml", "javascript", "css");
|
150
|
-
|
151
|
-
CodeMirror.defineMIME("text/html", "htmlmixed");
|
152
|
-
});
|