Sha256: e2665fa4ce251352a3c689f4805eac28cb7540eab4f89c57de5e56738d0d19b3

Contents?: true

Size: 1.82 KB

Versions: 1

Compression:

Stored size: 1.82 KB

Contents

# frozen_string_literal: true
# typed: strict

class EdgeTodoTypes < T::Enum
  enums do
    Dependency = new
    Privacy = new
    Layer = new
    Visibility = new
    Folder_Visibility = new
  end
end

class FocusPackEdgeDirection < T::Enum
  enums do
    None = new # don't include non-focus packs and thus show no edges to/from them
    All = new # include non-focus packs and show all edges between all visible nodes
    In = new # include non-focus packs and show edges that go towards focus packs (and show all edges between focus packs)
    Out = new # include non-focus packs and show edges that go away from focus packs (and show all edges between focus packs)
    InOut = new # include non-focus packs and show edges that go towards or away from focus packs (and show all edges between focus packs)
  end
end

class Options < T::Struct
  extend T::Sig

  prop :show_legend, T::Boolean, default: true

  prop :show_dependencies, T::Boolean, default: true
  prop :show_privacy, T::Boolean, default: true
  prop :show_layers, T::Boolean, default: true
  prop :show_visibility, T::Boolean, default: true

  prop :show_relationship_todos, T::Boolean, default: true
  prop :relationship_todo_types, T::Array[EdgeTodoTypes], default: EdgeTodoTypes.values
  prop :use_relationship_todos_for_layout, T::Boolean, default: false

  prop :show_teams, T::Boolean, default: true
  prop :show_node_todos, T::Boolean, default: true

  prop :focus_pack, T.nilable(T::Array[String]), default: nil
  prop :show_only_edges_to_focus_pack, FocusPackEdgeDirection, default: FocusPackEdgeDirection::All
  prop :exclude_packs, T::Array[String], default: []

  prop :roll_nested_into_parent_packs, T::Boolean, default: false
  prop :show_nested_relationships, T::Boolean, default: true

  prop :remote_base_url, T.nilable(String)

  prop :title, T.nilable(String), default: nil
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
visualize_packs-0.6.0 lib/visualize_packs/options.rb