Skip to content

Commit 8c1fbe0

Browse files
committed
fix: types and packagejson
1 parent ffe79cf commit 8c1fbe0

File tree

4 files changed

+40
-31
lines changed

4 files changed

+40
-31
lines changed

cli/src/templates/base/package.json.ejs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,10 @@
6666
<% if (props.stylingPackage?.options.selectedComponents.includes('slider')) { %>
6767
"@react-native-community/slider": "4.5.2",
6868
<% } %>
69-
<% if (props.stateManagementPackage?.name === "zustand") { %>
70-
"zustand": "^4.5.1",
71-
<% } %>
69+
<% } %>
70+
71+
<% if (props.stateManagementPackage?.name === "zustand") { %>
72+
"zustand": "^4.5.1",
7273
<% } %>
7374
7475
<% if (props.stylingPackage?.name === "restyle") { %>

cli/src/templates/packages/zustand/StateManagement/zustandStore.ts.ejs renamed to cli/src/templates/packages/zustand/store/store.ts.ejs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
import { create } from 'zustand'
22

3-
const useStore = create((set) => ({
3+
export interface BearState {
4+
bears: number
5+
increasePopulation: () => void
6+
removeAllBears: () => void
7+
updateBears: (newBears: number) => void
8+
}
9+
10+
export const useStore = create<BearState>((set) => ({
411
bears: 0,
512
increasePopulation: () => set((state) => ({ bears: state.bears + 1 })),
613
removeAllBears: () => set({ bears: 0 }),

cli/src/utilities/configureProjectFiles.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@ export function configureProjectFiles(
352352

353353
// add state management files if needed
354354
if (stateManagementPackage?.name === 'zustand') {
355-
const zustandFiles = ['packages/zustand/StateManagement/zustandStore.ts.ejs'];
355+
const zustandFiles = ['packages/zustand/store/store.ts.ejs'];
356356
files = [...files, ...zustandFiles];
357357
}
358358

cli/src/utilities/runCLI.ts

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,32 @@ export async function runCLI(toolbox: Toolbox, projectName: string): Promise<Cli
328328
);
329329
}
330330

331+
const stateManagementSelect = await select({
332+
message: 'What would you like to use for state management?',
333+
options: [
334+
{ value: undefined, label: 'None' },
335+
{ value: 'zustand', label: 'Zustand' }
336+
// { value: 'mobx', label: 'MobX' },
337+
// { value: 'redux', label: 'Redux' },
338+
]
339+
});
340+
341+
if (isCancel(stateManagementSelect)) {
342+
cancel('Cancelled... 👋');
343+
return process.exit(0);
344+
}
345+
346+
if (stateManagementSelect) {
347+
cliResults.packages.push({
348+
name: stateManagementSelect as StateManagementSelect,
349+
type: 'state-management'
350+
});
351+
352+
success(`You'll be using ${stateManagementSelect} for state management.`);
353+
} else {
354+
success(`No problem, skipping state management for now.`);
355+
}
356+
331357
const authenticationSelect = await select({
332358
message: 'What would you like to use for authentication?',
333359
options: [
@@ -341,6 +367,7 @@ export async function runCLI(toolbox: Toolbox, projectName: string): Promise<Cli
341367
cancel('Cancelled... 👋');
342368
return process.exit(0);
343369
}
370+
344371
if (authenticationSelect) {
345372
cliResults.packages.push({ name: authenticationSelect as AuthenticationSelect, type: 'authentication' });
346373
} else {
@@ -364,32 +391,6 @@ export async function runCLI(toolbox: Toolbox, projectName: string): Promise<Cli
364391
success(`No problem, skipping eas for now.`);
365392
}
366393

367-
const stateManagementSelect = await select({
368-
message: 'What would you like to use for state management?',
369-
options: [
370-
{ value: undefined, label: 'None' },
371-
{ value: 'zustand', label: 'Zustand' }
372-
// { value: 'mobx', label: 'MobX' },
373-
// { value: 'redux', label: 'Redux' },
374-
]
375-
});
376-
377-
if (isCancel(stateManagementSelect)) {
378-
cancel('Cancelled... 👋');
379-
return process.exit(0);
380-
}
381-
382-
if (stateManagementSelect) {
383-
cliResults.packages.push({
384-
name: stateManagementSelect as StateManagementSelect,
385-
type: 'state-management'
386-
});
387-
388-
success(`You'll be using ${stateManagementSelect} for state management.`);
389-
} else {
390-
success(`No problem, skipping state management for now.`);
391-
}
392-
393394
// Offer user ability to save configuration
394395
const shouldSaveConfig = await confirm({
395396
message: 'Would you like to save this configuration for future use?',

0 commit comments

Comments
 (0)