@seatsio/seatsio-react 15.20.0 → 15.22.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.
package/build/index.d.mts CHANGED
@@ -12,7 +12,7 @@ type EmbeddableProps<T> = {
12
12
  declare abstract class Embeddable<T extends CommonConfigOptions> extends React.Component<EmbeddableProps<T>> {
13
13
  private container;
14
14
  private chart;
15
- private firstRender;
15
+ private mountId;
16
16
  private static seatsioBundles;
17
17
  static defaultProps: {
18
18
  chartJsUrl: string;
@@ -22,7 +22,7 @@ declare abstract class Embeddable<T extends CommonConfigOptions> extends React.C
22
22
  componentDidMount(): void;
23
23
  componentDidUpdate(prevProps: EmbeddableProps<T>): void;
24
24
  getChartUrl(): string;
25
- createAndRenderChart(): Promise<void>;
25
+ createAndRenderChart(currentMountId: number): Promise<void>;
26
26
  extractConfigFromProps(): any;
27
27
  componentWillUnmount(): void;
28
28
  destroyChart(): void;
package/build/index.d.ts CHANGED
@@ -12,7 +12,7 @@ type EmbeddableProps<T> = {
12
12
  declare abstract class Embeddable<T extends CommonConfigOptions> extends React.Component<EmbeddableProps<T>> {
13
13
  private container;
14
14
  private chart;
15
- private firstRender;
15
+ private mountId;
16
16
  private static seatsioBundles;
17
17
  static defaultProps: {
18
18
  chartJsUrl: string;
@@ -22,7 +22,7 @@ declare abstract class Embeddable<T extends CommonConfigOptions> extends React.C
22
22
  componentDidMount(): void;
23
23
  componentDidUpdate(prevProps: EmbeddableProps<T>): void;
24
24
  getChartUrl(): string;
25
- createAndRenderChart(): Promise<void>;
25
+ createAndRenderChart(currentMountId: number): Promise<void>;
26
26
  extractConfigFromProps(): any;
27
27
  componentWillUnmount(): void;
28
28
  destroyChart(): void;
package/build/index.js CHANGED
@@ -66,29 +66,27 @@ var didPropsChange = (prevProps, nextProps) => {
66
66
  var _Embeddable = class _Embeddable extends React.Component {
67
67
  constructor(props) {
68
68
  super(props);
69
+ this.mountId = 0;
69
70
  this.container = React.createRef();
70
- this.firstRender = true;
71
71
  }
72
72
  componentDidMount() {
73
- if (!_Embeddable.seatsioBundles[this.getChartUrl()] || this.firstRender) {
74
- this.createAndRenderChart();
75
- this.firstRender = false;
76
- }
73
+ this.createAndRenderChart(this.mountId);
77
74
  }
78
75
  componentDidUpdate(prevProps) {
79
76
  if (this.chart) {
80
77
  this.chart.config = this.extractConfigFromProps();
81
78
  if (didPropsChange(this.props, prevProps)) {
82
79
  this.destroyChart();
83
- this.createAndRenderChart();
80
+ this.createAndRenderChart(this.mountId);
84
81
  }
85
82
  }
86
83
  }
87
84
  getChartUrl() {
88
85
  return this.props.chartJsUrl.replace("{region}", this.props.region);
89
86
  }
90
- async createAndRenderChart() {
87
+ async createAndRenderChart(currentMountId) {
91
88
  const seatsio2 = await this.loadSeatsio();
89
+ if (currentMountId !== this.mountId) return;
92
90
  const config = this.extractConfigFromProps();
93
91
  this.chart = this.createChart(seatsio2, config).render();
94
92
  if (this.props.onRenderStarted) {
@@ -101,6 +99,7 @@ var _Embeddable = class _Embeddable extends React.Component {
101
99
  return config;
102
100
  }
103
101
  componentWillUnmount() {
102
+ this.mountId++;
104
103
  this.destroyChart();
105
104
  }
106
105
  destroyChart() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main/index.ts","../src/main/Embeddable.tsx","../src/main/util.ts","../src/main/SeatsioDesigner.tsx","../src/main/SeatsioEventManager.tsx","../src/main/SeatsioSeatingChart.tsx"],"sourcesContent":["export { default as SeatsioDesigner } from './SeatsioDesigner'\nexport { default as SeatsioEventManager } from './SeatsioEventManager'\nexport { default as SeatsioSeatingChart } from './SeatsioSeatingChart'\nexport { isBooth, isGeneralAdmission, isSeat, isTable } from '@seatsio/seatsio-types'\nexport type * from '@seatsio/seatsio-types'\n","import * as React from 'react'\nimport {didPropsChange} from './util'\nimport {ChartDesigner, CommonConfigOptions, EventManager, Region, SeatingChart, Seatsio} from '@seatsio/seatsio-types'\n\nexport type EmbeddableProps<T> = {\n onRenderStarted?: (chart: SeatingChart | EventManager) => void\n chartJsUrl?: string\n region: Region\n} & T\n\nexport default abstract class Embeddable<T extends CommonConfigOptions> extends React.Component<EmbeddableProps<T>> {\n private container: React.RefObject<HTMLDivElement>\n private chart: SeatingChart\n private firstRender: boolean\n\n private static seatsioBundles: { [key: string]: Promise<Seatsio> } = {}\n\n static defaultProps = {\n chartJsUrl: 'https://cdn-{region}.seatsio.net/chart.js'\n }\n\n constructor(props: EmbeddableProps<T>) {\n super(props);\n this.container = React.createRef()\n this.firstRender = true\n }\n\n abstract createChart (seatsio: Seatsio, config: T): SeatingChart | EventManager | ChartDesigner\n\n componentDidMount () {\n if (!Embeddable.seatsioBundles[this.getChartUrl()] || this.firstRender) {\n this.createAndRenderChart()\n this.firstRender = false\n }\n }\n\n componentDidUpdate (prevProps: EmbeddableProps<T>) {\n if(this.chart) {\n // @ts-ignore\n this.chart.config = this.extractConfigFromProps()\n if (didPropsChange(this.props, prevProps)) {\n this.destroyChart()\n this.createAndRenderChart()\n }\n }\n }\n\n getChartUrl () {\n return this.props.chartJsUrl.replace('{region}', this.props.region)\n }\n\n async createAndRenderChart () {\n const seatsio = await this.loadSeatsio()\n const config = this.extractConfigFromProps()\n this.chart = this.createChart(seatsio, config).render()\n if (this.props.onRenderStarted) {\n this.props.onRenderStarted(this.chart)\n }\n }\n\n extractConfigFromProps (): any {\n let { chartJsUrl, divId, onRenderStarted, region, ...config } = this.props\n // @ts-ignore\n config.container = this.container.current\n return config\n }\n\n componentWillUnmount () {\n this.destroyChart()\n }\n\n destroyChart () {\n if (this.chart && (this.chart as any).state !== 'DESTROYED') {\n this.chart.destroy()\n }\n }\n\n loadSeatsio (): Promise<Seatsio> {\n const chartUrl = this.getChartUrl()\n if (!Embeddable.seatsioBundles[chartUrl]) {\n Embeddable.seatsioBundles[chartUrl] = new Promise<Seatsio>((resolve, reject) => {\n const script = document.head.appendChild(document.createElement('script'))\n // Seatsio global is not replaced if already present, which would cause the wrong region bundle to resolve when changing region\n window.seatsio = undefined\n script.onload = () => {\n resolve(seatsio)\n }\n script.onerror = () => reject(`Could not load ${script.src}`)\n script.src = chartUrl\n })\n }\n\n return Embeddable.seatsioBundles[chartUrl]\n }\n\n render (): React.ReactNode {\n return (\n <div ref={this.container as unknown as React.RefObject<HTMLDivElement>} style={{'height': '100%', 'width': '100%'}} />\n )\n }\n}\n","import {Booth, GeneralAdmissionArea, InteractiveSection, Seat, SelectableObject, Table} from \"@seatsio/seatsio-types\"\n\nexport const didPropsChange = <P extends { [key: string]: any}>(prevProps: P, nextProps: P): boolean => {\n if (Object.keys(prevProps).length !== Object.keys(nextProps).length) {\n return true\n }\n return Object.keys(nextProps).some((propName: string) => {\n let prevValue = prevProps[propName]\n let nextValue = nextProps[propName]\n if (prevValue && nextValue) {\n if (typeof prevValue === 'function' && typeof nextValue === 'function') {\n return prevValue.toString() !== nextValue.toString()\n }\n if (typeof prevValue === 'object' && typeof nextValue === 'object') {\n return didPropsChange(prevValue, nextValue)\n }\n }\n return prevValue !== nextValue\n })\n}\n","import Embeddable from './Embeddable'\nimport { ChartDesignerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\n\nexport default class SeatsioDesigner extends Embeddable<ChartDesignerConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartDesignerConfigOptions) {\n return new seatsio.SeatingChartDesigner(config)\n }\n}","import { EventManagerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioEventManager extends Embeddable<EventManagerConfigOptions> {\n createChart (seatsio: Seatsio, config: EventManagerConfigOptions) {\n return new seatsio.EventManager(config)\n }\n}","import { ChartRendererConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioSeatingChart extends Embeddable<ChartRendererConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartRendererConfigOptions) {\n return new seatsio.SeatingChart(config)\n }\n}"],"mappings":"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","names":["seatsio","seatsio","seatsio","seatsio"]}
1
+ {"version":3,"sources":["../src/main/index.ts","../src/main/Embeddable.tsx","../src/main/util.ts","../src/main/SeatsioDesigner.tsx","../src/main/SeatsioEventManager.tsx","../src/main/SeatsioSeatingChart.tsx"],"sourcesContent":["export { default as SeatsioDesigner } from './SeatsioDesigner'\nexport { default as SeatsioEventManager } from './SeatsioEventManager'\nexport { default as SeatsioSeatingChart } from './SeatsioSeatingChart'\nexport { isBooth, isGeneralAdmission, isSeat, isTable } from '@seatsio/seatsio-types'\nexport type * from '@seatsio/seatsio-types'\n","import { ChartDesigner, CommonConfigOptions, EventManager, Region, SeatingChart, Seatsio } from '@seatsio/seatsio-types'\nimport * as React from 'react'\nimport { didPropsChange } from './util'\n\nexport type EmbeddableProps<T> = {\n onRenderStarted?: (chart: SeatingChart | EventManager) => void\n chartJsUrl?: string\n region: Region\n} & T\n\nexport default abstract class Embeddable<T extends CommonConfigOptions> extends React.Component<EmbeddableProps<T>> {\n private container: React.RefObject<HTMLDivElement>\n private chart: SeatingChart\n private mountId: number = 0\n\n private static seatsioBundles: { [key: string]: Promise<Seatsio> } = {}\n\n static defaultProps = {\n chartJsUrl: 'https://cdn-{region}.seatsio.net/chart.js'\n }\n\n constructor(props: EmbeddableProps<T>) {\n super(props);\n this.container = React.createRef()\n }\n\n abstract createChart (seatsio: Seatsio, config: T): SeatingChart | EventManager | ChartDesigner\n\n componentDidMount () {\n this.createAndRenderChart(this.mountId)\n }\n\n componentDidUpdate (prevProps: EmbeddableProps<T>) {\n if(this.chart) {\n // @ts-ignore\n this.chart.config = this.extractConfigFromProps()\n if (didPropsChange(this.props, prevProps)) {\n this.destroyChart()\n this.createAndRenderChart(this.mountId)\n }\n }\n }\n\n getChartUrl () {\n return this.props.chartJsUrl.replace('{region}', this.props.region)\n }\n\n async createAndRenderChart (currentMountId: number) {\n const seatsio = await this.loadSeatsio()\n if (currentMountId !== this.mountId) return\n const config = this.extractConfigFromProps()\n this.chart = this.createChart(seatsio, config).render()\n if (this.props.onRenderStarted) {\n this.props.onRenderStarted(this.chart)\n }\n }\n\n extractConfigFromProps (): any {\n let { chartJsUrl, divId, onRenderStarted, region, ...config } = this.props\n // @ts-ignore\n config.container = this.container.current\n return config\n }\n\n componentWillUnmount () {\n this.mountId++\n this.destroyChart()\n }\n\n destroyChart () {\n if (this.chart && (this.chart as any).state !== 'DESTROYED') {\n this.chart.destroy()\n }\n }\n\n loadSeatsio (): Promise<Seatsio> {\n const chartUrl = this.getChartUrl()\n if (!Embeddable.seatsioBundles[chartUrl]) {\n Embeddable.seatsioBundles[chartUrl] = new Promise<Seatsio>((resolve, reject) => {\n const script = document.head.appendChild(document.createElement('script'))\n // Seatsio global is not replaced if already present, which would cause the wrong region bundle to resolve when changing region\n window.seatsio = undefined\n script.onload = () => {\n resolve(seatsio)\n }\n script.onerror = () => reject(`Could not load ${script.src}`)\n script.src = chartUrl\n })\n }\n\n return Embeddable.seatsioBundles[chartUrl]\n }\n\n render (): React.ReactNode {\n return (\n <div ref={this.container as unknown as React.RefObject<HTMLDivElement>} style={{'height': '100%', 'width': '100%'}} />\n )\n }\n}\n","import {Booth, GeneralAdmissionArea, InteractiveSection, Seat, SelectableObject, Table} from \"@seatsio/seatsio-types\"\n\nexport const didPropsChange = <P extends { [key: string]: any}>(prevProps: P, nextProps: P): boolean => {\n if (Object.keys(prevProps).length !== Object.keys(nextProps).length) {\n return true\n }\n return Object.keys(nextProps).some((propName: string) => {\n let prevValue = prevProps[propName]\n let nextValue = nextProps[propName]\n if (prevValue && nextValue) {\n if (typeof prevValue === 'function' && typeof nextValue === 'function') {\n return prevValue.toString() !== nextValue.toString()\n }\n if (typeof prevValue === 'object' && typeof nextValue === 'object') {\n return didPropsChange(prevValue, nextValue)\n }\n }\n return prevValue !== nextValue\n })\n}\n","import Embeddable from './Embeddable'\nimport { ChartDesignerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\n\nexport default class SeatsioDesigner extends Embeddable<ChartDesignerConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartDesignerConfigOptions) {\n return new seatsio.SeatingChartDesigner(config)\n }\n}","import { EventManagerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioEventManager extends Embeddable<EventManagerConfigOptions> {\n createChart (seatsio: Seatsio, config: EventManagerConfigOptions) {\n return new seatsio.EventManager(config)\n }\n}","import { ChartRendererConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioSeatingChart extends Embeddable<ChartRendererConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartRendererConfigOptions) {\n return new seatsio.SeatingChart(config)\n }\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,YAAuB;;;ACChB,IAAM,iBAAiB,CAAkC,WAAc,cAA0B;AACpG,MAAI,OAAO,KAAK,SAAS,EAAE,WAAW,OAAO,KAAK,SAAS,EAAE,QAAQ;AACjE,WAAO;AAAA,EACX;AACA,SAAO,OAAO,KAAK,SAAS,EAAE,KAAK,CAAC,aAAqB;AACrD,QAAI,YAAY,UAAU,QAAQ;AAClC,QAAI,YAAY,UAAU,QAAQ;AAClC,QAAI,aAAa,WAAW;AACxB,UAAI,OAAO,cAAc,cAAc,OAAO,cAAc,YAAY;AACpE,eAAO,UAAU,SAAS,MAAM,UAAU,SAAS;AAAA,MACvD;AACA,UAAI,OAAO,cAAc,YAAY,OAAO,cAAc,UAAU;AAChE,eAAO,eAAe,WAAW,SAAS;AAAA,MAC9C;AAAA,IACJ;AACA,WAAO,cAAc;AAAA,EACzB,CAAC;AACL;;;ADTA,IAA8B,cAA9B,MAA8B,oBAAwD,gBAA8B;AAAA,EAWhH,YAAY,OAA2B;AACnC,UAAM,KAAK;AATf,SAAQ,UAAkB;AAUtB,SAAK,YAAkB,gBAAU;AAAA,EACrC;AAAA,EAIA,oBAAqB;AACjB,SAAK,qBAAqB,KAAK,OAAO;AAAA,EAC1C;AAAA,EAEA,mBAAoB,WAA+B;AAC/C,QAAG,KAAK,OAAO;AAEX,WAAK,MAAM,SAAS,KAAK,uBAAuB;AAChD,UAAI,eAAe,KAAK,OAAO,SAAS,GAAG;AACvC,aAAK,aAAa;AAClB,aAAK,qBAAqB,KAAK,OAAO;AAAA,MAC1C;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,cAAe;AACX,WAAO,KAAK,MAAM,WAAW,QAAQ,YAAY,KAAK,MAAM,MAAM;AAAA,EACtE;AAAA,EAEA,MAAM,qBAAsB,gBAAwB;AAChD,UAAMA,WAAU,MAAM,KAAK,YAAY;AACvC,QAAI,mBAAmB,KAAK,QAAS;AACrC,UAAM,SAAS,KAAK,uBAAuB;AAC3C,SAAK,QAAQ,KAAK,YAAYA,UAAS,MAAM,EAAE,OAAO;AACtD,QAAI,KAAK,MAAM,iBAAiB;AAC5B,WAAK,MAAM,gBAAgB,KAAK,KAAK;AAAA,IACzC;AAAA,EACJ;AAAA,EAEA,yBAA+B;AAC3B,QAAI,EAAE,YAAY,OAAO,iBAAiB,QAAQ,GAAG,OAAO,IAAI,KAAK;AAErE,WAAO,YAAY,KAAK,UAAU;AAClC,WAAO;AAAA,EACX;AAAA,EAEA,uBAAwB;AACpB,SAAK;AACL,SAAK,aAAa;AAAA,EACtB;AAAA,EAEA,eAAgB;AACZ,QAAI,KAAK,SAAU,KAAK,MAAc,UAAU,aAAa;AACzD,WAAK,MAAM,QAAQ;AAAA,IACvB;AAAA,EACJ;AAAA,EAEA,cAAiC;AAC7B,UAAM,WAAW,KAAK,YAAY;AAClC,QAAI,CAAC,YAAW,eAAe,QAAQ,GAAG;AACtC,kBAAW,eAAe,QAAQ,IAAI,IAAI,QAAiB,CAAC,SAAS,WAAW;AAC5E,cAAM,SAAS,SAAS,KAAK,YAAY,SAAS,cAAc,QAAQ,CAAC;AAEzE,eAAO,UAAU;AACjB,eAAO,SAAS,MAAM;AAClB,kBAAQ,OAAO;AAAA,QACnB;AACA,eAAO,UAAU,MAAM,OAAO,kBAAkB,OAAO,GAAG,EAAE;AAC5D,eAAO,MAAM;AAAA,MACjB,CAAC;AAAA,IACL;AAEA,WAAO,YAAW,eAAe,QAAQ;AAAA,EAC7C;AAAA,EAEA,SAA2B;AACvB,WACI,oCAAC,SAAI,KAAK,KAAK,WAAyD,OAAO,EAAC,UAAU,QAAQ,SAAS,OAAM,GAAG;AAAA,EAE5H;AACJ;AAxF8B,YAKX,iBAAsD,CAAC;AAL5C,YAOnB,eAAe;AAAA,EAClB,YAAY;AAChB;AATJ,IAA8B,aAA9B;;;AEPA,IAAqB,kBAArB,cAA6C,WAAuC;AAAA,EAChF,YAAaC,UAAkB,QAAoC;AAC/D,WAAO,IAAIA,SAAQ,qBAAqB,MAAM;AAAA,EAClD;AACJ;;;ACJA,IAAqB,sBAArB,cAAiD,WAAsC;AAAA,EACnF,YAAaC,UAAkB,QAAmC;AAC9D,WAAO,IAAIA,SAAQ,aAAa,MAAM;AAAA,EAC1C;AACJ;;;ACJA,IAAqB,sBAArB,cAAiD,WAAuC;AAAA,EACpF,YAAaC,UAAkB,QAAoC;AAC/D,WAAO,IAAIA,SAAQ,aAAa,MAAM;AAAA,EAC1C;AACJ;;;ALJA,2BAA6D;","names":["seatsio","seatsio","seatsio","seatsio"]}
package/build/index.mjs CHANGED
@@ -25,29 +25,27 @@ var didPropsChange = (prevProps, nextProps) => {
25
25
  var _Embeddable = class _Embeddable extends React.Component {
26
26
  constructor(props) {
27
27
  super(props);
28
+ this.mountId = 0;
28
29
  this.container = React.createRef();
29
- this.firstRender = true;
30
30
  }
31
31
  componentDidMount() {
32
- if (!_Embeddable.seatsioBundles[this.getChartUrl()] || this.firstRender) {
33
- this.createAndRenderChart();
34
- this.firstRender = false;
35
- }
32
+ this.createAndRenderChart(this.mountId);
36
33
  }
37
34
  componentDidUpdate(prevProps) {
38
35
  if (this.chart) {
39
36
  this.chart.config = this.extractConfigFromProps();
40
37
  if (didPropsChange(this.props, prevProps)) {
41
38
  this.destroyChart();
42
- this.createAndRenderChart();
39
+ this.createAndRenderChart(this.mountId);
43
40
  }
44
41
  }
45
42
  }
46
43
  getChartUrl() {
47
44
  return this.props.chartJsUrl.replace("{region}", this.props.region);
48
45
  }
49
- async createAndRenderChart() {
46
+ async createAndRenderChart(currentMountId) {
50
47
  const seatsio2 = await this.loadSeatsio();
48
+ if (currentMountId !== this.mountId) return;
51
49
  const config = this.extractConfigFromProps();
52
50
  this.chart = this.createChart(seatsio2, config).render();
53
51
  if (this.props.onRenderStarted) {
@@ -60,6 +58,7 @@ var _Embeddable = class _Embeddable extends React.Component {
60
58
  return config;
61
59
  }
62
60
  componentWillUnmount() {
61
+ this.mountId++;
63
62
  this.destroyChart();
64
63
  }
65
64
  destroyChart() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main/Embeddable.tsx","../src/main/util.ts","../src/main/SeatsioDesigner.tsx","../src/main/SeatsioEventManager.tsx","../src/main/SeatsioSeatingChart.tsx","../src/main/index.ts"],"sourcesContent":["import * as React from 'react'\nimport {didPropsChange} from './util'\nimport {ChartDesigner, CommonConfigOptions, EventManager, Region, SeatingChart, Seatsio} from '@seatsio/seatsio-types'\n\nexport type EmbeddableProps<T> = {\n onRenderStarted?: (chart: SeatingChart | EventManager) => void\n chartJsUrl?: string\n region: Region\n} & T\n\nexport default abstract class Embeddable<T extends CommonConfigOptions> extends React.Component<EmbeddableProps<T>> {\n private container: React.RefObject<HTMLDivElement>\n private chart: SeatingChart\n private firstRender: boolean\n\n private static seatsioBundles: { [key: string]: Promise<Seatsio> } = {}\n\n static defaultProps = {\n chartJsUrl: 'https://cdn-{region}.seatsio.net/chart.js'\n }\n\n constructor(props: EmbeddableProps<T>) {\n super(props);\n this.container = React.createRef()\n this.firstRender = true\n }\n\n abstract createChart (seatsio: Seatsio, config: T): SeatingChart | EventManager | ChartDesigner\n\n componentDidMount () {\n if (!Embeddable.seatsioBundles[this.getChartUrl()] || this.firstRender) {\n this.createAndRenderChart()\n this.firstRender = false\n }\n }\n\n componentDidUpdate (prevProps: EmbeddableProps<T>) {\n if(this.chart) {\n // @ts-ignore\n this.chart.config = this.extractConfigFromProps()\n if (didPropsChange(this.props, prevProps)) {\n this.destroyChart()\n this.createAndRenderChart()\n }\n }\n }\n\n getChartUrl () {\n return this.props.chartJsUrl.replace('{region}', this.props.region)\n }\n\n async createAndRenderChart () {\n const seatsio = await this.loadSeatsio()\n const config = this.extractConfigFromProps()\n this.chart = this.createChart(seatsio, config).render()\n if (this.props.onRenderStarted) {\n this.props.onRenderStarted(this.chart)\n }\n }\n\n extractConfigFromProps (): any {\n let { chartJsUrl, divId, onRenderStarted, region, ...config } = this.props\n // @ts-ignore\n config.container = this.container.current\n return config\n }\n\n componentWillUnmount () {\n this.destroyChart()\n }\n\n destroyChart () {\n if (this.chart && (this.chart as any).state !== 'DESTROYED') {\n this.chart.destroy()\n }\n }\n\n loadSeatsio (): Promise<Seatsio> {\n const chartUrl = this.getChartUrl()\n if (!Embeddable.seatsioBundles[chartUrl]) {\n Embeddable.seatsioBundles[chartUrl] = new Promise<Seatsio>((resolve, reject) => {\n const script = document.head.appendChild(document.createElement('script'))\n // Seatsio global is not replaced if already present, which would cause the wrong region bundle to resolve when changing region\n window.seatsio = undefined\n script.onload = () => {\n resolve(seatsio)\n }\n script.onerror = () => reject(`Could not load ${script.src}`)\n script.src = chartUrl\n })\n }\n\n return Embeddable.seatsioBundles[chartUrl]\n }\n\n render (): React.ReactNode {\n return (\n <div ref={this.container as unknown as React.RefObject<HTMLDivElement>} style={{'height': '100%', 'width': '100%'}} />\n )\n }\n}\n","import {Booth, GeneralAdmissionArea, InteractiveSection, Seat, SelectableObject, Table} from \"@seatsio/seatsio-types\"\n\nexport const didPropsChange = <P extends { [key: string]: any}>(prevProps: P, nextProps: P): boolean => {\n if (Object.keys(prevProps).length !== Object.keys(nextProps).length) {\n return true\n }\n return Object.keys(nextProps).some((propName: string) => {\n let prevValue = prevProps[propName]\n let nextValue = nextProps[propName]\n if (prevValue && nextValue) {\n if (typeof prevValue === 'function' && typeof nextValue === 'function') {\n return prevValue.toString() !== nextValue.toString()\n }\n if (typeof prevValue === 'object' && typeof nextValue === 'object') {\n return didPropsChange(prevValue, nextValue)\n }\n }\n return prevValue !== nextValue\n })\n}\n","import Embeddable from './Embeddable'\nimport { ChartDesignerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\n\nexport default class SeatsioDesigner extends Embeddable<ChartDesignerConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartDesignerConfigOptions) {\n return new seatsio.SeatingChartDesigner(config)\n }\n}","import { EventManagerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioEventManager extends Embeddable<EventManagerConfigOptions> {\n createChart (seatsio: Seatsio, config: EventManagerConfigOptions) {\n return new seatsio.EventManager(config)\n }\n}","import { ChartRendererConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioSeatingChart extends Embeddable<ChartRendererConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartRendererConfigOptions) {\n return new seatsio.SeatingChart(config)\n }\n}","export { default as SeatsioDesigner } from './SeatsioDesigner'\nexport { default as SeatsioEventManager } from './SeatsioEventManager'\nexport { default as SeatsioSeatingChart } from './SeatsioSeatingChart'\nexport { isBooth, isGeneralAdmission, isSeat, isTable } from '@seatsio/seatsio-types'\nexport type * from '@seatsio/seatsio-types'\n"],"mappings":";AAAA,YAAY,WAAW;;;ACEhB,IAAM,iBAAiB,CAAkC,WAAc,cAA0B;AACpG,MAAI,OAAO,KAAK,SAAS,EAAE,WAAW,OAAO,KAAK,SAAS,EAAE,QAAQ;AACjE,WAAO;AAAA,EACX;AACA,SAAO,OAAO,KAAK,SAAS,EAAE,KAAK,CAAC,aAAqB;AACrD,QAAI,YAAY,UAAU,QAAQ;AAClC,QAAI,YAAY,UAAU,QAAQ;AAClC,QAAI,aAAa,WAAW;AACxB,UAAI,OAAO,cAAc,cAAc,OAAO,cAAc,YAAY;AACpE,eAAO,UAAU,SAAS,MAAM,UAAU,SAAS;AAAA,MACvD;AACA,UAAI,OAAO,cAAc,YAAY,OAAO,cAAc,UAAU;AAChE,eAAO,eAAe,WAAW,SAAS;AAAA,MAC9C;AAAA,IACJ;AACA,WAAO,cAAc;AAAA,EACzB,CAAC;AACL;;;ADTA,IAA8B,cAA9B,MAA8B,oBAAwD,gBAA8B;AAAA,EAWhH,YAAY,OAA2B;AACnC,UAAM,KAAK;AACX,SAAK,YAAkB,gBAAU;AACjC,SAAK,cAAc;AAAA,EACvB;AAAA,EAIA,oBAAqB;AACjB,QAAI,CAAC,YAAW,eAAe,KAAK,YAAY,CAAC,KAAK,KAAK,aAAa;AACpE,WAAK,qBAAqB;AAC1B,WAAK,cAAc;AAAA,IACvB;AAAA,EACJ;AAAA,EAEA,mBAAoB,WAA+B;AAC/C,QAAG,KAAK,OAAO;AAEX,WAAK,MAAM,SAAS,KAAK,uBAAuB;AAChD,UAAI,eAAe,KAAK,OAAO,SAAS,GAAG;AACvC,aAAK,aAAa;AAClB,aAAK,qBAAqB;AAAA,MAC9B;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,cAAe;AACX,WAAO,KAAK,MAAM,WAAW,QAAQ,YAAY,KAAK,MAAM,MAAM;AAAA,EACtE;AAAA,EAEA,MAAM,uBAAwB;AAC1B,UAAMA,WAAU,MAAM,KAAK,YAAY;AACvC,UAAM,SAAS,KAAK,uBAAuB;AAC3C,SAAK,QAAQ,KAAK,YAAYA,UAAS,MAAM,EAAE,OAAO;AACtD,QAAI,KAAK,MAAM,iBAAiB;AAC5B,WAAK,MAAM,gBAAgB,KAAK,KAAK;AAAA,IACzC;AAAA,EACJ;AAAA,EAEA,yBAA+B;AAC3B,QAAI,EAAE,YAAY,OAAO,iBAAiB,QAAQ,GAAG,OAAO,IAAI,KAAK;AAErE,WAAO,YAAY,KAAK,UAAU;AAClC,WAAO;AAAA,EACX;AAAA,EAEA,uBAAwB;AACpB,SAAK,aAAa;AAAA,EACtB;AAAA,EAEA,eAAgB;AACZ,QAAI,KAAK,SAAU,KAAK,MAAc,UAAU,aAAa;AACzD,WAAK,MAAM,QAAQ;AAAA,IACvB;AAAA,EACJ;AAAA,EAEA,cAAiC;AAC7B,UAAM,WAAW,KAAK,YAAY;AAClC,QAAI,CAAC,YAAW,eAAe,QAAQ,GAAG;AACtC,kBAAW,eAAe,QAAQ,IAAI,IAAI,QAAiB,CAAC,SAAS,WAAW;AAC5E,cAAM,SAAS,SAAS,KAAK,YAAY,SAAS,cAAc,QAAQ,CAAC;AAEzE,eAAO,UAAU;AACjB,eAAO,SAAS,MAAM;AAClB,kBAAQ,OAAO;AAAA,QACnB;AACA,eAAO,UAAU,MAAM,OAAO,kBAAkB,OAAO,GAAG,EAAE;AAC5D,eAAO,MAAM;AAAA,MACjB,CAAC;AAAA,IACL;AAEA,WAAO,YAAW,eAAe,QAAQ;AAAA,EAC7C;AAAA,EAEA,SAA2B;AACvB,WACI,oCAAC,SAAI,KAAK,KAAK,WAAyD,OAAO,EAAC,UAAU,QAAQ,SAAS,OAAM,GAAG;AAAA,EAE5H;AACJ;AA1F8B,YAKX,iBAAsD,CAAC;AAL5C,YAOnB,eAAe;AAAA,EAClB,YAAY;AAChB;AATJ,IAA8B,aAA9B;;;AEPA,IAAqB,kBAArB,cAA6C,WAAuC;AAAA,EAChF,YAAaC,UAAkB,QAAoC;AAC/D,WAAO,IAAIA,SAAQ,qBAAqB,MAAM;AAAA,EAClD;AACJ;;;ACJA,IAAqB,sBAArB,cAAiD,WAAsC;AAAA,EACnF,YAAaC,UAAkB,QAAmC;AAC9D,WAAO,IAAIA,SAAQ,aAAa,MAAM;AAAA,EAC1C;AACJ;;;ACJA,IAAqB,sBAArB,cAAiD,WAAuC;AAAA,EACpF,YAAaC,UAAkB,QAAoC;AAC/D,WAAO,IAAIA,SAAQ,aAAa,MAAM;AAAA,EAC1C;AACJ;;;ACJA,SAAS,SAAS,oBAAoB,QAAQ,eAAe;","names":["seatsio","seatsio","seatsio","seatsio"]}
1
+ {"version":3,"sources":["../src/main/Embeddable.tsx","../src/main/util.ts","../src/main/SeatsioDesigner.tsx","../src/main/SeatsioEventManager.tsx","../src/main/SeatsioSeatingChart.tsx","../src/main/index.ts"],"sourcesContent":["import { ChartDesigner, CommonConfigOptions, EventManager, Region, SeatingChart, Seatsio } from '@seatsio/seatsio-types'\nimport * as React from 'react'\nimport { didPropsChange } from './util'\n\nexport type EmbeddableProps<T> = {\n onRenderStarted?: (chart: SeatingChart | EventManager) => void\n chartJsUrl?: string\n region: Region\n} & T\n\nexport default abstract class Embeddable<T extends CommonConfigOptions> extends React.Component<EmbeddableProps<T>> {\n private container: React.RefObject<HTMLDivElement>\n private chart: SeatingChart\n private mountId: number = 0\n\n private static seatsioBundles: { [key: string]: Promise<Seatsio> } = {}\n\n static defaultProps = {\n chartJsUrl: 'https://cdn-{region}.seatsio.net/chart.js'\n }\n\n constructor(props: EmbeddableProps<T>) {\n super(props);\n this.container = React.createRef()\n }\n\n abstract createChart (seatsio: Seatsio, config: T): SeatingChart | EventManager | ChartDesigner\n\n componentDidMount () {\n this.createAndRenderChart(this.mountId)\n }\n\n componentDidUpdate (prevProps: EmbeddableProps<T>) {\n if(this.chart) {\n // @ts-ignore\n this.chart.config = this.extractConfigFromProps()\n if (didPropsChange(this.props, prevProps)) {\n this.destroyChart()\n this.createAndRenderChart(this.mountId)\n }\n }\n }\n\n getChartUrl () {\n return this.props.chartJsUrl.replace('{region}', this.props.region)\n }\n\n async createAndRenderChart (currentMountId: number) {\n const seatsio = await this.loadSeatsio()\n if (currentMountId !== this.mountId) return\n const config = this.extractConfigFromProps()\n this.chart = this.createChart(seatsio, config).render()\n if (this.props.onRenderStarted) {\n this.props.onRenderStarted(this.chart)\n }\n }\n\n extractConfigFromProps (): any {\n let { chartJsUrl, divId, onRenderStarted, region, ...config } = this.props\n // @ts-ignore\n config.container = this.container.current\n return config\n }\n\n componentWillUnmount () {\n this.mountId++\n this.destroyChart()\n }\n\n destroyChart () {\n if (this.chart && (this.chart as any).state !== 'DESTROYED') {\n this.chart.destroy()\n }\n }\n\n loadSeatsio (): Promise<Seatsio> {\n const chartUrl = this.getChartUrl()\n if (!Embeddable.seatsioBundles[chartUrl]) {\n Embeddable.seatsioBundles[chartUrl] = new Promise<Seatsio>((resolve, reject) => {\n const script = document.head.appendChild(document.createElement('script'))\n // Seatsio global is not replaced if already present, which would cause the wrong region bundle to resolve when changing region\n window.seatsio = undefined\n script.onload = () => {\n resolve(seatsio)\n }\n script.onerror = () => reject(`Could not load ${script.src}`)\n script.src = chartUrl\n })\n }\n\n return Embeddable.seatsioBundles[chartUrl]\n }\n\n render (): React.ReactNode {\n return (\n <div ref={this.container as unknown as React.RefObject<HTMLDivElement>} style={{'height': '100%', 'width': '100%'}} />\n )\n }\n}\n","import {Booth, GeneralAdmissionArea, InteractiveSection, Seat, SelectableObject, Table} from \"@seatsio/seatsio-types\"\n\nexport const didPropsChange = <P extends { [key: string]: any}>(prevProps: P, nextProps: P): boolean => {\n if (Object.keys(prevProps).length !== Object.keys(nextProps).length) {\n return true\n }\n return Object.keys(nextProps).some((propName: string) => {\n let prevValue = prevProps[propName]\n let nextValue = nextProps[propName]\n if (prevValue && nextValue) {\n if (typeof prevValue === 'function' && typeof nextValue === 'function') {\n return prevValue.toString() !== nextValue.toString()\n }\n if (typeof prevValue === 'object' && typeof nextValue === 'object') {\n return didPropsChange(prevValue, nextValue)\n }\n }\n return prevValue !== nextValue\n })\n}\n","import Embeddable from './Embeddable'\nimport { ChartDesignerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\n\nexport default class SeatsioDesigner extends Embeddable<ChartDesignerConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartDesignerConfigOptions) {\n return new seatsio.SeatingChartDesigner(config)\n }\n}","import { EventManagerConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioEventManager extends Embeddable<EventManagerConfigOptions> {\n createChart (seatsio: Seatsio, config: EventManagerConfigOptions) {\n return new seatsio.EventManager(config)\n }\n}","import { ChartRendererConfigOptions, Seatsio } from '@seatsio/seatsio-types'\nimport Embeddable from './Embeddable'\n\nexport default class SeatsioSeatingChart extends Embeddable<ChartRendererConfigOptions> {\n createChart (seatsio: Seatsio, config: ChartRendererConfigOptions) {\n return new seatsio.SeatingChart(config)\n }\n}","export { default as SeatsioDesigner } from './SeatsioDesigner'\nexport { default as SeatsioEventManager } from './SeatsioEventManager'\nexport { default as SeatsioSeatingChart } from './SeatsioSeatingChart'\nexport { isBooth, isGeneralAdmission, isSeat, isTable } from '@seatsio/seatsio-types'\nexport type * from '@seatsio/seatsio-types'\n"],"mappings":"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","names":["seatsio","seatsio","seatsio","seatsio"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seatsio/seatsio-react",
3
- "version": "15.20.0",
3
+ "version": "15.22.0",
4
4
  "main": "build/index.js",
5
5
  "module": "build/index.mjs",
6
6
  "types": "build/index.d.ts",
@@ -24,7 +24,7 @@
24
24
  "build/"
25
25
  ],
26
26
  "dependencies": {
27
- "@seatsio/seatsio-types": "6.6.0"
27
+ "@seatsio/seatsio-types": "6.8.0"
28
28
  },
29
29
  "peerDependencies": {
30
30
  "react": ">=18.0.0"
@@ -40,7 +40,7 @@
40
40
  "react": "18.3.1",
41
41
  "react-dom": "18.3.1",
42
42
  "semver": "7.7.3",
43
- "ts-jest": "29.4.5",
43
+ "ts-jest": "29.4.6",
44
44
  "tsup": "8.5.1",
45
45
  "typescript": "5.9.3",
46
46
  "zx": "8.8.5"