lhj-tools 0.2.32 → 0.2.33

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: 23e4b1ca63b9edadde731a0fba99ad2815029e3a65fca292d80d5ded572f0cca
4
- data.tar.gz: 01606d47b8191a85c0cd44b9ec15fa069fa0936da3287325abb72ebf90370ac6
3
+ metadata.gz: ff6929383a9eb5b439ba528f359328c1794dea01bbe1716ba5a5561c30d70f22
4
+ data.tar.gz: f6be4caa44459d4fc44bd0d2b11eef4601ef53df196250f6b20b59dd240be3bb
5
5
  SHA512:
6
- metadata.gz: c11804e3e40eb39886babf9347106e959d0bf1366f4f89ab0c62174b844fd7e38656f954c658402944a01e110e14506a9cda195952a6e61e144e313ed78f0038
7
- data.tar.gz: aff83c9066ee3975ad45d7ccfa29db7f5cc7bfbe09f8481dd07c5d9d477d67ba2b4e965919935c6f6457e20e9b02af1dfa03637b6318ffc4f501164b1e7442c5
6
+ metadata.gz: b27ba2d5508724e1b6c3325492cff864cf1243dea0a13d2abf325a0cd77fa8b9fbbdf690b8f1765625fe5ae8e708f62bc1e14e4df8b6e682d25cfc5c68b3df25
7
+ data.tar.gz: ab0e21f4c76d6bdc9c1c1bcdf1699b4b098044631259a943dd18b963a9210df26518fc767b93e9cd62a2682111ff72b902a72586cd220ac94d4b50e456f299f5
@@ -13,7 +13,8 @@ module Lhj
13
13
  self.description = '使用工具前先执行`lhj init --url=http://xxx`'
14
14
 
15
15
  self.arguments = [
16
- CLAide::Argument.new('url', true)
16
+ CLAide::Argument.new('url', false),
17
+ CLAide::Argument.new('key', false)
17
18
  ]
18
19
 
19
20
  def self.options
@@ -22,16 +23,10 @@ module Lhj
22
23
  ]
23
24
  end
24
25
 
25
- def validate!
26
- super
27
- unless @url
28
- path = File.join(target_folder, 'config_file.yml')
29
- help! '配置url必须输入' unless File.exist?(path)
30
- end
31
- end
32
-
33
26
  def initialize(argv)
34
27
  @url = argv.option('url')
28
+ @key = argv.option('key')
29
+ @url = Lhj::CipherHelper.strict_decode64_encode(@key) if @key
35
30
  super
36
31
  end
37
32
 
@@ -46,22 +46,16 @@ module Lhj
46
46
  end
47
47
 
48
48
  def handle
49
- # file = File.join(Lhj::Config.instance.home_dir, 'all_device.txt')
50
- # File.open(file, 'r+') do |f|
51
- # f.each_line do |line|
52
- # ma = line.match(/(?<device>[^\s]*)(\s*)(?<name>.*)/)
53
- # device = ma[:device]
54
- # name = ma[:name].gsub(/(\S*)\s(\S*)\s(.*)/, '\\1-\\2-\\3')
55
- # name = name.gsub(/\s/, '')
56
- # add_device(device, name)
57
- # end
58
- # end
59
- #
60
- api = Lhj::YapiHelper.new(project_id: 694, interface_id: 71426, model_name: 'Result', model_pre: 'ML', language: :java)
61
- api_result = api.process
62
- ss = api_result.reject { |k, v| v.nil? }
63
- # //.map { |key, v| { "#{key}": "```sss #{v}```" } }
64
- puts ss
49
+ file = File.join(Lhj::Config.instance.home_dir, 'all_device.txt')
50
+ File.open(file, 'r+') do |f|
51
+ f.each_line do |line|
52
+ ma = line.match(/(?<device>[^\s]*)(\s*)(?<name>.*)/)
53
+ device = ma[:device]
54
+ name = ma[:name].gsub(/(\S*)\s(\S*)\s(.*)/, '\\1-\\2-\\3')
55
+ name = name.gsub(/\s/, '')
56
+ add_device(device, name)
57
+ end
58
+ end
65
59
 
66
60
  # api = Lhj::YapiHelper.new(project_id: 694, interface_id: 70595, model_name: 'Order', model_pre: 'AA')
67
61
  # api.process
@@ -0,0 +1,56 @@
1
+ require 'openssl'
2
+ require 'base64'
3
+
4
+ module Lhj
5
+ class CipherHelper
6
+ CIPHER_KEY = '1234567890'.freeze
7
+ CIPHERIV = '456'.freeze
8
+
9
+ def self.key
10
+ key = [CIPHER_KEY].pack('H*')
11
+ key << ("\x00" * (32 - key.length))
12
+ key
13
+ end
14
+
15
+ def self.iv
16
+ iv = [CIPHERIV].pack('H*')
17
+ iv << ("\x00" * (16 - iv.length))
18
+ iv
19
+ end
20
+
21
+ def self.strict_encode64_encode(str)
22
+ encode_str = Base64.strict_encode64(str)
23
+ encode(encode_str)
24
+ end
25
+
26
+ def self.encode64_encode(str)
27
+ encode_str = Base64.encode64(str)
28
+ encode(encode_str)
29
+ end
30
+
31
+ def self.strict_decode64_encode(str)
32
+ decode_str = decode(str)
33
+ Base64.strict_decode64(decode_str)
34
+ end
35
+
36
+ def self.decode64_encode(str)
37
+ decode_str = decode(str)
38
+ Base64.decode64(decode_str)
39
+ end
40
+
41
+ def self.encode(data)
42
+ cipher = OpenSSL::Cipher.new('AES-256-CBC').encrypt
43
+ cipher.key = key
44
+ cipher.iv = iv
45
+ encrypted = cipher.update(data) + cipher.final
46
+ Base64.strict_encode64(encrypted)
47
+ end
48
+
49
+ def self.decode(str)
50
+ decipher = OpenSSL::Cipher.new('AES-256-CBC').decrypt
51
+ decipher.key = key
52
+ decipher.iv = iv
53
+ decipher.update(Base64.strict_decode64(str)) + decipher.final
54
+ end
55
+ end
56
+ end
data/lib/lhj/lhj.rb CHANGED
@@ -7,6 +7,7 @@ module Lhj
7
7
  require 'lhj/env'
8
8
  require 'lhj/ui/ui'
9
9
  require 'lhj/config'
10
+ require 'lhj/helper/cipher_helper'
10
11
  require 'lhj/helper/jenkins_config'
11
12
  require 'lhj/helper/apple/apple_jwt_config'
12
13
  require 'lhj/helper/apple/apple_connect_api'
data/lib/lhj/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lhj
4
- VERSION = '0.2.32'
4
+ VERSION = '0.2.33'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lhj-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.32
4
+ version: 0.2.33
5
5
  platform: ruby
6
6
  authors:
7
7
  - lihaijian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-29 00:00:00.000000000 Z
11
+ date: 2023-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xcodeproj
@@ -386,6 +386,7 @@ files:
386
386
  - lib/lhj/helper/apple/apple_jwt_config.rb
387
387
  - lib/lhj/helper/bugly_helper.rb
388
388
  - lib/lhj/helper/chat_gpt_config.rb
389
+ - lib/lhj/helper/cipher_helper.rb
389
390
  - lib/lhj/helper/dingtalk_config.rb
390
391
  - lib/lhj/helper/dingtalk_helper.rb
391
392
  - lib/lhj/helper/erb_template_helper.rb