@alisaitteke/seatmap-canvas 2.5.18 → 2.5.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.
Files changed (191) hide show
  1. package/README.md +249 -4
  2. package/dist/cjs/seatmap.canvas.js +2 -16
  3. package/dist/cjs/seatmap.canvas.js.map +1 -1
  4. package/dist/cjs/types/canvas.index.d.ts +5 -0
  5. package/dist/cjs/types/converters/parser.base.d.ts +7 -0
  6. package/dist/cjs/types/converters/pretix/pretix.model.d.ts +75 -0
  7. package/dist/cjs/types/converters/pretix/pretix.parser.d.ts +7 -0
  8. package/dist/cjs/types/enums/parser.enum.d.ts +4 -0
  9. package/dist/cjs/types/examples/react/src/App.d.ts +3 -0
  10. package/dist/cjs/types/examples/react/src/main.d.ts +1 -0
  11. package/dist/cjs/types/examples/react/vite.config.d.ts +2 -0
  12. package/dist/cjs/types/examples/vue/main.d.ts +1 -0
  13. package/dist/cjs/types/examples/vue/vite.config.d.ts +2 -0
  14. package/dist/cjs/types/models/block.model.d.ts +1 -0
  15. package/dist/cjs/types/models/data.model.d.ts +3 -2
  16. package/dist/cjs/types/models/defaults.model.d.ts +2 -0
  17. package/dist/cjs/types/models/styles/seat.style.d.ts +1 -0
  18. package/dist/cjs/types/src/lib/canvas.index.browser.d.ts +2 -0
  19. package/dist/cjs/types/src/lib/canvas.index.d.ts +28 -0
  20. package/dist/cjs/types/src/lib/config.d.ts +3 -0
  21. package/dist/cjs/types/src/lib/converters/parser.base.d.ts +7 -0
  22. package/dist/cjs/types/src/lib/converters/pretix/pretix.model.d.ts +75 -0
  23. package/dist/cjs/types/src/lib/converters/pretix/pretix.parser.d.ts +7 -0
  24. package/dist/cjs/types/src/lib/decorators/dom.d.ts +8 -0
  25. package/dist/cjs/types/src/lib/decorators/index.d.ts +1 -0
  26. package/dist/cjs/types/src/lib/dev.tools.d.ts +6 -0
  27. package/dist/cjs/types/src/lib/enums/global.d.ts +46 -0
  28. package/dist/cjs/types/src/lib/enums/parser.enum.d.ts +4 -0
  29. package/dist/cjs/types/src/lib/models/block.model.d.ts +30 -0
  30. package/dist/cjs/types/src/lib/models/coordinate.model.d.ts +7 -0
  31. package/dist/cjs/types/src/lib/models/data.model.d.ts +27 -0
  32. package/dist/cjs/types/src/lib/models/defaults.model.d.ts +34 -0
  33. package/dist/cjs/types/src/lib/models/global.model.d.ts +18 -0
  34. package/dist/cjs/types/src/lib/models/label.model.d.ts +9 -0
  35. package/dist/cjs/types/src/lib/models/legend.model.d.ts +8 -0
  36. package/dist/cjs/types/src/lib/models/model.base.d.ts +5 -0
  37. package/dist/cjs/types/src/lib/models/seat.model.d.ts +40 -0
  38. package/dist/cjs/types/src/lib/models/styles/block.style.d.ts +7 -0
  39. package/dist/cjs/types/src/lib/models/styles/label.style.d.ts +6 -0
  40. package/dist/cjs/types/src/lib/models/styles/legend.style.d.ts +6 -0
  41. package/dist/cjs/types/src/lib/models/styles/seat.style.d.ts +13 -0
  42. package/dist/cjs/types/src/lib/models/styles/tooltip.style.d.ts +7 -0
  43. package/dist/cjs/types/src/lib/svg/event.manager.d.ts +12 -0
  44. package/dist/cjs/types/src/lib/svg/legend/legend.circle.d.ts +7 -0
  45. package/dist/cjs/types/src/lib/svg/legend/legend.item.d.ts +13 -0
  46. package/dist/cjs/types/src/lib/svg/legend/legend.title.d.ts +7 -0
  47. package/dist/cjs/types/src/lib/svg/legend.d.ts +8 -0
  48. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/block-item.bounds.d.ts +12 -0
  49. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/block-item.index.d.ts +23 -0
  50. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/block-item.info.index.d.ts +11 -0
  51. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/block-item.labels.index.d.ts +11 -0
  52. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/block-item.mask.d.ts +12 -0
  53. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/block-item.seats.index.d.ts +15 -0
  54. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/bound/bound-item.index.d.ts +12 -0
  55. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/info/title.d.ts +7 -0
  56. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/label/label-item.circle.d.ts +7 -0
  57. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/label/label-item.index.d.ts +13 -0
  58. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/label/label-item.title.d.ts +7 -0
  59. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.check.d.ts +10 -0
  60. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.circle.d.ts +7 -0
  61. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.custom-area.d.ts +7 -0
  62. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.custom-check.d.ts +10 -0
  63. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.custom.d.ts +9 -0
  64. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.index.d.ts +30 -0
  65. package/dist/cjs/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.title.d.ts +7 -0
  66. package/dist/cjs/types/src/lib/svg/stage/blocks/blocks.index.d.ts +15 -0
  67. package/dist/cjs/types/src/lib/svg/stage/blocks.search-circle.d.ts +12 -0
  68. package/dist/cjs/types/src/lib/svg/stage/multi-select/rect.d.ts +7 -0
  69. package/dist/cjs/types/src/lib/svg/stage/multi-select.d.ts +13 -0
  70. package/dist/cjs/types/src/lib/svg/stage/search-circle/circle.d.ts +7 -0
  71. package/dist/cjs/types/src/lib/svg/stage/stage.index.d.ts +11 -0
  72. package/dist/cjs/types/src/lib/svg/svg.base.d.ts +35 -0
  73. package/dist/cjs/types/src/lib/svg/svg.index.d.ts +16 -0
  74. package/dist/cjs/types/src/lib/svg/tooltip/rect.d.ts +8 -0
  75. package/dist/cjs/types/src/lib/svg/tooltip/title.d.ts +10 -0
  76. package/dist/cjs/types/src/lib/svg/tooltip.d.ts +15 -0
  77. package/dist/cjs/types/src/lib/svg/zoom-out.bg.d.ts +7 -0
  78. package/dist/cjs/types/src/lib/svg/zoom.manager.d.ts +41 -0
  79. package/dist/cjs/types/src/lib/window.manager.d.ts +9 -0
  80. package/dist/cjs/types/src/react/SeatmapCanvas.d.ts +7 -0
  81. package/dist/cjs/types/src/react/index.d.ts +4 -0
  82. package/dist/cjs/types/src/react/types.d.ts +65 -0
  83. package/dist/cjs/types/src/react/useSeatmap.d.ts +2 -0
  84. package/dist/cjs/types/src/vue/index.d.ts +12 -0
  85. package/dist/cjs/types/src/vue/types.d.ts +42 -0
  86. package/dist/cjs/types/src/vue/useSeatmap.d.ts +19 -0
  87. package/dist/cjs/types/svg/stage/blocks/block-item/block-item.seats.index.d.ts +1 -1
  88. package/dist/cjs/types/svg/stage/blocks/block-item/seat/seat-item.custom-area.d.ts +7 -0
  89. package/dist/cjs/types/svg/stage/blocks/block-item/seat/seat-item.custom-check.d.ts +10 -0
  90. package/dist/cjs/types/svg/stage/blocks/block-item/seat/seat-item.custom.d.ts +9 -0
  91. package/dist/cjs/types/svg/stage/blocks/block-item/seat/seat-item.index.d.ts +3 -1
  92. package/dist/cjs/types/svg/stage/blocks/blocks.index.d.ts +2 -0
  93. package/dist/cjs/types/svg/svg.base.d.ts +2 -2
  94. package/dist/cjs/types/svg/zoom.manager.d.ts +1 -0
  95. package/dist/dependencies.txt +176 -333
  96. package/dist/esm/seatmap.canvas.js +2 -16
  97. package/dist/esm/seatmap.canvas.js.map +1 -1
  98. package/dist/esm/types/canvas.index.d.ts +5 -0
  99. package/dist/esm/types/converters/parser.base.d.ts +7 -0
  100. package/dist/esm/types/converters/pretix/pretix.model.d.ts +75 -0
  101. package/dist/esm/types/converters/pretix/pretix.parser.d.ts +7 -0
  102. package/dist/esm/types/enums/parser.enum.d.ts +4 -0
  103. package/dist/esm/types/examples/react/src/App.d.ts +3 -0
  104. package/dist/esm/types/examples/react/src/main.d.ts +1 -0
  105. package/dist/esm/types/examples/react/vite.config.d.ts +2 -0
  106. package/dist/esm/types/examples/vue/main.d.ts +1 -0
  107. package/dist/esm/types/examples/vue/vite.config.d.ts +2 -0
  108. package/dist/esm/types/models/block.model.d.ts +1 -0
  109. package/dist/esm/types/models/data.model.d.ts +3 -2
  110. package/dist/esm/types/models/defaults.model.d.ts +2 -0
  111. package/dist/esm/types/models/styles/seat.style.d.ts +1 -0
  112. package/dist/esm/types/src/lib/canvas.index.browser.d.ts +2 -0
  113. package/dist/esm/types/src/lib/canvas.index.d.ts +28 -0
  114. package/dist/esm/types/src/lib/config.d.ts +3 -0
  115. package/dist/esm/types/src/lib/converters/parser.base.d.ts +7 -0
  116. package/dist/esm/types/src/lib/converters/pretix/pretix.model.d.ts +75 -0
  117. package/dist/esm/types/src/lib/converters/pretix/pretix.parser.d.ts +7 -0
  118. package/dist/esm/types/src/lib/decorators/dom.d.ts +8 -0
  119. package/dist/esm/types/src/lib/decorators/index.d.ts +1 -0
  120. package/dist/esm/types/src/lib/dev.tools.d.ts +6 -0
  121. package/dist/esm/types/src/lib/enums/global.d.ts +46 -0
  122. package/dist/esm/types/src/lib/enums/parser.enum.d.ts +4 -0
  123. package/dist/esm/types/src/lib/models/block.model.d.ts +30 -0
  124. package/dist/esm/types/src/lib/models/coordinate.model.d.ts +7 -0
  125. package/dist/esm/types/src/lib/models/data.model.d.ts +27 -0
  126. package/dist/esm/types/src/lib/models/defaults.model.d.ts +34 -0
  127. package/dist/esm/types/src/lib/models/global.model.d.ts +18 -0
  128. package/dist/esm/types/src/lib/models/label.model.d.ts +9 -0
  129. package/dist/esm/types/src/lib/models/legend.model.d.ts +8 -0
  130. package/dist/esm/types/src/lib/models/model.base.d.ts +5 -0
  131. package/dist/esm/types/src/lib/models/seat.model.d.ts +40 -0
  132. package/dist/esm/types/src/lib/models/styles/block.style.d.ts +7 -0
  133. package/dist/esm/types/src/lib/models/styles/label.style.d.ts +6 -0
  134. package/dist/esm/types/src/lib/models/styles/legend.style.d.ts +6 -0
  135. package/dist/esm/types/src/lib/models/styles/seat.style.d.ts +13 -0
  136. package/dist/esm/types/src/lib/models/styles/tooltip.style.d.ts +7 -0
  137. package/dist/esm/types/src/lib/svg/event.manager.d.ts +12 -0
  138. package/dist/esm/types/src/lib/svg/legend/legend.circle.d.ts +7 -0
  139. package/dist/esm/types/src/lib/svg/legend/legend.item.d.ts +13 -0
  140. package/dist/esm/types/src/lib/svg/legend/legend.title.d.ts +7 -0
  141. package/dist/esm/types/src/lib/svg/legend.d.ts +8 -0
  142. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/block-item.bounds.d.ts +12 -0
  143. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/block-item.index.d.ts +23 -0
  144. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/block-item.info.index.d.ts +11 -0
  145. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/block-item.labels.index.d.ts +11 -0
  146. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/block-item.mask.d.ts +12 -0
  147. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/block-item.seats.index.d.ts +15 -0
  148. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/bound/bound-item.index.d.ts +12 -0
  149. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/info/title.d.ts +7 -0
  150. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/label/label-item.circle.d.ts +7 -0
  151. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/label/label-item.index.d.ts +13 -0
  152. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/label/label-item.title.d.ts +7 -0
  153. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.check.d.ts +10 -0
  154. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.circle.d.ts +7 -0
  155. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.custom-area.d.ts +7 -0
  156. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.custom-check.d.ts +10 -0
  157. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.custom.d.ts +9 -0
  158. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.index.d.ts +30 -0
  159. package/dist/esm/types/src/lib/svg/stage/blocks/block-item/seat/seat-item.title.d.ts +7 -0
  160. package/dist/esm/types/src/lib/svg/stage/blocks/blocks.index.d.ts +15 -0
  161. package/dist/esm/types/src/lib/svg/stage/blocks.search-circle.d.ts +12 -0
  162. package/dist/esm/types/src/lib/svg/stage/multi-select/rect.d.ts +7 -0
  163. package/dist/esm/types/src/lib/svg/stage/multi-select.d.ts +13 -0
  164. package/dist/esm/types/src/lib/svg/stage/search-circle/circle.d.ts +7 -0
  165. package/dist/esm/types/src/lib/svg/stage/stage.index.d.ts +11 -0
  166. package/dist/esm/types/src/lib/svg/svg.base.d.ts +35 -0
  167. package/dist/esm/types/src/lib/svg/svg.index.d.ts +16 -0
  168. package/dist/esm/types/src/lib/svg/tooltip/rect.d.ts +8 -0
  169. package/dist/esm/types/src/lib/svg/tooltip/title.d.ts +10 -0
  170. package/dist/esm/types/src/lib/svg/tooltip.d.ts +15 -0
  171. package/dist/esm/types/src/lib/svg/zoom-out.bg.d.ts +7 -0
  172. package/dist/esm/types/src/lib/svg/zoom.manager.d.ts +41 -0
  173. package/dist/esm/types/src/lib/window.manager.d.ts +9 -0
  174. package/dist/esm/types/src/react/SeatmapCanvas.d.ts +7 -0
  175. package/dist/esm/types/src/react/index.d.ts +4 -0
  176. package/dist/esm/types/src/react/types.d.ts +65 -0
  177. package/dist/esm/types/src/react/useSeatmap.d.ts +2 -0
  178. package/dist/esm/types/src/vue/index.d.ts +12 -0
  179. package/dist/esm/types/src/vue/types.d.ts +42 -0
  180. package/dist/esm/types/src/vue/useSeatmap.d.ts +19 -0
  181. package/dist/esm/types/svg/stage/blocks/block-item/block-item.seats.index.d.ts +1 -1
  182. package/dist/esm/types/svg/stage/blocks/block-item/seat/seat-item.custom-area.d.ts +7 -0
  183. package/dist/esm/types/svg/stage/blocks/block-item/seat/seat-item.custom-check.d.ts +10 -0
  184. package/dist/esm/types/svg/stage/blocks/block-item/seat/seat-item.custom.d.ts +9 -0
  185. package/dist/esm/types/svg/stage/blocks/block-item/seat/seat-item.index.d.ts +3 -1
  186. package/dist/esm/types/svg/stage/blocks/blocks.index.d.ts +2 -0
  187. package/dist/esm/types/svg/svg.base.d.ts +2 -2
  188. package/dist/esm/types/svg/zoom.manager.d.ts +1 -0
  189. package/dist/types.d.ts +5 -0
  190. package/package.json +52 -7
  191. package/CHANGELOG.md +0 -78
@@ -7,6 +7,7 @@ import { GlobalModel } from "@model/global.model";
7
7
  import ZoomManager from "@svg/zoom.manager";
8
8
  import EventManager from "@svg/event.manager";
9
9
  import WindowManager from "@/window.manager";
10
+ import { ParserBase } from "@/converters/parser.base";
10
11
  export declare class SeatMapCanvas {
11
12
  container_selector: any;
12
13
  node: any;
@@ -19,5 +20,9 @@ export declare class SeatMapCanvas {
19
20
  zoomManager: ZoomManager;
20
21
  eventManager: EventManager;
21
22
  addEventListener: any;
23
+ parsers: {
24
+ [name: string]: ParserBase;
25
+ };
22
26
  constructor(container_selector: any, _config: DefaultsModel);
27
+ registerConverters(): void;
23
28
  }
@@ -0,0 +1,7 @@
1
+ import { PretixModel } from "@/converters/pretix/pretix.model";
2
+ import BlockModel from "@model/block.model";
3
+ export declare abstract class ParserBase {
4
+ code: string;
5
+ constructor();
6
+ parse(jsonModel: PretixModel): BlockModel[];
7
+ }
@@ -0,0 +1,75 @@
1
+ export interface PretixModel {
2
+ name: string;
3
+ categories: PretixCategory[];
4
+ zones: PretixZone[];
5
+ size: PretixSize;
6
+ }
7
+ export interface PretixCategory {
8
+ name: string;
9
+ color: string;
10
+ }
11
+ export interface PretixZone {
12
+ name: string;
13
+ position: PretixPosition;
14
+ rows: PretixRow[];
15
+ areas: PretixArea[];
16
+ uuid: string;
17
+ zone_id: string;
18
+ }
19
+ export interface PretixPosition {
20
+ x: number;
21
+ y: number;
22
+ }
23
+ export interface PretixRow {
24
+ position: PretixPosition2;
25
+ row_number: string;
26
+ row_number_position: string;
27
+ seats: PretixSeat[];
28
+ uuid: string;
29
+ }
30
+ export interface PretixPosition2 {
31
+ x: number;
32
+ y: number;
33
+ }
34
+ export interface PretixSeat {
35
+ seat_number: string;
36
+ seat_guid: string;
37
+ uuid: string;
38
+ position: PretixPosition3;
39
+ category: string;
40
+ }
41
+ export interface PretixPosition3 {
42
+ x: number;
43
+ y: number;
44
+ }
45
+ export interface PretixArea {
46
+ shape: string;
47
+ color: string;
48
+ border_color: string;
49
+ rotation: number;
50
+ uuid: string;
51
+ position: PretixPosition4;
52
+ text: PretixText;
53
+ rectangle: PretixRectangle;
54
+ }
55
+ export interface PretixPosition4 {
56
+ x: number;
57
+ y: number;
58
+ }
59
+ export interface PretixText {
60
+ position: PretixPosition5;
61
+ color: string;
62
+ text: string;
63
+ }
64
+ export interface PretixPosition5 {
65
+ x: number;
66
+ y: number;
67
+ }
68
+ export interface PretixRectangle {
69
+ width: number;
70
+ height: number;
71
+ }
72
+ export interface PretixSize {
73
+ width: number;
74
+ height: number;
75
+ }
@@ -0,0 +1,7 @@
1
+ import { PretixModel } from "@/converters/pretix/pretix.model";
2
+ import { ParserBase } from "@/converters/parser.base";
3
+ export declare class PretixParser extends ParserBase {
4
+ name: string;
5
+ constructor();
6
+ parse(jsonModel: PretixModel): any[];
7
+ }
@@ -0,0 +1,4 @@
1
+ export declare enum ParserEnum {
2
+ SEATMAP = "seatmap",
3
+ PRETIX = "pretix"
4
+ }
@@ -0,0 +1,3 @@
1
+ import './App.css';
2
+ declare function App(): any;
3
+ export default App;
@@ -0,0 +1 @@
1
+ import '../../../src/scss/style.scss';
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1 @@
1
+ import '../../src/scss/style.scss';
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -16,6 +16,7 @@ export default class BlockModel extends ModelBase {
16
16
  bbox: any;
17
17
  zoom_bbox: any;
18
18
  rotate: number;
19
+ gap: number;
19
20
  constructor(item: any);
20
21
  toJson(): {
21
22
  id: string;
@@ -1,6 +1,7 @@
1
1
  import BlockModel from "@model/block.model";
2
2
  import { SeatMapCanvas } from "@/canvas.index";
3
3
  import SeatModel from "@model/seat.model";
4
+ import { PretixModel } from "@/converters/pretix/pretix.model";
4
5
  interface BlockQuery {
5
6
  id?: number | string;
6
7
  }
@@ -11,8 +12,8 @@ export default class DataModel {
11
12
  addEventListener: any;
12
13
  constructor(_self: SeatMapCanvas);
13
14
  addBlock(block_data: any): this;
14
- addBulkBlock(block_data: Array<BlockModel>): this;
15
- replaceData(block_data: Array<any>): this;
15
+ addBulkBlock(block_data: BlockModel[] | PretixModel): this;
16
+ replaceData(block_data: BlockModel[] | PretixModel): this;
16
17
  getBlock(id: string | number): BlockModel | null;
17
18
  getBlocks(blockId?: string): Array<BlockModel>;
18
19
  removeBlock(id: string | number): this;
@@ -3,6 +3,7 @@ import { BLockStyle } from "@model/styles/block.style";
3
3
  import { LegendStyle } from "@model/styles/legend.style";
4
4
  import { LabelStyle } from "@model/styles/label.style";
5
5
  import { TooltipStyle } from "@model/styles/tooltip.style";
6
+ import { ParserEnum } from "@enum/parser.enum";
6
7
  export declare class StyleConfig {
7
8
  seat: SeatStyle;
8
9
  block: BLockStyle;
@@ -22,6 +23,7 @@ export default class DefaultsModel {
22
23
  legend: boolean;
23
24
  canvas_stageout_control: boolean;
24
25
  style: StyleConfig;
26
+ json_model: ParserEnum;
25
27
  lang: {
26
28
  selectable: string;
27
29
  non_selectable: string;
@@ -9,4 +9,5 @@ export declare class SeatStyle {
9
9
  check_color: string;
10
10
  check_icon: string;
11
11
  check_icon_color: string;
12
+ svg: string | null;
12
13
  }
@@ -0,0 +1,2 @@
1
+ import { SeatMapCanvas } from "./canvas.index";
2
+ export default SeatMapCanvas;
@@ -0,0 +1,28 @@
1
+ import "../scss/style.scss";
2
+ import Svg from "@svg/svg.index";
3
+ import SeatMapDevTools from "@/dev.tools";
4
+ import DataModel from "@model/data.model";
5
+ import DefaultsModel from "@model/defaults.model";
6
+ import { GlobalModel } from "@model/global.model";
7
+ import ZoomManager from "@svg/zoom.manager";
8
+ import EventManager from "@svg/event.manager";
9
+ import WindowManager from "@/window.manager";
10
+ import { ParserBase } from "@/converters/parser.base";
11
+ export declare class SeatMapCanvas {
12
+ container_selector: any;
13
+ node: any;
14
+ svg: Svg;
15
+ dev: SeatMapDevTools;
16
+ data: DataModel;
17
+ config: DefaultsModel;
18
+ global: GlobalModel;
19
+ windowManager: WindowManager;
20
+ zoomManager: ZoomManager;
21
+ eventManager: EventManager;
22
+ addEventListener: any;
23
+ parsers: {
24
+ [name: string]: ParserBase;
25
+ };
26
+ constructor(container_selector: any, _config: DefaultsModel);
27
+ registerConverters(): void;
28
+ }
@@ -0,0 +1,3 @@
1
+ export declare class SeatMapConfig {
2
+ constructor();
3
+ }
@@ -0,0 +1,7 @@
1
+ import { PretixModel } from "@/converters/pretix/pretix.model";
2
+ import BlockModel from "@model/block.model";
3
+ export declare abstract class ParserBase {
4
+ code: string;
5
+ constructor();
6
+ parse(jsonModel: PretixModel): BlockModel[];
7
+ }
@@ -0,0 +1,75 @@
1
+ export interface PretixModel {
2
+ name: string;
3
+ categories: PretixCategory[];
4
+ zones: PretixZone[];
5
+ size: PretixSize;
6
+ }
7
+ export interface PretixCategory {
8
+ name: string;
9
+ color: string;
10
+ }
11
+ export interface PretixZone {
12
+ name: string;
13
+ position: PretixPosition;
14
+ rows: PretixRow[];
15
+ areas: PretixArea[];
16
+ uuid: string;
17
+ zone_id: string;
18
+ }
19
+ export interface PretixPosition {
20
+ x: number;
21
+ y: number;
22
+ }
23
+ export interface PretixRow {
24
+ position: PretixPosition2;
25
+ row_number: string;
26
+ row_number_position: string;
27
+ seats: PretixSeat[];
28
+ uuid: string;
29
+ }
30
+ export interface PretixPosition2 {
31
+ x: number;
32
+ y: number;
33
+ }
34
+ export interface PretixSeat {
35
+ seat_number: string;
36
+ seat_guid: string;
37
+ uuid: string;
38
+ position: PretixPosition3;
39
+ category: string;
40
+ }
41
+ export interface PretixPosition3 {
42
+ x: number;
43
+ y: number;
44
+ }
45
+ export interface PretixArea {
46
+ shape: string;
47
+ color: string;
48
+ border_color: string;
49
+ rotation: number;
50
+ uuid: string;
51
+ position: PretixPosition4;
52
+ text: PretixText;
53
+ rectangle: PretixRectangle;
54
+ }
55
+ export interface PretixPosition4 {
56
+ x: number;
57
+ y: number;
58
+ }
59
+ export interface PretixText {
60
+ position: PretixPosition5;
61
+ color: string;
62
+ text: string;
63
+ }
64
+ export interface PretixPosition5 {
65
+ x: number;
66
+ y: number;
67
+ }
68
+ export interface PretixRectangle {
69
+ width: number;
70
+ height: number;
71
+ }
72
+ export interface PretixSize {
73
+ width: number;
74
+ height: number;
75
+ }
@@ -0,0 +1,7 @@
1
+ import { PretixModel } from "@/converters/pretix/pretix.model";
2
+ import { ParserBase } from "@/converters/parser.base";
3
+ export declare class PretixParser extends ParserBase {
4
+ name: string;
5
+ constructor();
6
+ parse(jsonModel: PretixModel): any[];
7
+ }
@@ -0,0 +1,8 @@
1
+ interface DomInterface {
2
+ tag?: string;
3
+ class?: string;
4
+ event_code?: string;
5
+ autoGenerate?: boolean;
6
+ }
7
+ export declare function dom(values: DomInterface): (target: any) => void;
8
+ export {};
@@ -0,0 +1 @@
1
+ export * from "./dom";
@@ -0,0 +1,6 @@
1
+ import { SeatMapCanvas } from "./canvas.index";
2
+ export default class SeatMapDevTools {
3
+ private context;
4
+ constructor(context: SeatMapCanvas);
5
+ log(...messages: any[]): this;
6
+ }
@@ -0,0 +1,46 @@
1
+ export declare enum EventType {
2
+ ADD_BLOCK = "BLOCK.ADD",
3
+ REMOVE_BLOCK = "BLOCK.REMOVE",
4
+ CLICK_BLOCK = "BLOCK.CLICK",
5
+ MOUSEENTER_BLOCK = "BLOCK.MOUSEENTER",
6
+ TOUCHSTART_BLOCK = "BLOCK.TOUCHSTART",
7
+ MOUSEDOWN_BLOCK = "BLOCK.MOUSEDOWN",
8
+ MOUSEUP_BLOCK = "BLOCK.MOUSEUP",
9
+ MOUSEMOVE_BLOCK = "BLOCK.MOUSEMOVE",
10
+ MOUSELEAVE_BLOCK = "BLOCK.MOUSELEAVE",
11
+ UPDATE_BLOCK = "BLOCK.UPDATE",
12
+ CLICK_SEAT = "SEAT.CLICK",
13
+ TOUCHSTART_SEAT = "SEAT.TOUCHSTART",
14
+ MOUSEMOVE_SEAT = "SEAT.MOUSEMOVE",
15
+ MOUSEDOWN_SEAT = "SEAT.MOUSEDOWN",
16
+ MOUSEENTER_SEAT = "SEAT.MOUSEENTER",
17
+ MOUSELEAVE_SEAT = "SEAT.MOUSELEAVE",
18
+ MOUSEOUT_SEAT = "SEAT.MOUSEOUT",
19
+ ADD_SEAT = "SEAT.ADD",
20
+ REMOVE_SEAT = "SEAT.REMOVE",
21
+ ZOOM_LEVEL_CHANGE = "ZOOM_LEVEL_CHANGE",
22
+ BOUND_CLICK = "BOUND.CLICK",
23
+ MOUSE_MOVE = "MOUSE.MOVE",
24
+ RESIZE_WINDOW = "WINDOW.RESIZE",
25
+ CLICK_ZOOM_OUT = "ZOOM-OUT-BG.CLICK",
26
+ MOUSEMOVE_ZOOM_OUT = "ZOOM-OUT-BG.MOUSEMOVE",
27
+ KEYDOWN_SVG = "KEYDOWN.SEATMAP-SVG",
28
+ KEYUP_SVG = "KEYUP.SEATMAP-SVG",
29
+ MULTI_SELECT_ENABLE = "MULTI_SELECT_ENABLE",
30
+ MULTI_SELECT_DISABLE = "MULTI_SELECT_DISABLE",
31
+ BEST_AVAILABLE_ENABLE = "BEST_AVAILABLE_ENABLE",
32
+ MBEST_AVAILABLE_DISABLE = "MBEST_AVAILABLE_DISABLE",
33
+ READY = "READY"
34
+ }
35
+ export declare enum ZoomLevel {
36
+ VENUE = "VENUE",
37
+ BLOCK = "BLOCK",
38
+ SEAT = "SEAT"
39
+ }
40
+ export declare enum SeatAction {
41
+ HOVER = "hover",
42
+ FOCUS = "focus",
43
+ LEAVE = "leave",
44
+ SELECT = "select",
45
+ NORMAL = "normal"
46
+ }
@@ -0,0 +1,4 @@
1
+ export declare enum ParserEnum {
2
+ SEATMAP = "seatmap",
3
+ PRETIX = "pretix"
4
+ }
@@ -0,0 +1,30 @@
1
+ import SeatModel from "@model/seat.model";
2
+ import LabelModel from "@model/label.model";
3
+ import ModelBase from "@model/model.base";
4
+ export default class BlockModel extends ModelBase {
5
+ id: string;
6
+ seats: Array<SeatModel>;
7
+ labels: Array<LabelModel>;
8
+ title: String;
9
+ bounds: any;
10
+ width: number;
11
+ height: number;
12
+ x: number;
13
+ y: number;
14
+ color: string;
15
+ border_color: string;
16
+ bbox: any;
17
+ zoom_bbox: any;
18
+ rotate: number;
19
+ gap: number;
20
+ constructor(item: any);
21
+ toJson(): {
22
+ id: string;
23
+ title: String;
24
+ x: number;
25
+ y: number;
26
+ color: string;
27
+ width: number;
28
+ height: number;
29
+ };
30
+ }
@@ -0,0 +1,7 @@
1
+ export declare class CoordinateModel {
2
+ private x;
3
+ private y;
4
+ constructor(item?: any);
5
+ toArray(): number[];
6
+ toJson(): {};
7
+ }
@@ -0,0 +1,27 @@
1
+ import BlockModel from "@model/block.model";
2
+ import { SeatMapCanvas } from "@/canvas.index";
3
+ import SeatModel from "@model/seat.model";
4
+ import { PretixModel } from "@/converters/pretix/pretix.model";
5
+ interface BlockQuery {
6
+ id?: number | string;
7
+ }
8
+ export default class DataModel {
9
+ private _self;
10
+ blocks: Array<BlockModel>;
11
+ private eventManager;
12
+ addEventListener: any;
13
+ constructor(_self: SeatMapCanvas);
14
+ addBlock(block_data: any): this;
15
+ addBulkBlock(block_data: BlockModel[] | PretixModel): this;
16
+ replaceData(block_data: BlockModel[] | PretixModel): this;
17
+ getBlock(id: string | number): BlockModel | null;
18
+ getBlocks(blockId?: string): Array<BlockModel>;
19
+ removeBlock(id: string | number): this;
20
+ getSeat(seatId: string | number, blockId: string | number): SeatModel | null;
21
+ getSelectedSeats(blockId?: string): Array<SeatModel>;
22
+ filterBlock(query: BlockQuery): Array<BlockModel>;
23
+ toJson(): {
24
+ blocks: BlockModel[];
25
+ };
26
+ }
27
+ export {};
@@ -0,0 +1,34 @@
1
+ import { SeatStyle } from "@model/styles/seat.style";
2
+ import { BLockStyle } from "@model/styles/block.style";
3
+ import { LegendStyle } from "@model/styles/legend.style";
4
+ import { LabelStyle } from "@model/styles/label.style";
5
+ import { TooltipStyle } from "@model/styles/tooltip.style";
6
+ import { ParserEnum } from "@enum/parser.enum";
7
+ export declare class StyleConfig {
8
+ seat: SeatStyle;
9
+ block: BLockStyle;
10
+ legend: LegendStyle;
11
+ label: LabelStyle;
12
+ tooltip: TooltipStyle;
13
+ }
14
+ export default class DefaultsModel {
15
+ min_zoom: number;
16
+ max_zoom: number;
17
+ animation_speed: number;
18
+ resizable: boolean;
19
+ container: any;
20
+ zoom_focus_circle_radius: number;
21
+ click_enable_sold_seats: boolean;
22
+ zoom_out_button: string;
23
+ legend: boolean;
24
+ canvas_stageout_control: boolean;
25
+ style: StyleConfig;
26
+ json_model: ParserEnum;
27
+ lang: {
28
+ selectable: string;
29
+ non_selectable: string;
30
+ your_selection: string;
31
+ };
32
+ constructor(config: any);
33
+ getAll(): this;
34
+ }
@@ -0,0 +1,18 @@
1
+ import DefaultsModel from "@model/defaults.model";
2
+ import DataModel from "@model/data.model";
3
+ import { SeatMapCanvas } from "@/canvas.index";
4
+ import ZoomManager from "@svg/zoom.manager";
5
+ import EventManager from "@svg/event.manager";
6
+ import Svg from "@svg/svg.index";
7
+ import WindowManager from "@/window.manager";
8
+ export interface GlobalModel {
9
+ config: DefaultsModel;
10
+ eventManager: EventManager;
11
+ windowManager: WindowManager;
12
+ data: DataModel;
13
+ root: SeatMapCanvas;
14
+ zoomManager: ZoomManager;
15
+ svg: Svg;
16
+ multi_select: boolean;
17
+ best_available: boolean;
18
+ }
@@ -0,0 +1,9 @@
1
+ import BlockModel from "@model/block.model";
2
+ import ModelBase from "@model/model.base";
3
+ export default class LabelModel extends ModelBase {
4
+ x: number;
5
+ y: number;
6
+ title: string;
7
+ block: BlockModel;
8
+ constructor(item: any);
9
+ }
@@ -0,0 +1,8 @@
1
+ import ModelBase from "@model/model.base";
2
+ export default class LegendModel extends ModelBase {
3
+ x: number;
4
+ y: number;
5
+ title: string;
6
+ color: string;
7
+ constructor(item: any);
8
+ }
@@ -0,0 +1,5 @@
1
+ export default class ModelBase {
2
+ child_index: number | null;
3
+ item_type: string | null;
4
+ constructor();
5
+ }
@@ -0,0 +1,40 @@
1
+ import BlockModel from "@model/block.model";
2
+ import ModelBase from "@model/model.base";
3
+ import { SeatItem } from "@svg/stage/blocks/block-item/seat/seat-item.index";
4
+ export default class SeatModel extends ModelBase {
5
+ id: any;
6
+ x: number;
7
+ y: number;
8
+ title?: string;
9
+ selected: boolean;
10
+ color: string;
11
+ block: BlockModel;
12
+ salable: boolean;
13
+ note?: string;
14
+ tags: Array<string>;
15
+ tag_index: any;
16
+ custom_data?: any;
17
+ svg: SeatItem | null;
18
+ icon?: string | null;
19
+ constructor(item: any);
20
+ selectedToggle(): boolean;
21
+ addTag(tag: string): void;
22
+ removeTags(tag: string): void;
23
+ toJson(): {
24
+ id: any;
25
+ x: number;
26
+ y: number;
27
+ salable: boolean;
28
+ note: string | undefined;
29
+ color: string;
30
+ block: {
31
+ id: string;
32
+ title: String;
33
+ x: number;
34
+ y: number;
35
+ color: string;
36
+ width: number;
37
+ height: number;
38
+ };
39
+ };
40
+ }
@@ -0,0 +1,7 @@
1
+ export declare class BLockStyle {
2
+ fill: string;
3
+ stroke: string;
4
+ border_width: number;
5
+ title_color: string;
6
+ title_font_size: number;
7
+ }
@@ -0,0 +1,6 @@
1
+ export declare class LabelStyle {
2
+ color: string;
3
+ bg: string;
4
+ font_size: number;
5
+ radius: number;
6
+ }
@@ -0,0 +1,6 @@
1
+ export declare class LegendStyle {
2
+ radius: number;
3
+ padding: number;
4
+ font_size: number;
5
+ font_color: string;
6
+ }
@@ -0,0 +1,13 @@
1
+ export declare class SeatStyle {
2
+ radius: number;
3
+ color: string;
4
+ not_salable: string;
5
+ selected: string;
6
+ hover: string;
7
+ focus: string;
8
+ focus_out: string;
9
+ check_color: string;
10
+ check_icon: string;
11
+ check_icon_color: string;
12
+ svg: string | null;
13
+ }
@@ -0,0 +1,7 @@
1
+ export declare class TooltipStyle {
2
+ border_width: number;
3
+ width: number;
4
+ height: number;
5
+ color: string;
6
+ bg: string;
7
+ }
@@ -0,0 +1,12 @@
1
+ import { SeatMapCanvas } from "@/canvas.index";
2
+ export interface EventObject {
3
+ type: string;
4
+ fn: any;
5
+ }
6
+ export default class EventManager {
7
+ private _self;
8
+ events: Array<EventObject>;
9
+ constructor(_self: SeatMapCanvas);
10
+ addEventListener(type: string | any, fn: any): this;
11
+ dispatch(type: string, data: any): this;
12
+ }
@@ -0,0 +1,7 @@
1
+ import SvgBase from "@svg/svg.base";
2
+ import LegendItem from "@svg/legend/legend.item";
3
+ export default class LegendCircle extends SvgBase {
4
+ parent: LegendItem;
5
+ constructor(parent: LegendItem);
6
+ update(): void;
7
+ }