@ablogcms/lib 3.2.28-beta.0 → 3.2.29
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.
- package/README.md +4 -4
- package/dist/acms.d.ts +0 -2
- package/dist/geolocation.mjs +9 -5
- package/dist/geolocation.mjs.map +1 -1
- package/dist/select2/index.mjs +1 -1
- package/dist/select2/index.mjs.map +1 -1
- package/package.json +13 -72
- package/dist/chunk-AMZYQ4DG.mjs +0 -344
- package/dist/chunk-AMZYQ4DG.mjs.map +0 -1
- package/dist/command.d.ts +0 -5
- package/dist/command.mjs +0 -63
- package/dist/command.mjs.map +0 -1
- package/dist/create-pdf.d.ts +0 -1
- package/dist/create-pdf.mjs +0 -27
- package/dist/create-pdf.mjs.map +0 -1
- package/dist/htmx/geolocation.d.ts +0 -1
- package/dist/htmx/geolocation.mjs +0 -40
- package/dist/htmx/geolocation.mjs.map +0 -1
- package/dist/icons.d.ts +0 -2
- package/dist/icons.mjs +0 -181
- package/dist/icons.mjs.map +0 -1
- package/dist/pdf2image.d.ts +0 -21
- package/dist/pdf2image.mjs +0 -115
- package/dist/pdf2image.mjs.map +0 -1
- package/dist/polyfill/index.d.ts +0 -1
- package/dist/polyfill/index.mjs +0 -40
- package/dist/polyfill/index.mjs.map +0 -1
- package/dist/read-files.d.ts +0 -14
- package/dist/read-files.mjs +0 -62
- package/dist/read-files.mjs.map +0 -1
- package/dist/resize-image/resize-image.d.ts +0 -71
- package/dist/resize-image/resize-image.mjs +0 -308
- package/dist/resize-image/resize-image.mjs.map +0 -1
- package/dist/resize-image/util.d.ts +0 -134
- package/dist/resize-image/util.mjs +0 -7
- package/dist/resize-image/util.mjs.map +0 -1
- package/dist/wysiwyg.d.ts +0 -2
- package/dist/wysiwyg.mjs +0 -21
- package/dist/wysiwyg.mjs.map +0 -1
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
export default class ResizeImage {
|
|
2
|
-
/**
|
|
3
|
-
* Constructor
|
|
4
|
-
*
|
|
5
|
-
* @param elm
|
|
6
|
-
*/
|
|
7
|
-
constructor(elm: any);
|
|
8
|
-
elm: any;
|
|
9
|
-
dropAreaMark: string;
|
|
10
|
-
inputMark: any;
|
|
11
|
-
previewMark: any;
|
|
12
|
-
targetMark: any;
|
|
13
|
-
targetMarkCF: any;
|
|
14
|
-
dropSelect: boolean;
|
|
15
|
-
dragging: number;
|
|
16
|
-
previewOnly: boolean;
|
|
17
|
-
util: Util;
|
|
18
|
-
eventListeners: any[];
|
|
19
|
-
/**
|
|
20
|
-
* リサイズ処理の初期化
|
|
21
|
-
*/
|
|
22
|
-
resize(): void;
|
|
23
|
-
/**
|
|
24
|
-
* イベントリスナーを削除し、クリーンアップする
|
|
25
|
-
*/
|
|
26
|
-
destroy(): void;
|
|
27
|
-
/**
|
|
28
|
-
* targetに対してリサイズ処理イベントを登録
|
|
29
|
-
*
|
|
30
|
-
* @param target
|
|
31
|
-
*/
|
|
32
|
-
exec(target: any): void;
|
|
33
|
-
previewBox: any;
|
|
34
|
-
/**
|
|
35
|
-
* 画像のファイル選択イベントを登録
|
|
36
|
-
*
|
|
37
|
-
* @param target
|
|
38
|
-
*/
|
|
39
|
-
listener(target: any): void;
|
|
40
|
-
/**
|
|
41
|
-
* 画像ファイルを読み込み
|
|
42
|
-
*
|
|
43
|
-
* @param files
|
|
44
|
-
* @param target
|
|
45
|
-
* @return {boolean}
|
|
46
|
-
*/
|
|
47
|
-
readFiles(files: any, target: any): boolean;
|
|
48
|
-
/**
|
|
49
|
-
* 画像ドラッグでの失敗を抑制
|
|
50
|
-
*
|
|
51
|
-
* @param target
|
|
52
|
-
*/
|
|
53
|
-
banDrag(target: any): void;
|
|
54
|
-
/**
|
|
55
|
-
* 分数を約分
|
|
56
|
-
*
|
|
57
|
-
* @param numerator
|
|
58
|
-
* @param denominator
|
|
59
|
-
*/
|
|
60
|
-
reduce(numerator: any, denominator: any): string | number;
|
|
61
|
-
/**
|
|
62
|
-
* リサイズした画像データをdomとして追加
|
|
63
|
-
*
|
|
64
|
-
* @param {HTMLElement} target 対象の要素
|
|
65
|
-
* @param {string} dataUrl 画像データのURL
|
|
66
|
-
* @param {boolean} resize リサイズされているかどうか
|
|
67
|
-
* @return {void}
|
|
68
|
-
*/
|
|
69
|
-
set(target: HTMLElement, dataUrl: string, resize: boolean): void;
|
|
70
|
-
}
|
|
71
|
-
import Util from './util.js';
|
|
@@ -1,308 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ResizeImageUtil
|
|
3
|
-
} from "../chunk-AMZYQ4DG.mjs";
|
|
4
|
-
|
|
5
|
-
// src/resize-image/resize-image.js
|
|
6
|
-
var ResizeImage = class {
|
|
7
|
-
/**
|
|
8
|
-
* Constructor
|
|
9
|
-
*
|
|
10
|
-
* @param elm
|
|
11
|
-
*/
|
|
12
|
-
constructor(elm) {
|
|
13
|
-
this.elm = elm;
|
|
14
|
-
this.dropAreaMark = ".js-drop_area";
|
|
15
|
-
this.inputMark = ACMS.Config.resizeImageInputMark;
|
|
16
|
-
this.previewMark = ACMS.Config.resizeImagePreviewMark;
|
|
17
|
-
this.targetMark = ACMS.Config.resizeImageTargetMark;
|
|
18
|
-
this.targetMarkCF = ACMS.Config.resizeImageTargetMarkCF;
|
|
19
|
-
this.dropSelect = false;
|
|
20
|
-
this.dragging = 0;
|
|
21
|
-
this.previewOnly = ACMS.Config.resizeImage !== "on";
|
|
22
|
-
this.util = new ResizeImageUtil();
|
|
23
|
-
this.eventListeners = [];
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* リサイズ処理の初期化
|
|
27
|
-
*/
|
|
28
|
-
resize() {
|
|
29
|
-
const targetAry = this.elm.querySelectorAll(this.targetMark);
|
|
30
|
-
if (targetAry.length > 0) {
|
|
31
|
-
[].forEach.call(targetAry, (input) => {
|
|
32
|
-
this.exec(input);
|
|
33
|
-
});
|
|
34
|
-
} else if (this.elm.classList.contains(this.targetMarkCF.substr(1)) && !this.elm.classList.contains("resizeImage")) {
|
|
35
|
-
this.elm.classList.add("resizeImage");
|
|
36
|
-
this.exec(this.elm);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* イベントリスナーを削除し、クリーンアップする
|
|
41
|
-
*/
|
|
42
|
-
destroy() {
|
|
43
|
-
this.eventListeners.forEach(({ element, type, handler }) => {
|
|
44
|
-
element.removeEventListener(type, handler);
|
|
45
|
-
});
|
|
46
|
-
this.eventListeners = [];
|
|
47
|
-
const previewElements = this.elm.querySelectorAll(this.previewMark);
|
|
48
|
-
previewElements.forEach((element) => {
|
|
49
|
-
element.remove();
|
|
50
|
-
});
|
|
51
|
-
const resizeDataElements = this.elm.querySelectorAll(".js-img_resize_data");
|
|
52
|
-
resizeDataElements.forEach((element) => {
|
|
53
|
-
element.remove();
|
|
54
|
-
});
|
|
55
|
-
this.elm.classList.remove("resizeImage");
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* targetに対してリサイズ処理イベントを登録
|
|
59
|
-
*
|
|
60
|
-
* @param target
|
|
61
|
-
*/
|
|
62
|
-
exec(target) {
|
|
63
|
-
const node = target.querySelector(this.previewMark);
|
|
64
|
-
if (node !== null) {
|
|
65
|
-
this.previewBox = node.cloneNode(true);
|
|
66
|
-
target.querySelector(this.previewMark).insertAdjacentHTML("afterend", '<div class="js-img_resize_preview_location" />');
|
|
67
|
-
this.listener(target);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* 画像のファイル選択イベントを登録
|
|
72
|
-
*
|
|
73
|
-
* @param target
|
|
74
|
-
*/
|
|
75
|
-
listener(target) {
|
|
76
|
-
const dropArea = target.querySelector(this.dropAreaMark);
|
|
77
|
-
const interval = 1500;
|
|
78
|
-
let lastTime = (/* @__PURE__ */ new Date()).getTime() - interval;
|
|
79
|
-
this.dragging = 0;
|
|
80
|
-
if (dropArea && window.File && window.FileReader && !this.previewOnly) {
|
|
81
|
-
this.banDrag(target);
|
|
82
|
-
target.querySelector("img").getAttribute("src");
|
|
83
|
-
if (!target.querySelector("img").getAttribute("src")) {
|
|
84
|
-
dropArea.classList.add("drag-n-drop-hover");
|
|
85
|
-
setTimeout(() => {
|
|
86
|
-
const area = dropArea.querySelector(".acms-admin-drop-area");
|
|
87
|
-
$(area).fadeOut(200, () => {
|
|
88
|
-
dropArea.classList.remove("drag-n-drop-hover");
|
|
89
|
-
dropArea.querySelector(".acms-admin-drop-area").style.display = "";
|
|
90
|
-
});
|
|
91
|
-
}, 800);
|
|
92
|
-
}
|
|
93
|
-
const dropHandler = (event) => {
|
|
94
|
-
event.stopPropagation();
|
|
95
|
-
event.preventDefault();
|
|
96
|
-
this.dragging = 0;
|
|
97
|
-
this.dropSelect = true;
|
|
98
|
-
dropArea.classList.remove("drag-n-drop-hover");
|
|
99
|
-
const { files } = event.dataTransfer;
|
|
100
|
-
let gif = false;
|
|
101
|
-
for (let i = 0; i < files.length; i++) {
|
|
102
|
-
const file = files[i];
|
|
103
|
-
if (file.type === "image/gif") {
|
|
104
|
-
gif = true;
|
|
105
|
-
break;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
if (gif) {
|
|
109
|
-
if (!window.confirm(ACMS.i18n("drop_select_gif_image.alert"))) {
|
|
110
|
-
return false;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
this.readFiles(event.dataTransfer.files, target);
|
|
114
|
-
return false;
|
|
115
|
-
};
|
|
116
|
-
dropArea.addEventListener("drop", dropHandler, false);
|
|
117
|
-
this.eventListeners.push({ element: dropArea, type: "drop", handler: dropHandler });
|
|
118
|
-
const dragOverHandler = (event) => {
|
|
119
|
-
event.stopPropagation();
|
|
120
|
-
event.preventDefault();
|
|
121
|
-
dropArea.classList.add("drag-n-drop-hover");
|
|
122
|
-
return false;
|
|
123
|
-
};
|
|
124
|
-
dropArea.addEventListener("dragover", dragOverHandler, false);
|
|
125
|
-
this.eventListeners.push({ element: dropArea, type: "dragover", handler: dragOverHandler });
|
|
126
|
-
const dragEnterHandler = (event) => {
|
|
127
|
-
event.stopPropagation();
|
|
128
|
-
event.preventDefault();
|
|
129
|
-
this.dragging++;
|
|
130
|
-
dropArea.classList.add("drag-n-drop-hover");
|
|
131
|
-
return false;
|
|
132
|
-
};
|
|
133
|
-
dropArea.addEventListener("dragenter", dragEnterHandler, false);
|
|
134
|
-
this.eventListeners.push({ element: dropArea, type: "dragenter", handler: dragEnterHandler });
|
|
135
|
-
const dragLeaveHandler = (event) => {
|
|
136
|
-
event.stopPropagation();
|
|
137
|
-
event.preventDefault();
|
|
138
|
-
this.dragging--;
|
|
139
|
-
if (this.dragging === 0) {
|
|
140
|
-
dropArea.classList.remove("drag-n-drop-hover");
|
|
141
|
-
}
|
|
142
|
-
return false;
|
|
143
|
-
};
|
|
144
|
-
dropArea.addEventListener("dragleave", dragLeaveHandler, false);
|
|
145
|
-
this.eventListeners.push({ element: dropArea, type: "dragleave", handler: dragLeaveHandler });
|
|
146
|
-
}
|
|
147
|
-
const fileInputs = target.querySelectorAll(this.inputMark);
|
|
148
|
-
fileInputs.forEach((fileInput) => {
|
|
149
|
-
const changeHandler = (event) => {
|
|
150
|
-
if (lastTime + interval <= (/* @__PURE__ */ new Date()).getTime()) {
|
|
151
|
-
lastTime = (/* @__PURE__ */ new Date()).getTime();
|
|
152
|
-
this.readFiles(event.target.files, target);
|
|
153
|
-
}
|
|
154
|
-
};
|
|
155
|
-
fileInput.addEventListener("change", changeHandler);
|
|
156
|
-
this.eventListeners.push({ element: fileInput, type: "change", handler: changeHandler });
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* 画像ファイルを読み込み
|
|
161
|
-
*
|
|
162
|
-
* @param files
|
|
163
|
-
* @param target
|
|
164
|
-
* @return {boolean}
|
|
165
|
-
*/
|
|
166
|
-
readFiles(files, target) {
|
|
167
|
-
const sizeSelect = target.querySelectorAll("[name^=image_size_]");
|
|
168
|
-
const bannerSize = document.querySelectorAll(".js-banner_size_large");
|
|
169
|
-
const bannerSizeCriterion = document.querySelector(".js-banner_size_large_criterion");
|
|
170
|
-
const rawSize = sizeSelect.length > 0 && sizeSelect[0].value.length < 2;
|
|
171
|
-
if (sizeSelect.length > 1) {
|
|
172
|
-
return false;
|
|
173
|
-
}
|
|
174
|
-
if (bannerSize.length >= 1 && bannerSize.value) {
|
|
175
|
-
ACMS.Config.lgImg = `${bannerSizeCriterion.value}:${bannerSize[0].value}`;
|
|
176
|
-
}
|
|
177
|
-
[].forEach.call(target.querySelectorAll(this.previewMark), (item) => {
|
|
178
|
-
item.parentNode.removeChild(item);
|
|
179
|
-
});
|
|
180
|
-
[].forEach.call(target.querySelectorAll(".js-img_resize_data"), (item) => {
|
|
181
|
-
item.parentNode.removeChild(item);
|
|
182
|
-
});
|
|
183
|
-
const lgImageSize = ACMS.Config.lgImg;
|
|
184
|
-
const lgImgAry = lgImageSize.split(":");
|
|
185
|
-
const lgImgSide = lgImgAry[0];
|
|
186
|
-
let lgImgSize = lgImgAry[1];
|
|
187
|
-
if (rawSize) {
|
|
188
|
-
lgImgSize = 999999999;
|
|
189
|
-
}
|
|
190
|
-
for (let i = 0; i < files.length; i++) {
|
|
191
|
-
const file = files[i];
|
|
192
|
-
if (!file) continue;
|
|
193
|
-
this.util.getDataUrlFromFile(file, lgImgSide, lgImgSize).then((data) => {
|
|
194
|
-
const { dataUrl } = data;
|
|
195
|
-
let { resize } = data;
|
|
196
|
-
if (rawSize) {
|
|
197
|
-
resize = false;
|
|
198
|
-
}
|
|
199
|
-
if (!this.dropSelect && file.type === "image/gif") {
|
|
200
|
-
resize = false;
|
|
201
|
-
}
|
|
202
|
-
if (this.previewOnly) {
|
|
203
|
-
resize = false;
|
|
204
|
-
}
|
|
205
|
-
this.set(target, dataUrl, resize || this.dropSelect);
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* 画像ドラッグでの失敗を抑制
|
|
211
|
-
*
|
|
212
|
-
* @param target
|
|
213
|
-
*/
|
|
214
|
-
banDrag(target) {
|
|
215
|
-
[].forEach.call(target.querySelectorAll("img"), (item) => {
|
|
216
|
-
const mouseDownHandler = (event) => {
|
|
217
|
-
event.preventDefault();
|
|
218
|
-
};
|
|
219
|
-
const mouseUpHandler = (event) => {
|
|
220
|
-
event.preventDefault();
|
|
221
|
-
};
|
|
222
|
-
item.addEventListener("mousedown", mouseDownHandler);
|
|
223
|
-
item.addEventListener("mouseup", mouseUpHandler);
|
|
224
|
-
this.eventListeners.push(
|
|
225
|
-
{ element: item, type: "mousedown", handler: mouseDownHandler },
|
|
226
|
-
{ element: item, type: "mouseup", handler: mouseUpHandler }
|
|
227
|
-
);
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* 分数を約分
|
|
232
|
-
*
|
|
233
|
-
* @param numerator
|
|
234
|
-
* @param denominator
|
|
235
|
-
*/
|
|
236
|
-
reduce(numerator, denominator) {
|
|
237
|
-
if (numerator > denominator) {
|
|
238
|
-
return Math.floor(numerator / denominator);
|
|
239
|
-
}
|
|
240
|
-
const numerator0 = numerator;
|
|
241
|
-
const denominator0 = denominator;
|
|
242
|
-
let c;
|
|
243
|
-
while (1) {
|
|
244
|
-
c = numerator % denominator;
|
|
245
|
-
if (c === 0) break;
|
|
246
|
-
denominator = numerator;
|
|
247
|
-
numerator = c;
|
|
248
|
-
}
|
|
249
|
-
return `${Math.floor(numerator0 / numerator)}/${Math.floor(denominator0 / numerator)}`;
|
|
250
|
-
}
|
|
251
|
-
/**
|
|
252
|
-
* リサイズした画像データをdomとして追加
|
|
253
|
-
*
|
|
254
|
-
* @param {HTMLElement} target 対象の要素
|
|
255
|
-
* @param {string} dataUrl 画像データのURL
|
|
256
|
-
* @param {boolean} resize リサイズされているかどうか
|
|
257
|
-
* @return {void}
|
|
258
|
-
*/
|
|
259
|
-
set(target, dataUrl, resize) {
|
|
260
|
-
if (!this.previewBox) {
|
|
261
|
-
this.previewBox = target.querySelector(this.previewMark).cloneNode(true);
|
|
262
|
-
[].forEach.call(target.querySelectorAll(this.previewMark), (item) => {
|
|
263
|
-
item.parentNode.removeChild(item);
|
|
264
|
-
});
|
|
265
|
-
[].forEach.call(target.querySelectorAll(".js-img_resize_data"), (item) => {
|
|
266
|
-
item.parentNode.removeChild(item);
|
|
267
|
-
});
|
|
268
|
-
}
|
|
269
|
-
const clone = this.previewBox.cloneNode(true);
|
|
270
|
-
clone.style.display = "";
|
|
271
|
-
clone.setAttribute("src", dataUrl);
|
|
272
|
-
target.querySelector(".js-img_resize_preview_location").insertAdjacentHTML("beforebegin", clone.outerHTML);
|
|
273
|
-
[].forEach.call(target.querySelectorAll(".js-img_resize_preview_old"), (item) => {
|
|
274
|
-
item.parentNode.removeChild(item);
|
|
275
|
-
});
|
|
276
|
-
const imgDataUrl = target.querySelector(".js-img_data_url");
|
|
277
|
-
if (imgDataUrl) {
|
|
278
|
-
imgDataUrl.setAttribute("data-src", dataUrl);
|
|
279
|
-
}
|
|
280
|
-
this.banDrag(target);
|
|
281
|
-
const input = target.querySelector(this.inputMark);
|
|
282
|
-
if (resize) {
|
|
283
|
-
const fileInput = target.querySelector(this.inputMark);
|
|
284
|
-
if (fileInput) {
|
|
285
|
-
fileInput.value = "";
|
|
286
|
-
}
|
|
287
|
-
} else {
|
|
288
|
-
dataUrl = "";
|
|
289
|
-
}
|
|
290
|
-
const inputName = input.getAttribute("name");
|
|
291
|
-
const dataForm = document.createElement("input");
|
|
292
|
-
dataForm.classList.add("js-img_resize_data");
|
|
293
|
-
dataForm.setAttribute("type", "hidden");
|
|
294
|
-
dataForm.setAttribute("accept", "image/*");
|
|
295
|
-
dataForm.setAttribute("type", "hidden");
|
|
296
|
-
dataForm.setAttribute("name", inputName);
|
|
297
|
-
dataForm.value = dataUrl;
|
|
298
|
-
const dummy = target.querySelector(".js-img_resize_dummy");
|
|
299
|
-
if (dummy) {
|
|
300
|
-
dummy.remove();
|
|
301
|
-
}
|
|
302
|
-
target.querySelector(this.inputMark).insertAdjacentHTML("afterend", dataForm.outerHTML);
|
|
303
|
-
}
|
|
304
|
-
};
|
|
305
|
-
export {
|
|
306
|
-
ResizeImage as default
|
|
307
|
-
};
|
|
308
|
-
//# sourceMappingURL=resize-image.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/resize-image/resize-image.js"],"sourcesContent":["import Util from './util';\n\nexport default class ResizeImage {\n /**\n * Constructor\n *\n * @param elm\n */\n constructor(elm) {\n this.elm = elm;\n this.dropAreaMark = '.js-drop_area';\n this.inputMark = ACMS.Config.resizeImageInputMark;\n this.previewMark = ACMS.Config.resizeImagePreviewMark;\n this.targetMark = ACMS.Config.resizeImageTargetMark;\n this.targetMarkCF = ACMS.Config.resizeImageTargetMarkCF;\n this.dropSelect = false;\n this.dragging = 0;\n this.previewOnly = ACMS.Config.resizeImage !== 'on';\n this.util = new Util();\n this.eventListeners = [];\n }\n\n /**\n * リサイズ処理の初期化\n */\n resize() {\n const targetAry = this.elm.querySelectorAll(this.targetMark);\n\n if (targetAry.length > 0) {\n [].forEach.call(targetAry, (input) => {\n this.exec(input);\n });\n } else if (\n this.elm.classList.contains(this.targetMarkCF.substr(1)) &&\n !this.elm.classList.contains('resizeImage')\n ) {\n this.elm.classList.add('resizeImage');\n this.exec(this.elm);\n }\n }\n\n /**\n * イベントリスナーを削除し、クリーンアップする\n */\n destroy() {\n // 登録したイベントリスナーを削除\n this.eventListeners.forEach(({ element, type, handler }) => {\n element.removeEventListener(type, handler);\n });\n this.eventListeners = [];\n\n // プレビュー要素を削除\n const previewElements = this.elm.querySelectorAll(this.previewMark);\n previewElements.forEach((element) => {\n element.remove();\n });\n\n // リサイズデータを削除\n const resizeDataElements = this.elm.querySelectorAll('.js-img_resize_data');\n resizeDataElements.forEach((element) => {\n element.remove();\n });\n\n // クラスを削除\n this.elm.classList.remove('resizeImage');\n }\n\n /**\n * targetに対してリサイズ処理イベントを登録\n *\n * @param target\n */\n exec(target) {\n const node = target.querySelector(this.previewMark);\n if (node !== null) {\n this.previewBox = node.cloneNode(true);\n target\n .querySelector(this.previewMark)\n .insertAdjacentHTML('afterend', '<div class=\"js-img_resize_preview_location\" />');\n this.listener(target);\n }\n }\n\n /**\n * 画像のファイル選択イベントを登録\n *\n * @param target\n */\n listener(target) {\n const dropArea = target.querySelector(this.dropAreaMark);\n const interval = 1500;\n let lastTime = new Date().getTime() - interval;\n\n this.dragging = 0;\n if (dropArea && window.File && window.FileReader && !this.previewOnly) {\n this.banDrag(target);\n\n target.querySelector('img').getAttribute('src');\n\n // ドロップできることを表示\n if (!target.querySelector('img').getAttribute('src')) {\n dropArea.classList.add('drag-n-drop-hover');\n setTimeout(() => {\n const area = dropArea.querySelector('.acms-admin-drop-area');\n $(area).fadeOut(200, () => {\n dropArea.classList.remove('drag-n-drop-hover');\n dropArea.querySelector('.acms-admin-drop-area').style.display = '';\n });\n }, 800);\n }\n\n // ドロップ時のアクションを設定\n const dropHandler = (event) => {\n event.stopPropagation();\n event.preventDefault();\n this.dragging = 0;\n this.dropSelect = true;\n dropArea.classList.remove('drag-n-drop-hover');\n\n const { files } = event.dataTransfer;\n let gif = false;\n\n for (let i = 0; i < files.length; i++) {\n const file = files[i];\n if (file.type === 'image/gif') {\n gif = true;\n break;\n }\n }\n if (gif) {\n if (!window.confirm(ACMS.i18n('drop_select_gif_image.alert'))) {\n return false;\n }\n }\n this.readFiles(event.dataTransfer.files, target);\n return false;\n };\n dropArea.addEventListener('drop', dropHandler, false);\n this.eventListeners.push({ element: dropArea, type: 'drop', handler: dropHandler });\n\n // ドロップエリアにいる間\n const dragOverHandler = (event) => {\n event.stopPropagation();\n event.preventDefault();\n dropArea.classList.add('drag-n-drop-hover');\n return false;\n };\n dropArea.addEventListener('dragover', dragOverHandler, false);\n this.eventListeners.push({ element: dropArea, type: 'dragover', handler: dragOverHandler });\n\n // ドロップエリアに入った時\n const dragEnterHandler = (event) => {\n event.stopPropagation();\n event.preventDefault();\n this.dragging++;\n dropArea.classList.add('drag-n-drop-hover');\n return false;\n };\n dropArea.addEventListener('dragenter', dragEnterHandler, false);\n this.eventListeners.push({ element: dropArea, type: 'dragenter', handler: dragEnterHandler });\n\n // ドロップエリアから出て行った時\n const dragLeaveHandler = (event) => {\n event.stopPropagation();\n event.preventDefault();\n this.dragging--;\n if (this.dragging === 0) {\n dropArea.classList.remove('drag-n-drop-hover');\n }\n return false;\n };\n dropArea.addEventListener('dragleave', dragLeaveHandler, false);\n this.eventListeners.push({ element: dropArea, type: 'dragleave', handler: dragLeaveHandler });\n }\n\n // フォーム入力よりファイルが選択された\n const fileInputs = target.querySelectorAll(this.inputMark);\n fileInputs.forEach((fileInput) => {\n const changeHandler = (event) => {\n if (lastTime + interval <= new Date().getTime()) {\n lastTime = new Date().getTime();\n this.readFiles(event.target.files, target);\n }\n };\n fileInput.addEventListener('change', changeHandler);\n this.eventListeners.push({ element: fileInput, type: 'change', handler: changeHandler });\n });\n }\n\n /**\n * 画像ファイルを読み込み\n *\n * @param files\n * @param target\n * @return {boolean}\n */\n readFiles(files, target) {\n const sizeSelect = target.querySelectorAll('[name^=image_size_]');\n const bannerSize = document.querySelectorAll('.js-banner_size_large');\n const bannerSizeCriterion = document.querySelector('.js-banner_size_large_criterion');\n const rawSize = sizeSelect.length > 0 && sizeSelect[0].value.length < 2;\n\n // 多言語対応ユニット\n if (sizeSelect.length > 1) {\n return false;\n }\n\n // バナーモジュール\n if (bannerSize.length >= 1 && bannerSize.value) {\n ACMS.Config.lgImg = `${bannerSizeCriterion.value}:${bannerSize[0].value}`;\n }\n [].forEach.call(target.querySelectorAll(this.previewMark), (item) => {\n item.parentNode.removeChild(item);\n });\n [].forEach.call(target.querySelectorAll('.js-img_resize_data'), (item) => {\n item.parentNode.removeChild(item);\n });\n\n const lgImageSize = ACMS.Config.lgImg;\n const lgImgAry = lgImageSize.split(':');\n const lgImgSide = lgImgAry[0];\n let lgImgSize = lgImgAry[1];\n\n if (rawSize) {\n lgImgSize = 999999999;\n }\n for (let i = 0; i < files.length; i++) {\n const file = files[i];\n if (!file) continue;\n this.util.getDataUrlFromFile(file, lgImgSide, lgImgSize).then((data) => {\n const { dataUrl } = data;\n let { resize } = data;\n\n if (rawSize) {\n resize = false;\n }\n if (!this.dropSelect && file.type === 'image/gif') {\n resize = false;\n }\n if (this.previewOnly) {\n resize = false;\n }\n this.set(target, dataUrl, resize || this.dropSelect);\n });\n }\n }\n\n /**\n * 画像ドラッグでの失敗を抑制\n *\n * @param target\n */\n banDrag(target) {\n [].forEach.call(target.querySelectorAll('img'), (item) => {\n const mouseDownHandler = (event) => {\n event.preventDefault();\n };\n const mouseUpHandler = (event) => {\n event.preventDefault();\n };\n item.addEventListener('mousedown', mouseDownHandler);\n item.addEventListener('mouseup', mouseUpHandler);\n this.eventListeners.push(\n { element: item, type: 'mousedown', handler: mouseDownHandler },\n { element: item, type: 'mouseup', handler: mouseUpHandler }\n );\n });\n }\n\n /**\n * 分数を約分\n *\n * @param numerator\n * @param denominator\n */\n reduce(numerator, denominator) {\n if (numerator > denominator) {\n return Math.floor(numerator / denominator);\n }\n const numerator0 = numerator;\n const denominator0 = denominator;\n let c;\n // eslint-disable-next-line no-constant-condition\n while (1) {\n c = numerator % denominator;\n if (c === 0) break;\n denominator = numerator;\n numerator = c;\n }\n return `${Math.floor(numerator0 / numerator)}/${Math.floor(denominator0 / numerator)}`;\n }\n\n /**\n * リサイズした画像データをdomとして追加\n *\n * @param {HTMLElement} target 対象の要素\n * @param {string} dataUrl 画像データのURL\n * @param {boolean} resize リサイズされているかどうか\n * @return {void}\n */\n set(target, dataUrl, resize) {\n if (!this.previewBox) {\n this.previewBox = target.querySelector(this.previewMark).cloneNode(true);\n [].forEach.call(target.querySelectorAll(this.previewMark), (item) => {\n item.parentNode.removeChild(item);\n });\n [].forEach.call(target.querySelectorAll('.js-img_resize_data'), (item) => {\n item.parentNode.removeChild(item);\n });\n }\n\n // preview\n const clone = this.previewBox.cloneNode(true);\n clone.style.display = '';\n clone.setAttribute('src', dataUrl);\n target.querySelector('.js-img_resize_preview_location').insertAdjacentHTML('beforebegin', clone.outerHTML);\n [].forEach.call(target.querySelectorAll('.js-img_resize_preview_old'), (item) => {\n item.parentNode.removeChild(item);\n });\n const imgDataUrl = target.querySelector('.js-img_data_url');\n if (imgDataUrl) {\n imgDataUrl.setAttribute('data-src', dataUrl);\n }\n\n // ban drag\n this.banDrag(target);\n\n const input = target.querySelector(this.inputMark);\n\n // insert data\n if (resize) {\n const fileInput = target.querySelector(this.inputMark);\n if (fileInput) {\n fileInput.value = '';\n }\n } else {\n dataUrl = '';\n }\n\n const inputName = input.getAttribute('name');\n const dataForm = document.createElement('input');\n dataForm.classList.add('js-img_resize_data');\n dataForm.setAttribute('type', 'hidden');\n dataForm.setAttribute('accept', 'image/*');\n dataForm.setAttribute('type', 'hidden');\n dataForm.setAttribute('name', inputName);\n dataForm.value = dataUrl;\n\n const dummy = target.querySelector('.js-img_resize_dummy');\n if (dummy) {\n dummy.remove();\n }\n target.querySelector(this.inputMark).insertAdjacentHTML('afterend', dataForm.outerHTML);\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
interface DrawInfo {
|
|
2
|
-
rad: number;
|
|
3
|
-
dx: number;
|
|
4
|
-
dy: number;
|
|
5
|
-
}
|
|
6
|
-
interface DestinationSize {
|
|
7
|
-
width: number;
|
|
8
|
-
height: number;
|
|
9
|
-
resize: boolean;
|
|
10
|
-
}
|
|
11
|
-
interface DataUrlRes {
|
|
12
|
-
dataUrl: string;
|
|
13
|
-
resize: boolean;
|
|
14
|
-
}
|
|
15
|
-
interface BlobRes {
|
|
16
|
-
blob: Blob;
|
|
17
|
-
resize: boolean;
|
|
18
|
-
}
|
|
19
|
-
export default class ResizeImageUtil {
|
|
20
|
-
/**
|
|
21
|
-
* URLからBASE64画像でリサイズ画像を取得
|
|
22
|
-
*
|
|
23
|
-
* @param url
|
|
24
|
-
* @param resizeType (null=long side, width, height)
|
|
25
|
-
* @param resizeSize (length)
|
|
26
|
-
* @param callback
|
|
27
|
-
*/
|
|
28
|
-
getDataUrlFromUrl(url: string, resizeType: string, resizeSize: number, callback: () => void): Promise<DataUrlRes>;
|
|
29
|
-
/**
|
|
30
|
-
* URLからBLOBデータでリサイズ画像を取得
|
|
31
|
-
*
|
|
32
|
-
* @param url
|
|
33
|
-
* @param resizeType
|
|
34
|
-
* @param resizeSize
|
|
35
|
-
* @param callback
|
|
36
|
-
*/
|
|
37
|
-
getBlobFromUrl(url: string, resizeType: string, resizeSize: number, callback: () => void): Promise<BlobRes>;
|
|
38
|
-
/**
|
|
39
|
-
* FileからBASE64画像でリサイズ画像を取得
|
|
40
|
-
*
|
|
41
|
-
* @param file
|
|
42
|
-
* @param resizeType
|
|
43
|
-
* @param resizeSize
|
|
44
|
-
* @param callback
|
|
45
|
-
* @returns {Promise}
|
|
46
|
-
*/
|
|
47
|
-
getDataUrlFromFile(file: File, resizeType: string, resizeSize: number, callback: () => void): Promise<DataUrlRes>;
|
|
48
|
-
/**
|
|
49
|
-
* FileからBLOBデータでリサイズ画像を取得
|
|
50
|
-
*
|
|
51
|
-
* @param file
|
|
52
|
-
* @param resizeType
|
|
53
|
-
* @param resizeSize
|
|
54
|
-
* @param callback
|
|
55
|
-
* @returns {Promise}
|
|
56
|
-
*/
|
|
57
|
-
getBlobFromFile(file: File, resizeType: string, resizeSize: number, callback?: () => void): Promise<BlobRes>;
|
|
58
|
-
/**
|
|
59
|
-
* BASE64画像を取得
|
|
60
|
-
*
|
|
61
|
-
* @param image
|
|
62
|
-
* @param mimeType
|
|
63
|
-
* @param resizeType
|
|
64
|
-
* @param resizeSize
|
|
65
|
-
* @param callback
|
|
66
|
-
* @returns {Promise}
|
|
67
|
-
*/
|
|
68
|
-
getDataURL(image: HTMLImageElement, mimeType: string, resizeType: string, resizeSize: number, callback: (dataUrl: string, resize: boolean) => void): Promise<DataUrlRes>;
|
|
69
|
-
/**
|
|
70
|
-
* リサイズした上で、Blobデータを取得
|
|
71
|
-
*
|
|
72
|
-
* @param image
|
|
73
|
-
* @param mimeType
|
|
74
|
-
* @param resizeType
|
|
75
|
-
* @param resizeSize
|
|
76
|
-
* @param callback
|
|
77
|
-
* @returns {Promise}
|
|
78
|
-
*/
|
|
79
|
-
getBlob(image: HTMLImageElement, mimeType: string, resizeType: string, resizeSize: number, callback?: (blob: Blob | null, resize: boolean) => void): Promise<BlobRes>;
|
|
80
|
-
/**
|
|
81
|
-
* データUrlをBlobに変換
|
|
82
|
-
*
|
|
83
|
-
* @param dataUrl
|
|
84
|
-
* @returns {*}
|
|
85
|
-
*/
|
|
86
|
-
dataUrlToBlob(dataUrl: string): Blob;
|
|
87
|
-
/**
|
|
88
|
-
* fileからデータURL作成
|
|
89
|
-
*
|
|
90
|
-
* @param file
|
|
91
|
-
* @returns {*}
|
|
92
|
-
* @private
|
|
93
|
-
*/
|
|
94
|
-
_createObjectURL(file: File): string;
|
|
95
|
-
/**
|
|
96
|
-
* リサイズ画像の書き出し
|
|
97
|
-
*
|
|
98
|
-
* @param image
|
|
99
|
-
* @param canvas
|
|
100
|
-
* @param destinationSize
|
|
101
|
-
* @param drawInfo
|
|
102
|
-
* @returns {*}
|
|
103
|
-
*/
|
|
104
|
-
_drawImage(image: HTMLImageElement, canvas: HTMLCanvasElement, destinationSize: {
|
|
105
|
-
width: number;
|
|
106
|
-
height: number;
|
|
107
|
-
}, drawInfo: DrawInfo): HTMLCanvasElement;
|
|
108
|
-
/**
|
|
109
|
-
* リサイズサイズの取得
|
|
110
|
-
*
|
|
111
|
-
* @param image
|
|
112
|
-
* @param resizeType
|
|
113
|
-
* @param resizeSize
|
|
114
|
-
* @returns {{width: number, height: number}}
|
|
115
|
-
*/
|
|
116
|
-
_getDestinationSize: (image: HTMLImageElement, resizeType: string, resizeSize: number) => DestinationSize;
|
|
117
|
-
/**
|
|
118
|
-
* 画像のローテーション対応
|
|
119
|
-
*
|
|
120
|
-
* @param image
|
|
121
|
-
* @param canvas
|
|
122
|
-
* @param destinationSize
|
|
123
|
-
* @returns {Promise}
|
|
124
|
-
*/
|
|
125
|
-
_fixImageRotation(image: HTMLImageElement, canvas: HTMLCanvasElement, destinationSize: DestinationSize): Promise<DrawInfo>;
|
|
126
|
-
/**
|
|
127
|
-
* Exif情報の取得
|
|
128
|
-
*
|
|
129
|
-
* @param image
|
|
130
|
-
* @returns {Promise}
|
|
131
|
-
*/
|
|
132
|
-
_getExifData(image: HTMLImageElement): Promise<any>;
|
|
133
|
-
}
|
|
134
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/wysiwyg.d.ts
DELETED
package/dist/wysiwyg.mjs
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// src/wysiwyg.js
|
|
2
|
-
import "trumbowyg";
|
|
3
|
-
import "trumbowyg/dist/plugins/colors/trumbowyg.colors";
|
|
4
|
-
import "trumbowyg/dist/plugins/fontsize/trumbowyg.fontsize";
|
|
5
|
-
import "trumbowyg/dist/plugins/lineheight/trumbowyg.lineheight";
|
|
6
|
-
import "trumbowyg/dist/plugins/table/trumbowyg.table";
|
|
7
|
-
import "trumbowyg/dist/langs/ja";
|
|
8
|
-
import "trumbowyg/dist/plugins/colors/ui/trumbowyg.colors.css";
|
|
9
|
-
import "trumbowyg/dist/plugins/table/ui/trumbowyg.table.css";
|
|
10
|
-
import "trumbowyg/dist/ui/trumbowyg.css";
|
|
11
|
-
import "trumbowyg/dist/ui/icons.svg";
|
|
12
|
-
var wysiwyg_default = (elm, config) => {
|
|
13
|
-
$(() => {
|
|
14
|
-
$.trumbowyg.svgPath = `${ACMS.Config.root}js/dest/assets/icons.svg`;
|
|
15
|
-
$(elm).trumbowyg(config);
|
|
16
|
-
});
|
|
17
|
-
};
|
|
18
|
-
export {
|
|
19
|
-
wysiwyg_default as default
|
|
20
|
-
};
|
|
21
|
-
//# sourceMappingURL=wysiwyg.mjs.map
|
package/dist/wysiwyg.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/wysiwyg.js"],"sourcesContent":["import 'trumbowyg';\nimport 'trumbowyg/dist/plugins/colors/trumbowyg.colors';\nimport 'trumbowyg/dist/plugins/fontsize/trumbowyg.fontsize';\nimport 'trumbowyg/dist/plugins/lineheight/trumbowyg.lineheight';\nimport 'trumbowyg/dist/plugins/table/trumbowyg.table';\nimport 'trumbowyg/dist/langs/ja';\n\nimport 'trumbowyg/dist/plugins/colors/ui/trumbowyg.colors.css';\nimport 'trumbowyg/dist/plugins/table/ui/trumbowyg.table.css';\nimport 'trumbowyg/dist/ui/trumbowyg.css';\nimport 'trumbowyg/dist/ui/icons.svg';\n\nexport default (elm, config) => {\n $(() => {\n $.trumbowyg.svgPath = `${ACMS.Config.root}js/dest/assets/icons.svg`;\n $(elm).trumbowyg(config);\n });\n};\n"],"mappings":";AAAA,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AAEP,OAAO;AACP,OAAO;AACP,OAAO;AACP,OAAO;AAEP,IAAO,kBAAQ,CAAC,KAAK,WAAW;AAC9B,IAAE,MAAM;AACN,MAAE,UAAU,UAAU,GAAG,KAAK,OAAO,IAAI;AACzC,MAAE,GAAG,EAAE,UAAU,MAAM;AAAA,EACzB,CAAC;AACH;","names":[]}
|