@kubb/plugin-svelte-query 0.0.0-canary-20251028170426 → 0.0.0-canary-20251103125929
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/{components-Dj8ralvN.cjs → components-CSifi2yW.cjs} +3 -3
- package/dist/{components-Dj8ralvN.cjs.map → components-CSifi2yW.cjs.map} +1 -1
- package/dist/{components-iwhc-RTI.js → components-D9W_4P34.js} +2 -2
- package/dist/{components-iwhc-RTI.js.map → components-D9W_4P34.js.map} +1 -1
- package/dist/components.cjs +1 -1
- package/dist/components.d.cts +37 -37
- package/dist/components.d.ts +37 -37
- package/dist/components.js +1 -1
- package/dist/{generators-D6whEaa8.js → generators-DX6qs2Fo.js} +195 -153
- package/dist/generators-DX6qs2Fo.js.map +1 -0
- package/dist/{generators-B0OWxMd3.cjs → generators-Dk290xby.cjs} +196 -153
- package/dist/generators-Dk290xby.cjs.map +1 -0
- package/dist/generators.cjs +2 -2
- package/dist/generators.d.cts +4 -4
- package/dist/generators.d.ts +4 -4
- package/dist/generators.js +2 -2
- package/dist/index.cjs +17 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +15 -3
- package/dist/index.js.map +1 -1
- package/dist/{types-CdqkoZMx.d.ts → types-CNZjhh4n.d.cts} +175 -180
- package/dist/{types-ZaeDHSbU.d.cts → types-DoVb5dRJ.d.ts} +175 -180
- package/package.json +9 -9
- package/src/components/QueryKey.tsx +1 -1
- package/src/components/index.ts +1 -1
- package/src/generators/index.ts +1 -1
- package/src/generators/mutationGenerator.tsx +34 -9
- package/src/generators/queryGenerator.tsx +35 -11
- package/src/plugin.ts +22 -1
- package/src/types.ts +4 -3
- package/dist/generators-B0OWxMd3.cjs.map +0 -1
- package/dist/generators-D6whEaa8.js.map +0 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Fabric, FileManager } from "@kubb/react-fabric";
|
|
1
2
|
import * as OasTypes from "oas/types";
|
|
2
3
|
import { HttpMethods as HttpMethod, OASDocument, SchemaObject, User } from "oas/types";
|
|
3
4
|
import { Operation, Operation as Operation$1 } from "oas/operation";
|
|
@@ -5,7 +6,6 @@ import { OpenAPIV3 } from "openapi-types";
|
|
|
5
6
|
import * as oas_normalize_lib_types0 from "oas-normalize/lib/types";
|
|
6
7
|
import BaseOas from "oas";
|
|
7
8
|
import { KubbFile } from "@kubb/fabric-core/types";
|
|
8
|
-
import { Fabric, FileManager } from "@kubb/react-fabric";
|
|
9
9
|
import { ConsolaInstance, LogLevel } from "consola";
|
|
10
10
|
import { KubbNode } from "@kubb/react-fabric/types";
|
|
11
11
|
|
|
@@ -556,170 +556,6 @@ type FileMetaBase = {
|
|
|
556
556
|
pluginKey?: Plugin['key'];
|
|
557
557
|
};
|
|
558
558
|
//#endregion
|
|
559
|
-
//#region ../plugin-oas/src/generators/createReactGenerator.d.ts
|
|
560
|
-
type ReactGenerator<TOptions extends PluginFactoryOptions> = {
|
|
561
|
-
name: string;
|
|
562
|
-
type: 'react';
|
|
563
|
-
Operations: (props: OperationsProps<TOptions>) => KubbNode;
|
|
564
|
-
Operation: (props: OperationProps<TOptions>) => KubbNode;
|
|
565
|
-
Schema: (props: SchemaProps$1<TOptions>) => KubbNode;
|
|
566
|
-
};
|
|
567
|
-
//#endregion
|
|
568
|
-
//#region ../plugin-oas/src/generators/types.d.ts
|
|
569
|
-
type OperationsProps<TOptions extends PluginFactoryOptions> = {
|
|
570
|
-
/**
|
|
571
|
-
* @deprecated
|
|
572
|
-
*/
|
|
573
|
-
instance: Omit<OperationGenerator<TOptions>, 'build'>;
|
|
574
|
-
options: TOptions['resolvedOptions'];
|
|
575
|
-
operations: Array<Operation$1>;
|
|
576
|
-
};
|
|
577
|
-
type OperationProps<TOptions extends PluginFactoryOptions> = {
|
|
578
|
-
/**
|
|
579
|
-
* @deprecated
|
|
580
|
-
*/
|
|
581
|
-
instance: Omit<OperationGenerator<TOptions>, 'build'>;
|
|
582
|
-
options: TOptions['resolvedOptions'];
|
|
583
|
-
operation: Operation$1;
|
|
584
|
-
};
|
|
585
|
-
type SchemaProps$1<TOptions extends PluginFactoryOptions> = {
|
|
586
|
-
instance: Omit<SchemaGenerator<SchemaGeneratorOptions, TOptions>, 'build'>;
|
|
587
|
-
options: TOptions['resolvedOptions'];
|
|
588
|
-
schema: {
|
|
589
|
-
name: string;
|
|
590
|
-
tree: Array<Schema>;
|
|
591
|
-
value: SchemaObject$1;
|
|
592
|
-
};
|
|
593
|
-
};
|
|
594
|
-
type Generator<TOptions extends PluginFactoryOptions> = CoreGenerator<TOptions> | ReactGenerator<TOptions>;
|
|
595
|
-
//#endregion
|
|
596
|
-
//#region ../plugin-oas/src/generators/createGenerator.d.ts
|
|
597
|
-
type CoreGenerator<TOptions extends PluginFactoryOptions> = {
|
|
598
|
-
name: string;
|
|
599
|
-
type: 'core';
|
|
600
|
-
operations: (props: OperationsProps<TOptions>) => Promise<KubbFile.File[]>;
|
|
601
|
-
operation: (props: OperationProps<TOptions>) => Promise<KubbFile.File[]>;
|
|
602
|
-
schema: (props: SchemaProps$1<TOptions>) => Promise<KubbFile.File[]>;
|
|
603
|
-
};
|
|
604
|
-
//#endregion
|
|
605
|
-
//#region ../plugin-oas/src/types.d.ts
|
|
606
|
-
type ResolvePathOptions = {
|
|
607
|
-
pluginKey?: Plugin['key'];
|
|
608
|
-
group?: {
|
|
609
|
-
tag?: string;
|
|
610
|
-
path?: string;
|
|
611
|
-
};
|
|
612
|
-
type?: ResolveNameParams['type'];
|
|
613
|
-
};
|
|
614
|
-
/**
|
|
615
|
-
* `propertyName` is the ref name + resolved with the nameResolver
|
|
616
|
-
* @example import { Pet } from './Pet'
|
|
617
|
-
*
|
|
618
|
-
* `originalName` is the original name used(in PascalCase), only used to remove duplicates
|
|
619
|
-
*
|
|
620
|
-
* `pluginKey` can be used to override the current plugin being used, handy when you want to import a type/schema out of another plugin
|
|
621
|
-
* @example import a type(plugin-ts) for a mock file(swagger-faker)
|
|
622
|
-
*/
|
|
623
|
-
type Ref = {
|
|
624
|
-
propertyName: string;
|
|
625
|
-
originalName: string;
|
|
626
|
-
path: KubbFile.OptionalPath;
|
|
627
|
-
pluginKey?: Plugin['key'];
|
|
628
|
-
};
|
|
629
|
-
type Refs = Record<string, Ref>;
|
|
630
|
-
type OperationSchema = {
|
|
631
|
-
/**
|
|
632
|
-
* Converted name, contains already `PathParams`, `QueryParams`, ...
|
|
633
|
-
*/
|
|
634
|
-
name: string;
|
|
635
|
-
schema: SchemaObject$1;
|
|
636
|
-
operation?: Operation$1;
|
|
637
|
-
/**
|
|
638
|
-
* OperationName in PascalCase, only being used in OperationGenerator
|
|
639
|
-
*/
|
|
640
|
-
operationName: string;
|
|
641
|
-
description?: string;
|
|
642
|
-
statusCode?: number;
|
|
643
|
-
keys?: string[];
|
|
644
|
-
keysToOmit?: string[];
|
|
645
|
-
withData?: boolean;
|
|
646
|
-
};
|
|
647
|
-
type OperationSchemas = {
|
|
648
|
-
pathParams?: OperationSchema & {
|
|
649
|
-
keysToOmit?: never;
|
|
650
|
-
};
|
|
651
|
-
queryParams?: OperationSchema & {
|
|
652
|
-
keysToOmit?: never;
|
|
653
|
-
};
|
|
654
|
-
headerParams?: OperationSchema & {
|
|
655
|
-
keysToOmit?: never;
|
|
656
|
-
};
|
|
657
|
-
request?: OperationSchema;
|
|
658
|
-
response: OperationSchema;
|
|
659
|
-
responses: Array<OperationSchema>;
|
|
660
|
-
statusCodes?: Array<OperationSchema>;
|
|
661
|
-
errors?: Array<OperationSchema>;
|
|
662
|
-
};
|
|
663
|
-
type ByTag = {
|
|
664
|
-
type: 'tag';
|
|
665
|
-
pattern: string | RegExp;
|
|
666
|
-
};
|
|
667
|
-
type ByOperationId = {
|
|
668
|
-
type: 'operationId';
|
|
669
|
-
pattern: string | RegExp;
|
|
670
|
-
};
|
|
671
|
-
type ByPath = {
|
|
672
|
-
type: 'path';
|
|
673
|
-
pattern: string | RegExp;
|
|
674
|
-
};
|
|
675
|
-
type ByMethod = {
|
|
676
|
-
type: 'method';
|
|
677
|
-
pattern: HttpMethod | RegExp;
|
|
678
|
-
};
|
|
679
|
-
type BySchemaName = {
|
|
680
|
-
type: 'schemaName';
|
|
681
|
-
pattern: string | RegExp;
|
|
682
|
-
};
|
|
683
|
-
type ByContentType = {
|
|
684
|
-
type: 'contentType';
|
|
685
|
-
pattern: string | RegExp;
|
|
686
|
-
};
|
|
687
|
-
type Exclude$1 = ByTag | ByOperationId | ByPath | ByMethod | ByContentType;
|
|
688
|
-
type Include = ByTag | ByOperationId | ByPath | ByMethod | ByContentType;
|
|
689
|
-
type Override<TOptions> = (ByTag | ByOperationId | ByPath | ByMethod | BySchemaName | ByContentType) & {
|
|
690
|
-
options: Partial<TOptions>;
|
|
691
|
-
};
|
|
692
|
-
//#endregion
|
|
693
|
-
//#region ../plugin-oas/src/OperationGenerator.d.ts
|
|
694
|
-
type Context$1<TOptions, TPluginOptions extends PluginFactoryOptions> = {
|
|
695
|
-
fabric: Fabric;
|
|
696
|
-
oas: Oas;
|
|
697
|
-
exclude: Array<Exclude$1> | undefined;
|
|
698
|
-
include: Array<Include> | undefined;
|
|
699
|
-
override: Array<Override<TOptions>> | undefined;
|
|
700
|
-
contentType: contentType | undefined;
|
|
701
|
-
pluginManager: PluginManager;
|
|
702
|
-
/**
|
|
703
|
-
* Current plugin
|
|
704
|
-
*/
|
|
705
|
-
plugin: Plugin<TPluginOptions>;
|
|
706
|
-
mode: KubbFile.Mode;
|
|
707
|
-
};
|
|
708
|
-
declare class OperationGenerator<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions, TFileMeta extends FileMetaBase = FileMetaBase> extends BaseGenerator<TPluginOptions['resolvedOptions'], Context$1<TPluginOptions['resolvedOptions'], TPluginOptions>> {
|
|
709
|
-
#private;
|
|
710
|
-
getSchemas(operation: Operation$1, {
|
|
711
|
-
resolveName
|
|
712
|
-
}?: {
|
|
713
|
-
resolveName?: (name: string) => string;
|
|
714
|
-
}): OperationSchemas;
|
|
715
|
-
getOperations(): Promise<Array<{
|
|
716
|
-
path: string;
|
|
717
|
-
method: HttpMethod;
|
|
718
|
-
operation: Operation$1;
|
|
719
|
-
}>>;
|
|
720
|
-
build(...generators: Array<Generator<TPluginOptions>>): Promise<Array<KubbFile.File<TFileMeta>>>;
|
|
721
|
-
}
|
|
722
|
-
//#endregion
|
|
723
559
|
//#region ../plugin-oas/src/SchemaMapper.d.ts
|
|
724
560
|
type SchemaKeywordMapper = {
|
|
725
561
|
object: {
|
|
@@ -937,8 +773,96 @@ type Schema = {
|
|
|
937
773
|
keyword: string;
|
|
938
774
|
} | SchemaKeywordMapper[keyof SchemaKeywordMapper];
|
|
939
775
|
//#endregion
|
|
776
|
+
//#region ../plugin-oas/src/types.d.ts
|
|
777
|
+
type ResolvePathOptions = {
|
|
778
|
+
pluginKey?: Plugin['key'];
|
|
779
|
+
group?: {
|
|
780
|
+
tag?: string;
|
|
781
|
+
path?: string;
|
|
782
|
+
};
|
|
783
|
+
type?: ResolveNameParams['type'];
|
|
784
|
+
};
|
|
785
|
+
/**
|
|
786
|
+
* `propertyName` is the ref name + resolved with the nameResolver
|
|
787
|
+
* @example import { Pet } from './Pet'
|
|
788
|
+
*
|
|
789
|
+
* `originalName` is the original name used(in PascalCase), only used to remove duplicates
|
|
790
|
+
*
|
|
791
|
+
* `pluginKey` can be used to override the current plugin being used, handy when you want to import a type/schema out of another plugin
|
|
792
|
+
* @example import a type(plugin-ts) for a mock file(swagger-faker)
|
|
793
|
+
*/
|
|
794
|
+
type Ref = {
|
|
795
|
+
propertyName: string;
|
|
796
|
+
originalName: string;
|
|
797
|
+
path: KubbFile.OptionalPath;
|
|
798
|
+
pluginKey?: Plugin['key'];
|
|
799
|
+
};
|
|
800
|
+
type Refs = Record<string, Ref>;
|
|
801
|
+
type OperationSchema = {
|
|
802
|
+
/**
|
|
803
|
+
* Converted name, contains already `PathParams`, `QueryParams`, ...
|
|
804
|
+
*/
|
|
805
|
+
name: string;
|
|
806
|
+
schema: SchemaObject$1;
|
|
807
|
+
operation?: Operation$1;
|
|
808
|
+
/**
|
|
809
|
+
* OperationName in PascalCase, only being used in OperationGenerator
|
|
810
|
+
*/
|
|
811
|
+
operationName: string;
|
|
812
|
+
description?: string;
|
|
813
|
+
statusCode?: number;
|
|
814
|
+
keys?: string[];
|
|
815
|
+
keysToOmit?: string[];
|
|
816
|
+
withData?: boolean;
|
|
817
|
+
};
|
|
818
|
+
type OperationSchemas = {
|
|
819
|
+
pathParams?: OperationSchema & {
|
|
820
|
+
keysToOmit?: never;
|
|
821
|
+
};
|
|
822
|
+
queryParams?: OperationSchema & {
|
|
823
|
+
keysToOmit?: never;
|
|
824
|
+
};
|
|
825
|
+
headerParams?: OperationSchema & {
|
|
826
|
+
keysToOmit?: never;
|
|
827
|
+
};
|
|
828
|
+
request?: OperationSchema;
|
|
829
|
+
response: OperationSchema;
|
|
830
|
+
responses: Array<OperationSchema>;
|
|
831
|
+
statusCodes?: Array<OperationSchema>;
|
|
832
|
+
errors?: Array<OperationSchema>;
|
|
833
|
+
};
|
|
834
|
+
type ByTag = {
|
|
835
|
+
type: 'tag';
|
|
836
|
+
pattern: string | RegExp;
|
|
837
|
+
};
|
|
838
|
+
type ByOperationId = {
|
|
839
|
+
type: 'operationId';
|
|
840
|
+
pattern: string | RegExp;
|
|
841
|
+
};
|
|
842
|
+
type ByPath = {
|
|
843
|
+
type: 'path';
|
|
844
|
+
pattern: string | RegExp;
|
|
845
|
+
};
|
|
846
|
+
type ByMethod = {
|
|
847
|
+
type: 'method';
|
|
848
|
+
pattern: HttpMethod | RegExp;
|
|
849
|
+
};
|
|
850
|
+
type BySchemaName = {
|
|
851
|
+
type: 'schemaName';
|
|
852
|
+
pattern: string | RegExp;
|
|
853
|
+
};
|
|
854
|
+
type ByContentType = {
|
|
855
|
+
type: 'contentType';
|
|
856
|
+
pattern: string | RegExp;
|
|
857
|
+
};
|
|
858
|
+
type Exclude$1 = ByTag | ByOperationId | ByPath | ByMethod | ByContentType;
|
|
859
|
+
type Include = ByTag | ByOperationId | ByPath | ByMethod | ByContentType;
|
|
860
|
+
type Override<TOptions> = (ByTag | ByOperationId | ByPath | ByMethod | BySchemaName | ByContentType) & {
|
|
861
|
+
options: Partial<TOptions>;
|
|
862
|
+
};
|
|
863
|
+
//#endregion
|
|
940
864
|
//#region ../plugin-oas/src/SchemaGenerator.d.ts
|
|
941
|
-
type Context<TOptions, TPluginOptions extends PluginFactoryOptions> = {
|
|
865
|
+
type Context$1<TOptions, TPluginOptions extends PluginFactoryOptions> = {
|
|
942
866
|
fabric: Fabric;
|
|
943
867
|
oas: Oas;
|
|
944
868
|
pluginManager: PluginManager;
|
|
@@ -971,15 +895,15 @@ type SchemaGeneratorOptions = {
|
|
|
971
895
|
* TODO TODO add docs
|
|
972
896
|
* @beta
|
|
973
897
|
*/
|
|
974
|
-
schema?: (schemaProps: SchemaProps, defaultSchemas: Schema[]) => Schema[] | undefined;
|
|
898
|
+
schema?: (schemaProps: SchemaProps$1, defaultSchemas: Schema[]) => Schema[] | undefined;
|
|
975
899
|
};
|
|
976
900
|
};
|
|
977
|
-
type SchemaProps = {
|
|
901
|
+
type SchemaProps$1 = {
|
|
978
902
|
schemaObject?: SchemaObject$1;
|
|
979
903
|
name?: string;
|
|
980
904
|
parentName?: string;
|
|
981
905
|
};
|
|
982
|
-
declare class SchemaGenerator<TOptions extends SchemaGeneratorOptions = SchemaGeneratorOptions, TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions, TFileMeta extends FileMetaBase = FileMetaBase> extends BaseGenerator<TOptions, Context<TOptions, TPluginOptions>> {
|
|
906
|
+
declare class SchemaGenerator<TOptions extends SchemaGeneratorOptions = SchemaGeneratorOptions, TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions, TFileMeta extends FileMetaBase = FileMetaBase> extends BaseGenerator<TOptions, Context$1<TOptions, TPluginOptions>> {
|
|
983
907
|
#private;
|
|
984
908
|
refs: Refs;
|
|
985
909
|
/**
|
|
@@ -987,7 +911,7 @@ declare class SchemaGenerator<TOptions extends SchemaGeneratorOptions = SchemaGe
|
|
|
987
911
|
* Delegates to getBaseTypeFromSchema internally and
|
|
988
912
|
* optionally adds a union with null.
|
|
989
913
|
*/
|
|
990
|
-
parse(props: SchemaProps): Schema[];
|
|
914
|
+
parse(props: SchemaProps$1): Schema[];
|
|
991
915
|
deepSearch<T extends keyof SchemaKeywordMapper>(tree: Schema[] | undefined, keyword: T): Array<SchemaKeywordMapper[T]>;
|
|
992
916
|
find<T extends keyof SchemaKeywordMapper>(tree: Schema[] | undefined, keyword: T): SchemaKeywordMapper[T] | undefined;
|
|
993
917
|
static deepSearch<T extends keyof SchemaKeywordMapper>(tree: Schema[] | undefined, keyword: T): Array<SchemaKeywordMapper[T]>;
|
|
@@ -997,6 +921,79 @@ declare class SchemaGenerator<TOptions extends SchemaGeneratorOptions = SchemaGe
|
|
|
997
921
|
build(...generators: Array<Generator<TPluginOptions>>): Promise<Array<KubbFile.File<TFileMeta>>>;
|
|
998
922
|
}
|
|
999
923
|
//#endregion
|
|
924
|
+
//#region ../plugin-oas/src/generators/createGenerator.d.ts
|
|
925
|
+
type CoreGenerator<TOptions extends PluginFactoryOptions> = {
|
|
926
|
+
name: string;
|
|
927
|
+
type: 'core';
|
|
928
|
+
operations: (props: OperationsProps<TOptions>) => Promise<KubbFile.File[]>;
|
|
929
|
+
operation: (props: OperationProps<TOptions>) => Promise<KubbFile.File[]>;
|
|
930
|
+
schema: (props: SchemaProps<TOptions>) => Promise<KubbFile.File[]>;
|
|
931
|
+
};
|
|
932
|
+
//#endregion
|
|
933
|
+
//#region ../plugin-oas/src/generators/createReactGenerator.d.ts
|
|
934
|
+
type ReactGenerator<TOptions extends PluginFactoryOptions> = {
|
|
935
|
+
name: string;
|
|
936
|
+
type: 'react';
|
|
937
|
+
Operations: (props: OperationsProps<TOptions>) => KubbNode;
|
|
938
|
+
Operation: (props: OperationProps<TOptions>) => KubbNode;
|
|
939
|
+
Schema: (props: SchemaProps<TOptions>) => KubbNode;
|
|
940
|
+
};
|
|
941
|
+
//#endregion
|
|
942
|
+
//#region ../plugin-oas/src/generators/types.d.ts
|
|
943
|
+
type OperationsProps<TOptions extends PluginFactoryOptions> = {
|
|
944
|
+
config: Config;
|
|
945
|
+
generator: Omit<OperationGenerator<TOptions>, 'build'>;
|
|
946
|
+
plugin: Plugin<TOptions>;
|
|
947
|
+
operations: Array<Operation$1>;
|
|
948
|
+
};
|
|
949
|
+
type OperationProps<TOptions extends PluginFactoryOptions> = {
|
|
950
|
+
config: Config;
|
|
951
|
+
generator: Omit<OperationGenerator<TOptions>, 'build'>;
|
|
952
|
+
plugin: Plugin<TOptions>;
|
|
953
|
+
operation: Operation$1;
|
|
954
|
+
};
|
|
955
|
+
type SchemaProps<TOptions extends PluginFactoryOptions> = {
|
|
956
|
+
config: Config;
|
|
957
|
+
generator: Omit<SchemaGenerator<SchemaGeneratorOptions, TOptions>, 'build'>;
|
|
958
|
+
plugin: Plugin<TOptions>;
|
|
959
|
+
schema: {
|
|
960
|
+
name: string;
|
|
961
|
+
tree: Array<Schema>;
|
|
962
|
+
value: SchemaObject$1;
|
|
963
|
+
};
|
|
964
|
+
};
|
|
965
|
+
type Generator<TOptions extends PluginFactoryOptions> = CoreGenerator<TOptions> | ReactGenerator<TOptions>;
|
|
966
|
+
//#endregion
|
|
967
|
+
//#region ../plugin-oas/src/OperationGenerator.d.ts
|
|
968
|
+
type Context<TOptions, TPluginOptions extends PluginFactoryOptions> = {
|
|
969
|
+
fabric: Fabric;
|
|
970
|
+
oas: Oas;
|
|
971
|
+
exclude: Array<Exclude$1> | undefined;
|
|
972
|
+
include: Array<Include> | undefined;
|
|
973
|
+
override: Array<Override<TOptions>> | undefined;
|
|
974
|
+
contentType: contentType | undefined;
|
|
975
|
+
pluginManager: PluginManager;
|
|
976
|
+
/**
|
|
977
|
+
* Current plugin
|
|
978
|
+
*/
|
|
979
|
+
plugin: Plugin<TPluginOptions>;
|
|
980
|
+
mode: KubbFile.Mode;
|
|
981
|
+
};
|
|
982
|
+
declare class OperationGenerator<TPluginOptions extends PluginFactoryOptions = PluginFactoryOptions, TFileMeta extends FileMetaBase = FileMetaBase> extends BaseGenerator<TPluginOptions['resolvedOptions'], Context<TPluginOptions['resolvedOptions'], TPluginOptions>> {
|
|
983
|
+
#private;
|
|
984
|
+
getSchemas(operation: Operation$1, {
|
|
985
|
+
resolveName
|
|
986
|
+
}?: {
|
|
987
|
+
resolveName?: (name: string) => string;
|
|
988
|
+
}): OperationSchemas;
|
|
989
|
+
getOperations(): Promise<Array<{
|
|
990
|
+
path: string;
|
|
991
|
+
method: HttpMethod;
|
|
992
|
+
operation: Operation$1;
|
|
993
|
+
}>>;
|
|
994
|
+
build(...generators: Array<Generator<TPluginOptions>>): Promise<Array<KubbFile.File<TFileMeta>>>;
|
|
995
|
+
}
|
|
996
|
+
//#endregion
|
|
1000
997
|
//#region ../plugin-client/src/types.d.ts
|
|
1001
998
|
type Options$2 = {
|
|
1002
999
|
/**
|
|
@@ -1041,7 +1038,6 @@ type Options$2 = {
|
|
|
1041
1038
|
* Path to the client import path that will be used to do the API calls.
|
|
1042
1039
|
* It will be used as `import client from '${client.importPath}'`.
|
|
1043
1040
|
* It allows both relative and absolute path but be aware that we will not change the path.
|
|
1044
|
-
* @default '@kubb/plugin-client/clients/axios'
|
|
1045
1041
|
*/
|
|
1046
1042
|
importPath?: string;
|
|
1047
1043
|
/**
|
|
@@ -1082,8 +1078,8 @@ type Options$2 = {
|
|
|
1082
1078
|
parser?: 'client' | 'zod';
|
|
1083
1079
|
/**
|
|
1084
1080
|
* Which client should be used to do the HTTP calls
|
|
1085
|
-
* - 'axios' will use `@kubb/plugin-client/
|
|
1086
|
-
* - 'fetch' will use `@kubb/plugin-client/
|
|
1081
|
+
* - 'axios' will use `@kubb/plugin-client/templates/axios` to fetch data.
|
|
1082
|
+
* - 'fetch' will use `@kubb/plugin-client/templates/fetch` to fetch data.
|
|
1087
1083
|
* @default 'axios'
|
|
1088
1084
|
*/
|
|
1089
1085
|
client?: 'axios' | 'fetch';
|
|
@@ -1102,9 +1098,10 @@ type ResolvedOptions$1 = {
|
|
|
1102
1098
|
output: Output<Oas>;
|
|
1103
1099
|
group?: Options$2['group'];
|
|
1104
1100
|
baseURL: string | undefined;
|
|
1101
|
+
client: Options$2['client'];
|
|
1105
1102
|
parser: NonNullable<Options$2['parser']>;
|
|
1106
1103
|
urlType: NonNullable<Options$2['urlType']>;
|
|
1107
|
-
importPath:
|
|
1104
|
+
importPath: Options$2['importPath'];
|
|
1108
1105
|
dataReturnType: NonNullable<Options$2['dataReturnType']>;
|
|
1109
1106
|
pathParamsType: NonNullable<Options$2['pathParamsType']>;
|
|
1110
1107
|
paramsType: NonNullable<Options$2['paramsType']>;
|
|
@@ -1172,7 +1169,7 @@ type Options$1 = {
|
|
|
1172
1169
|
* Group the @tanstack/query hooks based on the provided name.
|
|
1173
1170
|
*/
|
|
1174
1171
|
group?: Group;
|
|
1175
|
-
client?: Pick<PluginClient['options'], 'dataReturnType' | 'importPath' | 'baseURL'>;
|
|
1172
|
+
client?: Pick<PluginClient['options'], 'client' | 'dataReturnType' | 'importPath' | 'baseURL'>;
|
|
1176
1173
|
/**
|
|
1177
1174
|
* Array containing exclude parameters to exclude/skip tags/operations/methods/paths.
|
|
1178
1175
|
*/
|
|
@@ -1233,9 +1230,7 @@ type Options$1 = {
|
|
|
1233
1230
|
type ResolvedOptions = {
|
|
1234
1231
|
output: Output<Oas>;
|
|
1235
1232
|
group: Options$1['group'];
|
|
1236
|
-
client:
|
|
1237
|
-
baseURL?: string;
|
|
1238
|
-
};
|
|
1233
|
+
client: NonNullable<PluginSvelteQuery['options']['client']>;
|
|
1239
1234
|
parser: Required<NonNullable<Options$1['parser']>>;
|
|
1240
1235
|
paramsCasing: Options$1['paramsCasing'];
|
|
1241
1236
|
paramsType: NonNullable<Options$1['paramsType']>;
|
|
@@ -1247,5 +1242,5 @@ type ResolvedOptions = {
|
|
|
1247
1242
|
};
|
|
1248
1243
|
type PluginSvelteQuery = PluginFactoryOptions<'plugin-svelte-query', Options$1, ResolvedOptions, never, ResolvePathOptions>;
|
|
1249
1244
|
//#endregion
|
|
1250
|
-
export {
|
|
1251
|
-
//# sourceMappingURL=types-
|
|
1245
|
+
export { OperationSchemas as a, ReactGenerator as i, PluginSvelteQuery as n, UserPluginWithLifeCycle as o, Transformer as r, Operation$1 as s, Options$1 as t };
|
|
1246
|
+
//# sourceMappingURL=types-DoVb5dRJ.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kubb/plugin-svelte-query",
|
|
3
|
-
"version": "0.0.0-canary-
|
|
3
|
+
"version": "0.0.0-canary-20251103125929",
|
|
4
4
|
"description": "Svelte Query hooks generator plugin for Kubb, creating type-safe API client hooks from OpenAPI specifications for Svelte applications.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"svelte-query",
|
|
@@ -67,18 +67,18 @@
|
|
|
67
67
|
}
|
|
68
68
|
],
|
|
69
69
|
"dependencies": {
|
|
70
|
-
"@kubb/react-fabric": "0.2.
|
|
70
|
+
"@kubb/react-fabric": "0.2.14",
|
|
71
71
|
"remeda": "^2.32.0",
|
|
72
|
-
"@kubb/core": "0.0.0-canary-
|
|
73
|
-
"@kubb/oas": "0.0.0-canary-
|
|
74
|
-
"@kubb/plugin-client": "0.0.0-canary-
|
|
75
|
-
"@kubb/plugin-oas": "0.0.0-canary-
|
|
76
|
-
"@kubb/plugin-ts": "0.0.0-canary-
|
|
77
|
-
"@kubb/plugin-zod": "0.0.0-canary-
|
|
72
|
+
"@kubb/core": "0.0.0-canary-20251103125929",
|
|
73
|
+
"@kubb/oas": "0.0.0-canary-20251103125929",
|
|
74
|
+
"@kubb/plugin-client": "0.0.0-canary-20251103125929",
|
|
75
|
+
"@kubb/plugin-oas": "0.0.0-canary-20251103125929",
|
|
76
|
+
"@kubb/plugin-ts": "0.0.0-canary-20251103125929",
|
|
77
|
+
"@kubb/plugin-zod": "0.0.0-canary-20251103125929"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {},
|
|
80
80
|
"peerDependencies": {
|
|
81
|
-
"@kubb/react-fabric": "0.2.
|
|
81
|
+
"@kubb/react-fabric": "0.2.14"
|
|
82
82
|
},
|
|
83
83
|
"engines": {
|
|
84
84
|
"node": ">=20"
|
|
@@ -3,8 +3,8 @@ import { isOptional, type Operation } from '@kubb/oas'
|
|
|
3
3
|
import type { OperationSchemas } from '@kubb/plugin-oas'
|
|
4
4
|
import { getPathParams } from '@kubb/plugin-oas/utils'
|
|
5
5
|
import { File, Function, FunctionParams, Type } from '@kubb/react-fabric'
|
|
6
|
-
import type { PluginSvelteQuery, Transformer } from '../types'
|
|
7
6
|
import type { KubbNode } from '@kubb/react-fabric/types'
|
|
7
|
+
import type { PluginSvelteQuery, Transformer } from '../types'
|
|
8
8
|
|
|
9
9
|
type Props = {
|
|
10
10
|
name: string
|
package/src/components/index.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Mutation } from './Mutation.tsx'
|
|
2
|
+
export { MutationKey } from './MutationKey.tsx'
|
|
2
3
|
export { Query } from './Query.tsx'
|
|
3
4
|
export { QueryKey } from './QueryKey.tsx'
|
|
4
|
-
export { MutationKey } from './MutationKey.tsx'
|
|
5
5
|
export { QueryOptions } from './QueryOptions.tsx'
|
package/src/generators/index.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import path from 'node:path'
|
|
2
|
+
import { usePluginManager } from '@kubb/core/hooks'
|
|
2
3
|
import { pluginClientName } from '@kubb/plugin-client'
|
|
3
4
|
import { Client } from '@kubb/plugin-client/components'
|
|
4
|
-
import { createReactGenerator } from '@kubb/plugin-oas'
|
|
5
|
+
import { createReactGenerator } from '@kubb/plugin-oas/generators'
|
|
5
6
|
import { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'
|
|
6
7
|
import { getBanner, getFooter } from '@kubb/plugin-oas/utils'
|
|
7
8
|
import { pluginTsName } from '@kubb/plugin-ts'
|
|
@@ -13,14 +14,15 @@ import type { PluginSvelteQuery } from '../types'
|
|
|
13
14
|
|
|
14
15
|
export const mutationGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
15
16
|
name: 'svelte-query',
|
|
16
|
-
Operation({
|
|
17
|
+
Operation({ config, operation, generator, plugin }) {
|
|
17
18
|
const {
|
|
19
|
+
options,
|
|
18
20
|
options: { output },
|
|
19
|
-
} =
|
|
21
|
+
} = plugin
|
|
20
22
|
const pluginManager = usePluginManager()
|
|
21
23
|
|
|
22
24
|
const oas = useOas()
|
|
23
|
-
const { getSchemas, getName, getFile } = useOperationManager()
|
|
25
|
+
const { getSchemas, getName, getFile } = useOperationManager(generator)
|
|
24
26
|
|
|
25
27
|
const isQuery = !!options.query && options.query?.methods.some((method) => operation.method === method)
|
|
26
28
|
const isMutation =
|
|
@@ -79,9 +81,32 @@ export const mutationGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
79
81
|
{options.parser === 'zod' && (
|
|
80
82
|
<File.Import name={[zod.schemas.response.name, zod.schemas.request?.name].filter(Boolean)} root={mutation.file.path} path={zod.file.path} />
|
|
81
83
|
)}
|
|
82
|
-
|
|
84
|
+
{options.client.importPath ? (
|
|
85
|
+
<>
|
|
86
|
+
<File.Import name={'fetch'} path={options.client.importPath} />
|
|
87
|
+
<File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />
|
|
88
|
+
{options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}
|
|
89
|
+
</>
|
|
90
|
+
) : (
|
|
91
|
+
<>
|
|
92
|
+
<File.Import name={'fetch'} root={mutation.file.path} path={path.resolve(config.root, config.output.path, '.kubb/fetcher.ts')} />
|
|
93
|
+
<File.Import
|
|
94
|
+
name={['RequestConfig', 'ResponseErrorConfig']}
|
|
95
|
+
root={mutation.file.path}
|
|
96
|
+
path={path.resolve(config.root, config.output.path, '.kubb/fetcher.ts')}
|
|
97
|
+
isTypeOnly
|
|
98
|
+
/>
|
|
99
|
+
{options.client.dataReturnType === 'full' && (
|
|
100
|
+
<File.Import
|
|
101
|
+
name={['ResponseConfig']}
|
|
102
|
+
root={mutation.file.path}
|
|
103
|
+
path={path.resolve(config.root, config.output.path, '.kubb/fetcher.ts')}
|
|
104
|
+
isTypeOnly
|
|
105
|
+
/>
|
|
106
|
+
)}
|
|
107
|
+
</>
|
|
108
|
+
)}
|
|
83
109
|
{!!hasClientPlugin && <File.Import name={[client.name]} root={mutation.file.path} path={client.file.path} />}
|
|
84
|
-
<File.Import name={['RequestConfig', 'ResponseConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />
|
|
85
110
|
<File.Import
|
|
86
111
|
name={[
|
|
87
112
|
type.schemas.request?.name,
|
|
@@ -112,7 +137,7 @@ export const mutationGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
112
137
|
operation={operation}
|
|
113
138
|
typeSchemas={type.schemas}
|
|
114
139
|
zodSchemas={zod.schemas}
|
|
115
|
-
dataReturnType={options.client.dataReturnType}
|
|
140
|
+
dataReturnType={options.client.dataReturnType || 'data'}
|
|
116
141
|
paramsCasing={options.paramsCasing}
|
|
117
142
|
paramsType={options.paramsType}
|
|
118
143
|
pathParamsType={options.pathParamsType}
|
|
@@ -130,7 +155,7 @@ export const mutationGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
130
155
|
typeSchemas={type.schemas}
|
|
131
156
|
operation={operation}
|
|
132
157
|
paramsCasing={options.paramsCasing}
|
|
133
|
-
dataReturnType={options.client.dataReturnType}
|
|
158
|
+
dataReturnType={options.client.dataReturnType || 'data'}
|
|
134
159
|
paramsType={options.paramsType}
|
|
135
160
|
pathParamsType={options.pathParamsType}
|
|
136
161
|
mutationKeyName={mutationKey.name}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import path from 'node:path'
|
|
2
|
+
import { usePluginManager } from '@kubb/core/hooks'
|
|
2
3
|
import { pluginClientName } from '@kubb/plugin-client'
|
|
3
4
|
import { Client } from '@kubb/plugin-client/components'
|
|
4
|
-
import { createReactGenerator } from '@kubb/plugin-oas'
|
|
5
|
+
import { createReactGenerator } from '@kubb/plugin-oas/generators'
|
|
5
6
|
import { useOas, useOperationManager } from '@kubb/plugin-oas/hooks'
|
|
6
7
|
import { getBanner, getFooter } from '@kubb/plugin-oas/utils'
|
|
7
8
|
import { pluginTsName } from '@kubb/plugin-ts'
|
|
@@ -13,14 +14,15 @@ import type { PluginSvelteQuery } from '../types'
|
|
|
13
14
|
|
|
14
15
|
export const queryGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
15
16
|
name: 'svelte-query',
|
|
16
|
-
Operation({
|
|
17
|
+
Operation({ config, operation, generator, plugin }) {
|
|
17
18
|
const {
|
|
19
|
+
options,
|
|
18
20
|
options: { output },
|
|
19
|
-
} =
|
|
21
|
+
} = plugin
|
|
20
22
|
const pluginManager = usePluginManager()
|
|
21
23
|
|
|
22
24
|
const oas = useOas()
|
|
23
|
-
const { getSchemas, getName, getFile } = useOperationManager()
|
|
25
|
+
const { getSchemas, getName, getFile } = useOperationManager(generator)
|
|
24
26
|
|
|
25
27
|
const isQuery = typeof options.query === 'boolean' ? true : options.query?.methods.some((method) => operation.method === method)
|
|
26
28
|
const isMutation = difference(options.mutation ? options.mutation.methods : [], options.query ? options.query.methods : []).some(
|
|
@@ -82,10 +84,32 @@ export const queryGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
82
84
|
{options.parser === 'zod' && (
|
|
83
85
|
<File.Import name={[zod.schemas.response.name, zod.schemas.request?.name].filter(Boolean)} root={query.file.path} path={zod.file.path} />
|
|
84
86
|
)}
|
|
85
|
-
|
|
87
|
+
{options.client.importPath ? (
|
|
88
|
+
<>
|
|
89
|
+
<File.Import name={'fetch'} path={options.client.importPath} />
|
|
90
|
+
<File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />
|
|
91
|
+
{options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}
|
|
92
|
+
</>
|
|
93
|
+
) : (
|
|
94
|
+
<>
|
|
95
|
+
<File.Import name={'fetch'} root={query.file.path} path={path.resolve(config.root, config.output.path, '.kubb/fetcher.ts')} />
|
|
96
|
+
<File.Import
|
|
97
|
+
name={['RequestConfig', 'ResponseErrorConfig']}
|
|
98
|
+
root={query.file.path}
|
|
99
|
+
path={path.resolve(config.root, config.output.path, '.kubb/fetcher.ts')}
|
|
100
|
+
isTypeOnly
|
|
101
|
+
/>
|
|
102
|
+
{options.client.dataReturnType === 'full' && (
|
|
103
|
+
<File.Import
|
|
104
|
+
name={['ResponseConfig']}
|
|
105
|
+
root={query.file.path}
|
|
106
|
+
path={path.resolve(config.root, config.output.path, '.kubb/fetcher.ts')}
|
|
107
|
+
isTypeOnly
|
|
108
|
+
/>
|
|
109
|
+
)}
|
|
110
|
+
</>
|
|
111
|
+
)}
|
|
86
112
|
{!!hasClientPlugin && <File.Import name={[client.name]} root={query.file.path} path={client.file.path} />}
|
|
87
|
-
<File.Import name={['RequestConfig', 'ResponseErrorConfig']} path={options.client.importPath} isTypeOnly />
|
|
88
|
-
{options.client.dataReturnType === 'full' && <File.Import name={['ResponseConfig']} path={options.client.importPath} isTypeOnly />}
|
|
89
113
|
<File.Import
|
|
90
114
|
name={[
|
|
91
115
|
type.schemas.request?.name,
|
|
@@ -117,7 +141,7 @@ export const queryGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
117
141
|
operation={operation}
|
|
118
142
|
typeSchemas={type.schemas}
|
|
119
143
|
zodSchemas={zod.schemas}
|
|
120
|
-
dataReturnType={options.client.dataReturnType}
|
|
144
|
+
dataReturnType={options.client.dataReturnType || 'data'}
|
|
121
145
|
paramsCasing={options.paramsCasing}
|
|
122
146
|
paramsType={options.paramsType}
|
|
123
147
|
pathParamsType={options.pathParamsType}
|
|
@@ -133,7 +157,7 @@ export const queryGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
133
157
|
paramsCasing={options.paramsCasing}
|
|
134
158
|
paramsType={options.paramsType}
|
|
135
159
|
pathParamsType={options.pathParamsType}
|
|
136
|
-
dataReturnType={options.client.dataReturnType}
|
|
160
|
+
dataReturnType={options.client.dataReturnType || 'data'}
|
|
137
161
|
/>
|
|
138
162
|
{options.query && (
|
|
139
163
|
<>
|
|
@@ -147,7 +171,7 @@ export const queryGenerator = createReactGenerator<PluginSvelteQuery>({
|
|
|
147
171
|
operation={operation}
|
|
148
172
|
paramsCasing={options.paramsCasing}
|
|
149
173
|
paramsType={options.paramsType}
|
|
150
|
-
dataReturnType={options.client.dataReturnType}
|
|
174
|
+
dataReturnType={options.client.dataReturnType || 'data'}
|
|
151
175
|
queryKeyName={queryKey.name}
|
|
152
176
|
queryKeyTypeName={queryKey.typeName}
|
|
153
177
|
/>
|