@teamco/ischeduler-core 2.0.18 → 2.2.0

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.
@@ -96,11 +96,18 @@ export type TSchedulerDuration = {
96
96
  type: keyof typeof EDurationTypes;
97
97
  period: number;
98
98
  };
99
- export type TSchedulerRange = {
100
- startedAt: dayjs.Dayjs | string;
99
+ /**
100
+ * Default date representation for scheduler dates. The date-bearing types below
101
+ * are generic over `D` so a consumer can specialize them (e.g. to a Firestore
102
+ * `Timestamp`) while the package's own UI components keep the `Dayjs | string`
103
+ * default.
104
+ */
105
+ export type TSchedulerDate = dayjs.Dayjs | string;
106
+ export type TSchedulerRange<D = TSchedulerDate> = {
107
+ startedAt: D;
101
108
  endReason: {
102
109
  type: EEndReasonType;
103
- expiredAt: dayjs.Dayjs | string | null;
110
+ expiredAt: D | null;
104
111
  occurrences?: number;
105
112
  };
106
113
  };
@@ -117,36 +124,36 @@ export type TSchedulerRepeat = {
117
124
  months?: (keyof typeof EMonths)[];
118
125
  };
119
126
  };
120
- export interface ISchedulerMetadata {
121
- createdAt?: string | dayjs.Dayjs;
122
- updatedAt?: string | dayjs.Dayjs;
127
+ export interface ISchedulerMetadata<D = TSchedulerDate> {
128
+ createdAt?: D;
129
+ updatedAt?: D;
123
130
  createdBy?: string;
124
131
  updatedBy?: string;
125
132
  }
126
- export interface IScheduler {
133
+ export interface IScheduler<D = TSchedulerDate> {
127
134
  id?: string;
128
135
  type: ESchedulerPrefix;
129
136
  duration: TSchedulerDuration;
130
137
  repeat: TSchedulerRepeat;
131
- range: TSchedulerRange;
138
+ range: TSchedulerRange<D>;
132
139
  discount?: TDiscount | null;
133
140
  status?: EStatus;
134
- metadata?: ISchedulerMetadata;
141
+ metadata?: ISchedulerMetadata<D>;
135
142
  }
136
143
  type TConditionalDiscount<P extends ESchedulerPrefix> = P extends ESchedulerPrefix.SALE ? {
137
144
  [CNsDiscount]?: null;
138
145
  } : {
139
146
  [CNsDiscount]?: TDiscount;
140
147
  };
141
- export type TScheduler<P extends ESchedulerPrefix> = IScheduler & TConditionalDiscount<P>;
142
- export type RequiredSchedulers = {
143
- [K in Exclude<ESchedulerPrefix, ESchedulerPrefix.TRIAL_DISCOUNT>]: TScheduler<K>[];
148
+ export type TScheduler<P extends ESchedulerPrefix, D = TSchedulerDate> = IScheduler<D> & TConditionalDiscount<P>;
149
+ export type RequiredSchedulers<D = TSchedulerDate> = {
150
+ [K in Exclude<ESchedulerPrefix, ESchedulerPrefix.TRIAL_DISCOUNT>]: TScheduler<K, D>[];
144
151
  };
145
- export type OptionalSchedulers = {
146
- [ESchedulerPrefix.TRIAL_DISCOUNT]?: TScheduler<ESchedulerPrefix.TRIAL_DISCOUNT>[];
152
+ export type OptionalSchedulers<D = TSchedulerDate> = {
153
+ [ESchedulerPrefix.TRIAL_DISCOUNT]?: TScheduler<ESchedulerPrefix.TRIAL_DISCOUNT, D>[];
147
154
  };
148
- export type TSchedulers = {
149
- [CScheduler]: RequiredSchedulers & OptionalSchedulers;
155
+ export type TSchedulers<D = TSchedulerDate> = {
156
+ [CScheduler]: RequiredSchedulers<D> & OptionalSchedulers<D>;
150
157
  };
151
158
  export interface IObjectId {
152
159
  id?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teamco/ischeduler-core",
3
- "version": "2.0.18",
3
+ "version": "2.2.0",
4
4
  "description": "Headless core for iScheduler — types, utils, handlers, i18n, provider",
5
5
  "license": "MIT",
6
6
  "repository": {