Filters allow us to describe what events to show/use in various places in the system, for example Trends or Funnels. This object isn't a table in the database. It gets stored against the specific models itself as JSON. This class just allows for stronger typing of this object.
| 51 | |
| 52 | |
| 53 | class Filter( |
| 54 | PropertyMixin, |
| 55 | IntervalMixin, |
| 56 | SmoothingIntervalsMixin, |
| 57 | EntitiesMixin, |
| 58 | EntityIdMixin, |
| 59 | EntityTypeMixin, |
| 60 | EntityMathMixin, |
| 61 | EntityOrderMixin, |
| 62 | DisplayDerivedMixin, |
| 63 | SelectorMixin, |
| 64 | ShownAsMixin, |
| 65 | BreakdownMixin, |
| 66 | BreakdownValueMixin, |
| 67 | FilterTestAccountsMixin, |
| 68 | CompareMixin, |
| 69 | InsightMixin, |
| 70 | OffsetMixin, |
| 71 | LimitMixin, |
| 72 | DateMixin, |
| 73 | FormulaMixin, |
| 74 | FunnelWindowDaysMixin, |
| 75 | FunnelWindowMixin, |
| 76 | FunnelFromToStepsMixin, |
| 77 | FunnelPersonsStepMixin, |
| 78 | FunnelTrendsPersonsMixin, |
| 79 | FunnelPersonsStepBreakdownMixin, |
| 80 | FunnelLayoutMixin, |
| 81 | FunnelTypeMixin, |
| 82 | HistogramMixin, |
| 83 | GroupsAggregationMixin, |
| 84 | FunnelCorrelationMixin, |
| 85 | FunnelCorrelationActorsMixin, |
| 86 | SimplifyFilterMixin, |
| 87 | IncludeRecordingsMixin, |
| 88 | SearchMixin, |
| 89 | DistinctIdMixin, |
| 90 | EmailMixin, |
| 91 | BaseFilter, |
| 92 | ClientQueryIdMixin, |
| 93 | ): |
| 94 | """ |
| 95 | Filters allow us to describe what events to show/use in various places in the system, for example Trends or Funnels. |
| 96 | This object isn't a table in the database. It gets stored against the specific models itself as JSON. |
| 97 | This class just allows for stronger typing of this object. |
| 98 | """ |
| 99 | |
| 100 | funnel_id: Optional[int] = None |
| 101 | _data: Dict |
| 102 | |
| 103 | def __init__( |
| 104 | self, data: Optional[Dict[str, Any]] = None, request: Optional[request.Request] = None, **kwargs |
| 105 | ) -> None: |
| 106 | |
| 107 | if request: |
| 108 | properties = {} |
| 109 | if request.GET.get(PROPERTIES): |
| 110 | try: |
no outgoing calls
searching dependent graphs…