@@ -6,7 +6,7 @@ export interface ProjectOptions {
66 componentName ?: string
77 language : 'js' | 'ts'
88 name : string
9- pro ? : boolean
9+ pro : boolean
1010}
1111
1212// Function to generate title
@@ -23,10 +23,17 @@ export const generateDescription = (componentName?: string): string => {
2323}
2424
2525// Function to generate dependencies
26- export const getDependencies = ( language : 'js' | 'ts' ) : Record < string , string > => {
26+ export const getDependencies = ( language : 'js' | 'ts' , pro : boolean ) : Record < string , string > => {
2727 const dependencies : Record < string , string > = {
28- '@coreui/coreui' : 'latest' ,
29- '@coreui/react' : 'latest' ,
28+ ...( pro
29+ ? {
30+ '@coreui/coreui-pro' : 'latest' ,
31+ '@coreui/react-pro' : 'latest' ,
32+ }
33+ : {
34+ '@coreui/coreui' : 'latest' ,
35+ '@coreui/react' : 'latest' ,
36+ } ) ,
3037 '@popperjs/core' : 'latest' ,
3138 react : 'latest' ,
3239 'react-dom' : 'latest' ,
@@ -55,22 +62,23 @@ export const getScripts = (): Record<string, string> => {
5562// Function to generate index.html content
5663export const generateIndexHTML = ( title : string ) : string => {
5764 return `<!DOCTYPE html>
58- <html lang="en">
59- <head>
60- <meta charset="UTF-8">
61- <title>${ title } </title>
62- <meta name="viewport" content="width=device-width, initial-scale=1.0">
63- </head>
64- <body>
65- <div id="root"></div>
66- </body>
67- </html>`
65+ <html lang="en">
66+ <head>
67+ <meta charset="UTF-8">
68+ <title>${ title } </title>
69+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
70+ </head>
71+ <body>
72+ <div id="root"></div>
73+ </body>
74+ </html>`
6875}
6976
7077// Function to generate index.js or index.tsx content
7178export const generateIndexJS = (
7279 name : string ,
7380 language : 'js' | 'ts' ,
81+ pro : boolean ,
7482 templateType : 'codesandbox' | 'stackblitz' ,
7583) : string => {
7684 const importReactDOM =
@@ -98,9 +106,9 @@ export const generateIndexJS = (
98106
99107 return `import React from 'react';
100108 ${ importReactDOM }
101- import '@coreui/coreui/dist/css/coreui.min.css';
109+ import '@coreui/${ pro ? ' coreui-pro' : 'coreui' } /dist/css/coreui.min.css';
102110 import { ${ name } } from './${ name } .${ language } x';
103-
111+
104112 ${ renderMethod } `
105113}
106114
@@ -109,6 +117,7 @@ export const generatePackageJSON = (
109117 title : string ,
110118 description : string ,
111119 language : 'js' | 'ts' ,
120+ pro : boolean ,
112121 templateType : 'codesandbox' | 'stackblitz' ,
113122) : string => {
114123 const indexExtension = language === 'ts' ? 'tsx' : 'js'
@@ -119,9 +128,9 @@ export const generatePackageJSON = (
119128 description,
120129 main : templateType === 'codesandbox' ? `src/index.${ indexExtension } ` : `index.js` ,
121130 scripts : getScripts ( ) ,
122- dependencies : getDependencies ( language ) ,
131+ dependencies : getDependencies ( language , pro ) ,
123132 ...( templateType === 'stackblitz' && {
124- devDependencies : language === 'ts' ? getDependencies ( language ) : { } ,
133+ devDependencies : language === 'ts' ? getDependencies ( language , pro ) : { } ,
125134 } ) ,
126135 }
127136
0 commit comments