@monarkmarkets/marketplace 2.0.10 → 2.0.11

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.
package/README.md CHANGED
@@ -1,178 +1,178 @@
1
- # @monarkmarkets/marketplace
2
-
3
- A package of reusable React components for displaying pre-IPO company data and SPV investment opportunities.
4
-
5
- ## Installation
6
-
7
- ```bash
8
- npm install @monarkmarkets/marketplace
9
- ```
10
-
11
- ## Peer Dependencies
12
-
13
- This package expects compatible versions of the following to already exist in your app:
14
-
15
- - `react` ^18.2.0 || ^19
16
- - `react-dom` ^18.2.0 || ^19
17
-
18
- The package bundles `@monarkmarkets/api-client@1.3.10` for its data fetching needs so you do not need to install it
19
- separately.
20
-
21
- ## Features
22
-
23
- - **Auto-fetching tables** - Tables that handle their own data fetching and pagination
24
- - **Responsive design** - Clean, modern styling that works across devices
25
- - **Customizable** - Configurable appearance and behavior
26
-
27
- ## Components
28
-
29
- ### PrimaryTable
30
-
31
- Displays SPV investment opportunities with built-in data fetching from the SPV service.
32
-
33
- ```jsx
34
- import {PrimaryTable} from '@monarkmarkets/marketplace';
35
-
36
- function MyPage() {
37
- return (
38
- <PrimaryTable
39
- investorId="investor-123"
40
- buttonText="Invest"
41
- searchTerm="AI"
42
- onButtonClick={(companyId, investorId) => {
43
- // Handle button click
44
- }}
45
- onDataLoaded={(data, totalPages) => {
46
- // Handle data loaded event
47
- }}
48
- />
49
- );
50
- }
51
- ```
52
-
53
- ### PrivateTable
54
-
55
- Displays pre-IPO company information with built-in data fetching from the company service.
56
-
57
- ```jsx
58
- import {PrivateTable} from '@monarkmarkets/marketplace';
59
-
60
- function MyPage() {
61
- return (
62
- <PrivateTable
63
- investorId="investor-123"
64
- buttonText="Submit IOI"
65
- searchTerm="fintech"
66
- onButtonClick={(companyId, investorId) => {
67
- // Handle button click
68
- }}
69
- onDataLoaded={(data, totalPages) => {
70
- // Handle data loaded event
71
- }}
72
- />
73
- );
74
- }
75
- ```
76
-
77
- ## Props
78
-
79
- ### Common Props (BaseTableProps)
80
-
81
- | Prop | Type | Default | Description |
82
- |---------------|-------------------------------------------------|--------------------------|--------------------------------------|
83
- | investorId | string | (required) | ID of the investor |
84
- | onButtonClick | (companyId: string, investorId: string) => void | undefined | Callback for button clicks |
85
- | buttonText | string | "Invest" or "Submit IOI" | Text to display on the action button |
86
- | isLoading | boolean | false | External loading state |
87
- | initialPage | number | 1 | Initial page to display |
88
- | pageSize | number | 10 | Number of items per page |
89
- | searchTerm | string | '' | Search term to filter results |
90
- | onPageChange | (page: number) => void | undefined | Callback for page changes |
91
-
92
- ### PrimaryTable Props
93
-
94
- | Prop | Type | Default | Description |
95
- |--------------|---------------------------------------------------------|-----------|------------------------------|
96
- | onDataLoaded | (data: IPreIPOCompanySPV[], totalPages: number) => void | undefined | Callback when data is loaded |
97
-
98
- ### PrivateTable Props
99
-
100
- | Prop | Type | Default | Description |
101
- |--------------|------------------------------------------------------|-----------|------------------------------|
102
- | onDataLoaded | (data: IPreIPOCompany[], totalPages: number) => void | undefined | Callback when data is loaded |
103
-
104
- ## Example
105
-
106
- Here's a complete example of using both tables in a marketplace page:
107
-
108
- ```jsx
109
- import React, {useState} from 'react';
110
- import {PrivateTable, PrimaryTable} from '@monarkmarkets/marketplace';
111
-
112
- const MarketplacePage = () => {
113
- const [isLoading, setIsLoading] = useState(true);
114
- const [ioiSearchQuery, setIoiSearchQuery] = useState('');
115
- const [spvSearchQuery, setSpvSearchQuery] = useState('');
116
-
117
- const handleDataLoaded = () => {
118
- setIsLoading(false);
119
- };
120
-
121
- const handleIOIButtonClick = (companyId, investorId) => {
122
- // Navigate to company details
123
- };
124
-
125
- const handleSPVButtonClick = (companyId, investorId) => {
126
- // Navigate to SPV details
127
- };
128
-
129
- return (
130
- <div>
131
- <h1>Marketplace</h1>
132
-
133
- <div>
134
- <h2>Private Companies</h2>
135
- <input
136
- type="text"
137
- value={ioiSearchQuery}
138
- onChange={(e) => setIoiSearchQuery(e.target.value)}
139
- placeholder="Search companies..."
140
- />
141
- <PrivateTable
142
- investorId="investor-123"
143
- buttonText="Submit IOI"
144
- searchTerm={ioiSearchQuery}
145
- onButtonClick={handleIOIButtonClick}
146
- onDataLoaded={handleDataLoaded}
147
- />
148
- </div>
149
-
150
- <div>
151
- <h2>SPV Opportunities</h2>
152
- <input
153
- type="text"
154
- value={spvSearchQuery}
155
- onChange={(e) => setSpvSearchQuery(e.target.value)}
156
- placeholder="Search SPVs..."
157
- />
158
- <PrimaryTable
159
- investorId="investor-123"
160
- buttonText="Invest"
161
- searchTerm={spvSearchQuery}
162
- onButtonClick={handleSPVButtonClick}
163
- onDataLoaded={handleDataLoaded}
164
- />
165
- </div>
166
- </div>
167
- );
168
- };
169
- ```
170
-
171
- ## Dependencies
172
-
173
- - React 18.0+
174
- - @monarkmarkets/api-client
175
-
176
- ## License
177
-
178
- Copyright © 2025 Monark Markets. All rights reserved.
1
+ # @monarkmarkets/marketplace
2
+
3
+ A package of reusable React components for displaying pre-IPO company data and SPV investment opportunities.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @monarkmarkets/marketplace
9
+ ```
10
+
11
+ ## Peer Dependencies
12
+
13
+ This package expects compatible versions of the following to already exist in your app:
14
+
15
+ - `react` ^18.2.0 || ^19
16
+ - `react-dom` ^18.2.0 || ^19
17
+
18
+ The package bundles `@monarkmarkets/api-client@1.3.10` for its data fetching needs so you do not need to install it
19
+ separately.
20
+
21
+ ## Features
22
+
23
+ - **Auto-fetching tables** - Tables that handle their own data fetching and pagination
24
+ - **Responsive design** - Clean, modern styling that works across devices
25
+ - **Customizable** - Configurable appearance and behavior
26
+
27
+ ## Components
28
+
29
+ ### PrimaryTable
30
+
31
+ Displays SPV investment opportunities with built-in data fetching from the SPV service.
32
+
33
+ ```jsx
34
+ import {PrimaryTable} from '@monarkmarkets/marketplace';
35
+
36
+ function MyPage() {
37
+ return (
38
+ <PrimaryTable
39
+ investorId="investor-123"
40
+ buttonText="Invest"
41
+ searchTerm="AI"
42
+ onButtonClick={(companyId, investorId) => {
43
+ // Handle button click
44
+ }}
45
+ onDataLoaded={(data, totalPages) => {
46
+ // Handle data loaded event
47
+ }}
48
+ />
49
+ );
50
+ }
51
+ ```
52
+
53
+ ### PrivateTable
54
+
55
+ Displays pre-IPO company information with built-in data fetching from the company service.
56
+
57
+ ```jsx
58
+ import {PrivateTable} from '@monarkmarkets/marketplace';
59
+
60
+ function MyPage() {
61
+ return (
62
+ <PrivateTable
63
+ investorId="investor-123"
64
+ buttonText="Submit IOI"
65
+ searchTerm="fintech"
66
+ onButtonClick={(companyId, investorId) => {
67
+ // Handle button click
68
+ }}
69
+ onDataLoaded={(data, totalPages) => {
70
+ // Handle data loaded event
71
+ }}
72
+ />
73
+ );
74
+ }
75
+ ```
76
+
77
+ ## Props
78
+
79
+ ### Common Props (BaseTableProps)
80
+
81
+ | Prop | Type | Default | Description |
82
+ |---------------|-------------------------------------------------|--------------------------|--------------------------------------|
83
+ | investorId | string | (required) | ID of the investor |
84
+ | onButtonClick | (companyId: string, investorId: string) => void | undefined | Callback for button clicks |
85
+ | buttonText | string | "Invest" or "Submit IOI" | Text to display on the action button |
86
+ | isLoading | boolean | false | External loading state |
87
+ | initialPage | number | 1 | Initial page to display |
88
+ | pageSize | number | 10 | Number of items per page |
89
+ | searchTerm | string | '' | Search term to filter results |
90
+ | onPageChange | (page: number) => void | undefined | Callback for page changes |
91
+
92
+ ### PrimaryTable Props
93
+
94
+ | Prop | Type | Default | Description |
95
+ |--------------|---------------------------------------------------------|-----------|------------------------------|
96
+ | onDataLoaded | (data: IPreIPOCompanySPV[], totalPages: number) => void | undefined | Callback when data is loaded |
97
+
98
+ ### PrivateTable Props
99
+
100
+ | Prop | Type | Default | Description |
101
+ |--------------|------------------------------------------------------|-----------|------------------------------|
102
+ | onDataLoaded | (data: IPreIPOCompany[], totalPages: number) => void | undefined | Callback when data is loaded |
103
+
104
+ ## Example
105
+
106
+ Here's a complete example of using both tables in a marketplace page:
107
+
108
+ ```jsx
109
+ import React, {useState} from 'react';
110
+ import {PrivateTable, PrimaryTable} from '@monarkmarkets/marketplace';
111
+
112
+ const MarketplacePage = () => {
113
+ const [isLoading, setIsLoading] = useState(true);
114
+ const [ioiSearchQuery, setIoiSearchQuery] = useState('');
115
+ const [spvSearchQuery, setSpvSearchQuery] = useState('');
116
+
117
+ const handleDataLoaded = () => {
118
+ setIsLoading(false);
119
+ };
120
+
121
+ const handleIOIButtonClick = (companyId, investorId) => {
122
+ // Navigate to company details
123
+ };
124
+
125
+ const handleSPVButtonClick = (companyId, investorId) => {
126
+ // Navigate to SPV details
127
+ };
128
+
129
+ return (
130
+ <div>
131
+ <h1>Marketplace</h1>
132
+
133
+ <div>
134
+ <h2>Private Companies</h2>
135
+ <input
136
+ type="text"
137
+ value={ioiSearchQuery}
138
+ onChange={(e) => setIoiSearchQuery(e.target.value)}
139
+ placeholder="Search companies..."
140
+ />
141
+ <PrivateTable
142
+ investorId="investor-123"
143
+ buttonText="Submit IOI"
144
+ searchTerm={ioiSearchQuery}
145
+ onButtonClick={handleIOIButtonClick}
146
+ onDataLoaded={handleDataLoaded}
147
+ />
148
+ </div>
149
+
150
+ <div>
151
+ <h2>SPV Opportunities</h2>
152
+ <input
153
+ type="text"
154
+ value={spvSearchQuery}
155
+ onChange={(e) => setSpvSearchQuery(e.target.value)}
156
+ placeholder="Search SPVs..."
157
+ />
158
+ <PrimaryTable
159
+ investorId="investor-123"
160
+ buttonText="Invest"
161
+ searchTerm={spvSearchQuery}
162
+ onButtonClick={handleSPVButtonClick}
163
+ onDataLoaded={handleDataLoaded}
164
+ />
165
+ </div>
166
+ </div>
167
+ );
168
+ };
169
+ ```
170
+
171
+ ## Dependencies
172
+
173
+ - React 18.0+
174
+ - @monarkmarkets/api-client
175
+
176
+ ## License
177
+
178
+ Copyright © 2025 Monark Markets. All rights reserved.
package/dist/index.esm.js CHANGED
@@ -915,7 +915,7 @@ var PreIPOCompanySPVService = /** @class */function () {
915
915
  _a.label = 1;
916
916
  case 1:
917
917
  _a.trys.push([1, 3,, 4]);
918
- return [4 /*yield*/, this._client.getAllPreIPOCompanySPVs(investorId, MonarkStage.PRIMARY_FUNDRAISE, undefined, nameFilter, preIPOCompanyId, preIPOCompanyInvestmentId, undefined, page, pageSize, sortOrder, sortBy)];
918
+ return [4 /*yield*/, this._client.getAllPreIPOCompanySPVs(investorId, MonarkStage.PRIMARY_FUNDRAISE, undefined, nameFilter, preIPOCompanyId, preIPOCompanyInvestmentId, true, page, pageSize, sortOrder, sortBy)];
919
919
  case 2:
920
920
  return [2 /*return*/, _a.sent()];
921
921
  case 3: