journal-cli 1.0.23 → 1.0.24

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: 94254a744cbef7c84b89dc49f3811a641e5ece9b81e813cef5085c6111673846
4
- data.tar.gz: 06d736bceebf43d0505ce2f003a004a1dffc508d678f20ff1f1d8d2e06a51390
3
+ metadata.gz: 110b0fe8610e39052c3f85c417739821f66103cd0457a23a03188a158062962f
4
+ data.tar.gz: b56dfb4649456dd53e22aa86fece669f8d162fd6048537e06ba8c6aeb0db61c1
5
5
  SHA512:
6
- metadata.gz: 827d6165ddbcfb7752d0b91022b0c7779af14280503f915f007c1b3e937c4b6c989bdf0167b1d7399a0a2aaa9829528203784f80888c2ec9801d2ee614d653de
7
- data.tar.gz: 5fb214409b54da6c11321bf0c6f77eb4221f54f0803474787afee2f696930fe6d025af8e8915cf9a0759cc4e50d9463d4e6d15c6e7fd271f24c01c385f2170e8
6
+ metadata.gz: 237a1faa0d7d4acfb0bb1d0c3775b46055529e432dbba25e38b723cd5cab39e68db7796d824c870739f8fa9b28f2c1d040df1d4fb84bd3e57581cc18ba931ea7
7
+ data.tar.gz: cc8e68cf73df3bf13a71b2eb9126a136dd9f989a869c519dece7f733e1a89dfd5552626fc249bf7c6bc2ea95ee2a1a23836a6c8ed410202b1d4578b6be8d655e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### 1.0.24
2
+
3
+ 2023-09-20 09:12
4
+
1
5
  ### 1.0.23
2
6
 
3
7
  2023-09-20 08:30
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- journal-cli (1.0.23)
4
+ journal-cli (1.0.24)
5
5
  chronic (~> 0.10, >= 0.10.2)
6
6
  tty-reader (~> 0.9, >= 0.9.0)
7
7
  tty-which (~> 0.5, >= 0.5.0)
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # String helpers
4
+ class ::String
5
+ def parse_condition
6
+ condition = dup
7
+ time_rx = /(?<comp>[<>=]{1,2}|before|after) +(?<time>(?:noon|midnight|[0-9]+) *(?:am|pm)?)$/i
8
+ return true unless condition =~ time_rx
9
+
10
+ now = Journal.date
11
+ m = condition.match(time_rx)
12
+ time = Chronic.parse(m['time'])
13
+ Journal.notify("{br}Invalid time string in question (#{m['time']})", exit_code: 4) unless time
14
+
15
+ case m['comp']
16
+ when /^<=$/
17
+ now <= time
18
+ when /^(<|bef)/i
19
+ now < time
20
+ when /^>=/
21
+ now >= time
22
+ when /^(>|aft)/i
23
+ now > time
24
+ end
25
+ # TODO: Other condition types
26
+ end
27
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Journal
4
- VERSION = '1.0.23'
4
+ VERSION = '1.0.24'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: journal-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.23
4
+ version: 1.0.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brett Terpstra
@@ -238,6 +238,7 @@ files:
238
238
  - lib/journal-cli/question.rb
239
239
  - lib/journal-cli/section.rb
240
240
  - lib/journal-cli/sections.rb
241
+ - lib/journal-cli/string.rb
241
242
  - lib/journal-cli/version.rb
242
243
  - lib/journal-cli/weather.rb
243
244
  - src/_README.md