@kubb/plugin-faker 5.1.0 → 5.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +54 -50
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +55 -51
- package/dist/index.js.map +1 -1
- package/package.json +5 -8
package/dist/index.cjs
CHANGED
|
@@ -613,33 +613,35 @@ function Faker({ node, description, name, typeName, printer, canOverride, typeMo
|
|
|
613
613
|
})
|
|
614
614
|
});
|
|
615
615
|
}
|
|
616
|
-
const jsdoc = description ? `/**\n * @description ${jsStringEscape(description)}\n */\n ` : "";
|
|
617
|
-
const functionSignature = typeMode === "schema" ? `${jsdoc}export function ${name}(data?: Partial<${typeName}>): ${typeName}` : `${jsdoc}export function ${name}<TData extends Partial<${typeName}> = object>(data?: TData)`;
|
|
618
616
|
const returnType = typeMode === "schema" ? typeName : "Omit<typeof defaultFakeData, keyof NoInfer<TData>> & NoInfer<TData>";
|
|
619
617
|
const { cyclicSchemas, schemaName } = printer.options;
|
|
620
618
|
const functionBody = node.type === "object" && !!cyclicSchemas && (node.properties ?? []).some((p) => (0, kubb_kit.containsCircularRef)(p.schema, {
|
|
621
619
|
circularSchemas: cyclicSchemas,
|
|
622
620
|
excludeName: schemaName
|
|
623
|
-
})) ? `{
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
Object.defineProperty(defaultFakeData, key, { value, configurable: true, writable: true, enumerable: true })
|
|
628
|
-
}
|
|
621
|
+
})) ? `const defaultFakeData = ${fakerText}
|
|
622
|
+
if (data) {
|
|
623
|
+
for (const [key, value] of Object.entries(data)) {
|
|
624
|
+
Object.defineProperty(defaultFakeData, key, { value, configurable: true, writable: true, enumerable: true })
|
|
629
625
|
}
|
|
630
|
-
|
|
631
|
-
}` : `{
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
}`;
|
|
638
|
-
return /* @__PURE__ */ (0, kubb_jsx_jsx_runtime.jsxs)(kubb_jsx.File.Source, {
|
|
626
|
+
}
|
|
627
|
+
return defaultFakeData as ${returnType}` : `const defaultFakeData = ${fakerText}
|
|
628
|
+
return {
|
|
629
|
+
...defaultFakeData,
|
|
630
|
+
...(data || {}),
|
|
631
|
+
} as ${returnType}`;
|
|
632
|
+
return /* @__PURE__ */ (0, kubb_jsx_jsx_runtime.jsx)(kubb_jsx.File.Source, {
|
|
639
633
|
name,
|
|
640
634
|
isExportable: true,
|
|
641
635
|
isIndexable: true,
|
|
642
|
-
children:
|
|
636
|
+
children: /* @__PURE__ */ (0, kubb_jsx_jsx_runtime.jsx)(kubb_jsx.Function, {
|
|
637
|
+
export: true,
|
|
638
|
+
name,
|
|
639
|
+
JSDoc: { comments: description ? [`@description ${jsStringEscape(description)}`] : [] },
|
|
640
|
+
generics: typeMode === "schema" ? void 0 : `TData extends Partial<${typeName}> = object`,
|
|
641
|
+
params: typeMode === "schema" ? `data?: Partial<${typeName}>` : "data?: TData",
|
|
642
|
+
returnType: typeMode === "schema" ? typeName : void 0,
|
|
643
|
+
children: functionBody
|
|
644
|
+
})
|
|
643
645
|
});
|
|
644
646
|
}
|
|
645
647
|
//#endregion
|
|
@@ -1153,8 +1155,8 @@ const fakerGenerator = (0, kubb_kit.defineGenerator)({
|
|
|
1153
1155
|
schema(node, ctx) {
|
|
1154
1156
|
const { config, resolver, root } = ctx;
|
|
1155
1157
|
const { output, group, dateParser, regexGenerator, seed, locale, printer, typeMode } = ctx.options;
|
|
1156
|
-
const pluginTs = ctx.
|
|
1157
|
-
if (!node.name
|
|
1158
|
+
const pluginTs = ctx.requirePlugin(_kubb_plugin_ts.pluginTsName);
|
|
1159
|
+
if (!node.name) return;
|
|
1158
1160
|
const tsResolver = ctx.driver.getResolver(_kubb_plugin_ts.pluginTsName);
|
|
1159
1161
|
const schemaName = node.name;
|
|
1160
1162
|
const isEnumSchema = !!kubb_kit.ast.narrowSchema(node, kubb_kit.ast.schemaTypes.enum);
|
|
@@ -1275,8 +1277,7 @@ const fakerGenerator = (0, kubb_kit.defineGenerator)({
|
|
|
1275
1277
|
operation(node, ctx) {
|
|
1276
1278
|
const { config, resolver, root } = ctx;
|
|
1277
1279
|
const { output, group, dateParser, regexGenerator, seed, locale, printer, typeMode } = ctx.options;
|
|
1278
|
-
const pluginTs = ctx.
|
|
1279
|
-
if (!pluginTs) return;
|
|
1280
|
+
const pluginTs = ctx.requirePlugin(_kubb_plugin_ts.pluginTsName);
|
|
1280
1281
|
const tsResolver = ctx.driver.getResolver(_kubb_plugin_ts.pluginTsName);
|
|
1281
1282
|
const { path: pathParams, query: queryParams, header: headerParams } = getOperationParameters(node);
|
|
1282
1283
|
const paramGroups = [
|
|
@@ -1496,6 +1497,9 @@ const fakerGenerator = (0, kubb_kit.defineGenerator)({
|
|
|
1496
1497
|
}
|
|
1497
1498
|
});
|
|
1498
1499
|
//#endregion
|
|
1500
|
+
//#region package.json
|
|
1501
|
+
var version = "5.1.2";
|
|
1502
|
+
//#endregion
|
|
1499
1503
|
//#region src/resolvers/resolverFaker.ts
|
|
1500
1504
|
/**
|
|
1501
1505
|
* Default resolver used by `@kubb/plugin-faker`. Decides the names and file
|
|
@@ -1549,35 +1553,35 @@ const pluginFakerName = "plugin-faker";
|
|
|
1549
1553
|
* })
|
|
1550
1554
|
* ```
|
|
1551
1555
|
*/
|
|
1552
|
-
const pluginFaker = (0, kubb_kit.definePlugin)(
|
|
1553
|
-
|
|
1554
|
-
path: "mocks",
|
|
1555
|
-
barrel: { type: "named" }
|
|
1556
|
-
}, seed, locale = "en", group, exclude = [], include, override = [], typeMode = "inferred", dateParser = "faker", regexGenerator = "faker", printer, resolver: userResolver, macros: userMacros } = options;
|
|
1557
|
-
const groupConfig = createGroupConfig(group);
|
|
1558
|
-
return {
|
|
1556
|
+
const pluginFaker = (0, kubb_kit.definePlugin)({
|
|
1557
|
+
meta: {
|
|
1559
1558
|
name: pluginFakerName,
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1559
|
+
version,
|
|
1560
|
+
compatibility: { kubb: ">=5.8.0" }
|
|
1561
|
+
},
|
|
1562
|
+
dependencies: { [_kubb_plugin_ts.pluginTsName]: {} },
|
|
1563
|
+
setup(options) {
|
|
1564
|
+
const { output = {
|
|
1565
|
+
path: "mocks",
|
|
1566
|
+
barrel: { type: "named" }
|
|
1567
|
+
}, seed, locale = "en", group, exclude = [], include, override = [], typeMode = "inferred", dateParser = "faker", regexGenerator = "faker", printer, resolver: userResolver, macros: userMacros } = options;
|
|
1568
|
+
(0, kubb_kit.setResolver)(userResolver ? kubb_kit.Resolver.merge(resolverFaker, userResolver) : resolverFaker);
|
|
1569
|
+
if (userMacros?.length) (0, kubb_kit.setMacros)(userMacros);
|
|
1570
|
+
(0, kubb_kit.addGenerator)(fakerGenerator);
|
|
1571
|
+
return {
|
|
1572
|
+
output,
|
|
1573
|
+
seed,
|
|
1574
|
+
locale,
|
|
1575
|
+
exclude,
|
|
1576
|
+
include,
|
|
1577
|
+
override,
|
|
1578
|
+
typeMode,
|
|
1579
|
+
group: createGroupConfig(group),
|
|
1580
|
+
dateParser,
|
|
1581
|
+
regexGenerator,
|
|
1582
|
+
printer
|
|
1583
|
+
};
|
|
1584
|
+
}
|
|
1581
1585
|
});
|
|
1582
1586
|
//#endregion
|
|
1583
1587
|
exports.Faker = Faker;
|