Refactor routing in App component to enhance navigation and improve error handling by integrating dynamic routes and updating the NotFound route.
This commit is contained in:
100
node_modules/astro/dist/runtime/server/serialize.js
generated
vendored
Normal file
100
node_modules/astro/dist/runtime/server/serialize.js
generated
vendored
Normal file
@@ -0,0 +1,100 @@
|
||||
const PROP_TYPE = {
|
||||
Value: 0,
|
||||
JSON: 1,
|
||||
// Actually means Array
|
||||
RegExp: 2,
|
||||
Date: 3,
|
||||
Map: 4,
|
||||
Set: 5,
|
||||
BigInt: 6,
|
||||
URL: 7,
|
||||
Uint8Array: 8,
|
||||
Uint16Array: 9,
|
||||
Uint32Array: 10,
|
||||
Infinity: 11
|
||||
};
|
||||
function serializeArray(value, metadata = {}, parents = /* @__PURE__ */ new WeakSet()) {
|
||||
if (parents.has(value)) {
|
||||
throw new Error(`Cyclic reference detected while serializing props for <${metadata.displayName} client:${metadata.hydrate}>!
|
||||
|
||||
Cyclic references cannot be safely serialized for client-side usage. Please remove the cyclic reference.`);
|
||||
}
|
||||
parents.add(value);
|
||||
const serialized = value.map((v) => {
|
||||
return convertToSerializedForm(v, metadata, parents);
|
||||
});
|
||||
parents.delete(value);
|
||||
return serialized;
|
||||
}
|
||||
function serializeObject(value, metadata = {}, parents = /* @__PURE__ */ new WeakSet()) {
|
||||
if (parents.has(value)) {
|
||||
throw new Error(`Cyclic reference detected while serializing props for <${metadata.displayName} client:${metadata.hydrate}>!
|
||||
|
||||
Cyclic references cannot be safely serialized for client-side usage. Please remove the cyclic reference.`);
|
||||
}
|
||||
parents.add(value);
|
||||
const serialized = Object.fromEntries(
|
||||
Object.entries(value).map(([k, v]) => {
|
||||
return [k, convertToSerializedForm(v, metadata, parents)];
|
||||
})
|
||||
);
|
||||
parents.delete(value);
|
||||
return serialized;
|
||||
}
|
||||
function convertToSerializedForm(value, metadata = {}, parents = /* @__PURE__ */ new WeakSet()) {
|
||||
const tag = Object.prototype.toString.call(value);
|
||||
switch (tag) {
|
||||
case "[object Date]": {
|
||||
return [PROP_TYPE.Date, value.toISOString()];
|
||||
}
|
||||
case "[object RegExp]": {
|
||||
return [PROP_TYPE.RegExp, value.source];
|
||||
}
|
||||
case "[object Map]": {
|
||||
return [PROP_TYPE.Map, serializeArray(Array.from(value), metadata, parents)];
|
||||
}
|
||||
case "[object Set]": {
|
||||
return [PROP_TYPE.Set, serializeArray(Array.from(value), metadata, parents)];
|
||||
}
|
||||
case "[object BigInt]": {
|
||||
return [PROP_TYPE.BigInt, value.toString()];
|
||||
}
|
||||
case "[object URL]": {
|
||||
return [PROP_TYPE.URL, value.toString()];
|
||||
}
|
||||
case "[object Array]": {
|
||||
return [PROP_TYPE.JSON, serializeArray(value, metadata, parents)];
|
||||
}
|
||||
case "[object Uint8Array]": {
|
||||
return [PROP_TYPE.Uint8Array, Array.from(value)];
|
||||
}
|
||||
case "[object Uint16Array]": {
|
||||
return [PROP_TYPE.Uint16Array, Array.from(value)];
|
||||
}
|
||||
case "[object Uint32Array]": {
|
||||
return [PROP_TYPE.Uint32Array, Array.from(value)];
|
||||
}
|
||||
default: {
|
||||
if (value !== null && typeof value === "object") {
|
||||
return [PROP_TYPE.Value, serializeObject(value, metadata, parents)];
|
||||
}
|
||||
if (value === Infinity) {
|
||||
return [PROP_TYPE.Infinity, 1];
|
||||
}
|
||||
if (value === -Infinity) {
|
||||
return [PROP_TYPE.Infinity, -1];
|
||||
}
|
||||
if (value === void 0) {
|
||||
return [PROP_TYPE.Value];
|
||||
}
|
||||
return [PROP_TYPE.Value, value];
|
||||
}
|
||||
}
|
||||
}
|
||||
function serializeProps(props, metadata) {
|
||||
const serialized = JSON.stringify(serializeObject(props, metadata));
|
||||
return serialized;
|
||||
}
|
||||
export {
|
||||
serializeProps
|
||||
};
|
Reference in New Issue
Block a user