feat: rename Templates tab to Email & SMS Templates

This commit is contained in:
sazzadulalambd
2026-05-13 13:59:39 +06:00
parent 5afe5b13f3
commit e89f9319b3

View File

@@ -1128,7 +1128,7 @@ export default function CompanySettingsPage() {
{ id: 'riderrequest', label: 'Rider Request Plan (P2)', icon: Users }, { id: 'riderrequest', label: 'Rider Request Plan (P2)', icon: Users },
{ id: 'parts', label: 'EV Parts', icon: Package }, { id: 'parts', label: 'EV Parts', icon: Package },
{ id: 'templates', label: 'Templates', icon: FileText }, { id: 'templates', label: 'Email & SMS Templates', icon: FileText },
]; ];
return ( return (
@@ -1152,221 +1152,221 @@ export default function CompanySettingsPage() {
</div> </div>
)} )}
<div className="p-4 lg:p-6"> <div className="p-4 lg:p-6">
<div className="flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4 mb-6"> <div className="flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4 mb-6">
<div> <div>
<h1 className="text-2xl lg:text-3xl font-extrabold text-slate-800">Company Settings</h1> <h1 className="text-2xl lg:text-3xl font-extrabold text-slate-800">Company Settings</h1>
<p className="text-sm text-slate-500 mt-1">Manage your company information and configurations</p> <p className="text-sm text-slate-500 mt-1">Manage your company information and configurations</p>
</div> </div>
{/* <button {/* <button
onClick={handleSave} onClick={handleSave}
className="py-2.5 px-4 bg-accent text-white rounded-lg font-semibold text-sm hover:bg-accent-dark transition-colors flex items-center gap-2" className="py-2.5 px-4 bg-accent text-white rounded-lg font-semibold text-sm hover:bg-accent-dark transition-colors flex items-center gap-2"
> >
<Save className="w-4 h-4" /> Save Changes <Save className="w-4 h-4" /> Save Changes
</button> */} </button> */}
</div>
{saved && (
<div className="mb-4 p-3 bg-green-100 text-green-700 rounded-lg text-sm">
Settings saved successfully!
</div>
)}
<div className="grid lg:grid-cols-4 gap-6">
<div className="lg:col-span-1 bg-white rounded-xl shadow-sm border border-slate-100 p-2">
<nav className="space-y-1">
{tabs.map(tab => (
<button
key={tab.id}
onClick={() => handleTabChange(tab.id as typeof activeTab)}
className={`w-full flex items-center gap-3 px-3 py-2.5 rounded-lg text-sm font-medium transition-colors ${activeTab === tab.id
? 'bg-accent text-white'
: 'text-slate-600 hover:bg-slate-50'
}`}
>
<tab.icon className="w-4 h-4" />
{tab.label}
</button>
))}
</nav>
</div> </div>
<div className="lg:col-span-3 bg-white rounded-xl shadow-sm border border-slate-100"> {saved && (
{activeTab === 'general' && ( <div className="mb-4 p-3 bg-green-100 text-green-700 rounded-lg text-sm">
<GeneralSettings settings={settings} setSettings={updateSettings} /> Settings saved successfully!
)} </div>
)}
{activeTab === 'branding' && ( <div className="grid lg:grid-cols-4 gap-6">
<BrandingSettings settings={settings} setSettings={updateSettings} /> <div className="lg:col-span-1 bg-white rounded-xl shadow-sm border border-slate-100 p-2">
)} <nav className="space-y-1">
{tabs.map(tab => (
<button
key={tab.id}
onClick={() => handleTabChange(tab.id as typeof activeTab)}
className={`w-full flex items-center gap-3 px-3 py-2.5 rounded-lg text-sm font-medium transition-colors ${activeTab === tab.id
? 'bg-accent text-white'
: 'text-slate-600 hover:bg-slate-50'
}`}
>
<tab.icon className="w-4 h-4" />
{tab.label}
</button>
))}
</nav>
</div>
{activeTab === 'social' && ( <div className="lg:col-span-3 bg-white rounded-xl shadow-sm border border-slate-100">
<SocialSettings settings={settings} setSettings={updateSettings} /> {activeTab === 'general' && (
)} <GeneralSettings settings={settings} setSettings={updateSettings} />
)}
{activeTab === 'integration' && ( {activeTab === 'branding' && (
<IntegrationSettings settings={settings} setSettings={updateSettings} /> <BrandingSettings settings={settings} setSettings={updateSettings} />
)} )}
{activeTab === 'landing' && ( {activeTab === 'social' && (
<LandingSettings settings={settings} setSettings={updateSettings} /> <SocialSettings settings={settings} setSettings={updateSettings} />
)} )}
{activeTab === 'kyc' && ( {activeTab === 'integration' && (
<KycSettings <IntegrationSettings settings={settings} setSettings={updateSettings} />
settings={settings} )}
setSettings={updateSettings}
activeMasterTab={activeMasterTab}
setActiveMasterTab={setActiveMasterTab}
addDocType={addDocType}
setAddDocType={setAddDocType}
newDocName={newDocName}
setNewDocName={setNewDocName}
newDocDesc={newDocDesc}
setNewDocDesc={setNewDocDesc}
/>
)}
{activeTab === 'parts' && ( {activeTab === 'landing' && (
<PartsSettings <LandingSettings settings={settings} setSettings={updateSettings} />
settings={settings} )}
setSettings={updateSettings}
showAddPolicy={showAddPolicy}
setShowAddPolicy={setShowAddPolicy}
newPolicyName={newPolicyName}
setNewPolicyName={setNewPolicyName}
newPolicyDesc={newPolicyDesc}
setNewPolicyDesc={setNewPolicyDesc}
editPolicyDescHtml={editPolicyDescHtml}
setEditPolicyDescHtml={setEditPolicyDescHtml}
editingPolicy={editingPolicy}
setEditingPolicy={setEditingPolicy}
editPolicyName={editPolicyName}
setEditPolicyName={setEditPolicyName}
editPolicyDesc={editPolicyDesc}
setEditPolicyDesc={setEditPolicyDesc}
/>
)}
{activeTab === 'companyPolicy' && ( {activeTab === 'kyc' && (
<CompanyPolicySettings <KycSettings
settings={settings} settings={settings}
setSettings={updateSettings} setSettings={updateSettings}
activeMasterTab={activeMasterTab} activeMasterTab={activeMasterTab}
setActiveMasterTab={setActiveMasterTab} setActiveMasterTab={setActiveMasterTab}
activeRentalTypeTab={activeRentalTypeTab} addDocType={addDocType}
setActiveRentalTypeTab={setActiveRentalTypeTab} setAddDocType={setAddDocType}
editingPolicy={editingPolicy} newDocName={newDocName}
setEditingPolicy={setEditingPolicy} setNewDocName={setNewDocName}
editPolicyName={editPolicyName} newDocDesc={newDocDesc}
setEditPolicyName={setEditPolicyName} setNewDocDesc={setNewDocDesc}
editPolicyDesc={editPolicyDesc}
setEditPolicyDesc={setEditPolicyDesc}
editPolicyDescHtml={editPolicyDescHtml}
setEditPolicyDescHtml={setEditPolicyDescHtml}
showAddPolicy={showAddPolicy}
setShowAddPolicy={setShowAddPolicy}
newPolicyName={newPolicyName}
setNewPolicyName={setNewPolicyName}
newPolicyDesc={newPolicyDesc}
setNewPolicyDesc={setNewPolicyDesc}
newPolicyShowApp={newPolicyShowApp}
setNewPolicyShowApp={setNewPolicyShowApp}
newPolicyShowWeb={newPolicyShowWeb}
setNewPolicyShowWeb={setNewPolicyShowWeb}
editPolicyShowApp={editPolicyShowApp}
setEditPolicyShowApp={setEditPolicyShowApp}
editPolicyShowWeb={editPolicyShowWeb}
setEditPolicyShowWeb={setEditPolicyShowWeb}
/>
)}
{activeTab === 'plans' && (
<PlanSelection
settings={settings}
setSettings={updateSettings}
activePlanTab={activePlanTab}
setActivePlanTab={setActivePlanTab}
handleSave={handleSave}
addNewPlan={addNewPlan}
/>
)}
{activeTab === 'investment' && (
<InvestmentSettings
settings={settings} setSettings={setSettings}
activeInvestTab={activeInvestTab} setActiveInvestTab={setActiveInvestTab}
addInvestPlan={addInvestPlan} setAddInvestPlan={setAddInvestPlan}
newInvestName={newInvestName} setNewInvestName={setNewInvestName}
newInvestStatus={newInvestStatus} setNewInvestStatus={setNewInvestStatus}
newInvestTarget={newInvestTarget} setNewInvestTarget={setNewInvestTarget}
newInvestStart={newInvestStart} setNewInvestStart={setNewInvestStart}
newInvestEnd={newInvestEnd} setNewInvestEnd={setNewInvestEnd}
newInvestMin={newInvestMin} setNewInvestMin={setNewInvestMin}
newInvestMax={newInvestMax} setNewInvestMax={setNewInvestMax}
newInvestDuration={newInvestDuration} setNewInvestDuration={setNewInvestDuration}
newInvestLock={newInvestLock} setNewInvestLock={setNewInvestLock}
newInvestPenalty={newInvestPenalty} setNewInvestPenalty={setNewInvestPenalty}
newInvestMonthly={newInvestMonthly} setNewInvestMonthly={setNewInvestMonthly}
newInvestTotal={newInvestTotal} setNewInvestTotal={setNewInvestTotal}
newInvestFicoSingleRent={newInvestFicoSingleRent} setNewInvestFicoSingleRent={setNewInvestFicoSingleRent}
newInvestFicoRentToOwn={newInvestFicoRentToOwn} setNewInvestFicoRentToOwn={setNewInvestFicoRentToOwn}
newInvestFicoShareEv={newInvestFicoShareEv} setNewInvestFicoShareEv={setNewInvestFicoShareEv}
newInvestDesc={newInvestDesc} setNewInvestDesc={setNewInvestDesc}
createInvestPlan={createInvestPlan} handleSave={handleSave}
/>
)}
{
activeTab === 'swapstation' && (
<SwapStationSettings
settings={settings} setSettings={setSettings}
activeSwapTab={activeSwapTab} setActiveSwapTab={setActiveSwapTab}
addSwapStationPlan={addSwapStationPlan} setAddSwapStationPlan={setAddSwapStationPlan}
newSwapName={newSwapName} setNewSwapName={setNewSwapName}
newSwapStatus={newSwapStatus} setNewSwapStatus={setNewSwapStatus}
newSwapBatteryCount={newSwapBatteryCount} setNewSwapBatteryCount={setNewSwapBatteryCount}
newSwapPrice={newSwapPrice} setNewSwapPrice={setNewSwapPrice}
newSwapMonthly={newSwapMonthly} setNewSwapMonthly={setNewSwapMonthly}
newSwapDaily={newSwapDaily} setNewSwapDaily={setNewSwapDaily}
newSwapMin={newSwapMin} setNewSwapMin={setNewSwapMin}
newSwapMax={newSwapMax} setNewSwapMax={setNewSwapMax}
newSwapProfit={newSwapProfit} setNewSwapProfit={setNewSwapProfit}
newSwapDesc={newSwapDesc} setNewSwapDesc={setNewSwapDesc}
createSwapStationPlan={createSwapStationPlan} handleSave={handleSave}
/> />
)} )}
{ {activeTab === 'parts' && (
activeTab === 'riderrequest' && ( <PartsSettings
<RiderRequestSettings settings={settings}
settings={settings} setSettings={setSettings} setSettings={updateSettings}
activeRiderTab={activeRiderTab} setActiveRiderTab={setActiveRiderTab} showAddPolicy={showAddPolicy}
addRiderPlan={addRiderPlan} setAddRiderPlan={setAddRiderPlan} setShowAddPolicy={setShowAddPolicy}
newRiderName={newRiderName} setNewRiderName={setNewRiderName} newPolicyName={newPolicyName}
newRiderTier={newRiderTier} setNewRiderTier={setNewRiderTier} setNewPolicyName={setNewPolicyName}
newRiderStatus={newRiderStatus} setNewRiderStatus={setNewRiderStatus} newPolicyDesc={newPolicyDesc}
newRiderMin={newRiderMin} setNewRiderMin={setNewRiderMin} setNewPolicyDesc={setNewPolicyDesc}
newRiderMax={newRiderMax} setNewRiderMax={setNewRiderMax} editPolicyDescHtml={editPolicyDescHtml}
newRiderMonthly={newRiderMonthly} setNewRiderMonthly={setNewRiderMonthly} setEditPolicyDescHtml={setEditPolicyDescHtml}
newRiderDaily={newRiderDaily} setNewRiderDaily={setNewRiderDaily} editingPolicy={editingPolicy}
newRiderDeposit={newRiderDeposit} setNewRiderDeposit={setNewRiderDeposit} setEditingPolicy={setEditingPolicy}
newRiderCommission={newRiderCommission} setNewRiderCommission={setNewRiderCommission} editPolicyName={editPolicyName}
newRiderTarget={newRiderTarget} setNewRiderTarget={setNewRiderTarget} setEditPolicyName={setEditPolicyName}
newRiderHoliday={newRiderHoliday} setNewRiderHoliday={setNewRiderHoliday} editPolicyDesc={editPolicyDesc}
newRiderDesc={newRiderDesc} setNewRiderDesc={setNewRiderDesc} setEditPolicyDesc={setEditPolicyDesc}
createRiderPlan={createRiderPlan} handleSave={handleSave}
/> />
)} )}
{activeTab === 'templates' && ( {activeTab === 'companyPolicy' && (
<EmailSMSTemplates settings={settings} setSettings={updateSettings} /> <CompanyPolicySettings
)} settings={settings}
setSettings={updateSettings}
activeMasterTab={activeMasterTab}
setActiveMasterTab={setActiveMasterTab}
activeRentalTypeTab={activeRentalTypeTab}
setActiveRentalTypeTab={setActiveRentalTypeTab}
editingPolicy={editingPolicy}
setEditingPolicy={setEditingPolicy}
editPolicyName={editPolicyName}
setEditPolicyName={setEditPolicyName}
editPolicyDesc={editPolicyDesc}
setEditPolicyDesc={setEditPolicyDesc}
editPolicyDescHtml={editPolicyDescHtml}
setEditPolicyDescHtml={setEditPolicyDescHtml}
showAddPolicy={showAddPolicy}
setShowAddPolicy={setShowAddPolicy}
newPolicyName={newPolicyName}
setNewPolicyName={setNewPolicyName}
newPolicyDesc={newPolicyDesc}
setNewPolicyDesc={setNewPolicyDesc}
newPolicyShowApp={newPolicyShowApp}
setNewPolicyShowApp={setNewPolicyShowApp}
newPolicyShowWeb={newPolicyShowWeb}
setNewPolicyShowWeb={setNewPolicyShowWeb}
editPolicyShowApp={editPolicyShowApp}
setEditPolicyShowApp={setEditPolicyShowApp}
editPolicyShowWeb={editPolicyShowWeb}
setEditPolicyShowWeb={setEditPolicyShowWeb}
/>
)}
{activeTab === 'plans' && (
<PlanSelection
settings={settings}
setSettings={updateSettings}
activePlanTab={activePlanTab}
setActivePlanTab={setActivePlanTab}
handleSave={handleSave}
addNewPlan={addNewPlan}
/>
)}
{activeTab === 'investment' && (
<InvestmentSettings
settings={settings} setSettings={setSettings}
activeInvestTab={activeInvestTab} setActiveInvestTab={setActiveInvestTab}
addInvestPlan={addInvestPlan} setAddInvestPlan={setAddInvestPlan}
newInvestName={newInvestName} setNewInvestName={setNewInvestName}
newInvestStatus={newInvestStatus} setNewInvestStatus={setNewInvestStatus}
newInvestTarget={newInvestTarget} setNewInvestTarget={setNewInvestTarget}
newInvestStart={newInvestStart} setNewInvestStart={setNewInvestStart}
newInvestEnd={newInvestEnd} setNewInvestEnd={setNewInvestEnd}
newInvestMin={newInvestMin} setNewInvestMin={setNewInvestMin}
newInvestMax={newInvestMax} setNewInvestMax={setNewInvestMax}
newInvestDuration={newInvestDuration} setNewInvestDuration={setNewInvestDuration}
newInvestLock={newInvestLock} setNewInvestLock={setNewInvestLock}
newInvestPenalty={newInvestPenalty} setNewInvestPenalty={setNewInvestPenalty}
newInvestMonthly={newInvestMonthly} setNewInvestMonthly={setNewInvestMonthly}
newInvestTotal={newInvestTotal} setNewInvestTotal={setNewInvestTotal}
newInvestFicoSingleRent={newInvestFicoSingleRent} setNewInvestFicoSingleRent={setNewInvestFicoSingleRent}
newInvestFicoRentToOwn={newInvestFicoRentToOwn} setNewInvestFicoRentToOwn={setNewInvestFicoRentToOwn}
newInvestFicoShareEv={newInvestFicoShareEv} setNewInvestFicoShareEv={setNewInvestFicoShareEv}
newInvestDesc={newInvestDesc} setNewInvestDesc={setNewInvestDesc}
createInvestPlan={createInvestPlan} handleSave={handleSave}
/>
)}
{
activeTab === 'swapstation' && (
<SwapStationSettings
settings={settings} setSettings={setSettings}
activeSwapTab={activeSwapTab} setActiveSwapTab={setActiveSwapTab}
addSwapStationPlan={addSwapStationPlan} setAddSwapStationPlan={setAddSwapStationPlan}
newSwapName={newSwapName} setNewSwapName={setNewSwapName}
newSwapStatus={newSwapStatus} setNewSwapStatus={setNewSwapStatus}
newSwapBatteryCount={newSwapBatteryCount} setNewSwapBatteryCount={setNewSwapBatteryCount}
newSwapPrice={newSwapPrice} setNewSwapPrice={setNewSwapPrice}
newSwapMonthly={newSwapMonthly} setNewSwapMonthly={setNewSwapMonthly}
newSwapDaily={newSwapDaily} setNewSwapDaily={setNewSwapDaily}
newSwapMin={newSwapMin} setNewSwapMin={setNewSwapMin}
newSwapMax={newSwapMax} setNewSwapMax={setNewSwapMax}
newSwapProfit={newSwapProfit} setNewSwapProfit={setNewSwapProfit}
newSwapDesc={newSwapDesc} setNewSwapDesc={setNewSwapDesc}
createSwapStationPlan={createSwapStationPlan} handleSave={handleSave}
/>
)}
{
activeTab === 'riderrequest' && (
<RiderRequestSettings
settings={settings} setSettings={setSettings}
activeRiderTab={activeRiderTab} setActiveRiderTab={setActiveRiderTab}
addRiderPlan={addRiderPlan} setAddRiderPlan={setAddRiderPlan}
newRiderName={newRiderName} setNewRiderName={setNewRiderName}
newRiderTier={newRiderTier} setNewRiderTier={setNewRiderTier}
newRiderStatus={newRiderStatus} setNewRiderStatus={setNewRiderStatus}
newRiderMin={newRiderMin} setNewRiderMin={setNewRiderMin}
newRiderMax={newRiderMax} setNewRiderMax={setNewRiderMax}
newRiderMonthly={newRiderMonthly} setNewRiderMonthly={setNewRiderMonthly}
newRiderDaily={newRiderDaily} setNewRiderDaily={setNewRiderDaily}
newRiderDeposit={newRiderDeposit} setNewRiderDeposit={setNewRiderDeposit}
newRiderCommission={newRiderCommission} setNewRiderCommission={setNewRiderCommission}
newRiderTarget={newRiderTarget} setNewRiderTarget={setNewRiderTarget}
newRiderHoliday={newRiderHoliday} setNewRiderHoliday={setNewRiderHoliday}
newRiderDesc={newRiderDesc} setNewRiderDesc={setNewRiderDesc}
createRiderPlan={createRiderPlan} handleSave={handleSave}
/>
)}
{activeTab === 'templates' && (
<EmailSMSTemplates settings={settings} setSettings={updateSettings} />
)}
</div >
</div > </div >
</div > </div >
</div >
</> </>
); );
} }