notion_ruby_mapping 0.6.8 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1372e3b57aef4a44d060751e07ba15bd224d23b974ff46426ac4e40a10c0b0b6
4
- data.tar.gz: b6310155b12dcb73f022bd9415667c67b8a78246377622128fb0bcd2eccb4bd9
3
+ metadata.gz: 378e8aecdacdabc3fd951939783195ed13f2e56665a202a8fe3cf9a2d66e0fab
4
+ data.tar.gz: d92c738818763b3d4d49d06e1f7c326ec2fc60e5214162a8185c4f7a8c3f501a
5
5
  SHA512:
6
- metadata.gz: 01a32f40c022b5916891409b823bf76efd02414520e14eb98dc1f7ec49901fcc60fd085c845fe71f0b38a5d3776e32a6c9bce4e5c2efb5edce750f2b24a66ff8
7
- data.tar.gz: 06babf96d0c07ccc74c2ab24ccf55500ed8c75506c2e5c0c95837968795af8192eea3e773ca153254048a63204ed6fed4996a1a25f74ced78187d52114c4ca4a
6
+ metadata.gz: 0dd2673402bbe54ccd135331c3476f4009af7c68411895f2244288eae761c8975e5bb7e9e39d14ba5d2fc58b96cb38c8dd4f401de2a422d0ebfaeff4c29277ed
7
+ data.tar.gz: 331fadb7063f5d72c049a7f84907174b3470be179340539796772e31a3ff61dd10222d1638d26688c67fe8470501235c3025c2ebda46ba8942e404cc256aad91
data/README.md CHANGED
@@ -1,97 +1,131 @@
1
1
  # notion_ruby_mapping
2
2
 
3
- Notion Ruby mapping is currently under development.
3
+ Notion Ruby Mapping is a library that makes it easy to access data on Notion using Ruby. It is currently under development.
4
4
 
5
- Development note is here. [Idea note of "notion_ruby_mapping"](https://www.notion.so/hkob/Idea-note-of-notion_ruby_mapping-3b0a3bb3c171438a830f9579d41df501)
5
+ Notion Ruby Mapping Ruby Notion 上のデータを簡単にアクセスできるようにするライブラリです。現在開発中です。
6
+
7
+ Development note is here.
8
+
9
+ 開発ノートは以下の URL にあります。
10
+
11
+ → [Idea note of "notion_ruby_mapping"](https://www.notion.so/hkob/Idea-note-of-notion_ruby_mapping-3b0a3bb3c171438a830f9579d41df501)
6
12
 
7
13
  ## Table of Contents
8
14
 
9
- - [notion_ruby_mapping](#notion_ruby_mapping)
15
+ - [notion\_ruby\_mapping](#notion_ruby_mapping)
10
16
  - [Table of Contents](#table-of-contents)
11
- - [0. Changes](#0-changes)
12
- - [0.1 Changes in v0.6.0](#01-changes-in-v060)
13
- - [0.2 Changes in v0.5.0](#02-changes-in-v050)
14
- - [1. Installation](#1-installation)
15
- - [2. How to use](#2-how-to-use)
16
- - [2.1 Create a New Integration](#21-create-a-new-integration)
17
- - [2.2 Create client](#22-create-client)
18
- - [2.3 Sample codes](#23-sample-codes)
19
- - [2.4. Another example code (Use case)](#24-another-example-code-use-case)
20
- - [2.5 API reference](#25-api-reference)
17
+ - [0. History of Major Changes / 主な変更履歴](#0-history-of-major-changes--主な変更履歴)
18
+ - [0.1 Changes in v0.7.0](#01-changes-in-v070)
19
+ - [0.2 Changes in v0.6.0](#02-changes-in-v060)
20
+ - [0.3 Changes in v0.5.0](#03-changes-in-v050)
21
+ - [1. Installation / インストール方法](#1-installation--インストール方法)
22
+ - [2. How to use / 利用方法](#2-how-to-use--利用方法)
23
+ - [2.1 Create a New Integration / インテグレーションの作成](#21-create-a-new-integration--インテグレーションの作成)
24
+ - [2.2 Set your integration token / インテグレーショントークンの設定](#22-set-your-integration-token--インテグレーショントークンの設定)
25
+ - [2.3 Sample codes / サンプルコード](#23-sample-codes--サンプルコード)
26
+ - [2.4. Another example code (Use case) / その他の使用例 (ユースケース)](#24-another-example-code-use-case--その他の使用例-ユースケース)
27
+ - [2.5 API reference / API リファレンス](#25-api-reference--api-リファレンス)
21
28
  - [3. ChangeLog](#3-changelog)
22
- - [4. Contributing](#4-contributing)
23
- - [5. License](#5-license)
24
- - [6. Code of Conduct](#6-code-of-conduct)
29
+ - [4. Contributing / 貢献](#4-contributing--貢献)
30
+ - [5. License / ライセンス](#5-license--ライセンス)
31
+ - [6. Code of Conduct / 行動規範](#6-code-of-conduct--行動規範)
32
+
33
+ ## 0. History of Major Changes / 主な変更履歴
34
+
35
+ ### 0.1 Changes in v0.7.0
25
36
 
26
- ## 0. Changes
37
+ Since the number of Japanese users has increased, we decided to include Japanese as well. In addition, we have simplified the method of setting up integration tokens.
27
38
 
28
- ### 0.1 Changes in v0.6.0
39
+ 日本のユーザが増えたので、日本語も併記することにしました。また、インテグレーショントークンの設定方法を簡単にしました。
40
+
41
+ ### 0.2 Changes in v0.6.0
29
42
 
30
43
  NotionRubyMapping v0.6.0 now supports Notion-Version 2022-06-28.
31
- In 2022-06-28, property values are no longer returned when retrieving pages.
32
- NotionRubyMapping temporarily creates a Property Object and calls the retrieve a property item API when a value is needed.
33
- Therefore, users do not need to be aware of any differences, and existing scripts should work as they are.
44
+ ~~In 2022-06-28, property values are no longer returned when retrieving pages. NotionRubyMapping temporarily creates a Property Object and calls the retrieve a property item API when a value is needed. Therefore, users do not need to be aware of any differences, and existing scripts should work as they are.~~
45
+
46
+ NotionRubyMapping v0.6.0 は、Notion-Version 2022-06-28 に対応しました。
47
+ ~~ 2022-06-28 では、ページを取得する際にプロパティ値を返さなくなりました。NotionRubyMapping は、一時的に Property Object を作成し、値が必要なときにプロパティ項目を取得する API を呼び出します。そのため、ユーザーはこの違いを意識する必要はなく、既存のスクリプトはそのまま動作するはずです。~~
34
48
 
35
- ### 0.2 Changes in v0.5.0
49
+ ### 0.3 Changes in v0.5.0
36
50
 
37
51
  NotionRubyMapping v0.5.0 now supports block updates.
38
52
  For efficiency, subclasses are provided under Block class. As a result, they are no longer compatible with the scripts used in v0.4.0.
39
53
 
40
- ## 1. Installation
54
+ NotionRubyMapping v0.5.0 では、ブロック更新をサポートするようになりました。
55
+ 効率化のため、Blockクラスの下にサブクラスが提供されています。そのため、v0.4.0で使用していたスクリプトとは互換性がなくなりました。
56
+
57
+ ## 1. Installation / インストール方法
41
58
 
42
59
  Add this line to your application's Gemfile:
43
60
 
61
+ アプリケーションのGemfileに次の行を追加します。:
62
+
44
63
  ```ruby
45
64
  gem 'notion_ruby_mapping'
46
65
  ```
47
66
 
48
67
  And then execute:
49
68
 
69
+ そして以下を実行してください:
70
+
50
71
  ```shell
51
72
  bundle install
52
73
  ```
53
74
 
54
75
  Or install it yourself as:
55
76
 
77
+ または、自分でインストールすることもできます。:
78
+
56
79
  ```shell
57
80
  gem install notion_ruby_mapping
58
81
  ```
59
82
 
60
- ## 2. How to use
83
+ ## 2. How to use / 利用方法
61
84
 
62
- ### 2.1 Create a New Integration
85
+ ### 2.1 Create a New Integration / インテグレーションの作成
63
86
 
64
87
  Please check [Notion documentation](https://developers.notion.com/docs#getting-started).
65
88
 
66
- ### 2.2 Create client
89
+ [Notion documentation](https://developers.notion.com/docs#getting-started) を読んでください。
90
+
91
+ ### 2.2 Set your integration token / インテグレーショントークンの設定
92
+
93
+ From v0.7.0, it can be set with `NotionRubymapping.configuration`.
67
94
 
68
- Please create a client (notion-ruby-client) before you use the following class.
95
+ v0.7.0 から `NotionRubyMapping.configuration` で設定できるようになりました。
96
+
97
+ ```ruby
98
+ NotionRubyMapping.configuration do |config|
99
+ config.notion_token = "secret_XXXXXXXXXXXXXXXXXXXX" # write directly
100
+ config.wait = 0
101
+ end
102
+ ```
69
103
 
70
- ```Ruby
71
- NotionCache.instance.create_client "secret_XXXXXXXXXXXXXXXXXXXX" # write directly
72
- NotionCache.instance.create_client ENV["NOTION_API_TOKEN"] # from environment
104
+ ```ruby
105
+ NotionRubyMapping.configuration { |c| c.notion_token = ENV["NOTION_API_TOKEN"] } # from environment
73
106
  ```
74
107
 
75
- ### 2.3 Sample codes
108
+ ### 2.3 Sample codes / サンプルコード
76
109
 
77
- 1. [Database and page access sample](https://www.notion.so/hkob/Database-and-page-access-sample-d30033e707194faf995741167eb2b6f8)
78
- 2. [Append block children sample](https://www.notion.so/hkob/Append-block-children-sample-3867910a437340be931cf7f2c06443c6)
79
- 3. [Update block sample](https://www.notion.so/hkob/update-block-sample-5568c1c36fe84f12b83edfe2dda83028)
110
+ 1. [Database and page access sample / データベースとページのアクセスサンプル](https://www.notion.so/hkob/Database-and-page-access-sample-d30033e707194faf995741167eb2b6f8)
111
+ 2. [Append block children sample / 子ブロック要素の追加サンプル](https://www.notion.so/hkob/Append-block-children-sample-3867910a437340be931cf7f2c06443c6)
112
+ 3. [Update block sample / ブロック要素の更新サンプル](https://www.notion.so/hkob/update-block-sample-5568c1c36fe84f12b83edfe2dda83028)
80
113
 
81
- ### 2.4. Another example code (Use case)
114
+ ### 2.4. Another example code (Use case) / その他の使用例 (ユースケース)
82
115
 
83
- 1. [Set icon to all icon unsettled pages](examples/set_icon_to_all_icon_unsettled_pages.md)
84
- 2. [Renumbering pages](examples/renumbering_pages.md)
85
- 3. [Change title](examples/change_title.md)
86
- 4. [Create ER Diagram from Notion database](https://www.notion.so/hkob/notionErDiagram-Sample-1720c2199c534ca08138cde38f31f710)
87
- 5. [Create Sitemap from Notion pages](https://www.notion.so/hkob/NotionSitemap-sample-14e195c83d024c5382aab09210916c87)
116
+ 1. [Set icon to all icon unsettled pages / 全てのページのアイコンを同一に設定](examples/set_icon_to_all_icon_unsettled_pages.md)
117
+ 2. [Renumbering pages / ページのナンバリング](examples/renumbering_pages.md)
118
+ 3. [Change title / タイトルの変更](examples/change_title.md)
119
+ 4. [Create ER Diagram from Notion database / Notion データベースの ER 図を作成](https://www.notion.so/hkob/notionErDiagram-Sample-1720c2199c534ca08138cde38f31f710)
120
+ 5. [Create Sitemap from Notion pages / Notion page からサイトマップを作成](https://www.notion.so/hkob/NotionSitemap-sample-14e195c83d024c5382aab09210916c87)
88
121
 
89
- ### 2.5 API reference
122
+ ### 2.5 API reference / API リファレンス
90
123
 
91
124
  1. [Notion Ruby Mapping Public API reference](https://www.notion.so/hkob/Notion-Ruby-Mapping-Public-API-reference-4091aca15b664299b63e6253b7601fec)
92
125
 
93
126
  ## 3. ChangeLog
94
127
 
128
+ - 2022/11/28 [v0.7.0] add this_week filter and NotionRubyMapping.configure
95
129
  - 2022/11/13 [v0.6.8] remove error checking for start and end dates, add Users.all, and change Rollup and Formula query specification
96
130
  - 2022/9/2 [v0.6.7] add support for Status property, is_toggleable for headings block, and page property values
97
131
  - 2022/8/10 [v0.6.6] Bug fix(notionSitemap.rb): Skip if child page is empty.
@@ -127,14 +161,20 @@ NotionCache.instance.create_client ENV["NOTION_API_TOKEN"] # from environment
127
161
  - 2022/2/13 added Page#set_icon
128
162
  - 2022/2/13 First commit
129
163
 
130
- ## 4. Contributing
164
+ ## 4. Contributing / 貢献
165
+
166
+ Bug reports and pull requests are welcome on GitHub at <https://github.com/hkob/notion_ruby_mapping>. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/hkob/notion_ruby_mapping/blob/main/CODE_OF_CONDUCT.md).
131
167
 
132
- Bug reports and pull requests are welcome on GitHub at <https://github.com/hkob/notion_ruby_mapping>. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/notion_ruby_mapping/blob/main/CODE_OF_CONDUCT.md).
168
+ バグレポートとプルリクエストは、<https://github.com/hkob/notion_ruby_mapping>のGithubで大歓迎です。このプロジェクトは、コラボレーションのための安全で居心地の良いスペースであることを目的としており、貢献者は[行動規範](https://github.com/hkob/notion_ruby_mapping/blob/main/code_of_conduct.md)を遵守することが期待されています。
133
169
 
134
- ## 5. License
170
+ ## 5. License / ライセンス
135
171
 
136
172
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
137
173
 
138
- ## 6. Code of Conduct
174
+ GEMは、[MITライセンス](https://opensource.org/licenses/mit)の条件の下でオープンソースとして入手できます。
175
+
176
+ ## 6. Code of Conduct / 行動規範
177
+
178
+ Everyone interacting in the NotionRubyMapping project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/hkob/notion_ruby_mapping/blob/main/CODE_OF_CONDUCT.md).
139
179
 
140
- Everyone interacting in the NotionRubyMapping project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/notion_ruby_mapping/blob/main/CODE_OF_CONDUCT.md).
180
+ NotionRubyMappingプロジェクトのコードベース、問題トラッカー、チャットルーム、メーリングリストで対話する全員が[行動規範](https://github.com/hkob/notion_ruby_mapping/blob/main/code_of_conduct.md)に従うことが期待されています。
@@ -20,11 +20,12 @@ module NotionRubyMapping
20
20
  builder.adapter Faraday.default_adapter
21
21
  end
22
22
  @notion_token = nil
23
- @wait = 0
23
+ @wait = 0.3333
24
24
  @debug = false
25
25
  end
26
26
  attr_reader :object_hash
27
27
  attr_writer :client # for test only
28
+ attr_accessor :notion_token, :wait, :debug
28
29
 
29
30
  # @param [String] block_id
30
31
  # @return [String (frozen)] block_path
@@ -239,7 +240,7 @@ module NotionRubyMapping
239
240
  # @param [Hash] options
240
241
  # @return [Hash] response hash
241
242
  def request(method, path, options = {})
242
- raise "Please call `NotionCache.create_client' before using other methods" unless @notion_token
243
+ raise "Please call `NotionRubyMapping.configure' before using other methods" unless @notion_token
243
244
 
244
245
  sleep @wait
245
246
  response = @client.send(method) do |request|
@@ -137,6 +137,14 @@ module NotionRubyMapping
137
137
  make_filter_query "past_year", {}, condition: condition, another_type: another_type
138
138
  end
139
139
 
140
+ # @param [String] condition Rollup name
141
+ # @param [String] another_type Rollup type
142
+ # @return [NotionRubyMapping::Query] generated Query object
143
+ # @see
144
+ def filter_this_week(condition: nil, another_type: nil)
145
+ make_filter_query "this_week", {}, condition: condition, another_type: another_type
146
+ end
147
+
140
148
  # @param [String] condition Rollup name
141
149
  # @param [String] another_type Rollup type
142
150
  # @return [NotionRubyMapping::Query] generated Query object
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NotionRubyMapping
4
- VERSION = "0.6.8"
4
+ VERSION = "0.7.0"
5
5
  NOTION_VERSION = "2022-06-28"
6
6
  end
@@ -25,3 +25,11 @@ require_relative "notion_ruby_mapping/version"
25
25
  require_relative "notion_ruby_mapping/#{key}/#{klass}"
26
26
  end
27
27
  end
28
+
29
+ module NotionRubyMapping
30
+ def configure
31
+ yield NotionRubyMapping::NotionCache.instance
32
+ end
33
+ module_function :configure
34
+ end
35
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: notion_ruby_mapping
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.8
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hiroyuki KOBAYASHI
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-11-12 00:00:00.000000000 Z
11
+ date: 2022-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday