@emailmaker/filemanager 0.0.1 → 0.0.3
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/debug-script.js +1 -1
- package/file-manager.css +1 -1
- package/file-manager.esm.js +1 -1
- package/file-manager.esm.js.map +1 -1
- package/file-manager.js +1 -1
- package/file-manager.js.LICENSE.txt +2 -0
- package/hooks/core/files/useFilesAPI.d.ts +2 -2
- package/hooks/core/files/useFilesAPIHelpers.d.ts +1 -17
- package/hooks/core/types.d.ts +1 -1
- package/hooks/core/useFiles.d.ts +1 -1
- package/hooks/core/useNavigation.d.ts +0 -3
- package/loacal_module/pixie/dist/pixie.es.js +1 -1
- package/loacal_module/pixie/dist/pixie.umd.js +1 -1
- package/mockServiceWorker.js +1 -1
- package/package.json +5 -5
- package/suppress-resize-observer-errors.js +1 -1
- package/types.d.ts +3 -0
- package/hooks/core/temp/context.d.ts +0 -0
- package/index.html +0 -141
package/mockServiceWorker.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const PACKAGE_VERSION="2.10.
|
|
1
|
+
const PACKAGE_VERSION="2.10.4",INTEGRITY_CHECKSUM="f5825c521429caf22a4dd13b66e243af",IS_MOCKED_RESPONSE=Symbol("isMockedResponse"),activeClientIds=new Set;async function handleRequest(e,t){const n=await resolveMainClient(e),s=e.request.clone(),i=await getResponse(e,n,t);if(n&&activeClientIds.has(n.id)){const e=await serializeRequest(s),a=i.clone();sendToClient(n,{type:"RESPONSE",payload:{isMockedResponse:IS_MOCKED_RESPONSE in i,request:{id:t,...e},response:{type:a.type,status:a.status,statusText:a.statusText,headers:Object.fromEntries(a.headers.entries()),body:a.body}}},a.body?[e.body,a.body]:[])}return i}async function resolveMainClient(e){const t=await self.clients.get(e.clientId);return activeClientIds.has(e.clientId)||"top-level"===t?.frameType?t:(await self.clients.matchAll({type:"window"})).filter(e=>"visible"===e.visibilityState).find(e=>activeClientIds.has(e.id))}async function getResponse(e,t,n){const s=e.request.clone();function i(){const e=new Headers(s.headers),t=e.get("accept");if(t){const n=t.split(",").map(e=>e.trim()).filter(e=>"msw/passthrough"!==e);n.length>0?e.set("accept",n.join(", ")):e.delete("accept")}return fetch(s,{headers:e})}if(!t)return i();if(!activeClientIds.has(t.id))return i();const a=await serializeRequest(e.request),r=await sendToClient(t,{type:"REQUEST",payload:{id:n,...a}},[a.body]);switch(r.type){case"MOCK_RESPONSE":return respondWithMock(r.data);case"PASSTHROUGH":return i()}return i()}function sendToClient(e,t,n=[]){return new Promise((s,i)=>{const a=new MessageChannel;a.port1.onmessage=e=>{if(e.data&&e.data.error)return i(e.data.error);s(e.data)},e.postMessage(t,[a.port2,...n.filter(Boolean)])})}function respondWithMock(e){if(0===e.status)return Response.error();const t=new Response(e.body,e);return Reflect.defineProperty(t,IS_MOCKED_RESPONSE,{value:!0,enumerable:!0}),t}async function serializeRequest(e){return{url:e.url,mode:e.mode,method:e.method,headers:Object.fromEntries(e.headers.entries()),cache:e.cache,credentials:e.credentials,destination:e.destination,integrity:e.integrity,redirect:e.redirect,referrer:e.referrer,referrerPolicy:e.referrerPolicy,body:await e.arrayBuffer(),keepalive:e.keepalive}}addEventListener("install",function(){self.skipWaiting()}),addEventListener("activate",function(e){e.waitUntil(self.clients.claim())}),addEventListener("message",async function(e){const t=Reflect.get(e.source||{},"id");if(!t||!self.clients)return;const n=await self.clients.get(t);if(!n)return;const s=await self.clients.matchAll({type:"window"});switch(e.data){case"KEEPALIVE_REQUEST":sendToClient(n,{type:"KEEPALIVE_RESPONSE"});break;case"INTEGRITY_CHECK_REQUEST":sendToClient(n,{type:"INTEGRITY_CHECK_RESPONSE",payload:{packageVersion:"2.10.4",checksum:INTEGRITY_CHECKSUM}});break;case"MOCK_ACTIVATE":activeClientIds.add(t),sendToClient(n,{type:"MOCKING_ENABLED",payload:{client:{id:n.id,frameType:n.frameType}}});break;case"MOCK_DEACTIVATE":activeClientIds.delete(t);break;case"CLIENT_CLOSED":{activeClientIds.delete(t);const e=s.filter(e=>e.id!==t);0===e.length&&self.registration.unregister();break}}}),addEventListener("fetch",function(e){if("navigate"===e.request.mode)return;if("only-if-cached"===e.request.cache&&"same-origin"!==e.request.mode)return;if(0===activeClientIds.size)return;const t=crypto.randomUUID();e.respondWith(handleRequest(e,t))});
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@emailmaker/filemanager",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"main": "./
|
|
5
|
-
"module": "./
|
|
6
|
-
"types": "./
|
|
7
|
-
"style": "./
|
|
3
|
+
"version": "0.0.3",
|
|
4
|
+
"main": "./file-manager.js",
|
|
5
|
+
"module": "./file-manager.esm.js",
|
|
6
|
+
"types": "./index.d.ts",
|
|
7
|
+
"style": "./file-manager.css",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"peerDependencies": {
|
|
10
10
|
"react": "^18.2.0 || ^19.0.0",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(){"use strict";console.log("🔧 Инициализация подавления ошибок ResizeObserver...");const e=console.error,o=window.onerror,n=e=>e&&"string"==typeof e&&e.includes("ResizeObserver loop completed with undelivered notifications");console.error=function(...o){const r=o[0]&&o[0].toString?o[0].toString():"";if(!n(r))return e.apply(console,o)},window.onerror=function(e,r,t,i,s){return!!(n(e)||s&&n(s.message))||!!o&&o.call(this,e,r,t,i,s)},window.addEventListener("error",
|
|
1
|
+
!function(){"use strict";console.log("🔧 Инициализация подавления ошибок ResizeObserver...");const e=console.error,o=window.onerror,n=e=>e&&"string"==typeof e&&e.includes("ResizeObserver loop completed with undelivered notifications");console.error=function(...o){const r=o[0]&&o[0].toString?o[0].toString():"";if(!n(r))return e.apply(console,o)},window.onerror=function(e,r,t,i,s){return!!(n(e)||s&&n(s.message))||!!o&&o.call(this,e,r,t,i,s)},window.addEventListener("error",function(e){n(e.message)&&(e.stopImmediatePropagation(),e.preventDefault())},!0),console.log("✅ Подавление ошибок ResizeObserver активировано")}();
|
package/types.d.ts
CHANGED
|
@@ -19,7 +19,9 @@ export interface File {
|
|
|
19
19
|
date: string;
|
|
20
20
|
folderId: string;
|
|
21
21
|
type?: string;
|
|
22
|
+
url?: string;
|
|
22
23
|
thumbnail?: string;
|
|
24
|
+
thumbnailUrl?: string;
|
|
23
25
|
dimensions?: string;
|
|
24
26
|
aspectRatio?: string;
|
|
25
27
|
extension?: string;
|
|
@@ -145,6 +147,7 @@ export interface FileManagerDataProviders {
|
|
|
145
147
|
uploadFileByUrl?: (data: {
|
|
146
148
|
url: string;
|
|
147
149
|
folderId?: string | null;
|
|
150
|
+
noFolder?: boolean;
|
|
148
151
|
}) => Promise<File>;
|
|
149
152
|
deleteFile: (fileId: string) => Promise<boolean>;
|
|
150
153
|
renameFile?: (fileId: string, newName: string) => Promise<File>;
|
|
File without changes
|
package/index.html
DELETED
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="ru">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>File Manager Debug</title>
|
|
7
|
-
|
|
8
|
-
<!-- Скрипт для подавления ошибок ResizeObserver -->
|
|
9
|
-
<script src="/suppress-resize-observer-errors.js"></script>
|
|
10
|
-
|
|
11
|
-
<style>
|
|
12
|
-
body {
|
|
13
|
-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
|
14
|
-
line-height: 1.5;
|
|
15
|
-
margin: 0;
|
|
16
|
-
padding: 0;
|
|
17
|
-
background-color: #f5f5f5;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.header {
|
|
21
|
-
background-color: #1890ff;
|
|
22
|
-
color: white;
|
|
23
|
-
padding: 20px;
|
|
24
|
-
text-align: center;
|
|
25
|
-
margin-bottom: 20px;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.header h1 {
|
|
29
|
-
margin: 0;
|
|
30
|
-
font-size: 24px;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
.container {
|
|
34
|
-
max-width: 1200px;
|
|
35
|
-
margin: 0 auto;
|
|
36
|
-
padding: 0 20px;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.debug-info {
|
|
40
|
-
background-color: #fff;
|
|
41
|
-
border: 1px solid #ddd;
|
|
42
|
-
border-radius: 4px;
|
|
43
|
-
padding: 15px;
|
|
44
|
-
margin-bottom: 20px;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.debug-info h2 {
|
|
48
|
-
margin-top: 0;
|
|
49
|
-
color: #1890ff;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.error-container {
|
|
53
|
-
background-color: #fff2f0;
|
|
54
|
-
border: 1px solid #ffccc7;
|
|
55
|
-
border-radius: 4px;
|
|
56
|
-
padding: 15px;
|
|
57
|
-
margin-bottom: 20px;
|
|
58
|
-
display: none;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.error-container h2 {
|
|
62
|
-
color: #ff4d4f;
|
|
63
|
-
margin-top: 0;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
#error-details {
|
|
67
|
-
font-family: monospace;
|
|
68
|
-
white-space: pre-wrap;
|
|
69
|
-
background-color: #fafafa;
|
|
70
|
-
padding: 10px;
|
|
71
|
-
border-radius: 4px;
|
|
72
|
-
border: 1px solid #f0f0f0;
|
|
73
|
-
}
|
|
74
|
-
</style>
|
|
75
|
-
</head>
|
|
76
|
-
<body>
|
|
77
|
-
<div class="header">
|
|
78
|
-
<h1>Отладка и тестирование файлового менеджера</h1>
|
|
79
|
-
</div>
|
|
80
|
-
|
|
81
|
-
<div class="container">
|
|
82
|
-
<div class="debug-info">
|
|
83
|
-
<h2>Информация об окружении</h2>
|
|
84
|
-
<p>Эта страница предназначена для отладки и тестирования файлового менеджера.</p>
|
|
85
|
-
<p>Текущий URL: <span id="current-url"></span></p>
|
|
86
|
-
<p>User Agent: <span id="user-agent"></span></p>
|
|
87
|
-
<p>Время загрузки: <span id="load-time"></span></p>
|
|
88
|
-
</div>
|
|
89
|
-
|
|
90
|
-
<div class="error-container" id="error-container">
|
|
91
|
-
<h2>Произошла ошибка</h2>
|
|
92
|
-
<div id="error-details"></div>
|
|
93
|
-
</div>
|
|
94
|
-
|
|
95
|
-
<div id="root"></div>
|
|
96
|
-
</div>
|
|
97
|
-
|
|
98
|
-
<script>
|
|
99
|
-
|
|
100
|
-
document.getElementById('current-url').textContent = window.location.href;
|
|
101
|
-
document.getElementById('user-agent').textContent = navigator.userAgent;
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
const startTime = new Date();
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
window.onerror = function(message, source, lineno, colno, error) {
|
|
108
|
-
const errorContainer = document.getElementById('error-container');
|
|
109
|
-
const errorDetails = document.getElementById('error-details');
|
|
110
|
-
|
|
111
|
-
errorContainer.style.display = 'block';
|
|
112
|
-
errorDetails.textContent = `Сообщение: ${message}\nИсточник: ${source}\nСтрока: ${lineno}, Колонка: ${colno}\n\nСтек вызовов:\n${error && error.stack ? error.stack : 'Недоступно'}`;
|
|
113
|
-
|
|
114
|
-
console.error('Перехвачена ошибка:', error);
|
|
115
|
-
return false;
|
|
116
|
-
};
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
window.addEventListener('load', function() {
|
|
120
|
-
const endTime = new Date();
|
|
121
|
-
const loadTime = (endTime - startTime) / 1000;
|
|
122
|
-
document.getElementById('load-time').textContent = loadTime.toFixed(2) + ' сек';
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
setTimeout(() => {
|
|
126
|
-
const script = document.createElement('script');
|
|
127
|
-
script.src = '/debug-script.js';
|
|
128
|
-
script.onerror = (error) => {
|
|
129
|
-
console.error('Ошибка загрузки скрипта отладки:', error);
|
|
130
|
-
const errorContainer = document.getElementById('error-container');
|
|
131
|
-
const errorDetails = document.getElementById('error-details');
|
|
132
|
-
|
|
133
|
-
errorContainer.style.display = 'block';
|
|
134
|
-
errorDetails.textContent = `Не удалось загрузить скрипт отладки: ${error}`;
|
|
135
|
-
};
|
|
136
|
-
document.body.appendChild(script);
|
|
137
|
-
}, 500);
|
|
138
|
-
});
|
|
139
|
-
</script>
|
|
140
|
-
</body>
|
|
141
|
-
</html>
|