View Source Plausible.Imported (Plausible v0.0.1)

Context for managing site statistics imports.

For list of currently supported import sources see Plausible.Imported.ImportSources.

For more information on implementing importers, see Plausible.Imported.Importer.

Summary

Functions

Link to this function

clamp_dates(site, start_date, end_date)

View Source
@spec clamp_dates(Plausible.Site.t(), Date.t(), Date.t()) ::
  {:ok, Date.t(), Date.t()} | {:error, :no_time_window}
Link to this function

clamp_dates(occupied_ranges, cutoff_date, start_date, end_date)

View Source
@spec clamp_dates([Date.Range.t()], Date.t(), Date.t(), Date.t()) ::
  {:ok, Date.t(), Date.t()} | {:error, :no_time_window}
Link to this function

delete_imports_for_site(site)

View Source
@spec delete_imports_for_site(Plausible.Site.t()) :: :ok
@spec get_cutoff_date(Plausible.Site.t()) :: Date.t()
Link to this function

get_import(site, import_id)

View Source
Link to this function

get_imports_date_range(site)

View Source
@spec get_imports_date_range(Plausible.Site.t()) :: %{
  start_date: Date.t() | nil,
  end_date: Date.t() | nil
}
@spec get_legacy_import(Plausible.Site.t()) :: Plausible.Imported.SiteImport.t() | nil
Link to this function

get_occupied_date_ranges(site)

View Source
@spec get_occupied_date_ranges(Plausible.Site.t()) :: [Date.Range.t()]
@spec goals_with_path() :: [String.t()]
@spec goals_with_url() :: [String.t()]
@spec imported_custom_props() :: [String.t()]
Link to this function

list_all_imports(site, status \\ nil)

View Source
@spec list_all_imports(Plausible.Site.t(), atom()) :: [
  Plausible.Imported.SiteImport.t()
]
Link to this function

list_complete_import_ids(site)

View Source
@spec list_complete_import_ids(Plausible.Site.t()) :: [non_neg_integer()]

See Plausible.Imported.Importer.listen/0.

@spec load_import_data(Plausible.Site.t()) :: Plausible.Site.t()
@spec max_complete_imports() :: non_neg_integer()
Link to this function

other_imports_in_progress?(site_import)

View Source
@spec other_imports_in_progress?(Plausible.Imported.SiteImport.t()) :: boolean()
@spec schemas() :: [module()]
@spec tables() :: [String.t()]