@seatsio/seatsio-types 2.3.0 → 2.4.2

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.
Files changed (3) hide show
  1. package/LICENSE +21 -0
  2. package/dist/index.d.ts +22 -13
  3. package/package.json +3 -3
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 seats.io
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.d.ts CHANGED
@@ -113,7 +113,7 @@ export interface ChartRendererConfigOptions extends DeprecatedConfigProperties,
113
113
  * @param ticketType The ticket type for which the user clicked on the plus button. Optional.
114
114
  * {@link https://docs.seats.io/docs/renderer/config-cangaselectionbeincreased See documentation}
115
115
  */
116
- canGASelectionBeIncreased?: (gaArea: GeneralAdmissionAreaProps, defaultValue: boolean, extraConfig: ExtraConfig, ticketType?: string) => boolean;
116
+ canGASelectionBeIncreased?: (gaArea: GeneralAdmissionAreaProps, defaultValue: boolean, extraConfig: ExtraConfig, ticketType?: TicketTypeJson) => boolean;
117
117
  /**
118
118
  * If your chart div is enclosed within a <form>element, you can use this configuration option to automatically add the selected seat IDs to the form data. This is one of the ways you can pass the selected seats to your server, so that you can book them later on through the Seats API.
119
119
  * {@link https://docs.seats.io/docs/renderer/config-selectedobjectsinputname See documentation}
@@ -441,17 +441,17 @@ export type ChartRendererCallbacks = {
441
441
  onFloorChanged?: (floor?: Floor) => void;
442
442
  onFullScreenClosed?: () => void;
443
443
  onFullScreenOpened?: () => void;
444
- onHoldFailed?: (objects: BookableObjectProps[], ticketTypes: string[]) => void;
445
- onHoldSucceeded?: (objects: BookableObjectProps[], ticketTypes: string[]) => void;
444
+ onHoldFailed?: (objects: BookableObjectProps[], ticketTypes: TicketTypeJson[]) => void;
445
+ onHoldSucceeded?: (objects: BookableObjectProps[], ticketTypes: TicketTypeJson[]) => void;
446
446
  onHoldTokenExpired?: () => void;
447
447
  onObjectClicked?: (object: SelectableObjectProps) => void;
448
- onObjectDeselected?: (object: BookableObjectProps, selectedTicketType: string) => void;
448
+ onObjectDeselected?: (object: BookableObjectProps, selectedTicketType: TicketTypeJson) => void;
449
449
  onObjectMouseOut?: (object: SelectableObjectProps) => void;
450
450
  onObjectMouseOver?: (object: SelectableObjectProps) => void;
451
- onObjectSelected?: (object: SelectableObjectProps, selectedTicketType: string) => void;
451
+ onObjectSelected?: (object: SelectableObjectProps, selectedTicketType: TicketTypeJson) => void;
452
452
  onObjectStatusChanged?: (object: BookableObjectProps) => void;
453
- onReleaseHoldFailed?: (objects: BookableObjectProps[], ticketTypes: string[]) => void;
454
- onReleaseHoldSucceeded?: (objects: BookableObjectProps[], ticketTypes: string[]) => void;
453
+ onReleaseHoldFailed?: (objects: BookableObjectProps[], ticketTypes: TicketTypeJson[]) => void;
454
+ onReleaseHoldSucceeded?: (objects: BookableObjectProps[], ticketTypes: TicketTypeJson[]) => void;
455
455
  onSelectedObjectBooked?: (object: BookableObjectProps) => void;
456
456
  onSelectionInvalid?: (violations: string[]) => void;
457
457
  onSelectionValid?: () => void;
@@ -699,9 +699,9 @@ export interface CategoryToJSON {
699
699
  export interface PricingJson {
700
700
  price?: PriceType;
701
701
  formattedPrice?: PriceType;
702
- ticketTypes?: TicketTypeJson[];
702
+ ticketTypes?: TicketTypeJsonForPricing[];
703
703
  }
704
- interface TicketTypeJson {
704
+ interface TicketTypeJsonForPricing {
705
705
  ticketType?: string;
706
706
  price?: PriceType;
707
707
  label?: string;
@@ -712,6 +712,15 @@ interface TicketTypeJsonWithoutPrice {
712
712
  label?: string;
713
713
  description?: string;
714
714
  }
715
+ export interface TicketTypeJson {
716
+ ticketType: string;
717
+ price: number;
718
+ originalPrice?: number;
719
+ label?: string;
720
+ description?: string;
721
+ formattedPrice: string;
722
+ formattedOriginalPrice?: string;
723
+ }
715
724
  interface Labels {
716
725
  own: string;
717
726
  displayedLabel: string;
@@ -823,19 +832,19 @@ export interface SeatingChart {
823
832
  changeConfig: (config: ConfigChange) => Promise<void>;
824
833
  clearSelection: () => Promise<void>;
825
834
  deselectCategories: (categoryIds: string[]) => Promise<void>;
826
- deselectObjects: (objects: string[] | Selection[]) => Promise<void>;
835
+ deselectObjects: (objects: (string | Selection)[]) => Promise<void>;
827
836
  destroy: () => void;
828
- findObject: (label: string) => Promise<SelectableObjectProps>;
837
+ findObject: <T extends SelectableObjectProps>(label: string) => Promise<T>;
829
838
  getReportBySelectability: () => Promise<Object>;
830
839
  holdToken: string;
831
840
  listCategories: () => Promise<Category[]>;
832
- listSelectedObjects: () => Promise<(any)[]>;
841
+ listSelectedObjects: <T extends SelectableObjectProps>() => Promise<T[]>;
833
842
  render: () => SeatingChart;
834
843
  rerender: () => void;
835
844
  resetView: () => Promise<void>;
836
845
  selectCategories: (categoryIds: string[]) => Promise<void>;
837
846
  selectedObjects: string[];
838
- selectObjects: (objects: string[] | Selection[]) => Promise<void>;
847
+ selectObjects: (objects: (string | Selection)[]) => Promise<void>;
839
848
  pulse: (objects: string[]) => Promise<void>;
840
849
  unpulse: (objects: string[]) => Promise<void>;
841
850
  startNewSession: () => Promise<void>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@seatsio/seatsio-types",
3
3
  "description": "Type definitions for Seats.io",
4
- "version": "2.3.0",
4
+ "version": "2.4.2",
5
5
  "license": "MIT",
6
6
  "types": "dist/index.d.ts",
7
7
  "files": [
@@ -15,8 +15,8 @@
15
15
  },
16
16
  "scripts": {
17
17
  "build": "tsc",
18
- "test": "yarn tsc src/index.test.ts",
19
- "watch": "tsc --watch",
18
+ "test": "yarn tsc --noEmit src/index.test.ts",
19
+ "test:watch": "tsc --watch src/index.test.ts",
20
20
  "bump-version": "node scripts/bumpVersion.mjs"
21
21
  }
22
22
  }