lhj-tools 0.2.31 → 0.2.33

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 076d5ec66856ced7568622e7e19e173d6d7f08dd6d51de147719aca07a78948a
4
- data.tar.gz: d9a323338b67946d2c507964aa7de067b23ae25a9ed95b4b66335cc8dafa8a4b
3
+ metadata.gz: ff6929383a9eb5b439ba528f359328c1794dea01bbe1716ba5a5561c30d70f22
4
+ data.tar.gz: f6be4caa44459d4fc44bd0d2b11eef4601ef53df196250f6b20b59dd240be3bb
5
5
  SHA512:
6
- metadata.gz: f78f99f701be41cef12335157d335a4173362b76c232cdd2f5200799e71ddb4e3ceae6ad6d3a8e022e6852b6a9ee72fe7c519a02cf2d12bcb774da8384b9557a
7
- data.tar.gz: af1b07e7bf8f7f059f9044e78514155d5ba8916ac801a3f0d9dd3baaacbc70187b202a00ed053ea9a41790d6da6eaee2ea4378da6eddc9c1bb3dd3e569d39da7
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
 
@@ -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
@@ -53,12 +53,15 @@ module Lhj
53
53
  end
54
54
 
55
55
  def model_result
56
+ interface_content = @h_file_array.join("\n") if @h_file_array
57
+ implement_content = @m_file_array.join("\n") if @m_file_array
58
+ mock_content = @req_mock_array.join("\n") if @req_mock_array
56
59
  {
57
- interface: @h_file_array.join("\n"),
58
- implement: @m_file_array.join("\n"),
60
+ interface: interface_content,
61
+ implement: implement_content,
59
62
  service: @service_content,
60
- mock: @req_mock_array.join("\n")
61
- }
63
+ mock: mock_content
64
+ }.reject { |k, v| v.nil? }
62
65
  end
63
66
 
64
67
  def save_to_file
@@ -109,9 +112,13 @@ module Lhj
109
112
  end
110
113
 
111
114
  def puts_mock(str)
112
- puts str.green
113
- @req_mock_array ||= []
114
- @req_mock_array << str
115
+ case language
116
+ when :oc
117
+ puts str.green
118
+ @req_mock_array ||= []
119
+ @req_mock_array << str
120
+ when :java
121
+ end
115
122
  end
116
123
 
117
124
  def sub_folder_name
@@ -349,23 +356,23 @@ module Lhj
349
356
  default = m[:default]
350
357
  case type
351
358
  when 'integer'
352
- puts_h "int #{key};//#{des} #{default}"
359
+ puts_h " int #{key};//#{des} #{default}"
353
360
  when 'string'
354
- puts_h "String #{key};//#{des} #{default}"
361
+ puts_h " String #{key};//#{des} #{default}"
355
362
  when 'number'
356
- puts_h "double #{key};//#{des} #{default}"
363
+ puts_h " double #{key};//#{des} #{default}"
357
364
  when 'float'
358
- puts_h "double #{key};//#{des} #{default}"
365
+ puts_h " double #{key};//#{des} #{default}"
359
366
  when 'double'
360
- puts_h "double #{key};//#{des} #{default}"
367
+ puts_h " double #{key};//#{des} #{default}"
361
368
  when 'boolean'
362
- puts_h "boolean #{key};//#{des} #{default}"
369
+ puts_h " boolean #{key};//#{des} #{default}"
363
370
  when 'object'
364
- puts_h "#{type_name} #{key};//#{des} #{default}"
371
+ puts_h " #{type_name} #{key};//#{des} #{default}"
365
372
  when 'array'
366
- puts_h "#{type_name}[] #{key};//#{des} #{default}"
373
+ puts_h " #{type_name}[] #{key};//#{des} #{default}"
367
374
  else
368
- puts_h "String #{key};//#{des} #{default}"
375
+ puts_h " String #{key};//#{des} #{default}"
369
376
  end
370
377
  end
371
378
 
@@ -381,8 +388,13 @@ module Lhj
381
388
  req_model = { name: param_model_name, properties: properties }
382
389
 
383
390
  models = [req_model]
384
- print_models(models)
385
- print_models_impl(models)
391
+ case language
392
+ when :oc
393
+ print_models(models)
394
+ print_models_impl(models)
395
+ when :java
396
+ print_models_for_java(models)
397
+ end
386
398
  models
387
399
  end
388
400
 
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.31'
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.31
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-27 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