@windwalker-io/unicorn-next 0.1.0
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/.editorconfig +18 -0
- package/.gulp.json +7 -0
- package/bin/release.mjs +47 -0
- package/dist/chunks/_arrayPush.js +168 -0
- package/dist/chunks/_arrayPush.js.map +1 -0
- package/dist/chunks/_baseRest.js +73 -0
- package/dist/chunks/_baseRest.js.map +1 -0
- package/dist/chunks/_commonjsHelpers.js +7 -0
- package/dist/chunks/_commonjsHelpers.js.map +1 -0
- package/dist/chunks/_getPrototype.js +130 -0
- package/dist/chunks/_getPrototype.js.map +1 -0
- package/dist/chunks/button-radio.js +147 -0
- package/dist/chunks/button-radio.js.map +1 -0
- package/dist/chunks/checkboxes-multi-select.js +44 -0
- package/dist/chunks/checkboxes-multi-select.js.map +1 -0
- package/dist/chunks/cloneDeep.js +287 -0
- package/dist/chunks/cloneDeep.js.map +1 -0
- package/dist/chunks/cropper.min.js +5 -0
- package/dist/chunks/cropper.min.js.map +1 -0
- package/dist/chunks/field-cascade-select.js +256 -0
- package/dist/chunks/field-cascade-select.js.map +1 -0
- package/dist/chunks/field-file-drag.js +218 -0
- package/dist/chunks/field-file-drag.js.map +1 -0
- package/dist/chunks/field-flatpickr.js +893 -0
- package/dist/chunks/field-flatpickr.js.map +1 -0
- package/dist/chunks/field-modal-select.js +403 -0
- package/dist/chunks/field-modal-select.js.map +1 -0
- package/dist/chunks/field-modal-tree.js +790 -0
- package/dist/chunks/field-modal-tree.js.map +1 -0
- package/dist/chunks/field-multi-uploader.js +256 -0
- package/dist/chunks/field-multi-uploader.js.map +1 -0
- package/dist/chunks/field-repeatable.js +132 -0
- package/dist/chunks/field-repeatable.js.map +1 -0
- package/dist/chunks/field-single-image-drag.js +338 -0
- package/dist/chunks/field-single-image-drag.js.map +1 -0
- package/dist/chunks/form.js +154 -0
- package/dist/chunks/form.js.map +1 -0
- package/dist/chunks/grid.js +345 -0
- package/dist/chunks/grid.js.map +1 -0
- package/dist/chunks/http-client.js +229 -0
- package/dist/chunks/http-client.js.map +1 -0
- package/dist/chunks/iframe-modal.js +124 -0
- package/dist/chunks/iframe-modal.js.map +1 -0
- package/dist/chunks/index.js +309 -0
- package/dist/chunks/index.js.map +1 -0
- package/dist/chunks/isArguments.js +146 -0
- package/dist/chunks/isArguments.js.map +1 -0
- package/dist/chunks/keep-tab.js +101 -0
- package/dist/chunks/keep-tab.js.map +1 -0
- package/dist/chunks/legacy.js +210 -0
- package/dist/chunks/legacy.js.map +1 -0
- package/dist/chunks/list-dependent.js +231 -0
- package/dist/chunks/list-dependent.js.map +1 -0
- package/dist/chunks/s3-multipart-uploader.js +172 -0
- package/dist/chunks/s3-multipart-uploader.js.map +1 -0
- package/dist/chunks/s3-uploader.js +136 -0
- package/dist/chunks/s3-uploader.js.map +1 -0
- package/dist/chunks/show-on.js +237 -0
- package/dist/chunks/show-on.js.map +1 -0
- package/dist/chunks/tinymce.js +196 -0
- package/dist/chunks/tinymce.js.map +1 -0
- package/dist/chunks/ui-bootstrap5.js +71 -0
- package/dist/chunks/ui-bootstrap5.js.map +1 -0
- package/dist/chunks/unicorn.js +2202 -0
- package/dist/chunks/unicorn.js.map +1 -0
- package/dist/chunks/validation.js +854 -0
- package/dist/chunks/validation.js.map +1 -0
- package/dist/editor.css +1 -0
- package/dist/index.d.ts +1427 -0
- package/dist/multi-level-menu.css +1 -0
- package/dist/switcher.css +1 -0
- package/dist/unicorn-next.css +12 -0
- package/dist/unicorn.js +125 -0
- package/dist/unicorn.js.map +1 -0
- package/fusionfile.mjs +155 -0
- package/images/ajax-loader.gif +0 -0
- package/images/placeholder/avatar.png +0 -0
- package/images/placeholder/image-16x10.png +0 -0
- package/images/placeholder/image-16x9.png +0 -0
- package/images/placeholder/image-1x1.png +0 -0
- package/images/placeholder/image-4x3.png +0 -0
- package/package.json +102 -0
- package/scss/bootstrap/multi-level-menu.scss +121 -0
- package/scss/editor.scss +116 -0
- package/scss/field/file-drag.scss +102 -0
- package/scss/field/single-image-drag.scss +88 -0
- package/scss/field/vue-drag-uploader.scss +160 -0
- package/scss/switcher.scss +156 -0
- package/src/app.ts +128 -0
- package/src/bootstrap/button-radio.ts +208 -0
- package/src/bootstrap/keep-tab.ts +155 -0
- package/src/composable/index.ts +21 -0
- package/src/composable/useCheckboxesMultiSelect.ts +22 -0
- package/src/composable/useFieldCascadeSelect.ts +9 -0
- package/src/composable/useFieldFileDrag.ts +9 -0
- package/src/composable/useFieldFlatpickr.ts +3 -0
- package/src/composable/useFieldModalSelect.ts +6 -0
- package/src/composable/useFieldModalTree.ts +3 -0
- package/src/composable/useFieldMultiUploader.ts +3 -0
- package/src/composable/useFieldRepeatable.ts +9 -0
- package/src/composable/useFieldSingleImageDrag.ts +5 -0
- package/src/composable/useForm.ts +43 -0
- package/src/composable/useGrid.ts +57 -0
- package/src/composable/useHttp.ts +8 -0
- package/src/composable/useIframeModal.ts +9 -0
- package/src/composable/useListDependent.ts +26 -0
- package/src/composable/useQueue.ts +13 -0
- package/src/composable/useS3Uploader.ts +32 -0
- package/src/composable/useShowOn.ts +9 -0
- package/src/composable/useStack.ts +13 -0
- package/src/composable/useTinymce.ts +29 -0
- package/src/composable/useTomSelect.ts +72 -0
- package/src/composable/useUIBootstrap5.ts +48 -0
- package/src/composable/useUniDirective.ts +32 -0
- package/src/composable/useValidation.ts +39 -0
- package/src/data.ts +36 -0
- package/src/events.ts +73 -0
- package/src/legacy/legacy.ts +186 -0
- package/src/legacy/loader.ts +125 -0
- package/src/module/checkboxes-multi-select.ts +54 -0
- package/src/module/field-cascade-select.ts +292 -0
- package/src/module/field-file-drag.ts +292 -0
- package/src/module/field-flatpickr.ts +127 -0
- package/src/module/field-modal-select.ts +174 -0
- package/src/module/field-modal-tree.ts +27 -0
- package/src/module/field-multi-uploader.ts +361 -0
- package/src/module/field-repeatable.ts +202 -0
- package/src/module/field-single-image-drag.ts +468 -0
- package/src/module/form.ts +223 -0
- package/src/module/grid.ts +465 -0
- package/src/module/http-client.ts +243 -0
- package/src/module/iframe-modal.ts +167 -0
- package/src/module/list-dependent.ts +321 -0
- package/src/module/s3-multipart-uploader.ts +300 -0
- package/src/module/s3-uploader.ts +234 -0
- package/src/module/show-on.ts +173 -0
- package/src/module/tinymce.ts +263 -0
- package/src/module/ui-bootstrap5.ts +107 -0
- package/src/module/validation.ts +1019 -0
- package/src/plugin/index.ts +1 -0
- package/src/plugin/php-adapter.ts +65 -0
- package/src/polyfill/form-request-submit.ts +31 -0
- package/src/polyfill/index.ts +9 -0
- package/src/service/animate.ts +58 -0
- package/src/service/crypto.ts +27 -0
- package/src/service/dom-watcher.ts +62 -0
- package/src/service/dom.ts +265 -0
- package/src/service/helper.ts +48 -0
- package/src/service/index.ts +10 -0
- package/src/service/lang.ts +122 -0
- package/src/service/loader.ts +152 -0
- package/src/service/router.ts +118 -0
- package/src/service/ui.ts +497 -0
- package/src/service/uri.ts +106 -0
- package/src/types/base.ts +9 -0
- package/src/types/index.ts +4 -0
- package/src/types/modal-tree.ts +12 -0
- package/src/types/plugin.ts +6 -0
- package/src/types/shims.d.ts +18 -0
- package/src/types/ui.ts +6 -0
- package/src/unicorn.ts +63 -0
- package/src/utilities/arr.ts +25 -0
- package/src/utilities/base.ts +9 -0
- package/src/utilities/data.ts +48 -0
- package/src/utilities/index.ts +5 -0
- package/src/utilities/tree.ts +20 -0
- package/src/vue/components/ModalTree/ModalTreeApp.vue +175 -0
- package/src/vue/components/ModalTree/TreeItem.vue +262 -0
- package/src/vue/components/ModalTree/TreeModal.vue +225 -0
- package/tests/test.js +4 -0
- package/tsconfig.js.json +25 -0
- package/tsconfig.json +17 -0
- package/vite.assets.config.ts +61 -0
- package/vite.config.test.ts +36 -0
- package/vite.config.ts +112 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { a as useUniDirective, x as getBoundedInstance, v as selectOne, a5 as mergeDeep, A as h, w as selectAll, aa as data } from "./unicorn.js";
|
|
2
|
+
const defaultOptions = {
|
|
3
|
+
selector: ".btn-group .radio",
|
|
4
|
+
buttonClass: "btn",
|
|
5
|
+
activeClass: "active",
|
|
6
|
+
color: {
|
|
7
|
+
"default": "btn-default btn-outline-secondary",
|
|
8
|
+
green: "btn-success",
|
|
9
|
+
red: "btn-danger",
|
|
10
|
+
blue: "btn-primary"
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
class ButtonRadio {
|
|
14
|
+
wrapper;
|
|
15
|
+
element;
|
|
16
|
+
radios = [];
|
|
17
|
+
inputs = [];
|
|
18
|
+
buttons = [];
|
|
19
|
+
colors = [];
|
|
20
|
+
options;
|
|
21
|
+
static handle(el, options = {}) {
|
|
22
|
+
return getBoundedInstance(el, "button-radio", (el2) => {
|
|
23
|
+
return new this(el2, options);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
constructor(selector, options = {}) {
|
|
27
|
+
this.element = selectOne(selector);
|
|
28
|
+
this.options = mergeDeep({}, defaultOptions, options);
|
|
29
|
+
let wrapper;
|
|
30
|
+
if (this.element.dataset.fieldInput != null) {
|
|
31
|
+
wrapper = this.element;
|
|
32
|
+
} else {
|
|
33
|
+
wrapper = this.element.querySelector("[data-field-input]");
|
|
34
|
+
}
|
|
35
|
+
this.wrapper = wrapper;
|
|
36
|
+
let inputGroup = wrapper.querySelector(".btn-group");
|
|
37
|
+
const exists = inputGroup != null;
|
|
38
|
+
if (!inputGroup) {
|
|
39
|
+
inputGroup = h("div", { class: "btn-group" });
|
|
40
|
+
}
|
|
41
|
+
this.radios = selectAll(wrapper.querySelectorAll(".radio"));
|
|
42
|
+
this.radios.forEach((radio) => {
|
|
43
|
+
const button = this.prepareButton(radio, exists);
|
|
44
|
+
if (!exists) {
|
|
45
|
+
inputGroup.appendChild(button);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
this.syncState();
|
|
49
|
+
wrapper.insertBefore(inputGroup, wrapper.firstChild);
|
|
50
|
+
wrapper.dispatchEvent(new Event("button-radio.loaded"));
|
|
51
|
+
this.colors = [...new Set(this.colors)];
|
|
52
|
+
}
|
|
53
|
+
prepareButton(radio, exists = false) {
|
|
54
|
+
const options = this.options;
|
|
55
|
+
const input = radio.querySelector("input");
|
|
56
|
+
const label = radio.querySelector("label");
|
|
57
|
+
let button;
|
|
58
|
+
if (exists) {
|
|
59
|
+
button = this.wrapper.querySelector(`[data-for="${input.id}"]`);
|
|
60
|
+
button.classList.add(...this.parseClasses(`${options.buttonClass} ${options.color["default"]}`));
|
|
61
|
+
} else {
|
|
62
|
+
button = h(
|
|
63
|
+
"button",
|
|
64
|
+
{
|
|
65
|
+
type: "button",
|
|
66
|
+
class: `${options.buttonClass} ${options.color["default"]}`,
|
|
67
|
+
"data-value": input.value
|
|
68
|
+
},
|
|
69
|
+
`<span>${label.innerHTML}</span>`
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
data(button, "input", input);
|
|
73
|
+
this.inputs.push(input);
|
|
74
|
+
this.buttons.push(button);
|
|
75
|
+
radio.style.display = "none";
|
|
76
|
+
let color = input.dataset.colorClass || "";
|
|
77
|
+
if (!color) {
|
|
78
|
+
switch (input.value) {
|
|
79
|
+
case "":
|
|
80
|
+
color = options.color.blue || "";
|
|
81
|
+
break;
|
|
82
|
+
case "0":
|
|
83
|
+
color = options.color.red || "";
|
|
84
|
+
break;
|
|
85
|
+
default:
|
|
86
|
+
color = options.color.green || "";
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
input.dataset.colorClass = color;
|
|
90
|
+
}
|
|
91
|
+
this.colors.push(color);
|
|
92
|
+
if (input.disabled || input.getAttribute("readonly") != null) {
|
|
93
|
+
button.classList.add("disabled");
|
|
94
|
+
button.disabled = true;
|
|
95
|
+
}
|
|
96
|
+
if (input.getAttribute("readonly") != null) {
|
|
97
|
+
button.classList.add("readonly");
|
|
98
|
+
}
|
|
99
|
+
button.addEventListener("click", () => {
|
|
100
|
+
if (input.getAttribute("disabled") || input.getAttribute("readonly")) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const changed = !input.checked;
|
|
104
|
+
if (changed) {
|
|
105
|
+
this.inputs.forEach((ele) => {
|
|
106
|
+
ele.checked = false;
|
|
107
|
+
});
|
|
108
|
+
input.checked = true;
|
|
109
|
+
input.dispatchEvent(new Event("change"));
|
|
110
|
+
input.dispatchEvent(new Event("input"));
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
input.addEventListener("change", () => {
|
|
114
|
+
this.syncState();
|
|
115
|
+
});
|
|
116
|
+
return button;
|
|
117
|
+
}
|
|
118
|
+
syncState() {
|
|
119
|
+
const options = this.options;
|
|
120
|
+
this.buttons.forEach((button) => {
|
|
121
|
+
const input = data(button, "input");
|
|
122
|
+
button.classList.add(...this.parseClasses(options.color.default || ""));
|
|
123
|
+
button.classList.remove(...this.parseClasses(options.activeClass));
|
|
124
|
+
button.classList.remove(...this.parseClasses(...this.colors));
|
|
125
|
+
if (input.checked) {
|
|
126
|
+
button.classList.add(...this.parseClasses(options.activeClass));
|
|
127
|
+
button.classList.add(...this.parseClasses(input.dataset.colorClass || ""));
|
|
128
|
+
button.classList.remove(...this.parseClasses(options.color.default || ""));
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
parseClasses(...className) {
|
|
133
|
+
const classNameStr = className.join(" ");
|
|
134
|
+
return classNameStr.split(" ").filter((t) => t !== "");
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
const ready = /* @__PURE__ */ useUniDirective("button-radio", {
|
|
138
|
+
mounted(el, { value }) {
|
|
139
|
+
JSON.parse(value || "{}");
|
|
140
|
+
ButtonRadio.handle(el, value || {});
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
export {
|
|
144
|
+
ButtonRadio,
|
|
145
|
+
ready
|
|
146
|
+
};
|
|
147
|
+
//# sourceMappingURL=button-radio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-radio.js","sources":["../../src/bootstrap/button-radio.ts"],"sourcesContent":["import { useUniDirective } from '../composable';\r\nimport { data } from '../data';\r\nimport { getBoundedInstance, h, selectAll, selectOne } from '../service';\r\nimport { mergeDeep } from '../utilities';\r\n\r\nexport interface ButtonRadioOptions {\r\n selector?: string;\r\n buttonClass?: string;\r\n activeClass?: string;\r\n color?: {\r\n 'default'?: string;\r\n green?: string;\r\n red?: string;\r\n blue?: string;\r\n };\r\n}\r\n\r\nconst defaultOptions = {\r\n selector: '.btn-group .radio',\r\n buttonClass: 'btn',\r\n activeClass: 'active',\r\n color: {\r\n 'default': 'btn-default btn-outline-secondary',\r\n green: 'btn-success',\r\n red: 'btn-danger',\r\n blue: 'btn-primary'\r\n }\r\n};\r\n\r\nexport class ButtonRadio {\r\n wrapper: HTMLElement;\r\n element: HTMLElement;\r\n radios: HTMLInputElement[] = [];\r\n inputs: HTMLInputElement[] = [];\r\n buttons: HTMLButtonElement[] = [];\r\n colors: string[] = [];\r\n options: Required<ButtonRadioOptions>;\r\n\r\n static handle(el: HTMLElement | string, options: ButtonRadioOptions = {}) {\r\n return getBoundedInstance(el, 'button-radio', (el: HTMLElement) => {\r\n return new this(el, options);\r\n });\r\n }\r\n\r\n constructor(selector: HTMLElement | string, options: ButtonRadioOptions = {}) {\r\n this.element = selectOne<HTMLElement>(selector)!;\r\n this.options = mergeDeep({}, defaultOptions, options);\r\n let wrapper: HTMLElement;\r\n\r\n // Turn radios into btn-group\r\n\r\n if (this.element.dataset.fieldInput != null) {\r\n wrapper = this.element;\r\n } else {\r\n wrapper = this.element.querySelector('[data-field-input]')!;\r\n }\r\n\r\n this.wrapper = wrapper;\r\n let inputGroup = wrapper.querySelector<HTMLElement>('.btn-group')!;\r\n const exists = inputGroup != null;\r\n\r\n if (!inputGroup) {\r\n inputGroup = h('div', { class: 'btn-group' })\r\n }\r\n\r\n this.radios = selectAll(wrapper.querySelectorAll<HTMLInputElement>('.radio'));\r\n\r\n this.radios.forEach(radio => {\r\n const button = this.prepareButton(radio, exists);\r\n\r\n if (!exists) {\r\n inputGroup.appendChild(button);\r\n }\r\n });\r\n\r\n this.syncState();\r\n\r\n wrapper.insertBefore(inputGroup, wrapper.firstChild);\r\n\r\n wrapper.dispatchEvent(new Event('button-radio.loaded'));\r\n\r\n // Make color elements unique\r\n this.colors = [...new Set(this.colors)];\r\n }\r\n\r\n prepareButton(radio: HTMLInputElement, exists = false) {\r\n const options = this.options;\r\n\r\n const input = radio.querySelector('input')!;\r\n const label = radio.querySelector('label')!;\r\n\r\n let button: HTMLButtonElement;\r\n\r\n if (exists) {\r\n button = this.wrapper.querySelector(`[data-for=\"${input.id}\"]`)!;\r\n button.classList.add(...this.parseClasses(`${options.buttonClass} ${options.color['default']}`));\r\n } else {\r\n button = h(\r\n 'button',\r\n {\r\n type: 'button',\r\n class: `${options.buttonClass} ${options.color['default']}`,\r\n 'data-value': input.value,\r\n },\r\n `<span>${label.innerHTML}</span>`\r\n );\r\n }\r\n\r\n data(button, 'input', input);\r\n this.inputs.push(input);\r\n this.buttons.push(button);\r\n\r\n radio.style.display = 'none';\r\n\r\n // Prepare color schema\r\n let color = input.dataset.colorClass || '';\r\n\r\n if (!color) {\r\n switch (input.value) {\r\n case '':\r\n color = options.color.blue || '';\r\n break;\r\n\r\n case '0':\r\n color = options.color.red || '';\r\n break;\r\n\r\n default:\r\n color = options.color.green || '';\r\n break;\r\n }\r\n\r\n input.dataset.colorClass = color;\r\n }\r\n \r\n this.colors.push(color);\r\n\r\n if (input.disabled || input.getAttribute('readonly') != null) {\r\n button.classList.add('disabled');\r\n button.disabled = true;\r\n }\r\n\r\n if (input.getAttribute('readonly') != null) {\r\n button.classList.add('readonly');\r\n }\r\n\r\n // Bind event\r\n button.addEventListener('click', () => {\r\n if (input.getAttribute('disabled') || input.getAttribute('readonly')) {\r\n return;\r\n }\r\n\r\n const changed = !input.checked;\r\n\r\n if (changed) {\r\n this.inputs.forEach((ele) => {\r\n ele.checked = false;\r\n });\r\n\r\n input.checked = true;\r\n\r\n input.dispatchEvent(new Event('change'));\r\n input.dispatchEvent(new Event('input'));\r\n }\r\n });\r\n\r\n input.addEventListener('change', () => {\r\n this.syncState();\r\n });\r\n\r\n return button;\r\n }\r\n\r\n syncState() {\r\n const options = this.options;\r\n\r\n this.buttons.forEach((button) => {\r\n const input: HTMLInputElement = data(button, 'input');\r\n\r\n button.classList.add(...this.parseClasses(options.color.default || ''));\r\n button.classList.remove(...this.parseClasses(options.activeClass));\r\n button.classList.remove(...this.parseClasses(...this.colors));\r\n\r\n if (input.checked) {\r\n button.classList.add(...this.parseClasses(options.activeClass));\r\n button.classList.add(...this.parseClasses(input.dataset.colorClass || ''));\r\n button.classList.remove(...this.parseClasses(options.color.default || ''));\r\n }\r\n });\r\n }\r\n\r\n parseClasses(...className: string[]) {\r\n const classNameStr = className.join(' ');\r\n return classNameStr.split(' ').filter(t => t !== '');\r\n }\r\n}\r\n\r\nexport const ready = useUniDirective('button-radio', {\r\n mounted(el, { value }) {\r\n const options: ButtonRadioOptions = JSON.parse(value || '{}');\r\n ButtonRadio.handle(el, value || {});\r\n }\r\n});\r\n\r\nexport interface ButtonRadioModule {\r\n ButtonRadio: typeof ButtonRadio;\r\n ready: typeof ready;\r\n}\r\n"],"names":["el"],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { w as selectAll, v as selectOne } from "./unicorn.js";
|
|
2
|
+
class CheckboxesMultiSelect {
|
|
3
|
+
defaultOptions = {
|
|
4
|
+
duration: 100,
|
|
5
|
+
inputSelector: "input[type=checkbox][data-role=grid-checkbox]"
|
|
6
|
+
};
|
|
7
|
+
$element;
|
|
8
|
+
options;
|
|
9
|
+
boxes;
|
|
10
|
+
last = false;
|
|
11
|
+
static handle(selector, options = {}) {
|
|
12
|
+
return selectAll(selector, (ele) => new this(ele, options));
|
|
13
|
+
}
|
|
14
|
+
constructor(selector, options = {}) {
|
|
15
|
+
this.$element = selectOne(selector);
|
|
16
|
+
this.options = Object.assign({}, this.defaultOptions, options);
|
|
17
|
+
this.boxes = Array.from(this.$element.querySelectorAll(this.options.inputSelector));
|
|
18
|
+
this.last = false;
|
|
19
|
+
selectAll(this.boxes, (box) => {
|
|
20
|
+
box.addEventListener("click", (e) => {
|
|
21
|
+
this.select(box, e);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
select(box, event) {
|
|
26
|
+
if (!this.last) {
|
|
27
|
+
this.last = box;
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
if (event.shiftKey) {
|
|
31
|
+
const start = [].indexOf.call(this.boxes, box);
|
|
32
|
+
const end = [].indexOf.call(this.boxes, this.last);
|
|
33
|
+
const chs = [].slice.call(this.boxes, Math.min(start, end), Math.max(start, end) + 1);
|
|
34
|
+
[].forEach.call(chs, (ele, i) => {
|
|
35
|
+
ele.checked = this.last.checked;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
this.last = box;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export {
|
|
42
|
+
CheckboxesMultiSelect
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=checkboxes-multi-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkboxes-multi-select.js","sources":["../../src/module/checkboxes-multi-select.ts"],"sourcesContent":["import { selectAll, selectOne } from '../service';\r\n\r\nexport class CheckboxesMultiSelect {\r\n defaultOptions = {\r\n duration: 100,\r\n inputSelector: 'input[type=checkbox][data-role=grid-checkbox]'\r\n }\r\n\r\n $element: HTMLElement;\r\n options: any;\r\n boxes: HTMLInputElement[];\r\n last: HTMLInputElement | false = false;\r\n\r\n static handle(selector: any, options: any = {}) {\r\n return selectAll(selector, (ele: any) => new this(ele, options));\r\n }\r\n\r\n constructor(selector: any, options = {}) {\r\n this.$element = selectOne<HTMLElement>(selector)!;\r\n this.options = Object.assign({}, this.defaultOptions, options);\r\n this.boxes = Array.from(this.$element.querySelectorAll(this.options.inputSelector));\r\n this.last = false;\r\n\r\n selectAll(this.boxes, (box: HTMLInputElement) => {\r\n box.addEventListener('click', (e: MouseEvent) => {\r\n this.select(box, e);\r\n });\r\n });\r\n }\r\n\r\n select(box: HTMLInputElement, event: MouseEvent) {\r\n if (!this.last) {\r\n this.last = box;\r\n\r\n return;\r\n }\r\n\r\n if (event.shiftKey) {\r\n // @ts-ignore\r\n const start = [].indexOf.call(this.boxes, box);\r\n\r\n // @ts-ignore\r\n const end = [].indexOf.call(this.boxes, this.last);\r\n\r\n const chs = [].slice.call(this.boxes, Math.min(start, end), Math.max(start, end) + 1);\r\n\r\n [].forEach.call(chs, (ele: HTMLInputElement, i) => {\r\n ele.checked = (this.last as HTMLInputElement).checked;\r\n });\r\n }\r\n\r\n this.last = box;\r\n }\r\n}\r\n"],"names":[],"mappings":";AAEO,MAAM,sBAAsB;AAAA,EACjC,iBAAiB;AAAA,IACf,UAAU;AAAA,IACV,eAAe;AAAA,EAAA;AAAA,EAGjB;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAiC;AAAA,EAEjC,OAAO,OAAO,UAAe,UAAe,IAAI;AAC9C,WAAO,UAAU,UAAU,CAAC,QAAa,IAAI,KAAK,KAAK,OAAO,CAAC;AAAA,EACjE;AAAA,EAEA,YAAY,UAAe,UAAU,IAAI;AACvC,SAAK,WAAW,UAAuB,QAAQ;AAC/C,SAAK,UAAU,OAAO,OAAO,CAAA,GAAI,KAAK,gBAAgB,OAAO;AAC7D,SAAK,QAAQ,MAAM,KAAK,KAAK,SAAS,iBAAiB,KAAK,QAAQ,aAAa,CAAC;AAClF,SAAK,OAAO;AAEZ,cAAU,KAAK,OAAO,CAAC,QAA0B;AAC/C,UAAI,iBAAiB,SAAS,CAAC,MAAkB;AAC/C,aAAK,OAAO,KAAK,CAAC;AAAA,MACpB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA,EAEA,OAAO,KAAuB,OAAmB;AAC/C,QAAI,CAAC,KAAK,MAAM;AACd,WAAK,OAAO;AAEZ;AAAA,IACF;AAEA,QAAI,MAAM,UAAU;AAElB,YAAM,QAAQ,CAAA,EAAG,QAAQ,KAAK,KAAK,OAAO,GAAG;AAG7C,YAAM,MAAM,CAAA,EAAG,QAAQ,KAAK,KAAK,OAAO,KAAK,IAAI;AAEjD,YAAM,MAAM,CAAA,EAAG,MAAM,KAAK,KAAK,OAAO,KAAK,IAAI,OAAO,GAAG,GAAG,KAAK,IAAI,OAAO,GAAG,IAAI,CAAC;AAEpF,OAAA,EAAG,QAAQ,KAAK,KAAK,CAAC,KAAuB,MAAM;AACjD,YAAI,UAAW,KAAK,KAA0B;AAAA,MAChD,CAAC;AAAA,IACH;AAEA,SAAK,OAAO;AAAA,EACd;AACF;"}
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
import { L as ListCache, M as Map, a as MapCache, b as arrayPush } from "./_arrayPush.js";
|
|
2
|
+
import { k as keys, c as isPrototype, g as getPrototype, e as baseUnary, n as nodeUtil, f as isBuffer, a as assignValue } from "./_getPrototype.js";
|
|
3
|
+
import { g as getNative, r as root, c as isObject, a as isArray, b as baseGetTag, t as toSource, S as Symbol$1, i as isObjectLike } from "./isArguments.js";
|
|
4
|
+
var WeakMap = /* @__PURE__ */ getNative(root, "WeakMap");
|
|
5
|
+
var objectCreate = /* @__PURE__ */ (() => Object.create)();
|
|
6
|
+
var baseCreate = /* @__PURE__ */ (function() {
|
|
7
|
+
function object() {
|
|
8
|
+
}
|
|
9
|
+
return function(proto) {
|
|
10
|
+
if (!isObject(proto)) {
|
|
11
|
+
return {};
|
|
12
|
+
}
|
|
13
|
+
if (objectCreate) {
|
|
14
|
+
return objectCreate(proto);
|
|
15
|
+
}
|
|
16
|
+
object.prototype = proto;
|
|
17
|
+
var result = new object();
|
|
18
|
+
object.prototype = void 0;
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
})();
|
|
22
|
+
function arrayEach(array, iteratee) {
|
|
23
|
+
var index = -1, length = array == null ? 0 : array.length;
|
|
24
|
+
while (++index < length) {
|
|
25
|
+
if (iteratee(array[index], index, array) === false) {
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return array;
|
|
30
|
+
}
|
|
31
|
+
function stackClear() {
|
|
32
|
+
this.__data__ = new ListCache();
|
|
33
|
+
this.size = 0;
|
|
34
|
+
}
|
|
35
|
+
function stackDelete(key) {
|
|
36
|
+
var data = this.__data__, result = data["delete"](key);
|
|
37
|
+
this.size = data.size;
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
function stackGet(key) {
|
|
41
|
+
return this.__data__.get(key);
|
|
42
|
+
}
|
|
43
|
+
function stackHas(key) {
|
|
44
|
+
return this.__data__.has(key);
|
|
45
|
+
}
|
|
46
|
+
var LARGE_ARRAY_SIZE = 200;
|
|
47
|
+
function stackSet(key, value) {
|
|
48
|
+
var data = this.__data__;
|
|
49
|
+
if (data instanceof ListCache) {
|
|
50
|
+
var pairs = data.__data__;
|
|
51
|
+
if (!Map || pairs.length < LARGE_ARRAY_SIZE - 1) {
|
|
52
|
+
pairs.push([key, value]);
|
|
53
|
+
this.size = ++data.size;
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
data = this.__data__ = new MapCache(pairs);
|
|
57
|
+
}
|
|
58
|
+
data.set(key, value);
|
|
59
|
+
this.size = data.size;
|
|
60
|
+
return this;
|
|
61
|
+
}
|
|
62
|
+
function Stack(entries) {
|
|
63
|
+
var data = this.__data__ = new ListCache(entries);
|
|
64
|
+
this.size = data.size;
|
|
65
|
+
}
|
|
66
|
+
Stack.prototype.clear = stackClear;
|
|
67
|
+
Stack.prototype["delete"] = stackDelete;
|
|
68
|
+
Stack.prototype.get = stackGet;
|
|
69
|
+
Stack.prototype.has = stackHas;
|
|
70
|
+
Stack.prototype.set = stackSet;
|
|
71
|
+
var freeExports = typeof exports == "object" && exports && !/* @__PURE__ */ (() => exports.nodeType)() && exports;
|
|
72
|
+
var freeModule = freeExports && typeof module == "object" && module && !/* @__PURE__ */ (() => module.nodeType)() && module;
|
|
73
|
+
var moduleExports = freeModule && /* @__PURE__ */ (() => freeModule.exports)() === freeExports;
|
|
74
|
+
var Buffer = moduleExports ? /* @__PURE__ */ (() => root.Buffer)() : void 0;
|
|
75
|
+
Buffer ? /* @__PURE__ */ (() => Buffer.allocUnsafe)() : void 0;
|
|
76
|
+
function cloneBuffer(buffer, isDeep) {
|
|
77
|
+
{
|
|
78
|
+
return buffer.slice();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
function arrayFilter(array, predicate) {
|
|
82
|
+
var index = -1, length = array == null ? 0 : array.length, resIndex = 0, result = [];
|
|
83
|
+
while (++index < length) {
|
|
84
|
+
var value = array[index];
|
|
85
|
+
if (predicate(value, index, array)) {
|
|
86
|
+
result[resIndex++] = value;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
91
|
+
function stubArray() {
|
|
92
|
+
return [];
|
|
93
|
+
}
|
|
94
|
+
var objectProto$1 = /* @__PURE__ */ (() => Object.prototype)();
|
|
95
|
+
var propertyIsEnumerable = /* @__PURE__ */ (() => objectProto$1.propertyIsEnumerable)();
|
|
96
|
+
var nativeGetSymbols = /* @__PURE__ */ (() => Object.getOwnPropertySymbols)();
|
|
97
|
+
var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
|
|
98
|
+
if (object == null) {
|
|
99
|
+
return [];
|
|
100
|
+
}
|
|
101
|
+
object = Object(object);
|
|
102
|
+
return arrayFilter(nativeGetSymbols(object), function(symbol) {
|
|
103
|
+
return propertyIsEnumerable.call(object, symbol);
|
|
104
|
+
});
|
|
105
|
+
};
|
|
106
|
+
function baseGetAllKeys(object, keysFunc, symbolsFunc) {
|
|
107
|
+
var result = keysFunc(object);
|
|
108
|
+
return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
|
|
109
|
+
}
|
|
110
|
+
function getAllKeys(object) {
|
|
111
|
+
return baseGetAllKeys(object, keys, getSymbols);
|
|
112
|
+
}
|
|
113
|
+
var DataView = /* @__PURE__ */ getNative(root, "DataView");
|
|
114
|
+
var Promise$1 = /* @__PURE__ */ getNative(root, "Promise");
|
|
115
|
+
var Set = /* @__PURE__ */ getNative(root, "Set");
|
|
116
|
+
var mapTag$3 = "[object Map]", objectTag$1 = "[object Object]", promiseTag = "[object Promise]", setTag$3 = "[object Set]", weakMapTag$1 = "[object WeakMap]";
|
|
117
|
+
var dataViewTag$2 = "[object DataView]";
|
|
118
|
+
var dataViewCtorString = /* @__PURE__ */ toSource(DataView), mapCtorString = /* @__PURE__ */ toSource(Map), promiseCtorString = /* @__PURE__ */ toSource(Promise$1), setCtorString = /* @__PURE__ */ toSource(Set), weakMapCtorString = /* @__PURE__ */ toSource(WeakMap);
|
|
119
|
+
var getTag = baseGetTag;
|
|
120
|
+
if (DataView && /* @__PURE__ */ getTag(/* @__PURE__ */ new DataView(/* @__PURE__ */ new ArrayBuffer(1))) != dataViewTag$2 || Map && /* @__PURE__ */ getTag(/* @__PURE__ */ new Map()) != mapTag$3 || Promise$1 && /* @__PURE__ */ getTag(/* @__PURE__ */ Promise$1.resolve()) != promiseTag || Set && /* @__PURE__ */ getTag(/* @__PURE__ */ new Set()) != setTag$3 || WeakMap && /* @__PURE__ */ getTag(/* @__PURE__ */ new WeakMap()) != weakMapTag$1) {
|
|
121
|
+
getTag = function(value) {
|
|
122
|
+
var result = baseGetTag(value), Ctor = result == objectTag$1 ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
|
|
123
|
+
if (ctorString) {
|
|
124
|
+
switch (ctorString) {
|
|
125
|
+
case dataViewCtorString:
|
|
126
|
+
return dataViewTag$2;
|
|
127
|
+
case mapCtorString:
|
|
128
|
+
return mapTag$3;
|
|
129
|
+
case promiseCtorString:
|
|
130
|
+
return promiseTag;
|
|
131
|
+
case setCtorString:
|
|
132
|
+
return setTag$3;
|
|
133
|
+
case weakMapCtorString:
|
|
134
|
+
return weakMapTag$1;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return result;
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
var objectProto = /* @__PURE__ */ (() => Object.prototype)();
|
|
141
|
+
var hasOwnProperty = /* @__PURE__ */ (() => objectProto.hasOwnProperty)();
|
|
142
|
+
function initCloneArray(array) {
|
|
143
|
+
var length = array.length, result = new array.constructor(length);
|
|
144
|
+
if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) {
|
|
145
|
+
result.index = array.index;
|
|
146
|
+
result.input = array.input;
|
|
147
|
+
}
|
|
148
|
+
return result;
|
|
149
|
+
}
|
|
150
|
+
var Uint8Array = /* @__PURE__ */ (() => root.Uint8Array)();
|
|
151
|
+
function cloneArrayBuffer(arrayBuffer) {
|
|
152
|
+
var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
|
|
153
|
+
new Uint8Array(result).set(new Uint8Array(arrayBuffer));
|
|
154
|
+
return result;
|
|
155
|
+
}
|
|
156
|
+
function cloneDataView(dataView, isDeep) {
|
|
157
|
+
var buffer = cloneArrayBuffer(dataView.buffer);
|
|
158
|
+
return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
|
|
159
|
+
}
|
|
160
|
+
var reFlags = /\w*$/;
|
|
161
|
+
function cloneRegExp(regexp) {
|
|
162
|
+
var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
|
|
163
|
+
result.lastIndex = regexp.lastIndex;
|
|
164
|
+
return result;
|
|
165
|
+
}
|
|
166
|
+
var symbolProto = Symbol$1 ? /* @__PURE__ */ (() => Symbol$1.prototype)() : void 0, symbolValueOf = symbolProto ? /* @__PURE__ */ (() => symbolProto.valueOf)() : void 0;
|
|
167
|
+
function cloneSymbol(symbol) {
|
|
168
|
+
return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
|
|
169
|
+
}
|
|
170
|
+
function cloneTypedArray(typedArray, isDeep) {
|
|
171
|
+
var buffer = cloneArrayBuffer(typedArray.buffer);
|
|
172
|
+
return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
|
|
173
|
+
}
|
|
174
|
+
var boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", symbolTag$1 = "[object Symbol]";
|
|
175
|
+
var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$1 = "[object DataView]", float32Tag$1 = "[object Float32Array]", float64Tag$1 = "[object Float64Array]", int8Tag$1 = "[object Int8Array]", int16Tag$1 = "[object Int16Array]", int32Tag$1 = "[object Int32Array]", uint8Tag$1 = "[object Uint8Array]", uint8ClampedTag$1 = "[object Uint8ClampedArray]", uint16Tag$1 = "[object Uint16Array]", uint32Tag$1 = "[object Uint32Array]";
|
|
176
|
+
function initCloneByTag(object, tag, isDeep) {
|
|
177
|
+
var Ctor = object.constructor;
|
|
178
|
+
switch (tag) {
|
|
179
|
+
case arrayBufferTag$1:
|
|
180
|
+
return cloneArrayBuffer(object);
|
|
181
|
+
case boolTag$1:
|
|
182
|
+
case dateTag$1:
|
|
183
|
+
return new Ctor(+object);
|
|
184
|
+
case dataViewTag$1:
|
|
185
|
+
return cloneDataView(object);
|
|
186
|
+
case float32Tag$1:
|
|
187
|
+
case float64Tag$1:
|
|
188
|
+
case int8Tag$1:
|
|
189
|
+
case int16Tag$1:
|
|
190
|
+
case int32Tag$1:
|
|
191
|
+
case uint8Tag$1:
|
|
192
|
+
case uint8ClampedTag$1:
|
|
193
|
+
case uint16Tag$1:
|
|
194
|
+
case uint32Tag$1:
|
|
195
|
+
return cloneTypedArray(object);
|
|
196
|
+
case mapTag$2:
|
|
197
|
+
return new Ctor();
|
|
198
|
+
case numberTag$1:
|
|
199
|
+
case stringTag$1:
|
|
200
|
+
return new Ctor(object);
|
|
201
|
+
case regexpTag$1:
|
|
202
|
+
return cloneRegExp(object);
|
|
203
|
+
case setTag$2:
|
|
204
|
+
return new Ctor();
|
|
205
|
+
case symbolTag$1:
|
|
206
|
+
return cloneSymbol(object);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
function initCloneObject(object) {
|
|
210
|
+
return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};
|
|
211
|
+
}
|
|
212
|
+
var mapTag$1 = "[object Map]";
|
|
213
|
+
function baseIsMap(value) {
|
|
214
|
+
return isObjectLike(value) && getTag(value) == mapTag$1;
|
|
215
|
+
}
|
|
216
|
+
var nodeIsMap = nodeUtil && /* @__PURE__ */ (() => nodeUtil.isMap)();
|
|
217
|
+
var isMap = nodeIsMap ? /* @__PURE__ */ baseUnary(nodeIsMap) : baseIsMap;
|
|
218
|
+
var setTag$1 = "[object Set]";
|
|
219
|
+
function baseIsSet(value) {
|
|
220
|
+
return isObjectLike(value) && getTag(value) == setTag$1;
|
|
221
|
+
}
|
|
222
|
+
var nodeIsSet = nodeUtil && /* @__PURE__ */ (() => nodeUtil.isSet)();
|
|
223
|
+
var isSet = nodeIsSet ? /* @__PURE__ */ baseUnary(nodeIsSet) : baseIsSet;
|
|
224
|
+
var argsTag = "[object Arguments]", arrayTag = "[object Array]", boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag = "[object Map]", numberTag = "[object Number]", objectTag = "[object Object]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]", weakMapTag = "[object WeakMap]";
|
|
225
|
+
var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
|
|
226
|
+
var cloneableTags = {};
|
|
227
|
+
cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
|
|
228
|
+
cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false;
|
|
229
|
+
function baseClone(value, bitmask, customizer, key, object, stack) {
|
|
230
|
+
var result;
|
|
231
|
+
if (result !== void 0) {
|
|
232
|
+
return result;
|
|
233
|
+
}
|
|
234
|
+
if (!isObject(value)) {
|
|
235
|
+
return value;
|
|
236
|
+
}
|
|
237
|
+
var isArr = isArray(value);
|
|
238
|
+
if (isArr) {
|
|
239
|
+
result = initCloneArray(value);
|
|
240
|
+
} else {
|
|
241
|
+
var tag = getTag(value), isFunc = tag == funcTag || tag == genTag;
|
|
242
|
+
if (isBuffer(value)) {
|
|
243
|
+
return cloneBuffer(value);
|
|
244
|
+
}
|
|
245
|
+
if (tag == objectTag || tag == argsTag || isFunc && !object) {
|
|
246
|
+
result = isFunc ? {} : initCloneObject(value);
|
|
247
|
+
} else {
|
|
248
|
+
if (!cloneableTags[tag]) {
|
|
249
|
+
return object ? value : {};
|
|
250
|
+
}
|
|
251
|
+
result = initCloneByTag(value, tag);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
stack || (stack = new Stack());
|
|
255
|
+
var stacked = stack.get(value);
|
|
256
|
+
if (stacked) {
|
|
257
|
+
return stacked;
|
|
258
|
+
}
|
|
259
|
+
stack.set(value, result);
|
|
260
|
+
if (isSet(value)) {
|
|
261
|
+
value.forEach(function(subValue) {
|
|
262
|
+
result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
|
|
263
|
+
});
|
|
264
|
+
} else if (isMap(value)) {
|
|
265
|
+
value.forEach(function(subValue, key2) {
|
|
266
|
+
result.set(key2, baseClone(subValue, bitmask, customizer, key2, value, stack));
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
var keysFunc = getAllKeys;
|
|
270
|
+
var props = isArr ? void 0 : keysFunc(value);
|
|
271
|
+
arrayEach(props || value, function(subValue, key2) {
|
|
272
|
+
if (props) {
|
|
273
|
+
key2 = subValue;
|
|
274
|
+
subValue = value[key2];
|
|
275
|
+
}
|
|
276
|
+
assignValue(result, key2, baseClone(subValue, bitmask, customizer, key2, value, stack));
|
|
277
|
+
});
|
|
278
|
+
return result;
|
|
279
|
+
}
|
|
280
|
+
var CLONE_DEEP_FLAG = 1, CLONE_SYMBOLS_FLAG = 4;
|
|
281
|
+
function cloneDeep(value) {
|
|
282
|
+
return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
|
|
283
|
+
}
|
|
284
|
+
export {
|
|
285
|
+
cloneDeep as c
|
|
286
|
+
};
|
|
287
|
+
//# sourceMappingURL=cloneDeep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloneDeep.js","sources":["../../../../../../node_modules/lodash-es/_WeakMap.js","../../../../../../node_modules/lodash-es/_baseCreate.js","../../../../../../node_modules/lodash-es/_arrayEach.js","../../../../../../node_modules/lodash-es/_stackClear.js","../../../../../../node_modules/lodash-es/_stackDelete.js","../../../../../../node_modules/lodash-es/_stackGet.js","../../../../../../node_modules/lodash-es/_stackHas.js","../../../../../../node_modules/lodash-es/_stackSet.js","../../../../../../node_modules/lodash-es/_Stack.js","../../../../../../node_modules/lodash-es/_cloneBuffer.js","../../../../../../node_modules/lodash-es/_arrayFilter.js","../../../../../../node_modules/lodash-es/stubArray.js","../../../../../../node_modules/lodash-es/_getSymbols.js","../../../../../../node_modules/lodash-es/_baseGetAllKeys.js","../../../../../../node_modules/lodash-es/_getAllKeys.js","../../../../../../node_modules/lodash-es/_DataView.js","../../../../../../node_modules/lodash-es/_Promise.js","../../../../../../node_modules/lodash-es/_Set.js","../../../../../../node_modules/lodash-es/_getTag.js","../../../../../../node_modules/lodash-es/_initCloneArray.js","../../../../../../node_modules/lodash-es/_Uint8Array.js","../../../../../../node_modules/lodash-es/_cloneArrayBuffer.js","../../../../../../node_modules/lodash-es/_cloneDataView.js","../../../../../../node_modules/lodash-es/_cloneRegExp.js","../../../../../../node_modules/lodash-es/_cloneSymbol.js","../../../../../../node_modules/lodash-es/_cloneTypedArray.js","../../../../../../node_modules/lodash-es/_initCloneByTag.js","../../../../../../node_modules/lodash-es/_initCloneObject.js","../../../../../../node_modules/lodash-es/_baseIsMap.js","../../../../../../node_modules/lodash-es/isMap.js","../../../../../../node_modules/lodash-es/_baseIsSet.js","../../../../../../node_modules/lodash-es/isSet.js","../../../../../../node_modules/lodash-es/_baseClone.js","../../../../../../node_modules/lodash-es/cloneDeep.js"],"sourcesContent":["import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nexport default WeakMap;\n","import isObject from './isObject.js';\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nexport default baseCreate;\n","/**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\nfunction arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n}\n\nexport default arrayEach;\n","import ListCache from './_ListCache.js';\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nexport default stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nexport default stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nexport default stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nexport default stackHas;\n","import ListCache from './_ListCache.js';\nimport Map from './_Map.js';\nimport MapCache from './_MapCache.js';\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nexport default stackSet;\n","import ListCache from './_ListCache.js';\nimport stackClear from './_stackClear.js';\nimport stackDelete from './_stackDelete.js';\nimport stackGet from './_stackGet.js';\nimport stackHas from './_stackHas.js';\nimport stackSet from './_stackSet.js';\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nexport default Stack;\n","import root from './_root.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nexport default cloneBuffer;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default arrayFilter;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nexport default stubArray;\n","import arrayFilter from './_arrayFilter.js';\nimport stubArray from './stubArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nexport default getSymbols;\n","import arrayPush from './_arrayPush.js';\nimport isArray from './isArray.js';\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nexport default baseGetAllKeys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbols from './_getSymbols.js';\nimport keys from './keys.js';\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nexport default getAllKeys;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nexport default DataView;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nexport default Promise;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nexport default Set;\n","import DataView from './_DataView.js';\nimport Map from './_Map.js';\nimport Promise from './_Promise.js';\nimport Set from './_Set.js';\nimport WeakMap from './_WeakMap.js';\nimport baseGetTag from './_baseGetTag.js';\nimport toSource from './_toSource.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nexport default getTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\nfunction initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n}\n\nexport default initCloneArray;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nexport default Uint8Array;\n","import Uint8Array from './_Uint8Array.js';\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nexport default cloneArrayBuffer;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\nfunction cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n}\n\nexport default cloneDataView;\n","/** Used to match `RegExp` flags from their coerced string values. */\nvar reFlags = /\\w*$/;\n\n/**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\nfunction cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n}\n\nexport default cloneRegExp;\n","import Symbol from './_Symbol.js';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\nfunction cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n}\n\nexport default cloneSymbol;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nexport default cloneTypedArray;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\nimport cloneDataView from './_cloneDataView.js';\nimport cloneRegExp from './_cloneRegExp.js';\nimport cloneSymbol from './_cloneSymbol.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n}\n\nexport default initCloneByTag;\n","import baseCreate from './_baseCreate.js';\nimport getPrototype from './_getPrototype.js';\nimport isPrototype from './_isPrototype.js';\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nexport default initCloneObject;\n","import getTag from './_getTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]';\n\n/**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\nfunction baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n}\n\nexport default baseIsMap;\n","import baseIsMap from './_baseIsMap.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsMap = nodeUtil && nodeUtil.isMap;\n\n/**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\nvar isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\nexport default isMap;\n","import getTag from './_getTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar setTag = '[object Set]';\n\n/**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\nfunction baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n}\n\nexport default baseIsSet;\n","import baseIsSet from './_baseIsSet.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsSet = nodeUtil && nodeUtil.isSet;\n\n/**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\nvar isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\nexport default isSet;\n","import Stack from './_Stack.js';\nimport arrayEach from './_arrayEach.js';\nimport assignValue from './_assignValue.js';\nimport baseAssign from './_baseAssign.js';\nimport baseAssignIn from './_baseAssignIn.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport copyArray from './_copyArray.js';\nimport copySymbols from './_copySymbols.js';\nimport copySymbolsIn from './_copySymbolsIn.js';\nimport getAllKeys from './_getAllKeys.js';\nimport getAllKeysIn from './_getAllKeysIn.js';\nimport getTag from './_getTag.js';\nimport initCloneArray from './_initCloneArray.js';\nimport initCloneByTag from './_initCloneByTag.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isMap from './isMap.js';\nimport isObject from './isObject.js';\nimport isSet from './isSet.js';\nimport keys from './keys.js';\nimport keysIn from './keysIn.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values supported by `_.clone`. */\nvar cloneableTags = {};\ncloneableTags[argsTag] = cloneableTags[arrayTag] =\ncloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\ncloneableTags[boolTag] = cloneableTags[dateTag] =\ncloneableTags[float32Tag] = cloneableTags[float64Tag] =\ncloneableTags[int8Tag] = cloneableTags[int16Tag] =\ncloneableTags[int32Tag] = cloneableTags[mapTag] =\ncloneableTags[numberTag] = cloneableTags[objectTag] =\ncloneableTags[regexpTag] = cloneableTags[setTag] =\ncloneableTags[stringTag] = cloneableTags[symbolTag] =\ncloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\ncloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\ncloneableTags[errorTag] = cloneableTags[funcTag] =\ncloneableTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\nfunction baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n}\n\nexport default baseClone;\n","import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\nfunction cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n}\n\nexport default cloneDeep;\n"],"names":["objectProto","Promise","mapTag","objectTag","setTag","weakMapTag","dataViewTag","Symbol","boolTag","dateTag","numberTag","regexpTag","stringTag","symbolTag","arrayBufferTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","key"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const cropper_min = '/*!\n * Cropper.js v1.6.2\n * https://fengyuanchen.github.io/cropperjs\n *\n * Copyright 2015-present Chen Fengyuan\n * Released under the MIT license\n *\n * Date: 2024-04-21T07:43:02.731Z\n */.cropper-container{-webkit-touch-callout:none;direction:ltr;font-size:0;line-height:0;position:relative;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.cropper-container img{backface-visibility:hidden;display:block;height:100%;image-orientation:0deg;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;width:100%}.cropper-canvas,.cropper-crop-box,.cropper-drag-box,.cropper-modal,.cropper-wrap-box{bottom:0;left:0;position:absolute;right:0;top:0}.cropper-canvas,.cropper-wrap-box{overflow:hidden}.cropper-drag-box{background-color:#fff;opacity:0}.cropper-modal{background-color:#000;opacity:.5}.cropper-view-box{display:block;height:100%;outline:1px solid #39f;outline-color:rgba(51,153,255,.75);overflow:hidden;width:100%}.cropper-dashed{border:0 dashed #eee;display:block;opacity:.5;position:absolute}.cropper-dashed.dashed-h{border-bottom-width:1px;border-top-width:1px;height:33.33333%;left:0;top:33.33333%;width:100%}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;height:100%;left:33.33333%;top:0;width:33.33333%}.cropper-center{display:block;height:0;left:50%;opacity:.75;position:absolute;top:50%;width:0}.cropper-center:after,.cropper-center:before{background-color:#eee;content:" ";display:block;position:absolute}.cropper-center:before{height:1px;left:-3px;top:0;width:7px}.cropper-center:after{height:7px;left:0;top:-3px;width:1px}.cropper-face,.cropper-line,.cropper-point{display:block;height:100%;opacity:.1;position:absolute;width:100%}.cropper-face{background-color:#fff;left:0;top:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;right:-3px;top:0;width:5px}.cropper-line.line-n{cursor:ns-resize;height:5px;left:0;top:-3px}.cropper-line.line-w{cursor:ew-resize;left:-3px;top:0;width:5px}.cropper-line.line-s{bottom:-3px;cursor:ns-resize;height:5px;left:0}.cropper-point{background-color:#39f;height:5px;opacity:.75;width:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;right:-3px;top:50%}.cropper-point.point-n{cursor:ns-resize;left:50%;margin-left:-3px;top:-3px}.cropper-point.point-w{cursor:ew-resize;left:-3px;margin-top:-3px;top:50%}.cropper-point.point-s{bottom:-3px;cursor:s-resize;left:50%;margin-left:-3px}.cropper-point.point-ne{cursor:nesw-resize;right:-3px;top:-3px}.cropper-point.point-nw{cursor:nwse-resize;left:-3px;top:-3px}.cropper-point.point-sw{bottom:-3px;cursor:nesw-resize;left:-3px}.cropper-point.point-se{bottom:-3px;cursor:nwse-resize;height:20px;opacity:1;right:-3px;width:20px}@media (min-width:768px){.cropper-point.point-se{height:15px;width:15px}}@media (min-width:992px){.cropper-point.point-se{height:10px;width:10px}}@media (min-width:1200px){.cropper-point.point-se{height:5px;opacity:.75;width:5px}}.cropper-point.point-se:before{background-color:#39f;bottom:-50%;content:" ";display:block;height:200%;opacity:0;position:absolute;right:-50%;width:200%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC")}.cropper-hide{display:block;height:0;position:absolute;width:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}';
|
|
2
|
+
export {
|
|
3
|
+
cropper_min as default
|
|
4
|
+
};
|
|
5
|
+
//# sourceMappingURL=cropper.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cropper.min.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|