@venulog/phasing-engine-schemas 0.13.0-alpha.1 → 0.13.0-alpha.3

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.
@@ -597,7 +597,6 @@ export declare const availableSlotsResponseV2Schema: z.ZodObject<{
597
597
  event_id: z.ZodNumber;
598
598
  event_code: z.ZodString;
599
599
  event_name: z.ZodString;
600
- company_role: z.ZodString;
601
600
  year: z.ZodNumber;
602
601
  month: z.ZodNumber;
603
602
  available_slots: z.ZodArray<z.ZodObject<{
@@ -821,10 +821,6 @@ export const availableSlotsResponseV2Schema = z
821
821
  description: 'Name of the event',
822
822
  example: 'COEC 2025'
823
823
  }),
824
- company_role: z.string().openapi({
825
- description: 'Company role that was used for filtering (returned for reference)',
826
- example: 'exhibitor'
827
- }),
828
824
  year: z.number().openapi({
829
825
  description: 'Year of the slots',
830
826
  example: 2026
@@ -663,12 +663,38 @@ export declare const exportBookingDataSchema: z.ZodObject<{
663
663
  booking_id: z.ZodNumber;
664
664
  event_id: z.ZodNumber;
665
665
  status: z.ZodEnum<typeof BookingStatus>;
666
- company_name: z.ZodString;
667
- vehicle_type: z.ZodString;
668
- scan_entrance: z.ZodNullable<z.ZodString>;
669
- scan_exit: z.ZodNullable<z.ZodString>;
670
- co2_footprint: z.ZodNullable<z.ZodNumber>;
666
+ is_active: z.ZodBoolean;
667
+ created_at: z.ZodString;
668
+ updated_at: z.ZodString;
669
+ created_by: z.ZodNullable<z.ZodString>;
670
+ updated_by: z.ZodNullable<z.ZodString>;
671
671
  booking_date: z.ZodString;
672
+ start_time: z.ZodNullable<z.ZodString>;
673
+ end_time: z.ZodNullable<z.ZodString>;
674
+ company_role: z.ZodNullable<z.ZodString>;
675
+ entry_scanned_at: z.ZodNullable<z.ZodString>;
676
+ exit_scanned_at: z.ZodNullable<z.ZodString>;
677
+ door: z.ZodNullable<z.ZodString>;
678
+ parking_spot: z.ZodNullable<z.ZodString>;
679
+ parking_schedule_type: z.ZodNullable<z.ZodString>;
680
+ slot_key: z.ZodNullable<z.ZodString>;
681
+ is_custom_slot: z.ZodNullable<z.ZodBoolean>;
682
+ company_hall: z.ZodNullable<z.ZodString>;
683
+ company_stand_number: z.ZodNullable<z.ZodString>;
684
+ company_name: z.ZodNullable<z.ZodString>;
685
+ company_exhibitor_name: z.ZodNullable<z.ZodString>;
686
+ company_departure_city: z.ZodNullable<z.ZodString>;
687
+ company_contact_name: z.ZodNullable<z.ZodString>;
688
+ company_email: z.ZodNullable<z.ZodString>;
689
+ company_phone: z.ZodNullable<z.ZodString>;
690
+ company_driver_name: z.ZodNullable<z.ZodString>;
691
+ company_driver_phone: z.ZodNullable<z.ZodString>;
692
+ company_transport_company: z.ZodNullable<z.ZodString>;
693
+ vehicle_type: z.ZodNullable<z.ZodString>;
694
+ vehicle_unloading_method: z.ZodNullable<z.ZodString>;
695
+ vehicle_license_plate: z.ZodNullable<z.ZodString>;
696
+ vehicle_trailer_registration: z.ZodNullable<z.ZodString>;
697
+ co2_footprint: z.ZodNullable<z.ZodNumber>;
672
698
  }, z.core.$strip>;
673
699
  export declare const exportBookingsQuerySchema: z.ZodObject<{
674
700
  event_id: z.ZodCoercedNumber<unknown>;
@@ -679,12 +705,38 @@ export declare const exportBookingsDataSchema: z.ZodObject<{
679
705
  booking_id: z.ZodNumber;
680
706
  event_id: z.ZodNumber;
681
707
  status: z.ZodEnum<typeof BookingStatus>;
682
- company_name: z.ZodString;
683
- vehicle_type: z.ZodString;
684
- scan_entrance: z.ZodNullable<z.ZodString>;
685
- scan_exit: z.ZodNullable<z.ZodString>;
686
- co2_footprint: z.ZodNullable<z.ZodNumber>;
708
+ is_active: z.ZodBoolean;
709
+ created_at: z.ZodString;
710
+ updated_at: z.ZodString;
711
+ created_by: z.ZodNullable<z.ZodString>;
712
+ updated_by: z.ZodNullable<z.ZodString>;
687
713
  booking_date: z.ZodString;
714
+ start_time: z.ZodNullable<z.ZodString>;
715
+ end_time: z.ZodNullable<z.ZodString>;
716
+ company_role: z.ZodNullable<z.ZodString>;
717
+ entry_scanned_at: z.ZodNullable<z.ZodString>;
718
+ exit_scanned_at: z.ZodNullable<z.ZodString>;
719
+ door: z.ZodNullable<z.ZodString>;
720
+ parking_spot: z.ZodNullable<z.ZodString>;
721
+ parking_schedule_type: z.ZodNullable<z.ZodString>;
722
+ slot_key: z.ZodNullable<z.ZodString>;
723
+ is_custom_slot: z.ZodNullable<z.ZodBoolean>;
724
+ company_hall: z.ZodNullable<z.ZodString>;
725
+ company_stand_number: z.ZodNullable<z.ZodString>;
726
+ company_name: z.ZodNullable<z.ZodString>;
727
+ company_exhibitor_name: z.ZodNullable<z.ZodString>;
728
+ company_departure_city: z.ZodNullable<z.ZodString>;
729
+ company_contact_name: z.ZodNullable<z.ZodString>;
730
+ company_email: z.ZodNullable<z.ZodString>;
731
+ company_phone: z.ZodNullable<z.ZodString>;
732
+ company_driver_name: z.ZodNullable<z.ZodString>;
733
+ company_driver_phone: z.ZodNullable<z.ZodString>;
734
+ company_transport_company: z.ZodNullable<z.ZodString>;
735
+ vehicle_type: z.ZodNullable<z.ZodString>;
736
+ vehicle_unloading_method: z.ZodNullable<z.ZodString>;
737
+ vehicle_license_plate: z.ZodNullable<z.ZodString>;
738
+ vehicle_trailer_registration: z.ZodNullable<z.ZodString>;
739
+ co2_footprint: z.ZodNullable<z.ZodNumber>;
688
740
  }, z.core.$strip>>;
689
741
  total_count: z.ZodNumber;
690
742
  filters_applied: z.ZodRecord<z.ZodString, z.ZodUnknown>;
@@ -696,12 +748,38 @@ export declare const exportBookingsResponseSchema: z.ZodObject<{
696
748
  booking_id: z.ZodNumber;
697
749
  event_id: z.ZodNumber;
698
750
  status: z.ZodEnum<typeof BookingStatus>;
699
- company_name: z.ZodString;
700
- vehicle_type: z.ZodString;
701
- scan_entrance: z.ZodNullable<z.ZodString>;
702
- scan_exit: z.ZodNullable<z.ZodString>;
703
- co2_footprint: z.ZodNullable<z.ZodNumber>;
751
+ is_active: z.ZodBoolean;
752
+ created_at: z.ZodString;
753
+ updated_at: z.ZodString;
754
+ created_by: z.ZodNullable<z.ZodString>;
755
+ updated_by: z.ZodNullable<z.ZodString>;
704
756
  booking_date: z.ZodString;
757
+ start_time: z.ZodNullable<z.ZodString>;
758
+ end_time: z.ZodNullable<z.ZodString>;
759
+ company_role: z.ZodNullable<z.ZodString>;
760
+ entry_scanned_at: z.ZodNullable<z.ZodString>;
761
+ exit_scanned_at: z.ZodNullable<z.ZodString>;
762
+ door: z.ZodNullable<z.ZodString>;
763
+ parking_spot: z.ZodNullable<z.ZodString>;
764
+ parking_schedule_type: z.ZodNullable<z.ZodString>;
765
+ slot_key: z.ZodNullable<z.ZodString>;
766
+ is_custom_slot: z.ZodNullable<z.ZodBoolean>;
767
+ company_hall: z.ZodNullable<z.ZodString>;
768
+ company_stand_number: z.ZodNullable<z.ZodString>;
769
+ company_name: z.ZodNullable<z.ZodString>;
770
+ company_exhibitor_name: z.ZodNullable<z.ZodString>;
771
+ company_departure_city: z.ZodNullable<z.ZodString>;
772
+ company_contact_name: z.ZodNullable<z.ZodString>;
773
+ company_email: z.ZodNullable<z.ZodString>;
774
+ company_phone: z.ZodNullable<z.ZodString>;
775
+ company_driver_name: z.ZodNullable<z.ZodString>;
776
+ company_driver_phone: z.ZodNullable<z.ZodString>;
777
+ company_transport_company: z.ZodNullable<z.ZodString>;
778
+ vehicle_type: z.ZodNullable<z.ZodString>;
779
+ vehicle_unloading_method: z.ZodNullable<z.ZodString>;
780
+ vehicle_license_plate: z.ZodNullable<z.ZodString>;
781
+ vehicle_trailer_registration: z.ZodNullable<z.ZodString>;
782
+ co2_footprint: z.ZodNullable<z.ZodNumber>;
705
783
  }, z.core.$strip>>;
706
784
  total_count: z.ZodNumber;
707
785
  filters_applied: z.ZodRecord<z.ZodString, z.ZodUnknown>;
@@ -715,29 +715,136 @@ export const exportBookingDataSchema = z
715
715
  description: 'Current booking status',
716
716
  example: 'confirmed'
717
717
  }),
718
- company_name: z.string().openapi({
719
- description: 'Company name from booking details',
720
- example: 'Acme Corp'
718
+ is_active: z.boolean().openapi({
719
+ description: 'Whether the booking is active',
720
+ example: true
721
721
  }),
722
- vehicle_type: z.string().openapi({
723
- description: 'Type of vehicle (PL, VUL, VL)',
724
- example: 'PL'
722
+ created_at: z.string().openapi({
723
+ description: 'Booking creation timestamp',
724
+ example: '2024-12-15T08:00:00.000Z'
725
+ }),
726
+ updated_at: z.string().openapi({
727
+ description: 'Booking last update timestamp',
728
+ example: '2024-12-15T08:30:00.000Z'
729
+ }),
730
+ created_by: z.string().nullable().openapi({
731
+ description: 'User ID who created the booking',
732
+ example: 'uuid-123'
733
+ }),
734
+ updated_by: z.string().nullable().openapi({
735
+ description: 'User ID who last updated the booking',
736
+ example: 'uuid-456'
737
+ }),
738
+ booking_date: z.string().openapi({
739
+ description: 'Date of the booking',
740
+ example: '2024-12-15'
741
+ }),
742
+ start_time: z.string().nullable().openapi({
743
+ description: 'Start time of the booking slot',
744
+ example: '08:00'
745
+ }),
746
+ end_time: z.string().nullable().openapi({
747
+ description: 'End time of the booking slot',
748
+ example: '10:00'
749
+ }),
750
+ company_role: z.string().nullable().openapi({
751
+ description: 'Company role (exhibitor, contractor, etc.)',
752
+ example: 'exhibitor'
725
753
  }),
726
- scan_entrance: z.string().nullable().openapi({
754
+ entry_scanned_at: z.string().nullable().openapi({
727
755
  description: 'Entry scan timestamp',
728
756
  example: '2024-12-15T08:30:00.000Z'
729
757
  }),
730
- scan_exit: z.string().nullable().openapi({
758
+ exit_scanned_at: z.string().nullable().openapi({
731
759
  description: 'Exit scan timestamp',
732
760
  example: '2024-12-15T17:15:00.000Z'
733
761
  }),
762
+ door: z.string().nullable().openapi({
763
+ description: 'Parking door/gate name',
764
+ example: 'North Gate'
765
+ }),
766
+ parking_spot: z.string().nullable().openapi({
767
+ description: 'Parking area/spot name',
768
+ example: 'Main Entrance'
769
+ }),
770
+ parking_schedule_type: z.string().nullable().openapi({
771
+ description: 'Type of parking schedule (assembly/dismantling)',
772
+ example: 'assembly'
773
+ }),
774
+ slot_key: z.string().nullable().openapi({
775
+ description: 'Unique slot key identifier',
776
+ example: 'MainEntrance_2024-12-15_08:00'
777
+ }),
778
+ is_custom_slot: z.boolean().nullable().openapi({
779
+ description: 'Whether the booking uses a custom time slot',
780
+ example: false
781
+ }),
782
+ // Flattened company fields
783
+ company_hall: z.string().nullable().openapi({
784
+ description: 'Hall location',
785
+ example: 'Hall 1'
786
+ }),
787
+ company_stand_number: z.string().nullable().openapi({
788
+ description: 'Stand number',
789
+ example: 'A-123'
790
+ }),
791
+ company_name: z.string().nullable().openapi({
792
+ description: 'Company name',
793
+ example: 'Acme Corp'
794
+ }),
795
+ company_exhibitor_name: z.string().nullable().openapi({
796
+ description: 'Exhibitor name',
797
+ example: 'Technology'
798
+ }),
799
+ company_departure_city: z.string().nullable().openapi({
800
+ description: 'City of departure',
801
+ example: 'Paris'
802
+ }),
803
+ company_contact_name: z.string().nullable().openapi({
804
+ description: 'Contact person name',
805
+ example: 'John Doe'
806
+ }),
807
+ company_email: z.string().nullable().openapi({
808
+ description: 'Contact email',
809
+ example: 'john.doe@acme.com'
810
+ }),
811
+ company_phone: z.string().nullable().openapi({
812
+ description: 'Contact phone number',
813
+ example: '+33 1 23 45 67 89'
814
+ }),
815
+ company_driver_name: z.string().nullable().openapi({
816
+ description: 'Driver name',
817
+ example: 'Jean Martin'
818
+ }),
819
+ company_driver_phone: z.string().nullable().openapi({
820
+ description: 'Driver phone number',
821
+ example: '+33 6 12 34 56 78'
822
+ }),
823
+ company_transport_company: z.string().nullable().openapi({
824
+ description: 'Transport company name',
825
+ example: 'Fast Transport Ltd'
826
+ }),
827
+ // Flattened vehicle fields
828
+ vehicle_type: z.string().nullable().openapi({
829
+ description: 'Type of vehicle (PL, VUL, VL)',
830
+ example: 'PL'
831
+ }),
832
+ vehicle_unloading_method: z.string().nullable().openapi({
833
+ description: 'Unloading method for the vehicle',
834
+ example: 'site'
835
+ }),
836
+ vehicle_license_plate: z.string().nullable().openapi({
837
+ description: 'Vehicle license plate',
838
+ example: 'AB-123-CD'
839
+ }),
840
+ vehicle_trailer_registration: z.string().nullable().openapi({
841
+ description: 'Trailer registration number',
842
+ example: 'TR-456-EF'
843
+ }),
844
+ // Calculated fields
734
845
  co2_footprint: z.number().nullable().openapi({
735
846
  description: 'Estimated CO2 footprint in kg based on vehicle type and duration',
736
847
  example: 12.5
737
- }),
738
- booking_date: z.string().openapi({
739
- description: 'Date of the booking',
740
- example: '2024-12-15'
741
848
  })
742
849
  })
743
850
  .openapi('ExportBookingData');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@venulog/phasing-engine-schemas",
3
- "version": "0.13.0-alpha.1",
3
+ "version": "0.13.0-alpha.3",
4
4
  "description": "Shared schemas and types for Phasing Engine API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",