@floless/app 0.23.1 → 0.23.2
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/dist/floless-server.cjs +2 -2
- package/dist/web/aware.js +23 -2
- package/package.json +1 -1
package/dist/floless-server.cjs
CHANGED
|
@@ -52729,7 +52729,7 @@ function appVersion() {
|
|
|
52729
52729
|
return resolveVersion({
|
|
52730
52730
|
isSea: isSea2(),
|
|
52731
52731
|
sqVersionXml: readSqVersionXml(),
|
|
52732
|
-
define: true ? "0.23.
|
|
52732
|
+
define: true ? "0.23.2" : void 0,
|
|
52733
52733
|
pkgVersion: readPkgVersion()
|
|
52734
52734
|
});
|
|
52735
52735
|
}
|
|
@@ -52739,7 +52739,7 @@ function resolveChannel(s) {
|
|
|
52739
52739
|
return "dev";
|
|
52740
52740
|
}
|
|
52741
52741
|
function appChannel() {
|
|
52742
|
-
return resolveChannel({ isSea: isSea2(), define: true ? "0.23.
|
|
52742
|
+
return resolveChannel({ isSea: isSea2(), define: true ? "0.23.2" : void 0 });
|
|
52743
52743
|
}
|
|
52744
52744
|
|
|
52745
52745
|
// oauth-presets.ts
|
package/dist/web/aware.js
CHANGED
|
@@ -2170,12 +2170,33 @@
|
|
|
2170
2170
|
const $canvasMain = document.getElementById('canvas-main');
|
|
2171
2171
|
const $dropTarget = document.getElementById('canvas-drop-target');
|
|
2172
2172
|
const isFileDrag = (e) => !!e.dataTransfer && Array.from(e.dataTransfer.types || []).includes('Files');
|
|
2173
|
+
// An in-app node-card drag carries the card id as text/plain (set in the card's dragstart)
|
|
2174
|
+
// and no "Files" type. The canvas must accept its dragover, otherwise the browser paints the
|
|
2175
|
+
// default "no-drop" cursor over the topology while the card is in transit to the Templates
|
|
2176
|
+
// bar — the CSS `.agent-card.dragging { cursor: grabbing }` can't override it because the
|
|
2177
|
+
// browser owns the cursor during a native drag (#96). We mirror the card's
|
|
2178
|
+
// effectAllowed='copy' (and the bar's dropEffect) so it stays a steady copy affordance for
|
|
2179
|
+
// the whole drag instead of flickering between no-drop and copy.
|
|
2180
|
+
// text/plain-without-Files is a deliberate heuristic: a browser text-selection drag matches it
|
|
2181
|
+
// too, but over the canvas that is a harmless no-op (copy cursor in transit, swallowed drop) —
|
|
2182
|
+
// not worth coupling this to the card-only #fav-bar arming state to exclude.
|
|
2183
|
+
const isCardDrag = (e) => !!e.dataTransfer && !isFileDrag(e) && Array.from(e.dataTransfer.types || []).includes('text/plain');
|
|
2173
2184
|
if ($canvasMain && $dropTarget) {
|
|
2185
|
+
// dragenter stays file-only on purpose: it shows the ".flo import" overlay ($dropTarget),
|
|
2186
|
+
// which must NOT appear for a node-card drag. dragover alone suppresses the no-drop cursor.
|
|
2174
2187
|
$canvasMain.addEventListener('dragenter', (e) => { if (isFileDrag(e)) { e.preventDefault(); $dropTarget.classList.add('active'); } });
|
|
2175
|
-
$canvasMain.addEventListener('dragover', (e) => {
|
|
2188
|
+
$canvasMain.addEventListener('dragover', (e) => {
|
|
2189
|
+
if (isFileDrag(e)) { e.preventDefault(); return; } // required to allow the file drop
|
|
2190
|
+
if (isCardDrag(e)) { e.preventDefault(); e.dataTransfer.dropEffect = 'copy'; } // suppress the no-drop cursor (#96)
|
|
2191
|
+
});
|
|
2176
2192
|
$canvasMain.addEventListener('dragleave', (e) => { if (!$canvasMain.contains(e.relatedTarget)) $dropTarget.classList.remove('active'); });
|
|
2177
2193
|
$canvasMain.addEventListener('drop', (e) => {
|
|
2178
|
-
|
|
2194
|
+
// A card dropped on the bare canvas is a no-op: saving as a Template only happens on the
|
|
2195
|
+
// Templates bar (its own drop handler, which runs first as the drop bubbles up). Now that
|
|
2196
|
+
// the canvas accepts the dragover we must swallow that drop so the browser performs no
|
|
2197
|
+
// default action; a drop landing on the bar is already handled before it reaches here.
|
|
2198
|
+
if (isCardDrag(e)) { e.preventDefault(); return; }
|
|
2199
|
+
if (!isFileDrag(e)) return; // anything else: let it fall through untouched
|
|
2179
2200
|
e.preventDefault();
|
|
2180
2201
|
$dropTarget.classList.remove('active');
|
|
2181
2202
|
importFlo(e.dataTransfer.files && e.dataTransfer.files[0]);
|