diff --git a/bizmatch-server/src/app.module.ts b/bizmatch-server/src/app.module.ts
index 69afd8e..e2d1dd2 100644
--- a/bizmatch-server/src/app.module.ts
+++ b/bizmatch-server/src/app.module.ts
@@ -1,59 +1,50 @@
import { MiddlewareConsumer, Module } from '@nestjs/common';
+import { ConfigModule } from '@nestjs/config';
+import { WinstonModule, utilities as nestWinstonModuleUtilities } from 'nest-winston';
+import path from 'path';
+import { fileURLToPath } from 'url';
+import * as winston from 'winston';
import { AppController } from './app.controller.js';
import { AppService } from './app.service.js';
-import { FileService } from './file/file.service.js';
-import { AuthService } from './auth/auth.service.js';
-import { AuthController } from './auth/auth.controller.js';
-import { ConfigModule } from '@nestjs/config';
-import { SelectOptionsController } from './select-options/select-options.controller.js';
-import { SelectOptionsService } from './select-options/select-options.service.js';
-import { SubscriptionsController } from './subscriptions/subscriptions.controller.js';
-import { RedisModule } from './redis/redis.module.js';
-import { ListingsService } from './listings/listings.service.js';
-import { ServeStaticModule } from '@nestjs/serve-static';
-import path, { join } from 'path';
-import { fileURLToPath } from 'url';
-import { utilities as nestWinstonModuleUtilities, WinstonModule } from 'nest-winston';
-import * as winston from 'winston';
-import { MailModule } from './mail/mail.module.js';
import { AuthModule } from './auth/auth.module.js';
+import { FileService } from './file/file.service.js';
import { GeoModule } from './geo/geo.module.js';
-import { UserModule } from './user/user.module.js';
-import { ListingsModule } from './listings/listings.module.js';
-import { SelectOptionsModule } from './select-options/select-options.module.js';
-import { CommercialPropertyListingsController } from './listings/commercial-property-listings.controller.js';
import { ImageModule } from './image/image.module.js';
+import { ListingsModule } from './listings/listings.module.js';
+import { MailModule } from './mail/mail.module.js';
import { RequestDurationMiddleware } from './request-duration/request-duration.middleware.js';
+import { SelectOptionsModule } from './select-options/select-options.module.js';
+import { SubscriptionsController } from './subscriptions/subscriptions.controller.js';
+import { UserModule } from './user/user.module.js';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
@Module({
- imports: [ConfigModule.forRoot({isGlobal: true}), MailModule, AuthModule,
- ServeStaticModule.forRoot({
- rootPath: join(__dirname, '../..', 'pictures'), // `public` ist das Verzeichnis, wo Ihre statischen Dateien liegen
- }),
+ imports: [
+ ConfigModule.forRoot({ isGlobal: true }),
+ MailModule,
+ AuthModule,
WinstonModule.forRoot({
- transports: [
- new winston.transports.Console({
- format: winston.format.combine(
- winston.format.timestamp(),
- winston.format.ms(),
- nestWinstonModuleUtilities.format.nestLike('Bizmatch', {
- colors: true,
- prettyPrint: true,
- }),
- ),
- }),
- // other transports...
- ],
- // other options
+ transports: [
+ new winston.transports.Console({
+ format: winston.format.combine(
+ winston.format.timestamp(),
+ winston.format.ms(),
+ nestWinstonModuleUtilities.format.nestLike('Bizmatch', {
+ colors: true,
+ prettyPrint: true,
+ }),
+ ),
+ }),
+ // other transports...
+ ],
+ // other options
}),
GeoModule,
UserModule,
ListingsModule,
SelectOptionsModule,
- RedisModule,
ImageModule,
],
controllers: [AppController, SubscriptionsController],
@@ -62,5 +53,5 @@ const __dirname = path.dirname(__filename);
export class AppModule {
configure(consumer: MiddlewareConsumer) {
consumer.apply(RequestDurationMiddleware).forRoutes('*');
- }
+ }
}
diff --git a/bizmatch-server/src/listings/listings.module.ts b/bizmatch-server/src/listings/listings.module.ts
index e2a9019..7fc855a 100644
--- a/bizmatch-server/src/listings/listings.module.ts
+++ b/bizmatch-server/src/listings/listings.module.ts
@@ -1,22 +1,17 @@
-import { Injectable, Module, OnModuleInit } from '@nestjs/common';
-import { BusinessListingsController } from './business-listings.controller.js';
-import { ListingsService } from './listings.service.js';
-import { CommercialPropertyListingsController } from './commercial-property-listings.controller.js';
-import { RedisModule } from '../redis/redis.module.js';
-import { FileService } from '../file/file.service.js';
-import { UnknownListingsController } from './unknown-listings.controller.js';
-import { UserModule } from '../user/user.module.js';
-import { BrokerListingsController } from './broker-listings.controller.js';
-import { UserService } from '../user/user.service.js';
-import { Client, Connection } from 'pg';
-import { drizzle } from 'drizzle-orm/node-postgres';
+import { Module } from '@nestjs/common';
import { DrizzleModule } from '../drizzle/drizzle.module.js';
-
+import { FileService } from '../file/file.service.js';
+import { UserService } from '../user/user.service.js';
+import { BrokerListingsController } from './broker-listings.controller.js';
+import { BusinessListingsController } from './business-listings.controller.js';
+import { CommercialPropertyListingsController } from './commercial-property-listings.controller.js';
+import { ListingsService } from './listings.service.js';
+import { UnknownListingsController } from './unknown-listings.controller.js';
@Module({
- imports: [RedisModule,DrizzleModule],
- controllers: [BusinessListingsController, CommercialPropertyListingsController,UnknownListingsController,BrokerListingsController],
- providers: [ListingsService,FileService,UserService],
- exports: [ListingsService],
- })
+ imports: [DrizzleModule],
+ controllers: [BusinessListingsController, CommercialPropertyListingsController, UnknownListingsController, BrokerListingsController],
+ providers: [ListingsService, FileService, UserService],
+ exports: [ListingsService],
+})
export class ListingsModule {}
diff --git a/bizmatch-server/src/mail/mail.module.ts b/bizmatch-server/src/mail/mail.module.ts
index f424531..854c08c 100644
--- a/bizmatch-server/src/mail/mail.module.ts
+++ b/bizmatch-server/src/mail/mail.module.ts
@@ -11,21 +11,17 @@ import { MailController } from './mail.controller.js';
import { MailService } from './mail.service.js';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
+const user = process.env.amazon_user;
+const password = process.env.amazon_password;
@Module({
imports: [
DrizzleModule,
UserModule,
MailerModule.forRoot({
- // transport: 'smtps://user@example.com:topsecret@smtp.example.com',
- // or
transport: {
host: 'email-smtp.us-east-2.amazonaws.com',
secure: false,
port: 587,
- // auth: {
- // user: 'andreas.knuth@gmail.com',
- // pass: 'ksnh xjae dqbv xana',
- // },
auth: {
user: 'AKIAU6GDWVAQ2QNFLNWN',
pass: 'BDE9nZv/ARbpotim1mIOir52WgIbpSi9cv1oJoH8oEf7',
diff --git a/bizmatch-server/src/redis/redis.module.ts b/bizmatch-server/src/redis/redis.module.ts
deleted file mode 100644
index 761809a..0000000
--- a/bizmatch-server/src/redis/redis.module.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-// redis.module.ts
-import { Module } from '@nestjs/common';
-
-@Module({
- providers: [
- // {
- // provide: 'REDIS_OPTIONS',
- // useValue: {
- // url: 'redis://localhost:6379'
- // }
- // },
- // {
- // inject: ['REDIS_OPTIONS'],
- // provide: 'REDIS_CLIENT',
- // useFactory: async (options: { url: string }) => {
- // const client = createClient(options);
- // await client.connect();
- // return client;
- // }
- // }
- ],
- // exports:['REDIS_CLIENT']
-})
-export class RedisModule {}
-export const REDIS_CLIENT = "REDIS_CLIENT";
-// redis.service.ts
-import { Injectable } from '@nestjs/common';
-import { createClient } from 'redis';
-
-
diff --git a/bizmatch-server/src/user/user.module.ts b/bizmatch-server/src/user/user.module.ts
index 2059e7a..f24ba9c 100644
--- a/bizmatch-server/src/user/user.module.ts
+++ b/bizmatch-server/src/user/user.module.ts
@@ -1,14 +1,12 @@
import { Module } from '@nestjs/common';
+import { DrizzleModule } from '../drizzle/drizzle.module.js';
+import { FileService } from '../file/file.service.js';
import { UserController } from './user.controller.js';
import { UserService } from './user.service.js';
-import { RedisModule } from '../redis/redis.module.js';
-import { FileService } from '../file/file.service.js';
-import { DrizzleModule } from '../drizzle/drizzle.module.js';
@Module({
imports: [DrizzleModule],
controllers: [UserController],
- providers: [UserService,FileService]
+ providers: [UserService, FileService],
})
-export class UserModule {
-}
+export class UserModule {}
diff --git a/bizmatch/certs/cert.pem b/bizmatch/certs/cert.pem
new file mode 100644
index 0000000..8a620be
--- /dev/null
+++ b/bizmatch/certs/cert.pem
@@ -0,0 +1,32 @@
+-----BEGIN CERTIFICATE-----
+MIIFgTCCA2mgAwIBAgIUa+QJdPmuRDNbuf/nzb2J+6ii5nwwDQYJKoZIhvcNAQEL
+BQAwUDELMAkGA1UEBhMCREUxDDAKBgNVBAgMA05SVzEQMA4GA1UEBwwHRVJLUkFU
+SDEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMB4XDTI0MDUxMDEy
+NTQxNVoXDTI1MDUxMDEyNTQxNVowUDELMAkGA1UEBhMCREUxDDAKBgNVBAgMA05S
+VzEQMA4GA1UEBwwHRVJLUkFUSDEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQ
+dHkgTHRkMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxiTSQDCC/i3n
+X6bMKpl0baUgjbzYDc7ZrvIYfj/t25sdv0E/07ysbXNuldzCX6Rnva/1wVZS30zy
+vQm8cVM074oP9qy7wKeIU15nEwRe03P5zipix1WXGWXHY+ShZ2MHy/iDQ1XzpO3p
+xXs2vxuJZSUoz1M0c+/pTWBx2D790l5qNkt2sbk5NaHfPQDuw+y2cXDqmJqcCi9I
+rYbaQGhXeb/IRu8pW4UwasVsq7DxGlDX8k8Dva5O0Ixf+muqQELuMdeTtR/PoFxw
+2F+qOUlS2ujuyQkLOvVZOTalxRfWMuexaQzLlQO91MDehTrOFuMUBCKhYztgZKe2
+k9z0fTJmtLyxMPTQuZCv1Gnrw6hcVxjiFQ8YP2ni+ekb86dIA3llH8r+4xEGygfB
+QxHiBH9uO8Q9MFpfU2CPE7GxQoB17fu4KqaK0ucVnNM+rJcsNom9svixb5C4CkS/
+S1/KQVDi8mrYwQIOP+Y4YLuNvSvUlitZXq8h0ogVqNMl2+R0CYX4lk/mkOEeCeGW
+yG4ek2GQxZNLAnoMoLb+kHnVhPaV0SWW052wvXZzOrIMrlkSZK6yYim3JPsD8hc/
+284lNEFL3DknICPsVFd64LjwPxA0J5AqyhQAvpXyFVHUUA5+h2EATrBh/Fp9cw84
+AkEeVArMWOlx5cg7nAdgQaD5XUaBp7kCAwEAAaNTMFEwHQYDVR0OBBYEFMSO9FoT
+nqjHpniyExGf53tV/TAhMB8GA1UdIwQYMBaAFMSO9FoTnqjHpniyExGf53tV/TAh
+MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIBADbsIroXoCIe8adn
+zh/WNZUUXLDW3JU2QyyYKhnZgqE0Wqh5QLgNwd5ZfH3Iaqhf0xFH9jUeEAWWA17d
+hVy4rWsC200DRZ5BYOaffqdflpDE3yAk+8p3kAWjogaCX1wvBuLZ9BHWpuqQ72ec
+zYM2ag2wWfBpicXl4BaSnsx1xErxKvxgixgGy6BhcErmfnYtJDnU2Cl+MSMXb758
+7hAl9JiJAH8OuaAjvbkhSVTZQFjDgCGHHQ8mR8IksWdGGe/LN/yoWc4lk7lv7vmu
+YBfP/SNZvxBzZlw1fXcdz1Wirljy7yz3+s59Knkc2jysysFC4LkZlUy0unmGoPy0
+D1XdXyDMy05eoUaeRnM0rfzUxYfXMA3sQlsWw7he6fD8YylVedXxd3mcfK0jle0y
+VkDyreZ9+mc/4vmjW0KpOfFGvhhAS9L1D8K3bKpky3HoHSqK1Nb8Ymh/WkhOpHwg
+unUyIKdRHvGeWkUXQaLbRKI6w2BQwT7oKDOD60cJG26U3XcYarevz9qHsZX865tj
+4xZrp+IUr8OkYBnRrmx2TZ70goRXI77nHVzHmY+xHhjvPJOZOcUAvEHU+5VY3ucN
+0noEqiYzb77LcqVbbL3cywDLiyfdx9/x8TU1iYPA+IMwhYb/tLBFzFWmR7znw6On
+D775XK/EVryozX/6GmtG+XGZs+57
+-----END CERTIFICATE-----
diff --git a/bizmatch/certs/key.pem b/bizmatch/certs/key.pem
new file mode 100644
index 0000000..087b9b6
--- /dev/null
+++ b/bizmatch/certs/key.pem
@@ -0,0 +1,52 @@
+-----BEGIN PRIVATE KEY-----
+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
+qs7lw2IbVhzRkVryySXsCXn2O1iu
+-----END PRIVATE KEY-----
diff --git a/bizmatch/package.json b/bizmatch/package.json
index fce27ef..3805cb1 100644
--- a/bizmatch/package.json
+++ b/bizmatch/package.json
@@ -3,7 +3,7 @@
"version": "0.0.1",
"scripts": {
"ng": "ng",
- "start": "ng serve",
+ "start": "ng serve & http-server ../bizmatch-server",
"build": "ng build",
"build.dev": "ng build --configuration dev",
"watch": "ng build --watch --configuration development",
@@ -55,6 +55,7 @@
"@types/express": "^4.17.21",
"@types/jasmine": "~5.1.4",
"@types/node": "^20.11.20",
+ "http-server": "^14.1.1",
"jasmine-core": "~5.1.2",
"karma": "~6.4.2",
"karma-chrome-launcher": "~3.2.0",
diff --git a/bizmatch/proxy.conf.json b/bizmatch/proxy.conf.json
index 5280472..ac67e3b 100644
--- a/bizmatch/proxy.conf.json
+++ b/bizmatch/proxy.conf.json
@@ -3,19 +3,8 @@
"target": "http://localhost:3000",
"secure": false
},
- "/property": {
- "target": "http://localhost:3000",
- "secure": false,
- "changeOrigin": true
- },
- "/logo": {
- "target": "http://localhost:3000",
- "secure": false,
- "changeOrigin": true
- },
- "/profile": {
- "target": "http://localhost:3000",
- "secure": false,
- "changeOrigin": true
+ "/pictures": {
+ "target": "http://localhost:8080",
+ "secure": false
}
}
\ No newline at end of file
diff --git a/bizmatch/src/app/components/header/header.component.ts b/bizmatch/src/app/components/header/header.component.ts
index 3a25b15..dc40b99 100644
--- a/bizmatch/src/app/components/header/header.component.ts
+++ b/bizmatch/src/app/components/header/header.component.ts
@@ -87,17 +87,17 @@ export class HeaderComponent {
{
label: 'Businesses for Sale',
routerLink: '/businessListings',
- fragment: '',
+ state: {},
},
{
label: 'Commercial Property',
routerLink: '/commercialPropertyListings',
- fragment: '',
+ state: {},
},
{
label: 'Professionals/Brokers Directory',
routerLink: '/brokerListings',
- fragment: '',
+ state: {},
},
];
diff --git a/bizmatch/src/app/pages/details/details-commercial-property-listing/details-commercial-property-listing.component.html b/bizmatch/src/app/pages/details/details-commercial-property-listing/details-commercial-property-listing.component.html
index 74c4574..edf2ea9 100644
--- a/bizmatch/src/app/pages/details/details-commercial-property-listing/details-commercial-property-listing.component.html
+++ b/bizmatch/src/app/pages/details/details-commercial-property-listing/details-commercial-property-listing.component.html
@@ -42,13 +42,8 @@
+
+
} @else {
}
@@ -34,7 +34,7 @@
+
}
@@ -123,7 +123,7 @@
}
diff --git a/bizmatch/src/app/pages/home/home.component.ts b/bizmatch/src/app/pages/home/home.component.ts
index 6088b74..49a7d89 100644
--- a/bizmatch/src/app/pages/home/home.component.ts
+++ b/bizmatch/src/app/pages/home/home.component.ts
@@ -54,7 +54,7 @@ export class HomeComponent {
}
search() {
const data = { keep: true };
- this.router.navigate([`${this.activeTabAction}Listings`], { state: { data } });
+ this.router.navigate([`${this.activeTabAction}Listings`]);
}
login() {
diff --git a/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.html b/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.html
index b221d8f..d81cf38 100644
--- a/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.html
+++ b/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.html
@@ -3,7 +3,23 @@
+
} @else {
}
@@ -39,7 +55,7 @@
+
} @else {
}
diff --git a/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.ts b/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.ts
index a2e3392..2c1a6ad 100644
--- a/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.ts
+++ b/bizmatch/src/app/pages/listings/broker-listings/broker-listings.component.ts
@@ -1,4 +1,4 @@
-import { CommonModule } from '@angular/common';
+import { CommonModule, NgOptimizedImage } from '@angular/common';
import { ChangeDetectorRef, Component } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { ActivatedRoute, Router, RouterModule } from '@angular/router';
@@ -23,7 +23,21 @@ import { getCriteriaStateObject, getSessionStorageHandler, resetCriteria } from
@Component({
selector: 'app-broker-listings',
standalone: true,
- imports: [CommonModule, StyleClassModule, ButtonModule, CheckboxModule, InputTextModule, DropdownModule, FormsModule, StyleClassModule, ToggleButtonModule, RouterModule, PaginatorModule, InputGroupModule],
+ imports: [
+ CommonModule,
+ StyleClassModule,
+ ButtonModule,
+ CheckboxModule,
+ InputTextModule,
+ DropdownModule,
+ FormsModule,
+ StyleClassModule,
+ ToggleButtonModule,
+ RouterModule,
+ PaginatorModule,
+ InputGroupModule,
+ NgOptimizedImage,
+ ],
templateUrl: './broker-listings.component.html',
styleUrl: './broker-listings.component.scss',
})
@@ -59,7 +73,7 @@ export class BrokerListingsComponent {
this.criteria = onChange(getCriteriaStateObject(), getSessionStorageHandler);
this.criteria.type = undefined;
this.route.data.subscribe(async () => {
- if (!this.router.getCurrentNavigation().extras.state) {
+ if (this.router.getCurrentNavigation().extras.state) {
resetCriteria(this.criteria);
}
this.init();
@@ -67,7 +81,7 @@ export class BrokerListingsComponent {
}
async ngOnInit() {
const statesResult = await this.listingsService.getAllStates('business');
- this.states = statesResult.map(s => s.state).map(ls => ({ name: this.selectOptions.getState(ls as string), value: ls }));
+ this.states = statesResult.map(ls => ({ name: this.selectOptions.getState(ls.state as string), value: ls.state, count: ls.count }));
}
async init() {
this.search();
diff --git a/bizmatch/src/app/pages/listings/business-listings/business-listings.component.html b/bizmatch/src/app/pages/listings/business-listings/business-listings.component.html
index cb2478e..596555f 100644
--- a/bizmatch/src/app/pages/listings/business-listings/business-listings.component.html
+++ b/bizmatch/src/app/pages/listings/business-listings/business-listings.component.html
@@ -3,10 +3,29 @@
Established: {{ listing.established }}
+
}
diff --git a/bizmatch/src/app/pages/listings/commercial-property-listings/commercial-property-listings.component.ts b/bizmatch/src/app/pages/listings/commercial-property-listings/commercial-property-listings.component.ts
index 2cf7360..a854f4b 100644
--- a/bizmatch/src/app/pages/listings/commercial-property-listings/commercial-property-listings.component.ts
+++ b/bizmatch/src/app/pages/listings/commercial-property-listings/commercial-property-listings.component.ts
@@ -55,7 +55,7 @@ export class CommercialPropertyListingsComponent {
this.criteria = onChange(getCriteriaStateObject(), getSessionStorageHandler);
this.criteria.type = undefined;
this.route.data.subscribe(async () => {
- if (!this.router.getCurrentNavigation().extras.state) {
+ if (this.router.getCurrentNavigation().extras.state) {
resetCriteria(this.criteria);
}
this.init();
@@ -63,8 +63,8 @@ export class CommercialPropertyListingsComponent {
}
async ngOnInit() {}
async init() {
- const statesResult = await this.listingsService.getAllStates('business');
- this.states = statesResult.map(s => s.state).map(ls => ({ name: this.selectOptions.getState(ls as string), value: ls }));
+ const statesResult = await this.listingsService.getAllStates('commercialProperty');
+ this.states = statesResult.map(ls => ({ name: this.selectOptions.getState(ls.state as string), value: ls.state, count: ls.count }));
this.search();
}
refine() {
diff --git a/bizmatch/src/app/pages/subscription/account/account.component.ts b/bizmatch/src/app/pages/subscription/account/account.component.ts
index 8b88b7d..6ffaa57 100644
--- a/bizmatch/src/app/pages/subscription/account/account.component.ts
+++ b/bizmatch/src/app/pages/subscription/account/account.component.ts
@@ -74,8 +74,8 @@ export class AccountComponent {
if (!this.user.licensedIn || this.user.licensedIn?.length === 0) {
this.user.licensedIn = [''];
}
- this.profileUrl = this.user.hasProfile ? `profile/${this.user.id}.avif` : `/assets/images/placeholder.png`;
- this.companyLogoUrl = this.user.hasCompanyLogo ? `logo/${this.user.id}.avif` : `/assets/images/placeholder.png`;
+ this.profileUrl = this.user.hasProfile ? `pictures/profile/${this.user.id}.avif` : `/assets/images/placeholder.png`;
+ this.companyLogoUrl = this.user.hasCompanyLogo ? `pictures/logo/${this.user.id}.avif` : `/assets/images/placeholder.png`;
}
printInvoice(invoice: Invoice) {}
@@ -87,11 +87,11 @@ export class AccountComponent {
onUploadCompanyLogo(event: any) {
const uniqueSuffix = '?_ts=' + new Date().getTime();
- this.companyLogoUrl = `${environment.apiBaseUrl}/logo/${this.user.id}${uniqueSuffix}`; //`http://IhrServer:Port/${newImagePath}${uniqueSuffix}`;
+ this.companyLogoUrl = `pictures/logo/${this.user.id}${uniqueSuffix}`;
}
onUploadProfilePicture(event: any) {
const uniqueSuffix = '?_ts=' + new Date().getTime();
- this.profileUrl = `${environment.apiBaseUrl}/profile/${this.user.id}${uniqueSuffix}`; //`http://IhrServer:Port/${newImagePath}${uniqueSuffix}`;
+ this.profileUrl = `pictures/profile/${this.user.id}${uniqueSuffix}`;
}
setImageToFallback(event: Event) {
(event.target as HTMLImageElement).src = `/assets/images/placeholder.png`; // Pfad zum Platzhalterbild
diff --git a/bizmatch/src/app/pages/subscription/edit-commercial-property-listing/edit-commercial-property-listing.component.html b/bizmatch/src/app/pages/subscription/edit-commercial-property-listing/edit-commercial-property-listing.component.html
index 8077d56..a850dee 100644
--- a/bizmatch/src/app/pages/subscription/edit-commercial-property-listing/edit-commercial-property-listing.component.html
+++ b/bizmatch/src/app/pages/subscription/edit-commercial-property-listing/edit-commercial-property-listing.component.html
@@ -103,7 +103,7 @@
@for (image of propertyImages; track image) {
+