first commit
This commit is contained in:
11
node_modules/motion-dom/dist/es/view/utils/choose-layer-type.mjs
generated
vendored
Normal file
11
node_modules/motion-dom/dist/es/view/utils/choose-layer-type.mjs
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
function chooseLayerType(valueName) {
|
||||
if (valueName === "layout")
|
||||
return "group";
|
||||
if (valueName === "enter" || valueName === "new")
|
||||
return "new";
|
||||
if (valueName === "exit" || valueName === "old")
|
||||
return "old";
|
||||
return "group";
|
||||
}
|
||||
|
||||
export { chooseLayerType };
|
||||
32
node_modules/motion-dom/dist/es/view/utils/css.mjs
generated
vendored
Normal file
32
node_modules/motion-dom/dist/es/view/utils/css.mjs
generated
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
let pendingRules = {};
|
||||
let style = null;
|
||||
const css = {
|
||||
set: (selector, values) => {
|
||||
pendingRules[selector] = values;
|
||||
},
|
||||
commit: () => {
|
||||
if (!style) {
|
||||
style = document.createElement("style");
|
||||
style.id = "motion-view";
|
||||
}
|
||||
let cssText = "";
|
||||
for (const selector in pendingRules) {
|
||||
const rule = pendingRules[selector];
|
||||
cssText += `${selector} {\n`;
|
||||
for (const [property, value] of Object.entries(rule)) {
|
||||
cssText += ` ${property}: ${value};\n`;
|
||||
}
|
||||
cssText += "}\n";
|
||||
}
|
||||
style.textContent = cssText;
|
||||
document.head.appendChild(style);
|
||||
pendingRules = {};
|
||||
},
|
||||
remove: () => {
|
||||
if (style && style.parentElement) {
|
||||
style.parentElement.removeChild(style);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
export { css };
|
||||
8
node_modules/motion-dom/dist/es/view/utils/get-layer-info.mjs
generated
vendored
Normal file
8
node_modules/motion-dom/dist/es/view/utils/get-layer-info.mjs
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
function getViewAnimationLayerInfo(pseudoElement) {
|
||||
const match = pseudoElement.match(/::view-transition-(old|new|group|image-pair)\((.*?)\)/);
|
||||
if (!match)
|
||||
return null;
|
||||
return { layer: match[2], type: match[1] };
|
||||
}
|
||||
|
||||
export { getViewAnimationLayerInfo };
|
||||
12
node_modules/motion-dom/dist/es/view/utils/get-view-animations.mjs
generated
vendored
Normal file
12
node_modules/motion-dom/dist/es/view/utils/get-view-animations.mjs
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
function filterViewAnimations(animation) {
|
||||
const { effect } = animation;
|
||||
if (!effect)
|
||||
return false;
|
||||
return (effect.target === document.documentElement &&
|
||||
effect.pseudoElement?.startsWith("::view-transition"));
|
||||
}
|
||||
function getViewAnimations() {
|
||||
return document.getAnimations().filter(filterViewAnimations);
|
||||
}
|
||||
|
||||
export { getViewAnimations };
|
||||
5
node_modules/motion-dom/dist/es/view/utils/has-target.mjs
generated
vendored
Normal file
5
node_modules/motion-dom/dist/es/view/utils/has-target.mjs
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
function hasTarget(target, targets) {
|
||||
return targets.has(target) && Object.keys(targets.get(target)).length > 0;
|
||||
}
|
||||
|
||||
export { hasTarget };
|
||||
Reference in New Issue
Block a user