Class: JekyllNotion::NotionDatabase

Inherits:
Object
  • Object
show all
Defined in:
lib/jekyll-notion/notion_database.rb

Instance Method Summary collapse

Constructor Details

#initialize(config:) ⇒ NotionDatabase

Returns a new instance of NotionDatabase.



5
6
7
8
# File 'lib/jekyll-notion/notion_database.rb', line 5

def initialize(config:)
  @notion = Notion::Client.new
  @config = config
end

Instance Method Details

#collectionObject



34
35
36
# File 'lib/jekyll-notion/notion_database.rb', line 34

def collection
  config["collection"] || "posts"
end

#configObject



18
19
20
# File 'lib/jekyll-notion/notion_database.rb', line 18

def config
  @config || {}
end

#filterObject



22
23
24
# File 'lib/jekyll-notion/notion_database.rb', line 22

def filter
  config["filter"]
end

#idObject



30
31
32
# File 'lib/jekyll-notion/notion_database.rb', line 30

def id
  config["id"]
end

#pagesObject



10
11
12
13
14
15
16
# File 'lib/jekyll-notion/notion_database.rb', line 10

def pages
  return [] unless id?

  @pages ||= @notion.database_query(query)[:results].map do |page|
    NotionToMd::Page.new(:page => page)
  end
end

#sortObject



26
27
28
# File 'lib/jekyll-notion/notion_database.rb', line 26

def sort
  config["sort"]
end