@cyberskill/shared 1.193.0 → 1.195.0

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.
Files changed (44) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +76 -5
  2. package/dist/_tsup-dts-rollup.d.ts +76 -5
  3. package/dist/node/cli/cli.util.cjs +1 -1
  4. package/dist/node/cli/cli.util.js +1 -1
  5. package/dist/node/cli/index.cjs +1 -1
  6. package/dist/node/cli/index.js +1 -1
  7. package/dist/node/index.cjs +1 -1
  8. package/dist/node/index.js +1 -1
  9. package/dist/react/apollo-client/apollo-client.component.cjs +1 -1
  10. package/dist/react/apollo-client/apollo-client.component.js +1 -1
  11. package/dist/react/apollo-client/apollo-client.context.cjs +1 -0
  12. package/dist/react/apollo-client/apollo-client.context.d.cts +2 -0
  13. package/dist/react/apollo-client/apollo-client.context.d.ts +2 -0
  14. package/dist/react/apollo-client/apollo-client.context.js +1 -0
  15. package/dist/react/apollo-client/apollo-client.hook.cjs +1 -0
  16. package/dist/react/apollo-client/apollo-client.hook.d.cts +1 -0
  17. package/dist/react/apollo-client/apollo-client.hook.d.ts +1 -0
  18. package/dist/react/apollo-client/apollo-client.hook.js +1 -0
  19. package/dist/react/apollo-client/apollo-client.util.cjs +1 -0
  20. package/dist/react/apollo-client/apollo-client.util.css +1 -0
  21. package/dist/react/apollo-client/apollo-client.util.d.cts +1 -0
  22. package/dist/react/apollo-client/apollo-client.util.d.ts +1 -0
  23. package/dist/react/apollo-client/apollo-client.util.js +1 -0
  24. package/dist/react/apollo-client/index.cjs +1 -1
  25. package/dist/react/apollo-client/index.d.cts +12 -0
  26. package/dist/react/apollo-client/index.d.ts +12 -0
  27. package/dist/react/apollo-client/index.js +1 -1
  28. package/dist/react/index.cjs +1 -1
  29. package/dist/react/index.d.cts +12 -0
  30. package/dist/react/index.d.ts +12 -0
  31. package/dist/react/index.js +1 -1
  32. package/dist/react/userback/index.cjs +1 -0
  33. package/dist/react/userback/index.d.cts +3 -0
  34. package/dist/react/userback/index.d.ts +3 -0
  35. package/dist/react/userback/index.js +1 -0
  36. package/dist/react/userback/userback.component.cjs +1 -0
  37. package/dist/react/userback/userback.component.d.cts +1 -0
  38. package/dist/react/userback/userback.component.d.ts +1 -0
  39. package/dist/react/userback/userback.component.js +1 -0
  40. package/dist/react/userback/userback.type.cjs +1 -0
  41. package/dist/react/userback/userback.type.d.cts +2 -0
  42. package/dist/react/userback/userback.type.d.ts +2 -0
  43. package/dist/react/userback/userback.type.js +0 -0
  44. package/package.json +9 -2
@@ -4,6 +4,7 @@ import type { AggregatePaginateModel } from 'mongoose';
4
4
  import type { AggregatePaginateResult } from 'mongoose';
5
5
  import { ApolloCache } from '@apollo/client';
6
6
  import { ApolloClient } from '@apollo/client';
7
+ import { ApolloClient as ApolloClient_2 } from '@apollo/client/core/core.cjs';
7
8
  import { ApolloClientOptions } from '@apollo/client';
8
9
  import { ApolloError } from '@apollo/client';
9
10
  import type { ApolloLink } from '@apollo/client';
@@ -86,11 +87,21 @@ import type { Type } from '@nestjs/common';
86
87
  import type { UpdateQuery } from 'mongoose';
87
88
  import type { UpdateResult } from 'mongodb';
88
89
  import type { UriFunction } from '@apollo/client';
90
+ import { useApolloClient } from '@apollo/client/react/hooks/hooks.cjs';
91
+ import { useBackgroundQuery } from '@apollo/client/react/hooks/hooks.cjs';
92
+ import { useFragment } from '@apollo/client/react/hooks/hooks.cjs';
89
93
  import { useLazyQuery } from '@apollo/client/react/hooks/hooks.cjs';
94
+ import { useLoadableQuery } from '@apollo/client/react/hooks/hooks.cjs';
90
95
  import { useMutation } from '@apollo/client/react/hooks/hooks.cjs';
91
96
  import { useQuery } from '@apollo/client/react/hooks/hooks.cjs';
97
+ import { useQueryRefHandlers } from '@apollo/client/react/hooks/hooks.cjs';
98
+ import type { UserbackOptions } from '@userback/widget';
92
99
  import type { UserConfig } from 'vite';
100
+ import { useReactiveVar } from '@apollo/client/react/hooks/hooks.cjs';
101
+ import { useReadQuery } from '@apollo/client/react/hooks/hooks.cjs';
93
102
  import { useSubscription } from '@apollo/client/react/hooks/hooks.cjs';
103
+ import { useSuspenseFragment } from '@apollo/client/react/hooks/hooks.cjs';
104
+ import { useSuspenseQuery } from '@apollo/client/react/hooks/hooks.cjs';
94
105
  import { useTranslation } from 'react-i18next';
95
106
  import { useTranslations } from 'next-intl';
96
107
  import type { ValidationPipe } from '@nestjs/common';
@@ -109,10 +120,23 @@ export { ApolloClient }
109
120
  export { ApolloClient as ApolloClient_alias_1 }
110
121
  export { ApolloClient as ApolloClient_alias_2 }
111
122
 
123
+ declare const ApolloClientContext: React_2.Context<ApolloClient<NormalizedCacheObject> | null>;
124
+ export { ApolloClientContext }
125
+ export { ApolloClientContext as ApolloClientContext_alias_1 }
126
+ export { ApolloClientContext as ApolloClientContext_alias_2 }
127
+
112
128
  export { ApolloClientOptions }
113
129
  export { ApolloClientOptions as ApolloClientOptions_alias_1 }
114
130
  export { ApolloClientOptions as ApolloClientOptions_alias_2 }
115
131
 
132
+ declare function ApolloClientProvider({ client, children, }: {
133
+ client: ApolloClient<NormalizedCacheObject>;
134
+ children: React_2.ReactNode;
135
+ }): React_2.JSX.Element;
136
+ export { ApolloClientProvider }
137
+ export { ApolloClientProvider as ApolloClientProvider_alias_1 }
138
+ export { ApolloClientProvider as ApolloClientProvider_alias_2 }
139
+
116
140
  export { ApolloError }
117
141
  export { ApolloError as ApolloError_alias_1 }
118
142
  export { ApolloError as ApolloError_alias_2 }
@@ -134,7 +158,7 @@ export { ApolloErrorProvider }
134
158
  export { ApolloErrorProvider as ApolloErrorProvider_alias_1 }
135
159
  export { ApolloErrorProvider as ApolloErrorProvider_alias_2 }
136
160
 
137
- declare function ApolloProvider({ isNextJS, options, children, client: CustomClient, provider: CustomProvider, cache: CustomCache, }: I_ApolloProviderProps): React_2.JSX.Element;
161
+ declare function ApolloProvider({ isNextJS, options, children, }: I_ApolloProviderProps): React_2.JSX.Element;
138
162
  export { ApolloProvider }
139
163
  export { ApolloProvider as ApolloProvider_alias_1 }
140
164
  export { ApolloProvider as ApolloProvider_alias_2 }
@@ -1686,6 +1710,11 @@ export { generateSlug }
1686
1710
  export { generateSlug as generateSlug_alias_1 }
1687
1711
  export { generateSlug as generateSlug_alias_2 }
1688
1712
 
1713
+ declare function getClient(options?: I_ApolloOptions, isNextJS?: boolean): ApolloClient_2<NormalizedCacheObject>;
1714
+ export { getClient }
1715
+ export { getClient as getClient_alias_1 }
1716
+ export { getClient as getClient_alias_2 }
1717
+
1689
1718
  declare function getEnv(): I_Environment;
1690
1719
  export { getEnv }
1691
1720
  export { getEnv as getEnv_alias_1 }
@@ -1776,10 +1805,6 @@ export { I_ApolloOptions as I_ApolloOptions_alias_2 }
1776
1805
  declare interface I_ApolloProviderProps extends I_Children_2 {
1777
1806
  isNextJS?: boolean;
1778
1807
  options?: I_ApolloOptions;
1779
- client?: ApolloClient<NormalizedCacheObject>;
1780
- makeClient?: () => ApolloClient<NormalizedCacheObject>;
1781
- provider?: ComponentType<I_ApolloProviderProps>;
1782
- cache?: ApolloCache<NormalizedCacheObject>;
1783
1808
  }
1784
1809
  export { I_ApolloProviderProps }
1785
1810
  export { I_ApolloProviderProps as I_ApolloProviderProps_alias_1 }
@@ -2363,6 +2388,19 @@ export { I_UploadValidationConfig }
2363
2388
  export { I_UploadValidationConfig as I_UploadValidationConfig_alias_1 }
2364
2389
  export { I_UploadValidationConfig as I_UploadValidationConfig_alias_2 }
2365
2390
 
2391
+ declare interface I_UserBackOptions extends UserbackOptions {
2392
+ hide: string[];
2393
+ }
2394
+ export { I_UserBackOptions }
2395
+ export { I_UserBackOptions as I_UserBackOptions_alias_1 }
2396
+
2397
+ declare interface I_UserBackProps {
2398
+ token?: string;
2399
+ options: I_UserBackOptions;
2400
+ }
2401
+ export { I_UserBackProps }
2402
+ export { I_UserBackProps as I_UserBackProps_alias_1 }
2403
+
2366
2404
  declare interface I_VirtualNestedOptions {
2367
2405
  [key: string]: I_VirtualNestedOptions | number | string | boolean;
2368
2406
  }
@@ -3629,14 +3667,28 @@ export { upload }
3629
3667
  export { upload as upload_alias_1 }
3630
3668
  export { upload as upload_alias_2 }
3631
3669
 
3670
+ export { useApolloClient }
3671
+ export { useApolloClient as useApolloClient_alias_1 }
3672
+
3673
+ export declare function useApolloClient_alias_2(): ApolloClient<NormalizedCacheObject>;
3674
+
3632
3675
  declare function useApolloError(): I_ApolloErrorContext_2;
3633
3676
  export { useApolloError }
3634
3677
  export { useApolloError as useApolloError_alias_1 }
3635
3678
  export { useApolloError as useApolloError_alias_2 }
3636
3679
 
3680
+ export { useBackgroundQuery }
3681
+ export { useBackgroundQuery as useBackgroundQuery_alias_1 }
3682
+
3683
+ export { useFragment }
3684
+ export { useFragment as useFragment_alias_1 }
3685
+
3637
3686
  export { useLazyQuery }
3638
3687
  export { useLazyQuery as useLazyQuery_alias_1 }
3639
3688
 
3689
+ export { useLoadableQuery }
3690
+ export { useLoadableQuery as useLoadableQuery_alias_1 }
3691
+
3640
3692
  declare function useLoading(): I_LoadingContext_2;
3641
3693
  export { useLoading }
3642
3694
  export { useLoading as useLoading_alias_1 }
@@ -3653,6 +3705,19 @@ export { useNextIntl as useNextIntl_alias_2 }
3653
3705
  export { useQuery }
3654
3706
  export { useQuery as useQuery_alias_1 }
3655
3707
 
3708
+ export { useQueryRefHandlers }
3709
+ export { useQueryRefHandlers as useQueryRefHandlers_alias_1 }
3710
+
3711
+ declare function Userback({ token, options }: I_UserBackProps): null;
3712
+ export { Userback }
3713
+ export { Userback as Userback_alias_1 }
3714
+
3715
+ export { useReactiveVar }
3716
+ export { useReactiveVar as useReactiveVar_alias_1 }
3717
+
3718
+ export { useReadQuery }
3719
+ export { useReadQuery as useReadQuery_alias_1 }
3720
+
3656
3721
  declare function useStorage<T>(key: string, initialValue?: T, serializer?: I_Serializer_2<T>): {
3657
3722
  value: T | undefined;
3658
3723
  set: (newValue: T | ((val: T | undefined) => T)) => void;
@@ -3665,6 +3730,12 @@ export { useStorage as useStorage_alias_2 }
3665
3730
  export { useSubscription }
3666
3731
  export { useSubscription as useSubscription_alias_1 }
3667
3732
 
3733
+ export { useSuspenseFragment }
3734
+ export { useSuspenseFragment as useSuspenseFragment_alias_1 }
3735
+
3736
+ export { useSuspenseQuery }
3737
+ export { useSuspenseQuery as useSuspenseQuery_alias_1 }
3738
+
3668
3739
  declare const useTranslateI18next: typeof useTranslation;
3669
3740
  export { useTranslateI18next }
3670
3741
  export { useTranslateI18next as useTranslateI18next_alias_1 }
@@ -4,6 +4,7 @@ import type { AggregatePaginateModel } from 'mongoose';
4
4
  import type { AggregatePaginateResult } from 'mongoose';
5
5
  import { ApolloCache } from '@apollo/client';
6
6
  import { ApolloClient } from '@apollo/client';
7
+ import { ApolloClient as ApolloClient_2 } from '@apollo/client/core/core.cjs';
7
8
  import { ApolloClientOptions } from '@apollo/client';
8
9
  import { ApolloError } from '@apollo/client';
9
10
  import type { ApolloLink } from '@apollo/client';
@@ -86,11 +87,21 @@ import type { Type } from '@nestjs/common';
86
87
  import type { UpdateQuery } from 'mongoose';
87
88
  import type { UpdateResult } from 'mongodb';
88
89
  import type { UriFunction } from '@apollo/client';
90
+ import { useApolloClient } from '@apollo/client/react/hooks/hooks.cjs';
91
+ import { useBackgroundQuery } from '@apollo/client/react/hooks/hooks.cjs';
92
+ import { useFragment } from '@apollo/client/react/hooks/hooks.cjs';
89
93
  import { useLazyQuery } from '@apollo/client/react/hooks/hooks.cjs';
94
+ import { useLoadableQuery } from '@apollo/client/react/hooks/hooks.cjs';
90
95
  import { useMutation } from '@apollo/client/react/hooks/hooks.cjs';
91
96
  import { useQuery } from '@apollo/client/react/hooks/hooks.cjs';
97
+ import { useQueryRefHandlers } from '@apollo/client/react/hooks/hooks.cjs';
98
+ import type { UserbackOptions } from '@userback/widget';
92
99
  import type { UserConfig } from 'vite';
100
+ import { useReactiveVar } from '@apollo/client/react/hooks/hooks.cjs';
101
+ import { useReadQuery } from '@apollo/client/react/hooks/hooks.cjs';
93
102
  import { useSubscription } from '@apollo/client/react/hooks/hooks.cjs';
103
+ import { useSuspenseFragment } from '@apollo/client/react/hooks/hooks.cjs';
104
+ import { useSuspenseQuery } from '@apollo/client/react/hooks/hooks.cjs';
94
105
  import { useTranslation } from 'react-i18next';
95
106
  import { useTranslations } from 'next-intl';
96
107
  import type { ValidationPipe } from '@nestjs/common';
@@ -109,10 +120,23 @@ export { ApolloClient }
109
120
  export { ApolloClient as ApolloClient_alias_1 }
110
121
  export { ApolloClient as ApolloClient_alias_2 }
111
122
 
123
+ declare const ApolloClientContext: React_2.Context<ApolloClient<NormalizedCacheObject> | null>;
124
+ export { ApolloClientContext }
125
+ export { ApolloClientContext as ApolloClientContext_alias_1 }
126
+ export { ApolloClientContext as ApolloClientContext_alias_2 }
127
+
112
128
  export { ApolloClientOptions }
113
129
  export { ApolloClientOptions as ApolloClientOptions_alias_1 }
114
130
  export { ApolloClientOptions as ApolloClientOptions_alias_2 }
115
131
 
132
+ declare function ApolloClientProvider({ client, children, }: {
133
+ client: ApolloClient<NormalizedCacheObject>;
134
+ children: React_2.ReactNode;
135
+ }): React_2.JSX.Element;
136
+ export { ApolloClientProvider }
137
+ export { ApolloClientProvider as ApolloClientProvider_alias_1 }
138
+ export { ApolloClientProvider as ApolloClientProvider_alias_2 }
139
+
116
140
  export { ApolloError }
117
141
  export { ApolloError as ApolloError_alias_1 }
118
142
  export { ApolloError as ApolloError_alias_2 }
@@ -134,7 +158,7 @@ export { ApolloErrorProvider }
134
158
  export { ApolloErrorProvider as ApolloErrorProvider_alias_1 }
135
159
  export { ApolloErrorProvider as ApolloErrorProvider_alias_2 }
136
160
 
137
- declare function ApolloProvider({ isNextJS, options, children, client: CustomClient, provider: CustomProvider, cache: CustomCache, }: I_ApolloProviderProps): React_2.JSX.Element;
161
+ declare function ApolloProvider({ isNextJS, options, children, }: I_ApolloProviderProps): React_2.JSX.Element;
138
162
  export { ApolloProvider }
139
163
  export { ApolloProvider as ApolloProvider_alias_1 }
140
164
  export { ApolloProvider as ApolloProvider_alias_2 }
@@ -1686,6 +1710,11 @@ export { generateSlug }
1686
1710
  export { generateSlug as generateSlug_alias_1 }
1687
1711
  export { generateSlug as generateSlug_alias_2 }
1688
1712
 
1713
+ declare function getClient(options?: I_ApolloOptions, isNextJS?: boolean): ApolloClient_2<NormalizedCacheObject>;
1714
+ export { getClient }
1715
+ export { getClient as getClient_alias_1 }
1716
+ export { getClient as getClient_alias_2 }
1717
+
1689
1718
  declare function getEnv(): I_Environment;
1690
1719
  export { getEnv }
1691
1720
  export { getEnv as getEnv_alias_1 }
@@ -1776,10 +1805,6 @@ export { I_ApolloOptions as I_ApolloOptions_alias_2 }
1776
1805
  declare interface I_ApolloProviderProps extends I_Children_2 {
1777
1806
  isNextJS?: boolean;
1778
1807
  options?: I_ApolloOptions;
1779
- client?: ApolloClient<NormalizedCacheObject>;
1780
- makeClient?: () => ApolloClient<NormalizedCacheObject>;
1781
- provider?: ComponentType<I_ApolloProviderProps>;
1782
- cache?: ApolloCache<NormalizedCacheObject>;
1783
1808
  }
1784
1809
  export { I_ApolloProviderProps }
1785
1810
  export { I_ApolloProviderProps as I_ApolloProviderProps_alias_1 }
@@ -2363,6 +2388,19 @@ export { I_UploadValidationConfig }
2363
2388
  export { I_UploadValidationConfig as I_UploadValidationConfig_alias_1 }
2364
2389
  export { I_UploadValidationConfig as I_UploadValidationConfig_alias_2 }
2365
2390
 
2391
+ declare interface I_UserBackOptions extends UserbackOptions {
2392
+ hide: string[];
2393
+ }
2394
+ export { I_UserBackOptions }
2395
+ export { I_UserBackOptions as I_UserBackOptions_alias_1 }
2396
+
2397
+ declare interface I_UserBackProps {
2398
+ token?: string;
2399
+ options: I_UserBackOptions;
2400
+ }
2401
+ export { I_UserBackProps }
2402
+ export { I_UserBackProps as I_UserBackProps_alias_1 }
2403
+
2366
2404
  declare interface I_VirtualNestedOptions {
2367
2405
  [key: string]: I_VirtualNestedOptions | number | string | boolean;
2368
2406
  }
@@ -3629,14 +3667,28 @@ export { upload }
3629
3667
  export { upload as upload_alias_1 }
3630
3668
  export { upload as upload_alias_2 }
3631
3669
 
3670
+ export { useApolloClient }
3671
+ export { useApolloClient as useApolloClient_alias_1 }
3672
+
3673
+ export declare function useApolloClient_alias_2(): ApolloClient<NormalizedCacheObject>;
3674
+
3632
3675
  declare function useApolloError(): I_ApolloErrorContext_2;
3633
3676
  export { useApolloError }
3634
3677
  export { useApolloError as useApolloError_alias_1 }
3635
3678
  export { useApolloError as useApolloError_alias_2 }
3636
3679
 
3680
+ export { useBackgroundQuery }
3681
+ export { useBackgroundQuery as useBackgroundQuery_alias_1 }
3682
+
3683
+ export { useFragment }
3684
+ export { useFragment as useFragment_alias_1 }
3685
+
3637
3686
  export { useLazyQuery }
3638
3687
  export { useLazyQuery as useLazyQuery_alias_1 }
3639
3688
 
3689
+ export { useLoadableQuery }
3690
+ export { useLoadableQuery as useLoadableQuery_alias_1 }
3691
+
3640
3692
  declare function useLoading(): I_LoadingContext_2;
3641
3693
  export { useLoading }
3642
3694
  export { useLoading as useLoading_alias_1 }
@@ -3653,6 +3705,19 @@ export { useNextIntl as useNextIntl_alias_2 }
3653
3705
  export { useQuery }
3654
3706
  export { useQuery as useQuery_alias_1 }
3655
3707
 
3708
+ export { useQueryRefHandlers }
3709
+ export { useQueryRefHandlers as useQueryRefHandlers_alias_1 }
3710
+
3711
+ declare function Userback({ token, options }: I_UserBackProps): null;
3712
+ export { Userback }
3713
+ export { Userback as Userback_alias_1 }
3714
+
3715
+ export { useReactiveVar }
3716
+ export { useReactiveVar as useReactiveVar_alias_1 }
3717
+
3718
+ export { useReadQuery }
3719
+ export { useReadQuery as useReadQuery_alias_1 }
3720
+
3656
3721
  declare function useStorage<T>(key: string, initialValue?: T, serializer?: I_Serializer_2<T>): {
3657
3722
  value: T | undefined;
3658
3723
  set: (newValue: T | ((val: T | undefined) => T)) => void;
@@ -3665,6 +3730,12 @@ export { useStorage as useStorage_alias_2 }
3665
3730
  export { useSubscription }
3666
3731
  export { useSubscription as useSubscription_alias_1 }
3667
3732
 
3733
+ export { useSuspenseFragment }
3734
+ export { useSuspenseFragment as useSuspenseFragment_alias_1 }
3735
+
3736
+ export { useSuspenseQuery }
3737
+ export { useSuspenseQuery as useSuspenseQuery_alias_1 }
3738
+
3668
3739
  declare const useTranslateI18next: typeof useTranslation;
3669
3740
  export { useTranslateI18next }
3670
3741
  export { useTranslateI18next as useTranslateI18next_alias_1 }
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var a=e[s](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function a(e){r(o,i,s,a,c,"next",e)}function c(e){r(o,i,s,a,c,"throw",e)}a(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,a;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;a=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw a}}return r}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){s(e,t,n[t])})}return e}function p(e,n){return t(e)||c(e,n)||m(e,n)||u()}function E(e){return n(e)||a(e)||m(e)||l()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function g(e,t){var n,r,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(s=0)),s)try{if(n=1,r&&(i=a[0]&2?r["return"]:a[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;if(r=0,i)a=[a[0]&2,i.value];switch(a[0]){case 0:case 1:i=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;r=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(a[0]===6&&s.label<i[1]){s.label=i[1];i=a;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(a);break}if(i[2])s.ops.pop();s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e];r=0}finally{n=i=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var D=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var C=function(e,t){return h(e,"name",{value:t,configurable:!0})};var I=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var a=function(){var i=u.value;!O.call(e,i)&&i!==n&&h(e,i,{get:function(){return t[i]},enumerable:!(r=v(t,i))||r.enumerable})};for(var c=S(t)[Symbol.iterator](),u;!(i=(u=c.next()).done);i=true)a()}catch(e){s=true;o=e}finally{try{if(!i&&c.return!=null){c.return()}}finally{if(s){throw o}}}return e};var N=function(e,t,n){return n=e!=null?y(D(e)):{},I(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)};var T=N(require("process"),1),x=require("yargs/helpers"),A=N(require("yargs/yargs"),1);var _={name:"@cyberskill/shared",type:"module",version:"1.192.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./config":{types:"./dist/config/index.d.ts",import:"./dist/config/index.js",require:"./dist/config/index.cjs"},"./config/commitlint":{types:"./dist/config/commitlint/index.d.ts",import:"./dist/config/commitlint/index.js",require:"./dist/config/commitlint/index.cjs"},"./config/env":{types:"./dist/config/env/index.d.ts",import:"./dist/config/env/index.js",require:"./dist/config/env/index.cjs"},"./config/eslint":{types:"./dist/config/eslint/index.d.ts",import:"./dist/config/eslint/index.js",require:"./dist/config/eslint/index.cjs"},"./config/graphql-codegen":{types:"./dist/config/graphql-codegen/index.d.ts",import:"./dist/config/graphql-codegen/index.js",require:"./dist/config/graphql-codegen/index.cjs"},"./config/lint-staged":{types:"./dist/config/lint-staged/index.d.ts",import:"./dist/config/lint-staged/index.js",require:"./dist/config/lint-staged/index.cjs"},"./config/vitest":{types:"./dist/config/vitest/index.d.ts",import:"./dist/config/vitest/index.js",require:"./dist/config/vitest/index.cjs"},"./constant":{types:"./dist/constant/index.d.ts",import:"./dist/constant/index.js",require:"./dist/constant/index.cjs"},"./node":{types:"./dist/node/index.d.ts",import:"./dist/node/index.js",require:"./dist/node/index.cjs"},"./node/apollo-server":{types:"./dist/node/apollo-server/index.d.ts",import:"./dist/node/apollo-server/index.js",require:"./dist/node/apollo-server/index.cjs"},"./node/cli":{types:"./dist/node/cli/index.d.ts",import:"./dist/node/cli/index.js",require:"./dist/node/cli/index.cjs"},"./node/command":{types:"./dist/node/command/index.d.ts",import:"./dist/node/command/index.js",require:"./dist/node/command/index.cjs"},"./node/express":{types:"./dist/node/express/index.d.ts",import:"./dist/node/express/index.js",require:"./dist/node/express/index.cjs"},"./node/fs":{types:"./dist/node/fs/index.d.ts",import:"./dist/node/fs/index.js",require:"./dist/node/fs/index.cjs"},"./node/log":{types:"./dist/node/log/index.d.ts",import:"./dist/node/log/index.js",require:"./dist/node/log/index.cjs"},"./node/mongo":{types:"./dist/node/mongo/index.d.ts",import:"./dist/node/mongo/index.js",require:"./dist/node/mongo/index.cjs"},"./node/package":{types:"./dist/node/package/index.d.ts",import:"./dist/node/package/index.js",require:"./dist/node/package/index.cjs"},"./node/path":{types:"./dist/node/path/index.d.ts",import:"./dist/node/path/index.js",require:"./dist/node/path/index.cjs"},"./node/storage":{types:"./dist/node/storage/index.d.ts",import:"./dist/node/storage/index.js",require:"./dist/node/storage/index.cjs"},"./node/upload":{types:"./dist/node/upload/index.d.ts",import:"./dist/node/upload/index.js",require:"./dist/node/upload/index.cjs"},"./node/ws":{types:"./dist/node/ws/index.d.ts",import:"./dist/node/ws/index.js",require:"./dist/node/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/index.css":{import:"./dist/react/index.css",require:"./dist/react/index.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./util":{types:"./dist/util/index.d.ts",import:"./dist/util/index.js",require:"./dist/util/index.cjs"}},typesVersions:{"*":{config:["dist/config/index.d.ts"],constant:["dist/constant/index.d.ts"],node:["dist/node/index.d.ts"],react:["dist/react/index.d.ts"],typescript:["dist/typescript/index.d.ts"],util:["dist/util/index.d.ts"]}},bin:{cyberskill:"dist/node/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",commitlint:"tsx src/node/cli/index.ts commitlint",dev:"tsup --watch",inspect:"tsx src/node/cli/index.ts inspect",lint:"tsx src/node/cli/index.ts lint","lint:fix":"tsx src/node/cli/index.ts lint:fix","lint:inspect":"tsx src/node/cli/index.ts lint:inspect",ready:"tsx src/node/cli/index.ts ready",reset:"tsx src/node/cli/index.ts reset","test:e2e":"tsx src/node/cli/index.ts test:e2e","test:unit":"tsx src/node/cli/index.ts test:unit"},dependencies:{"@antfu/eslint-config":"4.16.1","@apollo/client":"3.13.8","@apollo/server":"4.12.2","@dotenvx/dotenvx":"1.45.1","@eddeee888/gcg-typescript-resolver-files":"0.12.1","@graphql-codegen/cli":"5.0.7","@graphql-codegen/client-preset":"4.8.3","@nestjs/common":"11.1.3","@nestjs/core":"11.1.3","@vitejs/plugin-react-swc":"3.10.2","body-parser":"2.2.0",chalk:"5.4.1",clsx:"2.1.1",compression:"1.8.0",consola:"3.4.2","cookie-parser":"1.4.7",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0",envalid:"8.0.0",express:"4.21.2","express-session":"1.18.1","express-useragent":"1.0.15","fs-extra":"11.3.0",globals:"16.2.0",graphql:"16.11.0","graphql-ws":"6.0.5",i18next:"25.2.1",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3",mongodb:"6.17.0",mongoose:"8.16.1","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.1","next-intl":"4.3.1","node-fetch":"3.3.2","node-persist":"4.0.4",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.5.3",sass:"1.89.2",slugify:"1.6.6",unorm:"1.6.0",uuid:"11.1.0",vite:"7.0.0",ws:"8.18.2",yargs:"18.0.0"},devDependencies:{"@commitlint/cli":"19.8.1","@commitlint/config-conventional":"19.8.1","@eslint-react/eslint-plugin":"1.52.2","@eslint/config-inspector":"1.1.0","@microsoft/api-extractor":"7.52.8","@next/eslint-plugin-next":"15.3.4","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@types/body-parser":"1.19.6","@types/compression":"1.8.1","@types/cookie-parser":"1.4.9","@types/cors":"2.8.19","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.2","@types/express-useragent":"1.0.5","@types/fs-extra":"11.0.4","@types/migrate-mongo":"10.0.5","@types/node":"24.0.7","@types/node-persist":"3.1.8","@types/react":"19.1.8","@types/react-dom":"19.1.6","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33","@vitest/browser":"3.2.4","esbuild-sass-plugin":"3.3.1",eslint:"9.30.0","eslint-config-next":"15.3.4","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.20","lint-staged":"16.1.2","node-modules-inspector":"1.0.0",playwright:"1.53.1",postcss:"8.5.6","postcss-modules":"6.0.1","simple-git-hooks":"2.13.0",tsup:"8.5.0",tsx:"4.20.3",typescript:"5.8.3",vitest:"3.2.4"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"}};var R=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var b=require("child_process"),G=N(require("process"),1),P=N(require("util"),1);var M=".cyberskill-storage";var j=N(require("@dotenvx/dotenvx"),1),w=require("envalid"),L=N(require("os"),1),U=N(require("path"),1),k=N(require("process"),1);var q=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var F=!1;function V(){k.default.env.NODE_ENV!==q.PRODUCTION&&!F&&(j.default.config(),F=!0)}C(V,"loadEnvFile");function Y(){V();var e=(0,w.cleanEnv)(k.default.env,{CWD:(0,w.str)({default:k.default.cwd()}),DEBUG:(0,w.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,w.str)({default:U.default.join(L.default.homedir(),M)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}C(Y,"getEnv");var B=function(e){return e.Error="error",e.Warning="warning",e}({});var K=N(require("chalk"),1),H=N(require("consola"),1),Q=require("graphql");var W={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var J=Y();J.DEBUG||(H.default.level=4);function $(e){var t=K.default[e];return typeof t=="function"?t:K.default.green}C($,"chalkKeyword");var z={silent:H.default.silent,level:H.default.level,fatal:H.default.fatal,error:H.default.error,warn:H.default.warn,log:H.default.log,info:H.default.info,success:H.default.success,ready:H.default.ready,start:H.default.start,box:H.default.box,debug:H.default.debug,trace:H.default.trace,verbose:H.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){H.default.box(K.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;H.default.log("".concat(K.default.gray("File:")," ").concat(K.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&H.default.log(" ".concat($(n)("Rule:")," ").concat(i)),H.default.log(" ".concat($(n)("Message:")," ").concat(s))}),H.default.box($(n)("".concat(e," : ").concat(t.length))),H.default.log(K.default.gray("─".repeat(40)))}};function X(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,i=r===void 0?!0:r,s=n.returnValue,a=n.callback,c=o(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return i&&z.error(c.message),a&&typeof a=="function"&&a(c),s||{success:!1,message:c.message,code:W.INTERNAL_SERVER_ERROR.CODE}}C(X,"catchError");var Z=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var ee=N(require("node-fetch"),1);var et=N(require("fs-extra"),1),en=N(require("path"),1);var er=et.default,ei=er.lstatSync,es=er.readdirSync,eo=er.mkdirSync,ea=er.readFileSync,ec=er.unlinkSync,eu=er.statSync,el=er.createWriteStream,ed=et.default.readJsonSync;function ep(e,t,n){et.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(ep,"writeFileSync");function eE(e,t,n){et.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(eE,"appendFileSync");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return et.default.pathExistsSync(e)})}C(ef,"pathExistsSync");function em(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){ef(e)&&et.default.removeSync(e)})}C(em,"removeSync");var eg=N(require("fs-extra"),1);var ey=N(require("path"),1);var eh=Y(),ev=ey.default,eS=ev.dirname;function eD(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ev).resolve.apply(r,[eh.CWD].concat(E(t)))}C(eD,"resolveWorkingPath");function eO(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ev).join.apply(r,E(t))}C(eO,"join");var eC=Y(),eI=eC.CWD,eN="@cyberskill/shared",eT="node_modules",ex="dist",eA="public",e_="package.json",eR="package-lock.json",eb="tsconfig.json",eG=".gitignore",eP=".simple-git-hooks.json",eM="pnpm-lock.yaml",ej=".git/hooks/",ew=".git/COMMIT_EDITMSG",eL=".migrate-mongo.config.js",eU=function(){var e=eg.default.readJsonSync(eD(e_)).name===eN?eI:eO(eI,eT,eN);return eO(e,ex)}(),ek="cyberskill",eq="src/node/cli/index.ts",eF="eslint",eV="eslint",eY="vitest";var eB="vitest",eK="@commitlint/cli",eH="@commitlint/config-conventional",eQ="commitlint",eW="lint-staged",eJ="lint-staged",e$="typescript",ez="tsc",eX="tsx",eZ="git",e0="pnpm",e1="pnpm exec",e2="simple-git-hooks",e4="simple-git-hooks",e3="@eslint/config-inspector",e5="eslint-config-inspector",e8="node-modules-inspector",e6="node-modules-inspector",e7="migrate-mongo",e9="./node_modules/migrate-mongo/bin/migrate-mongo",te={CYBERSKILL_DIRECTORY:eU,WORKING_DIRECTORY:eI,PUBLIC_DIRECTORY:eD(eA),TS_CONFIG:eD(eb),GIT_IGNORE:eD(eG),GIT_HOOK:eD(ej),GIT_COMMIT_MSG:eD(ew),SIMPLE_GIT_HOOKS_JSON:eD(eP),PACKAGE_JSON:eD(e_),PACKAGE_LOCK_JSON:eD(eR),PNPM_LOCK_YAML:eD(eM),NODE_MODULES:eD(eT),MIGRATE_MONGO_CONFIG:eD(eL),LINT_STAGED_CONFIG:eD("".concat(eU,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:eD("".concat(eU,"/config/commitlint/index.js")),VITEST_UNIT_CONFIG:eD("".concat(eU,"/config/vitest/vitest.unit.js")),VITEST_UNIT_SETUP_CONFIG:eD("".concat(eU,"/config/vitest/vitest.unit.setup.js")),VITEST_E2E_CONFIG:eD("".concat(eU,"/config/vitest/vitest.e2e.js"))};function tt(e){var t=e.isCurrentProject;return d({"pre-commit":eJ,"commit-msg":eQ},t&&{"pre-push":tC("".concat(eZ," pull"))})}C(tt,"createGitHooksConfig");function tn(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:switch(t){case R.CLI:return[3,1];case R.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,tu(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tN(tC("".concat(e1," ").concat(r))))];case 4:return[2,tN(tC(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}C(tn,"buildCommand");var tr={simpleGitHooks:tn({type:R.CLI,packages:[{name:e2,type:Z.DEV_DEPENDENCY}],command:e4}),eslintInspect:tn({type:R.CLI,packages:[{name:e3,type:Z.DEV_DEPENDENCY}],command:e5}),nodeModulesInspect:tn({type:R.CLI,packages:[{name:e8,type:Z.DEV_DEPENDENCY}],command:e6}),eslintCheck:tn({type:R.CLI,packages:[{name:eF,type:Z.DEV_DEPENDENCY}],command:"".concat(eV," ").concat(te.WORKING_DIRECTORY," --no-cache")}),eslintFix:tn({type:R.CLI,packages:[{name:eF,type:Z.DEV_DEPENDENCY}],command:"".concat(eV," ").concat(te.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:tn({type:R.CLI,packages:[{name:e$,type:Z.DEV_DEPENDENCY}],command:"".concat(ez," -p ").concat(te.TS_CONFIG," --noEmit")}),testUnit:tn({type:R.CLI,packages:[{name:eY,type:Z.DEV_DEPENDENCY}],command:"".concat(eB," --config ").concat(te.VITEST_UNIT_CONFIG)}),testE2e:tn({type:R.CLI,packages:[{name:eY,type:Z.DEV_DEPENDENCY}],command:"".concat(eB," --config ").concat(te.VITEST_E2E_CONFIG)}),mongoMigrateCreate:C(function(e){return tn({type:R.CLI,packages:[{name:eX,type:Z.DEPENDENCY},{name:e7,type:Z.DEPENDENCY}],command:"".concat(eX," ").concat(e9," create ").concat(e," -f ").concat(te.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:tn({type:R.CLI,packages:[{name:eX,type:Z.DEPENDENCY},{name:e7,type:Z.DEPENDENCY}],command:"".concat(eX," ").concat(e9," up -f ").concat(te.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:tn({type:R.CLI,packages:[{name:eX,type:Z.DEPENDENCY},{name:e7,type:Z.DEPENDENCY}],command:"".concat(eX," ").concat(e9," down -f ").concat(te.MIGRATE_MONGO_CONFIG)}),commitLint:tn({type:R.CLI,packages:[{name:eK,type:Z.DEV_DEPENDENCY},{name:eH,type:Z.DEV_DEPENDENCY}],command:"".concat(eQ," --edit ").concat(te.GIT_COMMIT_MSG," --config ").concat(te.COMMITLINT_CONFIG)}),lintStaged:tn({type:R.CLI,packages:[{name:eW,type:Z.DEV_DEPENDENCY}],command:"".concat(eJ," --config ").concat(te.LINT_STAGED_CONFIG)}),configureGitHook:tn({type:R.STRING,command:"".concat(eZ," config core.hooksPath ").concat(te.GIT_HOOK)}),build:tn({type:R.STRING,command:"".concat(e0," run --if-present build")}),pnpmInstallStandard:tn({type:R.STRING,command:"".concat(e0," install --ignore-scripts")}),pnpmInstallLegacy:tn({type:R.STRING,command:"".concat(e0," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:tn({type:R.STRING,command:"".concat(e0," install --ignore-scripts --force")}),pnpmPruneStore:tn({type:R.STRING,command:"".concat(e0," store prune")}),pnpmCleanCache:tn({type:R.STRING,command:"".concat(e0," cache delete")})};var ti=Y();function ts(e){return i(function(){var t,n,r,i;return g(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,(0,ee.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:i=s.sent();return[2,X(i)];case 4:return[2]}})})()}C(ts,"getLatestPackageVersion");function to(e){return i(function(){var t,n,r,i,s,o,a,c,u,l,d,p,E,f,m,y,h,v,S,D,O,C,I,N;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,2,,3]);if(!e){if(ef(te.PACKAGE_JSON)){t=ed(te.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,i=t.version,s=i===void 0?"":i;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:te.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!ef(te.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];o=ed(te.PACKAGE_JSON),a=o.name,c=o.version,u=c===void 0?"":c,l=o.dependencies,d=l===void 0?{}:l,p=o.devDependencies,E=p===void 0?{}:p;if(e.name===a)return[2,{success:!0,result:{name:a,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:te.PACKAGE_JSON,file:o}}];f=e.name in d,m=e.name in E;return[4,ts(e.name)];case 1:y=g.sent();if(!y.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];if(!f&&!m)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];S=(v=(h=d[e.name])!==null&&h!==void 0?h:E[e.name])!==null&&v!==void 0?v:"",D=eO(ti.CWD,eT,e.name,e_);if(!ef(D))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];O=ed(D),C=O.version,I=C===void 0?"":C;return[2,S!==I?{success:!0,result:{name:e.name,currentVersion:I||S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:D,file:O}}:{success:!0,result:{name:e.name,currentVersion:S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:S===y.result,isDependency:f,isDevDependency:m,installedPath:D,file:O}}];case 2:N=g.sent();return[2,X(N)];case 3:return[2]}})})()}C(to,"getPackage");function ta(e){return i(function(){var t,n,r,i,s;return g(this,function(o){try{;r=ed(te.PACKAGE_JSON),i=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?i[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),ep(te.PACKAGE_JSON,JSON.stringify(r,null,4)),z.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){X(e)}return[2]})})()}C(ta,"updatePackage");function tc(){return i(function(){var e,t,n,r,i,s,o,a,c,u,l,d,p;return g(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:C(function(){return tr.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return tr.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return tr.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);i=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,a=o.command,c=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,a()];case 4:u=E.sent();return[4,tx("".concat(c," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();X(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=E.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:p=E.sent();X(p);return[3,13];case 13:return[2]}})})()}C(tc,"installDependencies");function tu(e,t){return i(function(){var n,r,i,s,o,a,c,u,l,d,p,f,m,y,h,v,S;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!ef(te.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(to))];case 1:i=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=i.filter(function(e){return!e.isInstalled}),o=i.filter(function(e){return!e.isUpToDate}),a=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=a).push.apply(n,E(s.map(ta))),(t===null||t===void 0?void 0:t.update)&&o.length>0&&(r=a).push.apply(r,E(o.map(ta)));c=a.length>0;if(!c)return[3,6];return[4,Promise.all(a)];case 2:g.sent();return[4,tc()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,tr.eslintFix()];case 4:return[4,tx.apply(void 0,u.concat([g.sent()]))];case 5:c=g.sent();g.label=6;case 6:c;d=true,p=false,f=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);m=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(d=(y=m.next()).done))return[3,11];h=y.value;return[4,h()];case 9:g.sent();g.label=10;case 10:d=true;return[3,8];case 11:return[3,14];case 12:v=g.sent();p=true;f=v;return[3,14];case 13:try{if(!d&&m.return!=null){m.return()}}finally{if(p){throw f}}return[7];case 14:return[3,16];case 15:S=g.sent();X(S);return[3,16];case 16:return[2]}})})()}C(tu,"setupPackages");var tl=N(require("node-persist"),1);var td=Y();function tp(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=tl.default.defaultInstance;if(e)return[3,2];return[4,tl.default.init({dir:td.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}C(tp,"initNodePersist");var tE={get:function e(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tp()];case 1:r.sent();return[4,tl.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,X(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tp()];case 1:r.sent();return[4,tl.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();X(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tp()];case 1:n.sent();return[4,tl.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tp()];case 1:n.sent();return[4,tl.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(z.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,X(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return g(this,function(t){try{return[2,"".concat(td.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,X(e,{returnValue:null})]}return[2]})})()}};var tf=Y(),tm=P.promisify(b.exec);function tg(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,to()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}C(tg,"getPackageName");function ty(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tg()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,tE.set(t,e)];case 3:r.sent(),setTimeout(function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:return[4,tE.getLogLink(t)];case 1:e=n.sent();e&&z.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();X(n);return[3,5];case 5:return[2]}})})()}C(ty,"saveErrorListToStorage");function th(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tg()];case 1:e=r.sent();return[4,tE.get(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:[]];case 3:n=r.sent();return[2,X(n,{returnValue:[]})];case 4:return[2]}})})()}C(th,"getStoredErrorLists");function tv(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tg()];case 1:e=n.sent();return[4,tE.remove(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()}C(tv,"clearAllErrorLists");function tS(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=i.exec(e)||[],E=s.exec(e)||[],f=o.exec(e)||[];var m,g,y,h,v,S;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===B.Error?B.Error:B.Warning,message:(m=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:"",rule:(g=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(y=E===null||E===void 0?void 0:E[1])!==null&&y!==void 0?y:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===B.Error?B.Error:B.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:"commitlint",type:B.Error,message:(v=f===null||f===void 0?void 0:(l=f[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(S=f===null||f===void 0?void 0:(d=f[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&ty(t),tf.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}C(tS,"parseTextErrors");function tD(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,i=e.line,s=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?B.Error:B.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:a})})}),n.length&&ty(n)}catch(t){tS(e)}}C(tD,"parseCommandOutput");function tO(e){return i(function(e){var t,n,r,i,s,o,a,c,u;var l=arguments;return g(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tD;n=new AbortController;G.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),G.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tm(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&z.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}C(tO,"executeCommand");function tC(e){return{raw:!0,cmd:e}}C(tC,"rawCommand");function tI(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e1," ").concat(eX," ").concat(eq," ").concat(e):"".concat(e1," ").concat(ek," ").concat(e)}C(tI,"formatCLI");function tN(e,t){return typeof e=="function"?tI(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tI(e,t):e}C(tN,"formatCommand");function tT(e){return i(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,to({name:eN})];case 1:t=i.sent();if(t.success){n={isCurrentProject:t.result.isCurrentProject},r=typeof e=="function"?e(n):e;return[2,Object.fromEntries(Object.entries(r).map(function(e){var t=p(e,2),r=t[0],i=t[1];return[r,tN(i,n)]}))]}return[2]}})})()}C(tT,"resolveCommands");function tx(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),tf.DEBUG&&z.info("→ ".concat(t));return[4,tO(t)];case 1:r.sent(),z.success("".concat(e," done."));return[3,3];case 2:n=r.sent();X(n);return[3,3];case 3:return[2]}})})()}C(tx,"runCommand");function tA(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:if(!ef(te.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,tr.typescriptCheck()];case 1:return[4,tx.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=z.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}C(tA,"checkTypescript");function t_(){return i(function(){var e,t,n,r;var i=arguments;return g(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,tr.eslintFix()];case 1:return[4,tx.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,tr.eslintCheck()];case 4:return[4,tx.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})}).apply(this,arguments)}C(t_,"checkEslint");function tR(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";z.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}C(tR,"printIssues");function tb(){return i(function(){return g(this,function(e){setTimeout(function(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:return[4,th()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===B.Error}),n=e.filter(function(e){return e.type===B.Warning});!t.length&&!n.length?z.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tR("Warnings",n),tR("Errors",t),(t.length>0||n.length>0)&&T.default.exit(1));return[2]}})})()},0);return[2]})})()}C(tb,"showCheckResult");function tG(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tv()];case 1:i.sent();return[4,to({name:eN})];case 2:e=i.sent();if(!e.success){z.error("Failed to retrieve package information. Aborting lint-staged.");return[2]}t=e.result.isCurrentProject;if(!t)return[3,5];n=["Building package: ".concat(eN)];return[4,tr.build()];case 3:return[4,tx.apply(void 0,n.concat([i.sent()]))];case 4:t=i.sent();i.label=5;case 5:t;r=["Executing lint-staged"];return[4,tr.lintStaged()];case 6:return[4,tx.apply(void 0,r.concat([i.sent()]))];case 7:i.sent(),tb();return[2]}})})()}C(tG,"lintStaged");function tP(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,tr.eslintInspect()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tP,"inspectLint");function tM(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tv()];case 1:e.sent();return[4,Promise.all([tA(),t_()])];case 2:e.sent(),tb();return[2]}})})()}C(tM,"lintCheck");function tj(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tv()];case 1:e.sent();return[4,Promise.all([tA(),t_(!0)])];case 2:e.sent(),tb();return[2]}})})()}C(tj,"lintFix");function tw(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tv()];case 1:t.sent();e=["Validating commit message"];return[4,tr.commitLint()];case 2:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tb();return[2]}})})()}C(tw,"commitLint");function tL(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,tr.configureGitHook()];case 1:return[4,tx.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),em(te.GIT_HOOK);return[4,tT(tt)];case 3:t=i.sent();ep(te.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eP,"\n");ef(te.GIT_IGNORE)?ea(te.GIT_IGNORE,"utf-8").split("\n").includes(eP)||eE(te.GIT_IGNORE,n):ep(te.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,tr.simpleGitHooks()];case 4:return[4,tx.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})})()}C(tL,"setupGitHook");function tU(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tc()];case 1:e.sent();return[4,tL()];case 2:e.sent();return[2]}})})()}C(tU,"ready");function tk(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:em(te.NODE_MODULES,te.PNPM_LOCK_YAML);e=["Pruning pnpm store"];return[4,tr.pnpmPruneStore()];case 1:return[4,tx.apply(void 0,e.concat([n.sent()]))];case 2:n.sent();t=["Clearing pnpm cache"];return[4,tr.pnpmCleanCache()];case 3:return[4,tx.apply(void 0,t.concat([n.sent()]))];case 4:n.sent();return[4,tc()];case 5:n.sent();return[4,tL()];case 6:n.sent();return[2]}})})()}C(tk,"reset");function tq(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,tr.nodeModulesInspect()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tq,"inspect");function tF(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,tr.testUnit()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tF,"testUnit");function tV(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,tr.testE2e()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tV,"testE2E");function tY(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,tr.mongoMigrateCreate(e)];case 1:return[4,tx.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}C(tY,"mongoMigrateCreate");function tB(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,tr.mongoMigrateUp()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tB,"mongoMigrateUp");function tK(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,tr.mongoMigrateDown()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tK,"mongoMigrateDown");(function(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,A.default)((0,x.hideBin)(T.default.argv)).scriptName(ek).usage("$0 <command> [options]").command("lint","Check code for linting issues",tM).command("lint:fix","Fix linting issues automatically",tj).command("lint:inspect","View active ESLint configuration",tP).command("lint-staged","Run lint checks on staged files",tG).command("commitlint","Validate commit message format",tw).command("ready","Initialize project and dependencies",tU).command("reset","Reset the project and reinstall dependencies",tk).command("inspect","Analyze installed project dependencies",tq).command("test:unit","Run unit test suite",tF).command("test:e2e","Run end-to-end test suite",tV).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},function(e){return i(function(){return g(this,function(t){switch(t.label){case 0:if(!e.name){z.error("Migration name is required.");return[2]}return[4,tY(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",tB).command("mongo:migrate:down","Rollback last MongoDB migration",tK).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(_.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();X(e),T.default.exit(1);return[3,3];case 3:return[2]}})})()})();
2
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var a=e[s](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function a(e){r(o,i,s,a,c,"next",e)}function c(e){r(o,i,s,a,c,"throw",e)}a(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,a;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;a=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw a}}return r}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){s(e,t,n[t])})}return e}function p(e,n){return t(e)||c(e,n)||m(e,n)||u()}function E(e){return n(e)||a(e)||m(e)||l()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function g(e,t){var n,r,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(s=0)),s)try{if(n=1,r&&(i=a[0]&2?r["return"]:a[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;if(r=0,i)a=[a[0]&2,i.value];switch(a[0]){case 0:case 1:i=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;r=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(a[0]===6&&s.label<i[1]){s.label=i[1];i=a;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(a);break}if(i[2])s.ops.pop();s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e];r=0}finally{n=i=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var D=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var C=function(e,t){return h(e,"name",{value:t,configurable:!0})};var I=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var a=function(){var i=u.value;!O.call(e,i)&&i!==n&&h(e,i,{get:function(){return t[i]},enumerable:!(r=v(t,i))||r.enumerable})};for(var c=S(t)[Symbol.iterator](),u;!(i=(u=c.next()).done);i=true)a()}catch(e){s=true;o=e}finally{try{if(!i&&c.return!=null){c.return()}}finally{if(s){throw o}}}return e};var N=function(e,t,n){return n=e!=null?y(D(e)):{},I(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)};var T=N(require("process"),1),x=require("yargs/helpers"),A=N(require("yargs/yargs"),1);var _={name:"@cyberskill/shared",type:"module",version:"1.194.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./config":{types:"./dist/config/index.d.ts",import:"./dist/config/index.js",require:"./dist/config/index.cjs"},"./config/commitlint":{types:"./dist/config/commitlint/index.d.ts",import:"./dist/config/commitlint/index.js",require:"./dist/config/commitlint/index.cjs"},"./config/env":{types:"./dist/config/env/index.d.ts",import:"./dist/config/env/index.js",require:"./dist/config/env/index.cjs"},"./config/eslint":{types:"./dist/config/eslint/index.d.ts",import:"./dist/config/eslint/index.js",require:"./dist/config/eslint/index.cjs"},"./config/graphql-codegen":{types:"./dist/config/graphql-codegen/index.d.ts",import:"./dist/config/graphql-codegen/index.js",require:"./dist/config/graphql-codegen/index.cjs"},"./config/lint-staged":{types:"./dist/config/lint-staged/index.d.ts",import:"./dist/config/lint-staged/index.js",require:"./dist/config/lint-staged/index.cjs"},"./config/vitest":{types:"./dist/config/vitest/index.d.ts",import:"./dist/config/vitest/index.js",require:"./dist/config/vitest/index.cjs"},"./constant":{types:"./dist/constant/index.d.ts",import:"./dist/constant/index.js",require:"./dist/constant/index.cjs"},"./node":{types:"./dist/node/index.d.ts",import:"./dist/node/index.js",require:"./dist/node/index.cjs"},"./node/apollo-server":{types:"./dist/node/apollo-server/index.d.ts",import:"./dist/node/apollo-server/index.js",require:"./dist/node/apollo-server/index.cjs"},"./node/cli":{types:"./dist/node/cli/index.d.ts",import:"./dist/node/cli/index.js",require:"./dist/node/cli/index.cjs"},"./node/command":{types:"./dist/node/command/index.d.ts",import:"./dist/node/command/index.js",require:"./dist/node/command/index.cjs"},"./node/express":{types:"./dist/node/express/index.d.ts",import:"./dist/node/express/index.js",require:"./dist/node/express/index.cjs"},"./node/fs":{types:"./dist/node/fs/index.d.ts",import:"./dist/node/fs/index.js",require:"./dist/node/fs/index.cjs"},"./node/log":{types:"./dist/node/log/index.d.ts",import:"./dist/node/log/index.js",require:"./dist/node/log/index.cjs"},"./node/mongo":{types:"./dist/node/mongo/index.d.ts",import:"./dist/node/mongo/index.js",require:"./dist/node/mongo/index.cjs"},"./node/package":{types:"./dist/node/package/index.d.ts",import:"./dist/node/package/index.js",require:"./dist/node/package/index.cjs"},"./node/path":{types:"./dist/node/path/index.d.ts",import:"./dist/node/path/index.js",require:"./dist/node/path/index.cjs"},"./node/storage":{types:"./dist/node/storage/index.d.ts",import:"./dist/node/storage/index.js",require:"./dist/node/storage/index.cjs"},"./node/upload":{types:"./dist/node/upload/index.d.ts",import:"./dist/node/upload/index.js",require:"./dist/node/upload/index.cjs"},"./node/ws":{types:"./dist/node/ws/index.d.ts",import:"./dist/node/ws/index.js",require:"./dist/node/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/userback":{types:"./dist/react/userback/index.d.ts",import:"./dist/react/userback/index.js",require:"./dist/react/userback/index.cjs"},"./react/index.css":{import:"./dist/react/index.css",require:"./dist/react/index.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./util":{types:"./dist/util/index.d.ts",import:"./dist/util/index.js",require:"./dist/util/index.cjs"}},typesVersions:{"*":{config:["dist/config/index.d.ts"],constant:["dist/constant/index.d.ts"],node:["dist/node/index.d.ts"],react:["dist/react/index.d.ts"],typescript:["dist/typescript/index.d.ts"],util:["dist/util/index.d.ts"]}},bin:{cyberskill:"dist/node/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",commitlint:"tsx src/node/cli/index.ts commitlint",dev:"tsup --watch",inspect:"tsx src/node/cli/index.ts inspect",lint:"tsx src/node/cli/index.ts lint","lint:fix":"tsx src/node/cli/index.ts lint:fix","lint:inspect":"tsx src/node/cli/index.ts lint:inspect",ready:"tsx src/node/cli/index.ts ready",reset:"tsx src/node/cli/index.ts reset","test:e2e":"tsx src/node/cli/index.ts test:e2e","test:unit":"tsx src/node/cli/index.ts test:unit"},dependencies:{"@antfu/eslint-config":"4.16.1","@apollo/client":"3.13.8","@apollo/client-integration-nextjs":"0.12.2","@apollo/server":"4.12.2","@dotenvx/dotenvx":"1.45.1","@eddeee888/gcg-typescript-resolver-files":"0.12.1","@graphql-codegen/cli":"5.0.7","@graphql-codegen/client-preset":"4.8.3","@nestjs/common":"11.1.3","@nestjs/core":"11.1.3","@userback/widget":"0.3.11","@vitejs/plugin-react-swc":"3.10.2","body-parser":"2.2.0",chalk:"5.4.1",clsx:"2.1.1",compression:"1.8.0",consola:"3.4.2","cookie-parser":"1.4.7",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0",envalid:"8.0.0",express:"4.21.2","express-session":"1.18.1","express-useragent":"1.0.15","fs-extra":"11.3.0",globals:"16.2.0",graphql:"16.11.0","graphql-ws":"6.0.5",i18next:"25.2.1",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3",mongodb:"6.17.0",mongoose:"8.16.1","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.1","next-intl":"4.3.1","node-fetch":"3.3.2","node-persist":"4.0.4",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.5.3",sass:"1.89.2",slugify:"1.6.6",unorm:"1.6.0",uuid:"11.1.0",vite:"7.0.0",ws:"8.18.3",yargs:"18.0.0"},devDependencies:{"@commitlint/cli":"19.8.1","@commitlint/config-conventional":"19.8.1","@eslint-react/eslint-plugin":"1.52.2","@eslint/config-inspector":"1.1.0","@microsoft/api-extractor":"7.52.8","@next/eslint-plugin-next":"15.3.4","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@types/body-parser":"1.19.6","@types/compression":"1.8.1","@types/cookie-parser":"1.4.9","@types/cors":"2.8.19","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.2","@types/express-useragent":"1.0.5","@types/fs-extra":"11.0.4","@types/migrate-mongo":"10.0.5","@types/node":"24.0.7","@types/node-persist":"3.1.8","@types/react":"19.1.8","@types/react-dom":"19.1.6","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33","@vitest/browser":"3.2.4","esbuild-sass-plugin":"3.3.1",eslint:"9.30.0","eslint-config-next":"15.3.4","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.20","lint-staged":"16.1.2","node-modules-inspector":"1.0.0",playwright:"1.53.1",postcss:"8.5.6","postcss-modules":"6.0.1","simple-git-hooks":"2.13.0",tsup:"8.5.0",tsx:"4.20.3",typescript:"5.8.3",vitest:"3.2.4"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"}};var b=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var R=require("child_process"),G=N(require("process"),1),P=N(require("util"),1);var M=".cyberskill-storage";var j=N(require("@dotenvx/dotenvx"),1),w=require("envalid"),L=N(require("os"),1),U=N(require("path"),1),k=N(require("process"),1);var q=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var F=!1;function V(){k.default.env.NODE_ENV!==q.PRODUCTION&&!F&&(j.default.config(),F=!0)}C(V,"loadEnvFile");function Y(){V();var e=(0,w.cleanEnv)(k.default.env,{CWD:(0,w.str)({default:k.default.cwd()}),DEBUG:(0,w.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,w.str)({default:U.default.join(L.default.homedir(),M)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}C(Y,"getEnv");var B=function(e){return e.Error="error",e.Warning="warning",e}({});var K=N(require("chalk"),1),H=N(require("consola"),1),Q=require("graphql");var W={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var J=Y();J.DEBUG||(H.default.level=4);function $(e){var t=K.default[e];return typeof t=="function"?t:K.default.green}C($,"chalkKeyword");var z={silent:H.default.silent,level:H.default.level,fatal:H.default.fatal,error:H.default.error,warn:H.default.warn,log:H.default.log,info:H.default.info,success:H.default.success,ready:H.default.ready,start:H.default.start,box:H.default.box,debug:H.default.debug,trace:H.default.trace,verbose:H.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){H.default.box(K.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;H.default.log("".concat(K.default.gray("File:")," ").concat(K.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&H.default.log(" ".concat($(n)("Rule:")," ").concat(i)),H.default.log(" ".concat($(n)("Message:")," ").concat(s))}),H.default.box($(n)("".concat(e," : ").concat(t.length))),H.default.log(K.default.gray("─".repeat(40)))}};function X(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,i=r===void 0?!0:r,s=n.returnValue,a=n.callback,c=o(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return i&&z.error(c.message),a&&typeof a=="function"&&a(c),s||{success:!1,message:c.message,code:W.INTERNAL_SERVER_ERROR.CODE}}C(X,"catchError");var Z=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var ee=N(require("node-fetch"),1);var et=N(require("fs-extra"),1),en=N(require("path"),1);var er=et.default,ei=er.lstatSync,es=er.readdirSync,eo=er.mkdirSync,ea=er.readFileSync,ec=er.unlinkSync,eu=er.statSync,el=er.createWriteStream,ed=et.default.readJsonSync;function ep(e,t,n){et.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(ep,"writeFileSync");function eE(e,t,n){et.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(eE,"appendFileSync");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return et.default.pathExistsSync(e)})}C(ef,"pathExistsSync");function em(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){ef(e)&&et.default.removeSync(e)})}C(em,"removeSync");var eg=N(require("fs-extra"),1);var ey=N(require("path"),1);var eh=Y(),ev=ey.default,eS=ev.dirname;function eD(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ev).resolve.apply(r,[eh.CWD].concat(E(t)))}C(eD,"resolveWorkingPath");function eO(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ev).join.apply(r,E(t))}C(eO,"join");var eC=Y(),eI=eC.CWD,eN="@cyberskill/shared",eT="node_modules",ex="dist",eA="public",e_="package.json",eb="package-lock.json",eR="tsconfig.json",eG=".gitignore",eP=".simple-git-hooks.json",eM="pnpm-lock.yaml",ej=".git/hooks/",ew=".git/COMMIT_EDITMSG",eL=".migrate-mongo.config.js",eU=function(){var e=eg.default.readJsonSync(eD(e_)).name===eN?eI:eO(eI,eT,eN);return eO(e,ex)}(),ek="cyberskill",eq="src/node/cli/index.ts",eF="eslint",eV="eslint",eY="vitest";var eB="vitest",eK="@commitlint/cli",eH="@commitlint/config-conventional",eQ="commitlint",eW="lint-staged",eJ="lint-staged",e$="typescript",ez="tsc",eX="tsx",eZ="git",e0="pnpm",e1="pnpm exec",e2="simple-git-hooks",e4="simple-git-hooks",e3="@eslint/config-inspector",e5="eslint-config-inspector",e8="node-modules-inspector",e6="node-modules-inspector",e7="migrate-mongo",e9="./node_modules/migrate-mongo/bin/migrate-mongo",te={CYBERSKILL_DIRECTORY:eU,WORKING_DIRECTORY:eI,PUBLIC_DIRECTORY:eD(eA),TS_CONFIG:eD(eR),GIT_IGNORE:eD(eG),GIT_HOOK:eD(ej),GIT_COMMIT_MSG:eD(ew),SIMPLE_GIT_HOOKS_JSON:eD(eP),PACKAGE_JSON:eD(e_),PACKAGE_LOCK_JSON:eD(eb),PNPM_LOCK_YAML:eD(eM),NODE_MODULES:eD(eT),MIGRATE_MONGO_CONFIG:eD(eL),LINT_STAGED_CONFIG:eD("".concat(eU,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:eD("".concat(eU,"/config/commitlint/index.js")),VITEST_UNIT_CONFIG:eD("".concat(eU,"/config/vitest/vitest.unit.js")),VITEST_UNIT_SETUP_CONFIG:eD("".concat(eU,"/config/vitest/vitest.unit.setup.js")),VITEST_E2E_CONFIG:eD("".concat(eU,"/config/vitest/vitest.e2e.js"))};function tt(e){var t=e.isCurrentProject;return d({"pre-commit":eJ,"commit-msg":eQ},t&&{"pre-push":tC("".concat(eZ," pull"))})}C(tt,"createGitHooksConfig");function tn(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:switch(t){case b.CLI:return[3,1];case b.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,tu(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tN(tC("".concat(e1," ").concat(r))))];case 4:return[2,tN(tC(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}C(tn,"buildCommand");var tr={simpleGitHooks:tn({type:b.CLI,packages:[{name:e2,type:Z.DEV_DEPENDENCY}],command:e4}),eslintInspect:tn({type:b.CLI,packages:[{name:e3,type:Z.DEV_DEPENDENCY}],command:e5}),nodeModulesInspect:tn({type:b.CLI,packages:[{name:e8,type:Z.DEV_DEPENDENCY}],command:e6}),eslintCheck:tn({type:b.CLI,packages:[{name:eF,type:Z.DEV_DEPENDENCY}],command:"".concat(eV," ").concat(te.WORKING_DIRECTORY," --no-cache")}),eslintFix:tn({type:b.CLI,packages:[{name:eF,type:Z.DEV_DEPENDENCY}],command:"".concat(eV," ").concat(te.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:tn({type:b.CLI,packages:[{name:e$,type:Z.DEV_DEPENDENCY}],command:"".concat(ez," -p ").concat(te.TS_CONFIG," --noEmit")}),testUnit:tn({type:b.CLI,packages:[{name:eY,type:Z.DEV_DEPENDENCY}],command:"".concat(eB," --config ").concat(te.VITEST_UNIT_CONFIG)}),testE2e:tn({type:b.CLI,packages:[{name:eY,type:Z.DEV_DEPENDENCY}],command:"".concat(eB," --config ").concat(te.VITEST_E2E_CONFIG)}),mongoMigrateCreate:C(function(e){return tn({type:b.CLI,packages:[{name:eX,type:Z.DEPENDENCY},{name:e7,type:Z.DEPENDENCY}],command:"".concat(eX," ").concat(e9," create ").concat(e," -f ").concat(te.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:tn({type:b.CLI,packages:[{name:eX,type:Z.DEPENDENCY},{name:e7,type:Z.DEPENDENCY}],command:"".concat(eX," ").concat(e9," up -f ").concat(te.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:tn({type:b.CLI,packages:[{name:eX,type:Z.DEPENDENCY},{name:e7,type:Z.DEPENDENCY}],command:"".concat(eX," ").concat(e9," down -f ").concat(te.MIGRATE_MONGO_CONFIG)}),commitLint:tn({type:b.CLI,packages:[{name:eK,type:Z.DEV_DEPENDENCY},{name:eH,type:Z.DEV_DEPENDENCY}],command:"".concat(eQ," --edit ").concat(te.GIT_COMMIT_MSG," --config ").concat(te.COMMITLINT_CONFIG)}),lintStaged:tn({type:b.CLI,packages:[{name:eW,type:Z.DEV_DEPENDENCY}],command:"".concat(eJ," --config ").concat(te.LINT_STAGED_CONFIG)}),configureGitHook:tn({type:b.STRING,command:"".concat(eZ," config core.hooksPath ").concat(te.GIT_HOOK)}),build:tn({type:b.STRING,command:"".concat(e0," run --if-present build")}),pnpmInstallStandard:tn({type:b.STRING,command:"".concat(e0," install --ignore-scripts")}),pnpmInstallLegacy:tn({type:b.STRING,command:"".concat(e0," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:tn({type:b.STRING,command:"".concat(e0," install --ignore-scripts --force")}),pnpmPruneStore:tn({type:b.STRING,command:"".concat(e0," store prune")}),pnpmCleanCache:tn({type:b.STRING,command:"".concat(e0," cache delete")})};var ti=Y();function ts(e){return i(function(){var t,n,r,i;return g(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,(0,ee.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:i=s.sent();return[2,X(i)];case 4:return[2]}})})()}C(ts,"getLatestPackageVersion");function to(e){return i(function(){var t,n,r,i,s,o,a,c,u,l,d,p,E,f,m,y,h,v,S,D,O,C,I,N;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,2,,3]);if(!e){if(ef(te.PACKAGE_JSON)){t=ed(te.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,i=t.version,s=i===void 0?"":i;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:te.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!ef(te.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];o=ed(te.PACKAGE_JSON),a=o.name,c=o.version,u=c===void 0?"":c,l=o.dependencies,d=l===void 0?{}:l,p=o.devDependencies,E=p===void 0?{}:p;if(e.name===a)return[2,{success:!0,result:{name:a,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:te.PACKAGE_JSON,file:o}}];f=e.name in d,m=e.name in E;return[4,ts(e.name)];case 1:y=g.sent();if(!y.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];if(!f&&!m)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];S=(v=(h=d[e.name])!==null&&h!==void 0?h:E[e.name])!==null&&v!==void 0?v:"",D=eO(ti.CWD,eT,e.name,e_);if(!ef(D))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];O=ed(D),C=O.version,I=C===void 0?"":C;return[2,S!==I?{success:!0,result:{name:e.name,currentVersion:I||S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:D,file:O}}:{success:!0,result:{name:e.name,currentVersion:S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:S===y.result,isDependency:f,isDevDependency:m,installedPath:D,file:O}}];case 2:N=g.sent();return[2,X(N)];case 3:return[2]}})})()}C(to,"getPackage");function ta(e){return i(function(){var t,n,r,i,s;return g(this,function(o){try{;r=ed(te.PACKAGE_JSON),i=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?i[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),ep(te.PACKAGE_JSON,JSON.stringify(r,null,4)),z.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){X(e)}return[2]})})()}C(ta,"updatePackage");function tc(){return i(function(){var e,t,n,r,i,s,o,a,c,u,l,d,p;return g(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:C(function(){return tr.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return tr.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return tr.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);i=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,a=o.command,c=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,a()];case 4:u=E.sent();return[4,tx("".concat(c," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();X(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=E.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:p=E.sent();X(p);return[3,13];case 13:return[2]}})})()}C(tc,"installDependencies");function tu(e,t){return i(function(){var n,r,i,s,o,a,c,u,l,d,p,f,m,y,h,v,S;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!ef(te.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(to))];case 1:i=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=i.filter(function(e){return!e.isInstalled}),o=i.filter(function(e){return!e.isUpToDate}),a=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=a).push.apply(n,E(s.map(ta))),(t===null||t===void 0?void 0:t.update)&&o.length>0&&(r=a).push.apply(r,E(o.map(ta)));c=a.length>0;if(!c)return[3,6];return[4,Promise.all(a)];case 2:g.sent();return[4,tc()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,tr.eslintFix()];case 4:return[4,tx.apply(void 0,u.concat([g.sent()]))];case 5:c=g.sent();g.label=6;case 6:c;d=true,p=false,f=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);m=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(d=(y=m.next()).done))return[3,11];h=y.value;return[4,h()];case 9:g.sent();g.label=10;case 10:d=true;return[3,8];case 11:return[3,14];case 12:v=g.sent();p=true;f=v;return[3,14];case 13:try{if(!d&&m.return!=null){m.return()}}finally{if(p){throw f}}return[7];case 14:return[3,16];case 15:S=g.sent();X(S);return[3,16];case 16:return[2]}})})()}C(tu,"setupPackages");var tl=N(require("node-persist"),1);var td=Y();function tp(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=tl.default.defaultInstance;if(e)return[3,2];return[4,tl.default.init({dir:td.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}C(tp,"initNodePersist");var tE={get:function e(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tp()];case 1:r.sent();return[4,tl.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,X(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tp()];case 1:r.sent();return[4,tl.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();X(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tp()];case 1:n.sent();return[4,tl.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tp()];case 1:n.sent();return[4,tl.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(z.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,X(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return g(this,function(t){try{return[2,"".concat(td.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,X(e,{returnValue:null})]}return[2]})})()}};var tf=Y(),tm=P.promisify(R.exec);function tg(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,to()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}C(tg,"getPackageName");function ty(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tg()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,tE.set(t,e)];case 3:r.sent(),setTimeout(function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:return[4,tE.getLogLink(t)];case 1:e=n.sent();e&&z.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();X(n);return[3,5];case 5:return[2]}})})()}C(ty,"saveErrorListToStorage");function th(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tg()];case 1:e=r.sent();return[4,tE.get(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:[]];case 3:n=r.sent();return[2,X(n,{returnValue:[]})];case 4:return[2]}})})()}C(th,"getStoredErrorLists");function tv(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tg()];case 1:e=n.sent();return[4,tE.remove(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()}C(tv,"clearAllErrorLists");function tS(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=i.exec(e)||[],E=s.exec(e)||[],f=o.exec(e)||[];var m,g,y,h,v,S;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===B.Error?B.Error:B.Warning,message:(m=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:"",rule:(g=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(y=E===null||E===void 0?void 0:E[1])!==null&&y!==void 0?y:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===B.Error?B.Error:B.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:"commitlint",type:B.Error,message:(v=f===null||f===void 0?void 0:(l=f[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(S=f===null||f===void 0?void 0:(d=f[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&ty(t),tf.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}C(tS,"parseTextErrors");function tD(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,i=e.line,s=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?B.Error:B.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:a})})}),n.length&&ty(n)}catch(t){tS(e)}}C(tD,"parseCommandOutput");function tO(e){return i(function(e){var t,n,r,i,s,o,a,c,u;var l=arguments;return g(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tD;n=new AbortController;G.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),G.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tm(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&z.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}C(tO,"executeCommand");function tC(e){return{raw:!0,cmd:e}}C(tC,"rawCommand");function tI(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e1," ").concat(eX," ").concat(eq," ").concat(e):"".concat(e1," ").concat(ek," ").concat(e)}C(tI,"formatCLI");function tN(e,t){return typeof e=="function"?tI(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tI(e,t):e}C(tN,"formatCommand");function tT(e){return i(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,to({name:eN})];case 1:t=i.sent();if(t.success){n={isCurrentProject:t.result.isCurrentProject},r=typeof e=="function"?e(n):e;return[2,Object.fromEntries(Object.entries(r).map(function(e){var t=p(e,2),r=t[0],i=t[1];return[r,tN(i,n)]}))]}return[2]}})})()}C(tT,"resolveCommands");function tx(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),tf.DEBUG&&z.info("→ ".concat(t));return[4,tO(t)];case 1:r.sent(),z.success("".concat(e," done."));return[3,3];case 2:n=r.sent();X(n);return[3,3];case 3:return[2]}})})()}C(tx,"runCommand");function tA(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:if(!ef(te.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,tr.typescriptCheck()];case 1:return[4,tx.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=z.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}C(tA,"checkTypescript");function t_(){return i(function(){var e,t,n,r;var i=arguments;return g(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,tr.eslintFix()];case 1:return[4,tx.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,tr.eslintCheck()];case 4:return[4,tx.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})}).apply(this,arguments)}C(t_,"checkEslint");function tb(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";z.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}C(tb,"printIssues");function tR(){return i(function(){return g(this,function(e){setTimeout(function(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:return[4,th()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===B.Error}),n=e.filter(function(e){return e.type===B.Warning});!t.length&&!n.length?z.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tb("Warnings",n),tb("Errors",t),(t.length>0||n.length>0)&&T.default.exit(1));return[2]}})})()},0);return[2]})})()}C(tR,"showCheckResult");function tG(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tv()];case 1:i.sent();return[4,to({name:eN})];case 2:e=i.sent();if(!e.success){z.error("Failed to retrieve package information. Aborting lint-staged.");return[2]}t=e.result.isCurrentProject;if(!t)return[3,5];n=["Building package: ".concat(eN)];return[4,tr.build()];case 3:return[4,tx.apply(void 0,n.concat([i.sent()]))];case 4:t=i.sent();i.label=5;case 5:t;r=["Executing lint-staged"];return[4,tr.lintStaged()];case 6:return[4,tx.apply(void 0,r.concat([i.sent()]))];case 7:i.sent(),tR();return[2]}})})()}C(tG,"lintStaged");function tP(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,tr.eslintInspect()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tP,"inspectLint");function tM(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tv()];case 1:e.sent();return[4,Promise.all([tA(),t_()])];case 2:e.sent(),tR();return[2]}})})()}C(tM,"lintCheck");function tj(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tv()];case 1:e.sent();return[4,Promise.all([tA(),t_(!0)])];case 2:e.sent(),tR();return[2]}})})()}C(tj,"lintFix");function tw(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tv()];case 1:t.sent();e=["Validating commit message"];return[4,tr.commitLint()];case 2:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tR();return[2]}})})()}C(tw,"commitLint");function tL(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,tr.configureGitHook()];case 1:return[4,tx.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),em(te.GIT_HOOK);return[4,tT(tt)];case 3:t=i.sent();ep(te.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eP,"\n");ef(te.GIT_IGNORE)?ea(te.GIT_IGNORE,"utf-8").split("\n").includes(eP)||eE(te.GIT_IGNORE,n):ep(te.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,tr.simpleGitHooks()];case 4:return[4,tx.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})})()}C(tL,"setupGitHook");function tU(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tc()];case 1:e.sent();return[4,tL()];case 2:e.sent();return[2]}})})()}C(tU,"ready");function tk(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:em(te.NODE_MODULES,te.PNPM_LOCK_YAML);e=["Pruning pnpm store"];return[4,tr.pnpmPruneStore()];case 1:return[4,tx.apply(void 0,e.concat([n.sent()]))];case 2:n.sent();t=["Clearing pnpm cache"];return[4,tr.pnpmCleanCache()];case 3:return[4,tx.apply(void 0,t.concat([n.sent()]))];case 4:n.sent();return[4,tc()];case 5:n.sent();return[4,tL()];case 6:n.sent();return[2]}})})()}C(tk,"reset");function tq(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,tr.nodeModulesInspect()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tq,"inspect");function tF(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,tr.testUnit()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tF,"testUnit");function tV(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,tr.testE2e()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tV,"testE2E");function tY(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,tr.mongoMigrateCreate(e)];case 1:return[4,tx.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}C(tY,"mongoMigrateCreate");function tB(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,tr.mongoMigrateUp()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tB,"mongoMigrateUp");function tK(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,tr.mongoMigrateDown()];case 1:return[4,tx.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tK,"mongoMigrateDown");(function(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,A.default)((0,x.hideBin)(T.default.argv)).scriptName(ek).usage("$0 <command> [options]").command("lint","Check code for linting issues",tM).command("lint:fix","Fix linting issues automatically",tj).command("lint:inspect","View active ESLint configuration",tP).command("lint-staged","Run lint checks on staged files",tG).command("commitlint","Validate commit message format",tw).command("ready","Initialize project and dependencies",tU).command("reset","Reset the project and reinstall dependencies",tk).command("inspect","Analyze installed project dependencies",tq).command("test:unit","Run unit test suite",tF).command("test:e2e","Run end-to-end test suite",tV).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},function(e){return i(function(){return g(this,function(t){switch(t.label){case 0:if(!e.name){z.error("Migration name is required.");return[2]}return[4,tY(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",tB).command("mongo:migrate:down","Rollback last MongoDB migration",tK).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(_.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();X(e),T.default.exit(1);return[3,3];case 3:return[2]}})})()})();