dorian-json-map 1.0.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/json-map +8 -7
  3. metadata +6 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a43023a04dd7b83e7283459b769359d8eb432b98c161e5e24f7305857e646f6
4
- data.tar.gz: 9006588a49822f8cf420e98c3b5d9d60bfc2bfce38a8379dbbdc3f4fce4be743
3
+ metadata.gz: f6766a41f5a494531f66be633a4c9fdd219825b99fbbf0d7fb07932824ed6e2f
4
+ data.tar.gz: 41503924c02fcfb12ee36372b8b136d6840f9edc43e5b321dd37226dea135fe7
5
5
  SHA512:
6
- metadata.gz: e06dab327c96bf4a81f5bf6bb82847878e7b96f89d049ecea830d120f66ccc6627f50a30939cbb268fc09f1c3e95c2065f17379b8f45515f1c2d85993640ba6c
7
- data.tar.gz: 685faef9eda2bd954388f075fad16640af4c82d3f333a3f15fce10304a0ce511dffdfbac452fb9ab9095797b6011fba484cb8147917789589c2c065ce5db060b
6
+ metadata.gz: c3830666f5e4edcdd8fd8abddc342672f852d2c227deea0f8f15678f1e9fede6f82b4bb39d97fe814fb2ff98908bd484c689f0b7bab7bb25b9f25b48aa8814dd
7
+ data.tar.gz: 9fe99b4f1bea7d3823e815f04ca1f3e0f13238c025b81e4e3aa6769f7dd8a1249a3a32e2f325de92b31858aa7597f77007b395f05f80ce255eb8e6cbb6078261
data/bin/json-map CHANGED
@@ -2,6 +2,7 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  require "dorian/arguments"
5
+ require "dorian/to_struct"
5
6
  require "json"
6
7
 
7
8
  parsed = Dorian::Arguments.parse(version: { alias: :v }, help: { alias: :h })
@@ -9,7 +10,7 @@ parsed = Dorian::Arguments.parse(version: { alias: :v }, help: { alias: :h })
9
10
  abort parsed.help if parsed.options.help
10
11
 
11
12
  if parsed.options.version
12
- abort File.read(File.expand_path("../../VERSION", __FILE__))
13
+ abort File.read(File.expand_path("../VERSION", __dir__))
13
14
  end
14
15
 
15
16
  inputs = parsed.files.map { |file| File.read(file) }
@@ -21,21 +22,21 @@ inputs.each do |input|
21
22
  if json.is_a?(Hash)
22
23
  result =
23
24
  json.to_h do |key, value|
24
- it = [key.dup, value.dup]
25
+ it = { key.dup => value.dup }.to_deep_struct
25
26
  eval(parsed.arguments.join(" "))
26
- it
27
+ it.from_deep_struct.to_a.first
27
28
  end
28
29
  elsif json.is_a?(Array)
29
30
  result =
30
31
  json.map do |it|
31
- it = it.dup
32
+ it = it.dup.to_deep_struct
32
33
  eval(parsed.arguments.join(" "))
33
- it
34
+ it.from_deep_struct
34
35
  end
35
36
  else
36
- it = json.dup
37
+ it = json.dup.to_deep_struct
37
38
  eval(parsed.arguments.join(" "))
38
- result = it
39
+ result = it.from_deep_struct
39
40
  end
40
41
 
41
42
  puts JSON.pretty_generate(result)
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dorian-json-map
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-08-24 00:00:00.000000000 Z
11
+ date: 2024-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: json
14
+ name: dorian-arguments
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: dorian-arguments
42
+ name: json
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -71,9 +71,9 @@ require_paths:
71
71
  - lib
72
72
  required_ruby_version: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ">="
74
+ - - '='
75
75
  - !ruby/object:Gem::Version
76
- version: '0'
76
+ version: 3.3.4
77
77
  required_rubygems_version: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - ">="