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:
24
node_modules/array-iterate/lib/index.d.ts
generated
vendored
Normal file
24
node_modules/array-iterate/lib/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
/**
|
||||
* Perform the specified action for each element in an array.
|
||||
* When `callbackFn` returns a `number`, moves to the element at that index
|
||||
* next.
|
||||
*
|
||||
* @param {unknown[]} values
|
||||
* Values to iterate over.
|
||||
* @param {(this: unknown, value: unknown, index: number, array: unknown[]) => number | void} callbackFn
|
||||
* Function called for each element.
|
||||
* Can return the `index` to move to next.
|
||||
* @param {unknown} [thisArg]
|
||||
* Optional object assigned as `this` in `callbackFn`.
|
||||
* @returns {void}
|
||||
*/
|
||||
export function arrayIterate(
|
||||
values: unknown[],
|
||||
callbackFn: (
|
||||
this: unknown,
|
||||
value: unknown,
|
||||
index: number,
|
||||
array: unknown[]
|
||||
) => number | void,
|
||||
thisArg?: unknown
|
||||
): void
|
51
node_modules/array-iterate/lib/index.js
generated
vendored
Normal file
51
node_modules/array-iterate/lib/index.js
generated
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
const own = {}.hasOwnProperty
|
||||
|
||||
/**
|
||||
* Perform the specified action for each element in an array.
|
||||
* When `callbackFn` returns a `number`, moves to the element at that index
|
||||
* next.
|
||||
*
|
||||
* @param {unknown[]} values
|
||||
* Values to iterate over.
|
||||
* @param {(this: unknown, value: unknown, index: number, array: unknown[]) => number | void} callbackFn
|
||||
* Function called for each element.
|
||||
* Can return the `index` to move to next.
|
||||
* @param {unknown} [thisArg]
|
||||
* Optional object assigned as `this` in `callbackFn`.
|
||||
* @returns {void}
|
||||
*/
|
||||
export function arrayIterate(values, callbackFn, thisArg) {
|
||||
let index = -1
|
||||
|
||||
if (!values) {
|
||||
throw new Error('Iterate requires that |this| not be ' + values)
|
||||
}
|
||||
|
||||
if (!own.call(values, 'length')) {
|
||||
throw new Error('Iterate requires that |this| has a `length`')
|
||||
}
|
||||
|
||||
if (typeof callbackFn !== 'function') {
|
||||
throw new TypeError('`callback` must be a function')
|
||||
}
|
||||
|
||||
// The length might change, so we do not cache it.
|
||||
while (++index < values.length) {
|
||||
// Skip missing values.
|
||||
if (!(index in values)) {
|
||||
continue
|
||||
}
|
||||
|
||||
const result = callbackFn.call(thisArg, values[index], index, values)
|
||||
|
||||
// If `callback` returns a `number`, move `index` over to `number`.
|
||||
if (typeof result === 'number') {
|
||||
// Make sure that negative numbers do not break the loop.
|
||||
if (result < 0) {
|
||||
index = 0
|
||||
}
|
||||
|
||||
index = result - 1
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user