{ "version": 3, "sources": ["src/app/root-store/time-picker-store/actions.ts", "src/app/root-store/time-picker-store/selectors.ts"], "sourcesContent": ["import { ValidationErrors } from '@angular/forms';\r\nimport { createAction, props } from '@ngrx/store';\r\nimport dayjs from 'dayjs';\r\n\r\nexport const SetTimePickerValues = createAction(\r\n '[TimePicker] Set Values',\r\n props<{\r\n start: dayjs.Dayjs | null\r\n end: dayjs.Dayjs | null\r\n availabilityPlanId?: number | null\r\n recurrenceFreq?: string | null\r\n quantity?: number | null\r\n preparationMinutes?: number\r\n followUpMinutes?: number\r\n }>()\r\n)\r\n\r\nexport const SetStartDate = createAction(\r\n '[TimePicker] Set Start Date',\r\n props<{ startDate: dayjs.Dayjs }>()\r\n)\r\n\r\nexport const SetEndDate = createAction(\r\n '[TimePicker] Set End Date',\r\n props<{ endDate: dayjs.Dayjs }>()\r\n)\r\n\r\nexport const SetAvailabilityPlanId = createAction(\r\n '[TimePicker] Set Availability Plan Id',\r\n props<{ availabilityPlanId?: number }>()\r\n)\r\n\r\nexport const SetQuantity = createAction(\r\n '[TimePicker] Set Quantity',\r\n props<{ quantity: number }>()\r\n)\r\n\r\nexport const SetPreparationMinutes = createAction(\r\n '[TimePicker] Set Preparation Minutes',\r\n props<{ minutes: number }>()\r\n)\r\n\r\nexport const SetFollowUpMinutes = createAction(\r\n '[TimePicker] Set Follow-Up Minutes',\r\n props<{ minutes: number }>()\r\n)\r\n\r\nexport const SetRecurrenceFreq = createAction(\r\n '[TimePicker] Set Recurrence Freq',\r\n props<{ recurrenceFreq: string | null }>()\r\n)\r\n\r\nexport const SetTimePickerErrors = createAction(\r\n '[TimePicker] Set TimePicker Errors',\r\n props<{ errors: ValidationErrors | null }>()\r\n)\r\n", "import { createFeatureSelector, createSelector } from '@ngrx/store';\r\nimport { selectSelectedItems } from '../object-tree-store/selects';\r\nimport { selectCatalog, selectCatalogSettings } from './../catalog-store/selectors';\r\nimport { TimePickerState } from './state';\r\n\r\nexport const selectTimePicker = createFeatureSelector('timePicker');\r\n\r\nexport const selectStartDate = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.startDate\r\n)\r\n\r\nexport const selectEndDate = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.endDate,\r\n)\r\n\r\nexport const selectAvailabilityPlanId = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.availabilityPlanId,\r\n)\r\n\r\nexport const selectQuantity = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.quantity\r\n)\r\n\r\nexport const selectPreparationMinutes = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.preparationMinutes\r\n)\r\n\r\nexport const selectFollowUpMinutes = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.followUpMinutes\r\n)\r\n\r\nexport const selectRecurrenceRule = createSelector(\r\n selectTimePicker,\r\n timepicker => timepicker.recurrenceRule\r\n)\r\n\r\nexport const selectTimePickerErrors = createSelector(\r\n selectTimePicker,\r\n timePicker => timePicker.errors\r\n)\r\n\r\nexport const selectApplicableAvailabilityPlans = createSelector(\r\n selectCatalog,\r\n selectSelectedItems,\r\n (catalog, items) => items.length && catalog.availabilityPlans\r\n ? catalog.availabilityPlans.filter(plan => items.filter(i => i.item.availabilityPlanIds?.some(p => p === plan.id)).length === items!.length)\r\n : []\r\n)\r\n\r\nexport const selectShowSpotPicker = createSelector(\r\n selectCatalogSettings,\r\n selectApplicableAvailabilityPlans,\r\n (settings, plans) => settings.Feature_ReservationUsedTimeSlots && plans.some(p => p.startSelection === 'SpotPicker')\r\n)\r\n"], "mappings": "oJAIO,IAAMA,EAAsBC,EACjC,0BACAC,EAAK,CAQD,EAGOC,EAAeF,EAC1B,8BACAC,EAAK,CAA8B,EAGxBE,EAAaH,EACxB,4BACAC,EAAK,CAA4B,EAGtBG,EAAwBJ,EACnC,wCACAC,EAAK,CAAmC,EAG7BI,EAAcL,EACzB,4BACAC,EAAK,CAAwB,EAGlBK,EAAwBN,EACnC,uCACAC,EAAK,CAAuB,EAGjBM,EAAqBP,EAChC,qCACAC,EAAK,CAAuB,EAGjBO,EAAoBR,EAC/B,mCACAC,EAAK,CAAqC,EAG/BQ,EAAsBT,EACjC,qCACAC,EAAK,CAAuC,ECjDvC,IAAMS,EAAmBC,EAAuC,YAAY,EAEtEC,EAAkBC,EAC7BH,EACAI,GAAcA,EAAWC,SAAS,EAGvBC,EAAgBH,EAC3BH,EACAI,GAAcA,EAAWG,OAAO,EAGrBC,EAA2BL,EACtCH,EACAI,GAAcA,EAAWK,kBAAkB,EAGhCC,EAAiBP,EAC5BH,EACAI,GAAcA,EAAWO,QAAQ,EAGtBC,EAA2BT,EACtCH,EACAI,GAAcA,EAAWS,kBAAkB,EAGhCC,EAAwBX,EACnCH,EACAI,GAAcA,EAAWW,eAAe,EAG7BC,EAAuBb,EAClCH,EACAiB,GAAcA,EAAWC,cAAc,EAG5BC,EAAyBhB,EACpCH,EACAI,GAAcA,EAAWgB,MAAM,EAGpBC,EAAoClB,EAC/CmB,EACAC,EACA,CAACC,EAASC,IAAUA,EAAMC,QAAUF,EAAQG,kBACxCH,EAAQG,kBAAkBC,OAAOC,GAAQJ,EAAMG,OAAOE,GAAKA,EAAEC,KAAKC,qBAAqBC,KAAKC,GAAKA,IAAML,EAAKM,EAAE,CAAC,EAAET,SAAWD,EAAOC,MAAM,EACzI,CAAA,CAAE,EAGKU,EAAuBjC,EAClCkC,EACAhB,EACA,CAACiB,EAAUC,IAAUD,EAASE,kCAAoCD,EAAMN,KAAKC,GAAKA,EAAEO,iBAAmB,YAAY,CAAC", "names": ["SetTimePickerValues", "createAction", "props", "SetStartDate", "SetEndDate", "SetAvailabilityPlanId", "SetQuantity", "SetPreparationMinutes", "SetFollowUpMinutes", "SetRecurrenceFreq", "SetTimePickerErrors", "selectTimePicker", "createFeatureSelector", "selectStartDate", "createSelector", "timePicker", "startDate", "selectEndDate", "endDate", "selectAvailabilityPlanId", "availabilityPlanId", "selectQuantity", "quantity", "selectPreparationMinutes", "preparationMinutes", "selectFollowUpMinutes", "followUpMinutes", "selectRecurrenceRule", "timepicker", "recurrenceRule", "selectTimePickerErrors", "errors", "selectApplicableAvailabilityPlans", "selectCatalog", "selectSelectedItems", "catalog", "items", "length", "availabilityPlans", "filter", "plan", "i", "item", "availabilityPlanIds", "some", "p", "id", "selectShowSpotPicker", "selectCatalogSettings", "settings", "plans", "Feature_ReservationUsedTimeSlots", "startSelection"] }