notion_ruby_mapping 3.0.1 → 3.0.2

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: 3fb4edca333016da1d691c482b85d6165e7ba19437fdc36a4d216c6c03dac240
4
- data.tar.gz: 75912982cfb53e1401a8eb4dc1df3b11f1b3996599dd32f5c1af9da7bd422d6f
3
+ metadata.gz: 0bd25791d37f43bba61d634c605af7bb8e5afd178d3166135d40231f96820912
4
+ data.tar.gz: 7aae9ec026d6acce1ad3ea4b542a5cd7db67caa2158c74835526f5699bc0cd90
5
5
  SHA512:
6
- metadata.gz: 410f4730beb9b32d7a4c9c7d5024627c9acc93a92af87e3dd6139ba6b8438edc05a22dc914f4cdc133fede2298ebdb5e4f059ce5019746053bade139a924f1c1
7
- data.tar.gz: 0b969cc6667c0ab33171c73ec3026f1173659cd36450ed610ddb8c905eaf657db01c3bd766a6c4b0c345337b9bb6bdeddb0381806d9652329743c542e8a4cd1b
6
+ metadata.gz: 5b3db4c23fb05797ecbfea12b6bad3fdc7b5701c3abeaff964dd4fb86e1b91742d1986ba387e56c6ef2978d40a1a6f4df6017a059bdf993a424a246336d11e17
7
+ data.tar.gz: c76f986868915a57e973d109738e1ae7abbfcb8f861f956f68c9ea2914d3f88a95f3dd64809d4c24e504c77de8b8c55af3554ea4bd5643a5b3b104df8c0ac161
data/README.md CHANGED
@@ -136,6 +136,7 @@ NotionRubyMapping.configuration { |c| c.notion_token = ENV["NOTION_API_TOKEN"] }
136
136
 
137
137
  ## 3. ChangeLog
138
138
 
139
+ - 2025/10/22 [v3.0.2] Add template_page option for create_child_page and build_child_page
139
140
  - 2025/10/4 [v3.0.1] Add place_property
140
141
  - 2025/9/15 [v3.0.0] updates for Notion-Version 2025-09-03 (Add DataSource class)
141
142
  - 2025/6/29 [v2.0.1] add creating FileUploadObject with external url
@@ -7,7 +7,7 @@ module NotionRubyMapping
7
7
  # @param [Hash, nil] json
8
8
  # @param [String, nil] id
9
9
  # @param [Array<Property, Class, String>] assign
10
- def initialize(json: nil, id: nil, assign: [], parent: nil)
10
+ def initialize(json: nil, id: nil, assign: [], parent: nil, template_page: nil)
11
11
  @nc = NotionCache.instance
12
12
  @json = json
13
13
  @id = @nc.hex_id(id || @json && @json["id"])
@@ -16,7 +16,10 @@ module NotionRubyMapping
16
16
  @new_record = true unless parent.nil?
17
17
  raise StandardError, "Unknown id" if !is_a?(List) && !is_a?(Block) && @id.nil? && parent.nil?
18
18
 
19
- @payload = Payload.new(!is_a?(Block) && parent && {"parent" => parent})
19
+ payload_json = {}
20
+ payload_json["parent"] = parent if !is_a?(Block) && parent
21
+ payload_json["template"] = {"type" => "template_id", "template_id" => template_page.id} if template_page
22
+ @payload = Payload.new(payload_json)
20
23
  @property_cache = nil
21
24
  @created_time = nil
22
25
  @last_edited_time = nil
@@ -40,9 +40,9 @@ module NotionRubyMapping
40
40
  # @param [Array<Property, Class, String>] assign
41
41
  # @return [NotionRubyMapping::Base]
42
42
  # @see https://www.notion.so/hkob/DataSource-1462b24502424539a4231bedc07dc2f5#c217ce78020a4de79b720790fce3092d
43
- def build_child_page(*assign)
43
+ def build_child_page(*assign, template_page: nil)
44
44
  assign = properties.map { |p| [p.class, p.name] }.flatten if assign.empty?
45
- page = Page.new assign: assign, parent: {"data_source_id" => @id}
45
+ page = Page.new assign: assign, parent: {"data_source_id" => @id}, template_page: template_page
46
46
  pp = page.properties
47
47
  pp.clear_will_update
48
48
  yield page, pp if block_given?
@@ -53,9 +53,9 @@ module NotionRubyMapping
53
53
  # @param [Boolean] dry_run true if dry_run
54
54
  # @return [NotionRubyMapping::Base]
55
55
  # @see https://www.notion.so/hkob/DataSource-1462b24502424539a4231bedc07dc2f5#c217ce78020a4de79b720790fce3092d
56
- def create_child_page(*assign, dry_run: false)
56
+ def create_child_page(*assign, template_page: nil, dry_run: false)
57
57
  assign = properties.map { |p| [p.class, p.name] }.flatten if assign.empty?
58
- page = Page.new assign: assign, parent: {"data_source_id" => @id}
58
+ page = Page.new assign: assign, parent: {"data_source_id" => @id}, template_page: template_page
59
59
  pp = page.properties
60
60
  pp.clear_will_update
61
61
  yield page, pp if block_given?
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NotionRubyMapping
4
- VERSION = "3.0.1"
4
+ VERSION = "3.0.2"
5
5
  NOTION_VERSION = "2025-09-03"
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: notion_ruby_mapping
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hiroyuki KOBAYASHI