Add Robot_JoyIt driver

This commit is contained in:
2026-01-17 16:50:07 +01:00
parent e9e50acf5f
commit 0cfb4d5a95
15848 changed files with 570836 additions and 268976 deletions

1
node_modules/babel-jest/LICENSE generated vendored
View File

@@ -1,6 +1,7 @@
MIT License
Copyright (c) Meta Platforms, Inc. and affiliates.
Copyright Contributors to the Jest project.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

18
node_modules/babel-jest/README.md generated vendored
View File

@@ -18,8 +18,26 @@ _Note: this step is only required if you are using `babel-jest` with additional
To explicitly define `babel-jest` as a transformer for your JavaScript code, map _.js_ files to the `babel-jest` module. Typescript files are also supported.
By default, it loads your existing Babel configuration (if any)
```json
"transform": {
"\\.[jt]sx?$": "babel-jest"
},
```
You can also pass further [babel options](https://babeljs.io/docs/options)
```json
"transform": {
"\\.[jt]sx?$": ["babel-jest", { "extends": "./babel.config.js", "plugins": ["babel-plugin-transform-import-meta"] }]
},
```
By default, `babel-jest` includes `babel-preset-jest`. In addition to the babel options, we introduce a new option, `excludeJestPreset`, which allows you to disable this behavior. Note that this will break `jest.mock` hoisting.
```json
"transform": {
"\\.[jt]sx?$": ["babel-jest", { "excludeJestPreset": true }],
}
```

14
node_modules/babel-jest/build/index.d.mts generated vendored Normal file
View File

@@ -0,0 +1,14 @@
import { TransformOptions } from "@babel/core";
import { SyncTransformer, TransformerCreator } from "@jest/transform";
//#region src/index.d.ts
interface TransformerConfig extends TransformOptions {
excludeJestPreset?: boolean;
}
declare const createTransformer: TransformerCreator<SyncTransformer<TransformerConfig>, TransformerConfig>;
declare const transformerFactory: {
createTransformer: TransformerCreator<SyncTransformer<TransformerConfig>, TransformerConfig>;
};
//#endregion
export { createTransformer, transformerFactory as default };

View File

@@ -4,19 +4,23 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import type {SyncTransformer} from '@jest/transform';
import type {TransformerCreator} from '@jest/transform';
import {TransformOptions} from '@babel/core';
import {SyncTransformer, TransformerCreator} from '@jest/transform';
export declare const createTransformer: TransformerCreator<
SyncTransformer<TransformOptions>,
TransformOptions
SyncTransformer<TransformerConfig>,
TransformerConfig
>;
export declare interface TransformerConfig extends TransformOptions {
excludeJestPreset?: boolean;
}
declare const transformerFactory: {
createTransformer: TransformerCreator<
SyncTransformer<TransformOptions>,
TransformOptions
SyncTransformer<TransformerConfig>,
TransformerConfig
>;
};
export default transformerFactory;

View File

@@ -1,95 +1,138 @@
'use strict';
/*!
* /**
* * Copyright (c) Meta Platforms, Inc. and affiliates.
* *
* * This source code is licensed under the MIT license found in the
* * LICENSE file in the root directory of this source tree.
* * /
*/
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({
Object.defineProperty(exports, '__esModule', {
/***/ "./src/babel.ts":
/***/ ((__unused_webpack_module, exports) => {
Object.defineProperty(exports, "__esModule", ({
value: true
});
exports.default = exports.createTransformer = void 0;
}));
Object.defineProperty(exports, "loadPartialConfigAsync", ({
enumerable: true,
get: function () {
return _core().loadPartialConfigAsync;
}
}));
exports.loadPartialConfigSync = void 0;
Object.defineProperty(exports, "transformAsync", ({
enumerable: true,
get: function () {
return _core().transformAsync;
}
}));
Object.defineProperty(exports, "transformSync", ({
enumerable: true,
get: function () {
return _core().transformSync;
}
}));
function _core() {
const data = require("@babel/core");
_core = function () {
return data;
};
return data;
}
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
// this is a separate file so it can be mocked in tests
// Old babel 7 versions didn't have loadPartialConfigSync
const _loadPartialConfigSync = exports.loadPartialConfigSync = _core().loadPartialConfigSync ?? _core().loadPartialConfig;
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
var __webpack_exports__ = {};
// This entry needs to be wrapped in an IIFE because it uses a non-standard name for the exports (exports).
(() => {
var exports = __webpack_exports__;
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = exports.createTransformer = void 0;
function _crypto() {
const data = require('crypto');
const data = require("crypto");
_crypto = function () {
return data;
};
return data;
}
function path() {
const data = _interopRequireWildcard(require('path'));
const data = _interopRequireWildcard(require("path"));
path = function () {
return data;
};
return data;
}
function _core() {
const data = require('@babel/core');
_core = function () {
return data;
};
return data;
}
function _chalk() {
const data = _interopRequireDefault(require('chalk'));
const data = _interopRequireDefault(require("chalk"));
_chalk = function () {
return data;
};
return data;
}
function fs() {
const data = _interopRequireWildcard(require('graceful-fs'));
const data = _interopRequireWildcard(require("graceful-fs"));
fs = function () {
return data;
};
return data;
}
function _slash() {
const data = _interopRequireDefault(require('slash'));
const data = _interopRequireDefault(require("slash"));
_slash = function () {
return data;
};
return data;
}
var _loadBabelConfig = require('./loadBabelConfig');
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {default: obj};
}
function _getRequireWildcardCache(nodeInterop) {
if (typeof WeakMap !== 'function') return null;
var cacheBabelInterop = new WeakMap();
var cacheNodeInterop = new WeakMap();
return (_getRequireWildcardCache = function (nodeInterop) {
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
})(nodeInterop);
}
function _interopRequireWildcard(obj, nodeInterop) {
if (!nodeInterop && obj && obj.__esModule) {
return obj;
}
if (obj === null || (typeof obj !== 'object' && typeof obj !== 'function')) {
return {default: obj};
}
var cache = _getRequireWildcardCache(nodeInterop);
if (cache && cache.has(obj)) {
return cache.get(obj);
}
var newObj = {};
var hasPropertyDescriptor =
Object.defineProperty && Object.getOwnPropertyDescriptor;
for (var key in obj) {
if (key !== 'default' && Object.prototype.hasOwnProperty.call(obj, key)) {
var desc = hasPropertyDescriptor
? Object.getOwnPropertyDescriptor(obj, key)
: null;
if (desc && (desc.get || desc.set)) {
Object.defineProperty(newObj, key, desc);
} else {
newObj[key] = obj[key];
}
}
}
newObj.default = obj;
if (cache) {
cache.set(obj, newObj);
}
return newObj;
}
var _babel = __webpack_require__("./src/babel.ts");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
@@ -102,13 +145,7 @@ const jestPresetPath = require.resolve('babel-preset-jest');
const babelIstanbulPlugin = require.resolve('babel-plugin-istanbul');
function assertLoadedBabelConfig(babelConfig, cwd, filename) {
if (!babelConfig) {
throw new Error(
`babel-jest: Babel ignores ${_chalk().default.bold(
(0, _slash().default)(path().relative(cwd, filename))
)} - make sure to include the file in Jest's ${_chalk().default.bold(
'transformIgnorePatterns'
)} as well.`
);
throw new Error(`babel-jest: Babel ignores ${_chalk().default.bold((0, _slash().default)(path().relative(cwd, filename)))} - make sure to include the file in Jest's ${_chalk().default.bold('transformIgnorePatterns')} as well.`);
}
}
function addIstanbulInstrumentation(babelOptions, transformOptions) {
@@ -118,83 +155,51 @@ function addIstanbulInstrumentation(babelOptions, transformOptions) {
};
copiedBabelOptions.auxiliaryCommentBefore = ' istanbul ignore next ';
// Copied from jest-runtime transform.js
copiedBabelOptions.plugins = (copiedBabelOptions.plugins ?? []).concat([
[
babelIstanbulPlugin,
{
// files outside `cwd` will not be instrumented
cwd: transformOptions.config.cwd,
exclude: []
}
]
]);
copiedBabelOptions.plugins = [...(copiedBabelOptions.plugins ?? []), [babelIstanbulPlugin, {
// files outside `cwd` will not be instrumented
cwd: transformOptions.config.cwd,
exclude: []
}]];
return copiedBabelOptions;
}
return babelOptions;
}
function getCacheKeyFromConfig(
sourceText,
sourcePath,
babelOptions,
transformOptions
) {
const {config, configString, instrument} = transformOptions;
function getCacheKeyFromConfig(sourceText, sourcePath, babelOptions, transformOptions) {
const {
config,
configString,
instrument
} = transformOptions;
const configPath = [babelOptions.config ?? '', babelOptions.babelrc ?? ''];
return (0, _crypto().createHash)('sha1')
.update(THIS_FILE)
.update('\0', 'utf8')
.update(JSON.stringify(babelOptions.options))
.update('\0', 'utf8')
.update(sourceText)
.update('\0', 'utf8')
.update(path().relative(config.rootDir, sourcePath))
.update('\0', 'utf8')
.update(configString)
.update('\0', 'utf8')
.update(configPath.join(''))
.update('\0', 'utf8')
.update(instrument ? 'instrument' : '')
.update('\0', 'utf8')
.update(process.env.NODE_ENV ?? '')
.update('\0', 'utf8')
.update(process.env.BABEL_ENV ?? '')
.update('\0', 'utf8')
.update(process.version)
.digest('hex')
.substring(0, 32);
return (0, _crypto().createHash)('sha1').update(THIS_FILE).update('\0', 'utf8').update(JSON.stringify(babelOptions.options)).update('\0', 'utf8').update(sourceText).update('\0', 'utf8').update(path().relative(config.rootDir, sourcePath)).update('\0', 'utf8').update(configString).update('\0', 'utf8').update(configPath.join('')).update('\0', 'utf8').update(instrument ? 'instrument' : '').update('\0', 'utf8').update("production" ?? 0).update('\0', 'utf8').update(process.env.BABEL_ENV ?? '').update('\0', 'utf8').update(process.version).digest('hex').slice(0, 32);
}
function loadBabelConfig(cwd, filename, transformOptions) {
const babelConfig = (0, _loadBabelConfig.loadPartialConfig)(transformOptions);
const babelConfig = (0, _babel.loadPartialConfigSync)(transformOptions);
assertLoadedBabelConfig(babelConfig, cwd, filename);
return babelConfig;
}
async function loadBabelConfigAsync(cwd, filename, transformOptions) {
const babelConfig = await (0, _loadBabelConfig.loadPartialConfigAsync)(
transformOptions
);
const babelConfig = await (0, _babel.loadPartialConfigAsync)(transformOptions);
assertLoadedBabelConfig(babelConfig, cwd, filename);
return babelConfig;
}
function loadBabelOptions(
cwd,
filename,
transformOptions,
jestTransformOptions
) {
const {options} = loadBabelConfig(cwd, filename, transformOptions);
function loadBabelOptions(cwd, filename, transformOptions, jestTransformOptions) {
const {
options
} = loadBabelConfig(cwd, filename, transformOptions);
return addIstanbulInstrumentation(options, jestTransformOptions);
}
async function loadBabelOptionsAsync(
cwd,
filename,
transformOptions,
jestTransformOptions
) {
const {options} = await loadBabelConfigAsync(cwd, filename, transformOptions);
async function loadBabelOptionsAsync(cwd, filename, transformOptions, jestTransformOptions) {
const {
options
} = await loadBabelConfigAsync(cwd, filename, transformOptions);
return addIstanbulInstrumentation(options, jestTransformOptions);
}
const createTransformer = userOptions => {
const inputOptions = userOptions ?? {};
const createTransformer = transformerConfig => {
const {
excludeJestPreset,
...inputOptions
} = transformerConfig ?? {};
const options = {
...inputOptions,
caller: {
@@ -207,11 +212,14 @@ const createTransformer = userOptions => {
},
compact: false,
plugins: inputOptions.plugins ?? [],
presets: (inputOptions.presets ?? []).concat(jestPresetPath),
presets: [...(inputOptions.presets ?? []), ...(excludeJestPreset === true ? [] : [jestPresetPath])],
sourceMaps: 'both'
};
function mergeBabelTransformOptions(filename, transformOptions) {
const {cwd, rootDir} = transformOptions.config;
const {
cwd,
rootDir
} = transformOptions.config;
// `cwd` and `root` first to allow incoming options to override it
return {
cwd,
@@ -219,18 +227,10 @@ const createTransformer = userOptions => {
...options,
caller: {
...options.caller,
supportsDynamicImport:
transformOptions.supportsDynamicImport ??
options.caller.supportsDynamicImport,
supportsExportNamespaceFrom:
transformOptions.supportsExportNamespaceFrom ??
options.caller.supportsExportNamespaceFrom,
supportsStaticESM:
transformOptions.supportsStaticESM ??
options.caller.supportsStaticESM,
supportsTopLevelAwait:
transformOptions.supportsTopLevelAwait ??
options.caller.supportsTopLevelAwait
supportsDynamicImport: transformOptions.supportsDynamicImport ?? options.caller.supportsDynamicImport,
supportsExportNamespaceFrom: transformOptions.supportsExportNamespaceFrom ?? options.caller.supportsExportNamespaceFrom,
supportsStaticESM: transformOptions.supportsStaticESM ?? options.caller.supportsStaticESM,
supportsTopLevelAwait: transformOptions.supportsTopLevelAwait ?? options.caller.supportsTopLevelAwait
},
filename
};
@@ -238,44 +238,21 @@ const createTransformer = userOptions => {
return {
canInstrument: true,
getCacheKey(sourceText, sourcePath, transformOptions) {
const babelOptions = loadBabelConfig(
transformOptions.config.cwd,
sourcePath,
mergeBabelTransformOptions(sourcePath, transformOptions)
);
return getCacheKeyFromConfig(
sourceText,
sourcePath,
babelOptions,
transformOptions
);
const babelOptions = loadBabelConfig(transformOptions.config.cwd, sourcePath, mergeBabelTransformOptions(sourcePath, transformOptions));
return getCacheKeyFromConfig(sourceText, sourcePath, babelOptions, transformOptions);
},
async getCacheKeyAsync(sourceText, sourcePath, transformOptions) {
const babelOptions = await loadBabelConfigAsync(
transformOptions.config.cwd,
sourcePath,
mergeBabelTransformOptions(sourcePath, transformOptions)
);
return getCacheKeyFromConfig(
sourceText,
sourcePath,
babelOptions,
transformOptions
);
const babelOptions = await loadBabelConfigAsync(transformOptions.config.cwd, sourcePath, mergeBabelTransformOptions(sourcePath, transformOptions));
return getCacheKeyFromConfig(sourceText, sourcePath, babelOptions, transformOptions);
},
process(sourceText, sourcePath, transformOptions) {
const babelOptions = loadBabelOptions(
transformOptions.config.cwd,
sourcePath,
mergeBabelTransformOptions(sourcePath, transformOptions),
transformOptions
);
const transformResult = (0, _core().transformSync)(
sourceText,
babelOptions
);
const babelOptions = loadBabelOptions(transformOptions.config.cwd, sourcePath, mergeBabelTransformOptions(sourcePath, transformOptions), transformOptions);
const transformResult = (0, _babel.transformSync)(sourceText, babelOptions);
if (transformResult) {
const {code, map} = transformResult;
const {
code,
map
} = transformResult;
if (typeof code === 'string') {
return {
code,
@@ -288,18 +265,13 @@ const createTransformer = userOptions => {
};
},
async processAsync(sourceText, sourcePath, transformOptions) {
const babelOptions = await loadBabelOptionsAsync(
transformOptions.config.cwd,
sourcePath,
mergeBabelTransformOptions(sourcePath, transformOptions),
transformOptions
);
const transformResult = await (0, _core().transformAsync)(
sourceText,
babelOptions
);
const babelOptions = await loadBabelOptionsAsync(transformOptions.config.cwd, sourcePath, mergeBabelTransformOptions(sourcePath, transformOptions), transformOptions);
const transformResult = await (0, _babel.transformAsync)(sourceText, babelOptions);
if (transformResult) {
const {code, map} = transformResult;
const {
code,
map
} = transformResult;
if (typeof code === 'string') {
return {
code,
@@ -319,5 +291,9 @@ const transformerFactory = {
// requireOrImportModule, requiring all exports to be on the `default` export
createTransformer
};
var _default = transformerFactory;
exports.default = _default;
var _default = exports["default"] = transformerFactory;
})();
module.exports = __webpack_exports__;
/******/ })()
;

4
node_modules/babel-jest/build/index.mjs generated vendored Normal file
View File

@@ -0,0 +1,4 @@
import cjsModule from './index.js';
export const createTransformer = cjsModule.createTransformer;
export default cjsModule.default;

View File

@@ -1,24 +0,0 @@
'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
Object.defineProperty(exports, 'loadPartialConfig', {
enumerable: true,
get: function () {
return _core().loadPartialConfig;
}
});
Object.defineProperty(exports, 'loadPartialConfigAsync', {
enumerable: true,
get: function () {
return _core().loadPartialConfigAsync;
}
});
function _core() {
const data = require('@babel/core');
_core = function () {
return data;
};
return data;
}

29
node_modules/babel-jest/package.json generated vendored
View File

@@ -1,7 +1,7 @@
{
"name": "babel-jest",
"description": "Jest plugin to use babel for transformation.",
"version": "29.7.0",
"version": "30.2.0",
"repository": {
"type": "git",
"url": "https://github.com/jestjs/jest.git",
@@ -13,32 +13,35 @@
"exports": {
".": {
"types": "./build/index.d.ts",
"require": "./build/index.js",
"import": "./build/index.mjs",
"default": "./build/index.js"
},
"./package.json": "./package.json"
},
"dependencies": {
"@jest/transform": "^29.7.0",
"@types/babel__core": "^7.1.14",
"babel-plugin-istanbul": "^6.1.1",
"babel-preset-jest": "^29.6.3",
"chalk": "^4.0.0",
"graceful-fs": "^4.2.9",
"@jest/transform": "30.2.0",
"@types/babel__core": "^7.20.5",
"babel-plugin-istanbul": "^7.0.1",
"babel-preset-jest": "30.2.0",
"chalk": "^4.1.2",
"graceful-fs": "^4.2.11",
"slash": "^3.0.0"
},
"devDependencies": {
"@babel/core": "^7.11.6",
"@jest/test-utils": "^29.7.0",
"@types/graceful-fs": "^4.1.3"
"@babel-8/core": "npm:@babel/core@8.0.0-beta.1",
"@babel/core": "^7.27.4",
"@jest/test-utils": "30.2.0",
"@types/graceful-fs": "^4.1.9"
},
"peerDependencies": {
"@babel/core": "^7.8.0"
"@babel/core": "^7.11.0 || ^8.0.0-0"
},
"engines": {
"node": "^14.15.0 || ^16.10.0 || >=18.0.0"
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
},
"publishConfig": {
"access": "public"
},
"gitHead": "4e56991693da7cd4c3730dc3579a1dd1403ee630"
"gitHead": "855864e3f9751366455246790be2bf912d4d0dac"
}