@discomedia/utils 1.0.17 → 1.0.19

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAK3C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;kBA4Bd,CAAF;;;kBAoCmL,CAAC;;;kBAA4zC,CAAC;;;kBAAkwC,CAAC;;;kBAAisD,CAAC;gBAAkB,CAAC;iBAAmB,CAAC;iBAAmB,CAAC;gBAAkB,CAAC;;;;;;;;;;;;;;;;;;kBAjDl/I,CAAC;;;kBAiD4rS,CAAC;oBAAsB,CAAC;sBAAyB,CAAC;;;kBAAhxP,CAAC;;;kBAA6jc,CAAC;qBAAuB,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;iBAA4B,CAAC;iBAA2B,CAAC;gBAAkB,CAAC;;;;;eAAjgX,CAAC;;;iBAAiE,CAAC;;kBAAmC,CAAC;;;;;kBAA65Q,CAAC;oBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAD9zZ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAK3C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;kBA4Bd,CAAF;;;kBAoCmL,CAAC;;;kBAA4zC,CAAC;;;kBAAkwC,CAAC;;;kBAAisD,CAAC;gBAAkB,CAAC;iBAAmB,CAAC;iBAAmB,CAAC;gBAAkB,CAAC;;;;;;;;;;;;;;;;;;kBAjDl/I,CAAC;;;kBAiD4rS,CAAC;oBAAsB,CAAC;sBAAyB,CAAC;;;kBAAhxP,CAAC;;;kBAAwjc,CAAC;qBAAuB,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;iBAA4B,CAAC;iBAA2B,CAAC;gBAAkB,CAAC;;;;;eAA5/W,CAAC;;;iBAAiE,CAAC;;kBAAmC,CAAC;;;;;kBAA65Q,CAAC;oBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAD9zZ,CAAC"}
@@ -1,9 +1,8 @@
1
- import { Period, IntradayReporting, PeriodDates, MarketTimeParams, OutputFormat, MarketOpenCloseResult, MarketStatus, MarketTimesConfig } from './types/market-time-types';
2
- /**
3
- * Market configuration constants
4
- */
1
+ import { IntradayReporting, PeriodDates, MarketTimeParams, MarketOpenCloseResult, MarketStatus, MarketTimesConfig } from './types/market-time-types';
5
2
  export declare const MARKET_CONFIG: {
6
3
  readonly TIMEZONE: "America/New_York";
4
+ readonly UTC_OFFSET_STANDARD: -5;
5
+ readonly UTC_OFFSET_DST: -4;
7
6
  readonly TIMES: {
8
7
  readonly EXTENDED_START: {
9
8
  readonly hour: 4;
@@ -35,140 +34,24 @@ export declare const MARKET_CONFIG: {
35
34
  };
36
35
  };
37
36
  };
38
- /**
39
- * Service for handling market calendar operations (holidays, early closes, market days)
40
- */
41
- export declare class MarketCalendar {
42
- private timezone;
43
- constructor(timezone?: string);
44
- /**
45
- * Check if a date is a weekend
46
- */
47
- isWeekend(date: Date): boolean;
48
- /**
49
- * Check if a date is a market holiday
50
- */
51
- isHoliday(date: Date): boolean;
52
- /**
53
- * Check if a date is an early close day
54
- */
55
- isEarlyCloseDay(date: Date): boolean;
56
- /**
57
- * Get the early close time for a date (in minutes from midnight)
58
- */
59
- getEarlyCloseTime(date: Date): number | null;
60
- /**
61
- * Check if a date is a market day (not weekend or holiday)
62
- */
63
- isMarketDay(date: Date): boolean;
64
- /**
65
- * Get the next market day from a given date
66
- */
67
- getNextMarketDay(date: Date): Date;
68
- /**
69
- * Get the previous market day from a given date
70
- */
71
- getPreviousMarketDay(date: Date): Date;
72
- }
73
- /**
74
- * Service for formatting time outputs
75
- */
76
- export declare class TimeFormatter {
77
- private timezone;
78
- constructor(timezone?: string);
79
- /**
80
- * Format a date based on the output format
81
- */
82
- formatDate(date: Date, outputFormat?: OutputFormat): string | number;
83
- /**
84
- * Get New York timezone offset
85
- */
86
- getNYTimeZone(date?: Date): '-04:00' | '-05:00';
87
- /**
88
- * Get trading date in YYYY-MM-DD format
89
- */
90
- getTradingDate(time: string | number | Date): string;
91
- }
92
- /**
93
- * Service for core market time calculations
94
- */
95
- export declare class MarketTimeCalculator {
96
- private calendar;
97
- private timezone;
98
- constructor(timezone?: string);
99
- /**
100
- * Get market open/close times for a date
101
- */
102
- getMarketTimes(date: Date): MarketOpenCloseResult;
103
- /**
104
- * Check if a time is within market hours based on intraday reporting mode
105
- */
106
- isWithinMarketHours(date: Date, intradayReporting?: IntradayReporting): boolean;
107
- /**
108
- * Get the last full trading date
109
- */
110
- getLastFullTradingDate(currentDate?: Date, extendedHours?: boolean): Date;
111
- /**
112
- * Get day boundaries based on intraday reporting mode
113
- */
114
- getDayBoundaries(date: Date, intradayReporting?: IntradayReporting): {
115
- start: Date;
116
- end: Date;
117
- };
118
- }
119
- /**
120
- * Service for calculating time periods
121
- */
122
- export declare class PeriodCalculator {
123
- private calendar;
124
- private timeCalculator;
125
- private formatter;
126
- constructor(timezone?: string);
127
- /**
128
- * Calculate the start date for a given period
129
- */
130
- calculatePeriodStartDate(endDate: Date, period: Period): Date;
131
- /**
132
- * Get period dates for market time calculations
133
- */
134
- getMarketTimePeriod(params: MarketTimeParams): PeriodDates;
135
- }
136
- /**
137
- * Service for determining market status
138
- */
139
- export declare class MarketStatusService {
140
- private calendar;
141
- private timeCalculator;
142
- private timezone;
143
- constructor(timezone?: string);
144
- /**
145
- * Get current market status
146
- */
147
- getMarketStatus(date?: Date): MarketStatus;
148
- }
149
- /**
150
- * Get market open/close times for a given date
151
- */
152
37
  export declare function getMarketOpenClose(options?: {
153
38
  date?: Date;
154
39
  }): MarketOpenCloseResult;
155
- /**
156
- * Get start and end dates for a given market time period
157
- */
158
40
  export declare function getStartAndEndDates(params?: MarketTimeParams): {
159
41
  start: Date;
160
42
  end: Date;
161
43
  };
162
44
  /**
163
- * Get the last full trading date
45
+ * Returns the last full trading date as a Date object.
46
+ */
47
+ export declare function getLastFullTradingDate(currentDate?: Date): Date;
48
+ /**
49
+ * Returns the last full trading date and formatted YYYYMMDD string.
164
50
  */
165
- export declare function getLastFullTradingDate(currentDate?: Date): {
51
+ export declare function getLastFullTradingDateInfo(currentDate?: Date): {
166
52
  date: Date;
167
53
  YYYYMMDD: string;
168
54
  };
169
- /**
170
- * Get the next market day
171
- */
172
55
  export declare function getNextMarketDay({ referenceDate }?: {
173
56
  referenceDate?: Date;
174
57
  }): {
@@ -177,35 +60,21 @@ export declare function getNextMarketDay({ referenceDate }?: {
177
60
  dateISOString: string;
178
61
  };
179
62
  /**
180
- * Get trading date in YYYY-MM-DD format
63
+ * Returns the trading date for a given time. Note: Just trims the date string; does not validate if the date is a market day.
64
+ * @param time - a string, number (unix timestamp), or Date object representing the time
65
+ * @returns the trading date as a string in YYYY-MM-DD format
181
66
  */
182
67
  export declare function getTradingDate(time: string | number | Date): string;
183
- /**
184
- * Get New York timezone offset
185
- */
186
68
  export declare function getNYTimeZone(date?: Date): '-04:00' | '-05:00';
187
- /**
188
- * Get current market status
189
- */
190
69
  export declare function getMarketStatus(options?: {
191
70
  date?: Date;
192
71
  }): MarketStatus;
193
- /**
194
- * Check if a date is a market day
195
- */
196
72
  export declare function isMarketDay(date: Date): boolean;
197
- /**
198
- * Check if a date is within market hours
199
- */
200
73
  export declare function isWithinMarketHours(date: Date, intradayReporting?: IntradayReporting): boolean;
201
74
  /**
202
- * Function to find complete trading date periods, starting at the beginning of one trading date and ending at the last.
203
- * By default, it gets the last trading date, returning the beginning and end. But we can also a) define the end date
204
- * on which to look (which is the end market date, e.g. for 8 july 2025 we'd return an end of 16:00 NY time on that date),
205
- * and to go back x days before, e.g. 7 would just subtract raw 7 days, giving us 4-5 trading days (depending on holidays).
206
- * @param options.endDate - The end date to use, defaults to today
207
- * @param options.days - The number of days to go back, defaults to 1
208
- * @returns The start and end dates with proper market open/close times
75
+ * Returns full trading days from market open to market close.
76
+ * endDate is always the most recent market close (previous day's close if before open, today's close if after open).
77
+ * days: 1 or not specified = that day's open; 2 = previous market day's open, etc.
209
78
  */
210
79
  export declare function getTradingStartAndEndDates(options?: {
211
80
  endDate?: Date;
@@ -214,9 +83,6 @@ export declare function getTradingStartAndEndDates(options?: {
214
83
  startDate: Date;
215
84
  endDate: Date;
216
85
  };
217
- /**
218
- * Create a market time utility instance with custom timezone
219
- */
220
86
  export declare function createMarketTimeUtil(timezone?: string, intradayReporting?: IntradayReporting): {
221
87
  isMarketDay: (date: Date) => boolean;
222
88
  isWithinMarketHours: (date: Date) => boolean;
@@ -231,11 +97,6 @@ export declare function createMarketTimeUtil(timezone?: string, intradayReportin
231
97
  getEarlyCloseTime: (date: Date) => number | null;
232
98
  };
233
99
  export declare class MarketTimeUtil {
234
- private calculator;
235
- private calendar;
236
- private formatter;
237
- private periodCalc;
238
- private statusService;
239
100
  private intradayReporting;
240
101
  constructor(timezone?: string, intradayReporting?: IntradayReporting);
241
102
  isMarketDay(date: Date): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"market-time.d.ts","sourceRoot":"","sources":["../../src/market-time.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"market-time.d.ts","sourceRoot":"","sources":["../../src/market-time.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import 'dotenv/config';
1
+ export {};
2
2
  //# sourceMappingURL=test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":"AAEA,OAAO,eAAe,CAAC"}
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAK3C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;kBA4Bd,CAAF;;;kBAoCmL,CAAC;;;kBAA4zC,CAAC;;;kBAAkwC,CAAC;;;kBAAisD,CAAC;gBAAkB,CAAC;iBAAmB,CAAC;iBAAmB,CAAC;gBAAkB,CAAC;;;;;;;;;;;;;;;;;;kBAjDl/I,CAAC;;;kBAiD4rS,CAAC;oBAAsB,CAAC;sBAAyB,CAAC;;;kBAAhxP,CAAC;;;kBAA6jc,CAAC;qBAAuB,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;iBAA4B,CAAC;iBAA2B,CAAC;gBAAkB,CAAC;;;;;eAAjgX,CAAC;;;iBAAiE,CAAC;;kBAAmC,CAAC;;;;;kBAA65Q,CAAC;oBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAD9zZ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAK3C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;kBA4Bd,CAAF;;;kBAoCmL,CAAC;;;kBAA4zC,CAAC;;;kBAAkwC,CAAC;;;kBAAisD,CAAC;gBAAkB,CAAC;iBAAmB,CAAC;iBAAmB,CAAC;gBAAkB,CAAC;;;;;;;;;;;;;;;;;;kBAjDl/I,CAAC;;;kBAiD4rS,CAAC;oBAAsB,CAAC;sBAAyB,CAAC;;;kBAAhxP,CAAC;;;kBAAwjc,CAAC;qBAAuB,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;uBAAkC,CAAC;wBAAmC,CAAC;iBAA4B,CAAC;iBAA2B,CAAC;gBAAkB,CAAC;;;;;eAA5/W,CAAC;;;iBAAiE,CAAC;;kBAAmC,CAAC;;;;;kBAA65Q,CAAC;oBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAD9zZ,CAAC"}
@@ -1,9 +1,8 @@
1
- import { Period, IntradayReporting, PeriodDates, MarketTimeParams, OutputFormat, MarketOpenCloseResult, MarketStatus, MarketTimesConfig } from './types/market-time-types';
2
- /**
3
- * Market configuration constants
4
- */
1
+ import { IntradayReporting, PeriodDates, MarketTimeParams, MarketOpenCloseResult, MarketStatus, MarketTimesConfig } from './types/market-time-types';
5
2
  export declare const MARKET_CONFIG: {
6
3
  readonly TIMEZONE: "America/New_York";
4
+ readonly UTC_OFFSET_STANDARD: -5;
5
+ readonly UTC_OFFSET_DST: -4;
7
6
  readonly TIMES: {
8
7
  readonly EXTENDED_START: {
9
8
  readonly hour: 4;
@@ -35,140 +34,24 @@ export declare const MARKET_CONFIG: {
35
34
  };
36
35
  };
37
36
  };
38
- /**
39
- * Service for handling market calendar operations (holidays, early closes, market days)
40
- */
41
- export declare class MarketCalendar {
42
- private timezone;
43
- constructor(timezone?: string);
44
- /**
45
- * Check if a date is a weekend
46
- */
47
- isWeekend(date: Date): boolean;
48
- /**
49
- * Check if a date is a market holiday
50
- */
51
- isHoliday(date: Date): boolean;
52
- /**
53
- * Check if a date is an early close day
54
- */
55
- isEarlyCloseDay(date: Date): boolean;
56
- /**
57
- * Get the early close time for a date (in minutes from midnight)
58
- */
59
- getEarlyCloseTime(date: Date): number | null;
60
- /**
61
- * Check if a date is a market day (not weekend or holiday)
62
- */
63
- isMarketDay(date: Date): boolean;
64
- /**
65
- * Get the next market day from a given date
66
- */
67
- getNextMarketDay(date: Date): Date;
68
- /**
69
- * Get the previous market day from a given date
70
- */
71
- getPreviousMarketDay(date: Date): Date;
72
- }
73
- /**
74
- * Service for formatting time outputs
75
- */
76
- export declare class TimeFormatter {
77
- private timezone;
78
- constructor(timezone?: string);
79
- /**
80
- * Format a date based on the output format
81
- */
82
- formatDate(date: Date, outputFormat?: OutputFormat): string | number;
83
- /**
84
- * Get New York timezone offset
85
- */
86
- getNYTimeZone(date?: Date): '-04:00' | '-05:00';
87
- /**
88
- * Get trading date in YYYY-MM-DD format
89
- */
90
- getTradingDate(time: string | number | Date): string;
91
- }
92
- /**
93
- * Service for core market time calculations
94
- */
95
- export declare class MarketTimeCalculator {
96
- private calendar;
97
- private timezone;
98
- constructor(timezone?: string);
99
- /**
100
- * Get market open/close times for a date
101
- */
102
- getMarketTimes(date: Date): MarketOpenCloseResult;
103
- /**
104
- * Check if a time is within market hours based on intraday reporting mode
105
- */
106
- isWithinMarketHours(date: Date, intradayReporting?: IntradayReporting): boolean;
107
- /**
108
- * Get the last full trading date
109
- */
110
- getLastFullTradingDate(currentDate?: Date, extendedHours?: boolean): Date;
111
- /**
112
- * Get day boundaries based on intraday reporting mode
113
- */
114
- getDayBoundaries(date: Date, intradayReporting?: IntradayReporting): {
115
- start: Date;
116
- end: Date;
117
- };
118
- }
119
- /**
120
- * Service for calculating time periods
121
- */
122
- export declare class PeriodCalculator {
123
- private calendar;
124
- private timeCalculator;
125
- private formatter;
126
- constructor(timezone?: string);
127
- /**
128
- * Calculate the start date for a given period
129
- */
130
- calculatePeriodStartDate(endDate: Date, period: Period): Date;
131
- /**
132
- * Get period dates for market time calculations
133
- */
134
- getMarketTimePeriod(params: MarketTimeParams): PeriodDates;
135
- }
136
- /**
137
- * Service for determining market status
138
- */
139
- export declare class MarketStatusService {
140
- private calendar;
141
- private timeCalculator;
142
- private timezone;
143
- constructor(timezone?: string);
144
- /**
145
- * Get current market status
146
- */
147
- getMarketStatus(date?: Date): MarketStatus;
148
- }
149
- /**
150
- * Get market open/close times for a given date
151
- */
152
37
  export declare function getMarketOpenClose(options?: {
153
38
  date?: Date;
154
39
  }): MarketOpenCloseResult;
155
- /**
156
- * Get start and end dates for a given market time period
157
- */
158
40
  export declare function getStartAndEndDates(params?: MarketTimeParams): {
159
41
  start: Date;
160
42
  end: Date;
161
43
  };
162
44
  /**
163
- * Get the last full trading date
45
+ * Returns the last full trading date as a Date object.
46
+ */
47
+ export declare function getLastFullTradingDate(currentDate?: Date): Date;
48
+ /**
49
+ * Returns the last full trading date and formatted YYYYMMDD string.
164
50
  */
165
- export declare function getLastFullTradingDate(currentDate?: Date): {
51
+ export declare function getLastFullTradingDateInfo(currentDate?: Date): {
166
52
  date: Date;
167
53
  YYYYMMDD: string;
168
54
  };
169
- /**
170
- * Get the next market day
171
- */
172
55
  export declare function getNextMarketDay({ referenceDate }?: {
173
56
  referenceDate?: Date;
174
57
  }): {
@@ -177,35 +60,21 @@ export declare function getNextMarketDay({ referenceDate }?: {
177
60
  dateISOString: string;
178
61
  };
179
62
  /**
180
- * Get trading date in YYYY-MM-DD format
63
+ * Returns the trading date for a given time. Note: Just trims the date string; does not validate if the date is a market day.
64
+ * @param time - a string, number (unix timestamp), or Date object representing the time
65
+ * @returns the trading date as a string in YYYY-MM-DD format
181
66
  */
182
67
  export declare function getTradingDate(time: string | number | Date): string;
183
- /**
184
- * Get New York timezone offset
185
- */
186
68
  export declare function getNYTimeZone(date?: Date): '-04:00' | '-05:00';
187
- /**
188
- * Get current market status
189
- */
190
69
  export declare function getMarketStatus(options?: {
191
70
  date?: Date;
192
71
  }): MarketStatus;
193
- /**
194
- * Check if a date is a market day
195
- */
196
72
  export declare function isMarketDay(date: Date): boolean;
197
- /**
198
- * Check if a date is within market hours
199
- */
200
73
  export declare function isWithinMarketHours(date: Date, intradayReporting?: IntradayReporting): boolean;
201
74
  /**
202
- * Function to find complete trading date periods, starting at the beginning of one trading date and ending at the last.
203
- * By default, it gets the last trading date, returning the beginning and end. But we can also a) define the end date
204
- * on which to look (which is the end market date, e.g. for 8 july 2025 we'd return an end of 16:00 NY time on that date),
205
- * and to go back x days before, e.g. 7 would just subtract raw 7 days, giving us 4-5 trading days (depending on holidays).
206
- * @param options.endDate - The end date to use, defaults to today
207
- * @param options.days - The number of days to go back, defaults to 1
208
- * @returns The start and end dates with proper market open/close times
75
+ * Returns full trading days from market open to market close.
76
+ * endDate is always the most recent market close (previous day's close if before open, today's close if after open).
77
+ * days: 1 or not specified = that day's open; 2 = previous market day's open, etc.
209
78
  */
210
79
  export declare function getTradingStartAndEndDates(options?: {
211
80
  endDate?: Date;
@@ -214,9 +83,6 @@ export declare function getTradingStartAndEndDates(options?: {
214
83
  startDate: Date;
215
84
  endDate: Date;
216
85
  };
217
- /**
218
- * Create a market time utility instance with custom timezone
219
- */
220
86
  export declare function createMarketTimeUtil(timezone?: string, intradayReporting?: IntradayReporting): {
221
87
  isMarketDay: (date: Date) => boolean;
222
88
  isWithinMarketHours: (date: Date) => boolean;
@@ -231,11 +97,6 @@ export declare function createMarketTimeUtil(timezone?: string, intradayReportin
231
97
  getEarlyCloseTime: (date: Date) => number | null;
232
98
  };
233
99
  export declare class MarketTimeUtil {
234
- private calculator;
235
- private calendar;
236
- private formatter;
237
- private periodCalc;
238
- private statusService;
239
100
  private intradayReporting;
240
101
  constructor(timezone?: string, intradayReporting?: IntradayReporting);
241
102
  isMarketDay(date: Date): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"market-time.d.ts","sourceRoot":"","sources":["../../src/market-time.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"market-time.d.ts","sourceRoot":"","sources":["../../src/market-time.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import 'dotenv/config';
1
+ export {};
2
2
  //# sourceMappingURL=test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":"AAEA,OAAO,eAAe,CAAC"}
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.0.17",
6
+ "version": "1.0.19",
7
7
  "author": "Disco Media",
8
8
  "description": "Utility functions used in Disco Media apps",
9
9
  "always-build-npm": true,
@@ -36,7 +36,7 @@
36
36
  "date-fns-tz": "^3.2.0",
37
37
  "dotenv": "^17.2.0",
38
38
  "ms": "^2.1.3",
39
- "openai": "^5.9.0",
39
+ "openai": "^5.10.1",
40
40
  "p-limit": "^6.2.0",
41
41
  "ws": "^8.18.3"
42
42
  },
@@ -50,7 +50,7 @@
50
50
  "@types/ms": "^2.1.0",
51
51
  "@types/ws": "^8.18.1",
52
52
  "lightweight-charts": "^5.0.8",
53
- "rollup": "^4.45.0",
53
+ "rollup": "^4.45.1",
54
54
  "typescript": "^5.8.3"
55
55
  }
56
56
  }