Tracking de l'application VApp (IHM du jeu)

This commit is contained in:
2025-05-11 18:04:12 +02:00
commit 89e9db9b62
17763 changed files with 3718499 additions and 0 deletions

14
VApp/node_modules/array-flatten/dist/index.d.ts generated vendored Normal file
View File

@ -0,0 +1,14 @@
/**
* Pick the value from an array.
*/
export declare type PickValue<T> = T extends ReadonlyArray<any> ? {
[K in Extract<keyof T, number>]: PickValue<T[K]>;
}[number] : T;
/**
* Flatten an `ArrayLike` object in TypeScript.
*/
export declare type FlatArray<T extends ArrayLike<any>> = Array<PickValue<T[number]>>;
/**
* Flatten an array indefinitely.
*/
export declare function flatten<T extends ArrayLike<any>>(array: T): FlatArray<T>;

26
VApp/node_modules/array-flatten/dist/index.js generated vendored Normal file
View File

@ -0,0 +1,26 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/**
* Flatten an array indefinitely.
*/
function flatten(array) {
var result = [];
$flatten(array, result);
return result;
}
exports.flatten = flatten;
/**
* Internal flatten function recursively passes `result`.
*/
function $flatten(array, result) {
for (var i = 0; i < array.length; i++) {
var value = array[i];
if (Array.isArray(value)) {
$flatten(value, result);
}
else {
result.push(value);
}
}
}
//# sourceMappingURL=index.js.map

1
VApp/node_modules/array-flatten/dist/index.js.map generated vendored Normal file
View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAcA;;GAEG;AACH,SAAgB,OAAO,CAA2B,KAAQ;IACxD,IAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,QAAQ,CAAI,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,0BAIC;AAED;;GAEG;AACH,SAAS,QAAQ,CACf,KAAQ,EACR,MAAoB;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,IAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEvB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,QAAQ,CAAC,KAAY,EAAE,MAAM,CAAC,CAAC;SAChC;aAAM;YACL,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;KACF;AACH,CAAC","sourcesContent":["/**\n * Pick the value from an array.\n */\nexport type PickValue<T> = T extends ReadonlyArray<any>\n ? {\n [K in Extract<keyof T, number>]: PickValue<T[K]>;\n }[number]\n : T;\n\n/**\n * Flatten an `ArrayLike` object in TypeScript.\n */\nexport type FlatArray<T extends ArrayLike<any>> = Array<PickValue<T[number]>>;\n\n/**\n * Flatten an array indefinitely.\n */\nexport function flatten<T extends ArrayLike<any>>(array: T): FlatArray<T> {\n const result: FlatArray<T> = [];\n $flatten<T>(array, result);\n return result;\n}\n\n/**\n * Internal flatten function recursively passes `result`.\n */\nfunction $flatten<T extends ArrayLike<any>>(\n array: T,\n result: FlatArray<T>\n): void {\n for (let i = 0; i < array.length; i++) {\n const value = array[i];\n\n if (Array.isArray(value)) {\n $flatten(value as any, result);\n } else {\n result.push(value);\n }\n }\n}\n"]}

1
VApp/node_modules/array-flatten/dist/index.spec.d.ts generated vendored Normal file
View File

@ -0,0 +1 @@
export {};

44
VApp/node_modules/array-flatten/dist/index.spec.js generated vendored Normal file
View File

@ -0,0 +1,44 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var ts_expect_1 = require("ts-expect");
var index_1 = require("./index");
describe("flatten", function () {
it("should flatten an array", function () {
var result = index_1.flatten([1, [2, [3, [4, [5]]], 6, [[7], 8], 9], 10]);
ts_expect_1.expectType(result);
expect(result).toStrictEqual([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
});
it("should work with array-like", function () {
var result = index_1.flatten("test");
ts_expect_1.expectType(result);
expect(result).toStrictEqual(["t", "e", "s", "t"]);
});
it("should work with readonly array", function () {
var input = [1, [2, [3, [4]]]];
var result = index_1.flatten(input);
ts_expect_1.expectType(result);
expect(result).toStrictEqual([1, 2, 3, 4]);
});
it("should work with arguments", function () {
var input = (function () {
return arguments;
})();
var result = index_1.flatten(input);
ts_expect_1.expectType(result);
expect(result).toStrictEqual([]);
});
it("should work with mixed types", function () {
var fn = function (x) { return x; };
var input = [1, ["test", [fn, [true]]]];
var result = index_1.flatten(input);
ts_expect_1.expectType(result);
expect(result).toStrictEqual([1, "test", fn, true]);
});
it("should work with tuples", function () {
var input = [1, [1, 2], [3]];
var result = index_1.flatten(input);
ts_expect_1.expectType(result);
expect(result).toStrictEqual([1, 1, 2, 3]);
});
});
//# sourceMappingURL=index.spec.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../src/index.spec.ts"],"names":[],"mappings":";;AAAA,uCAAuC;AACvC,iCAAkC;AAElC,QAAQ,CAAC,SAAS,EAAE;IAClB,EAAE,CAAC,yBAAyB,EAAE;QAC5B,IAAM,MAAM,GAAG,eAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAEpE,sBAAU,CAAW,MAAM,CAAC,CAAC;QAE7B,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE;QAChC,IAAM,MAAM,GAAG,eAAO,CAAC,MAAM,CAAC,CAAC;QAE/B,sBAAU,CAAW,MAAM,CAAC,CAAC;QAE7B,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE;QACpC,IAAM,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAU,CAAC;QAC1C,IAAM,MAAM,GAAG,eAAO,CAAC,KAAK,CAAC,CAAC;QAE9B,sBAAU,CAAoB,MAAM,CAAC,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE;QAC/B,IAAM,KAAK,GAAG,CAAC;YACb,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,EAAE,CAAC;QACL,IAAM,MAAM,GAAG,eAAO,CAAC,KAAK,CAAC,CAAC;QAE9B,sBAAU,CAAQ,MAAM,CAAC,CAAC;QAE1B,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE;QACjC,IAAM,EAAE,GAAG,UAAC,CAAS,IAAK,OAAA,CAAC,EAAD,CAAC,CAAC;QAC5B,IAAM,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAM,MAAM,GAAG,eAAO,CAAC,KAAK,CAAC,CAAC;QAE9B,sBAAU,CAA4C,MAAM,CAAC,CAAC;QAE9D,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE;QAC5B,IAAM,KAAK,GAAyC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,IAAM,MAAM,GAAG,eAAO,CAAC,KAAK,CAAC,CAAC;QAE9B,sBAAU,CAAW,MAAM,CAAC,CAAC;QAE7B,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { expectType } from \"ts-expect\";\nimport { flatten } from \"./index\";\n\ndescribe(\"flatten\", () => {\n it(\"should flatten an array\", () => {\n const result = flatten([1, [2, [3, [4, [5]]], 6, [[7], 8], 9], 10]);\n\n expectType<number[]>(result);\n\n expect(result).toStrictEqual([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);\n });\n\n it(\"should work with array-like\", () => {\n const result = flatten(\"test\");\n\n expectType<string[]>(result);\n\n expect(result).toStrictEqual([\"t\", \"e\", \"s\", \"t\"]);\n });\n\n it(\"should work with readonly array\", () => {\n const input = [1, [2, [3, [4]]]] as const;\n const result = flatten(input);\n\n expectType<(1 | 2 | 3 | 4)[]>(result);\n\n expect(result).toStrictEqual([1, 2, 3, 4]);\n });\n\n it(\"should work with arguments\", () => {\n const input = (function() {\n return arguments;\n })();\n const result = flatten(input);\n\n expectType<any[]>(result);\n\n expect(result).toStrictEqual([]);\n });\n\n it(\"should work with mixed types\", () => {\n const fn = (x: string) => x;\n const input = [1, [\"test\", [fn, [true]]]];\n const result = flatten(input);\n\n expectType<(number | string | boolean | typeof fn)[]>(result);\n\n expect(result).toStrictEqual([1, \"test\", fn, true]);\n });\n\n it(\"should work with tuples\", () => {\n const input: [number, [number, number], [number]] = [1, [1, 2], [3]];\n const result = flatten(input);\n\n expectType<number[]>(result);\n\n expect(result).toStrictEqual([1, 1, 2, 3]);\n });\n});\n"]}