pennyworth 17.3.0 → 17.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/README.adoc +9 -5
  4. data/lib/pennyworth/cli/actions/htmx/example.rb +31 -0
  5. data/lib/pennyworth/cli/actions/htmx/reference.rb +31 -0
  6. data/lib/pennyworth/cli/shell.rb +5 -0
  7. data/lib/pennyworth/configuration/contract.rb +2 -0
  8. data/lib/pennyworth/configuration/defaults.yml +3 -0
  9. data/lib/pennyworth/configuration/model.rb +2 -0
  10. data/lib/pennyworth/container.rb +1 -1
  11. data/lib/pennyworth/loaders/htmx.rb +64 -0
  12. data/lib/pennyworth/models/htmx.rb +8 -0
  13. data/lib/pennyworth/presenters/encoding.rb +1 -1
  14. data/lib/pennyworth/presenters/gem.rb +1 -1
  15. data/lib/pennyworth/presenters/htmx.rb +24 -0
  16. data/lib/pennyworth/presenters/http_status.rb +1 -1
  17. data/lib/pennyworth/presenters/repository.rb +1 -1
  18. data/lib/pennyworth/presenters/standard_error.rb +1 -1
  19. data/lib/pennyworth/presenters/standard_gem.rb +4 -3
  20. data/lib/pennyworth/presenters/system/error.rb +1 -1
  21. data/lib/pennyworth/presenters/system/signal.rb +1 -1
  22. data/lib/pennyworth/presenters/text.rb +1 -1
  23. data/lib/pennyworth/processor.rb +4 -0
  24. data/lib/pennyworth/serializers/encoding.rb +1 -1
  25. data/lib/pennyworth/serializers/htmx.rb +51 -0
  26. data/lib/pennyworth/serializers/http_status.rb +1 -1
  27. data/lib/pennyworth/serializers/project.rb +1 -1
  28. data/lib/pennyworth/serializers/standard_error.rb +1 -1
  29. data/lib/pennyworth/serializers/system/error.rb +1 -1
  30. data/lib/pennyworth/serializers/system/signal.rb +1 -1
  31. data/lib/pennyworth/serializers/text.rb +1 -1
  32. data/lib/pennyworth.rb +2 -1
  33. data/pennyworth.gemspec +2 -1
  34. data.tar.gz.sig +0 -0
  35. metadata +23 -3
  36. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c3d45e8ead5b97dd8d79a3837428f28fb1d5c06cec211aec5454b6cf67c15857
4
- data.tar.gz: b16c2c6602e5986115411389a3e52802be997c3d0ad0fd0a146a9c441f52826a
3
+ metadata.gz: 8c64185db3d1ff451a3c2d1eeb3f339e75e4de547a1a3d09d716f3ec506154e7
4
+ data.tar.gz: aec6e33ebebe91ec50035a64cda46be8643ea764d7f5824ad7d3f3217285223a
5
5
  SHA512:
6
- metadata.gz: b04cd132e5e780d0de845374e81f0e1f32db8cdbddf10a88afb4a0aaf922a07f65b1f32a42cf26d9c0e43166fca47a9c2d063ee6422d5b00f83d6966651e4c87
7
- data.tar.gz: 0e0993213eae14acba428447e7381c49a949c196ec46cf12a07df850e9a147d87c3b44091a151784690146ef647eed80357325f787deafa300a50b4d35fb6a73
6
+ metadata.gz: ef6e10ecb5dcc3df7e5fa8f7097d043024459ae7cc62a354cd7b6ca1038126c57f69e38f832c52c1853dcc360009efae22dda9bbef73fb2bc028e85bc17f3831
7
+ data.tar.gz: 7183d127ad96ce64a20d46bf36706dafb0f90d47f4d3460037d5fab2130fdac19bf271666e420ea03c61b5117539351fef874f1fd7e58640b6b373994e7e1f93
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -34,7 +34,7 @@ video::https://alchemists.io/videos/projects/pennyworth/demo.mp4[poster=https://
34
34
 
35
35
  While using a {ruby_version_managers_link} is not a hard requirement, it is strongly encouraged since a version manager will give you the freedom to toggle between different Ruby versions since this gem has strict Ruby version requirements (especially in regards to using a modern version of Ruby).
36
36
 
37
- All of the workflows, scripts, examples for this gem use {bash_link} syntax. That said, if you are comfortable with translating Bash syntax to your shell syntax of choice, you can make this gem work in different shells too. That is beyond the scope of this document, though, so leave that exercise to you.
37
+ All of the workflows, scripts, examples for this gem use {bash_link} syntax. That said, if you are comfortable with translating Bash syntax to your shell syntax of choice, you can make this gem work in different shells too. Shell conversion is beyond the scope of this document so leave that exercise to you.
38
38
 
39
39
  == Setup
40
40
 
@@ -78,7 +78,7 @@ with others.
78
78
 
79
79
  From the command line, type `pennyworth` to view usage:
80
80
 
81
- image:https://alchemists.io/images/projects/pennyworth/screenshots/usage.png[Usage,width=667,height=499,role=focal_point]
81
+ image:https://alchemists.io/images/projects/pennyworth/screenshots/usage.png[Usage,width=638,height=505,role=focal_point]
82
82
 
83
83
  While the command line options are nice, the real power comes from using Pennyworth in conjunction
84
84
  with link:https://www.alfredapp.com/help/workflows/inputs/script-filter/json[Alfred Script Filters].
@@ -121,6 +121,7 @@ inflections:
121
121
  - "Io Wait": "IO Wait"
122
122
  - "Ipaddr": "IP Address"
123
123
  - "Irb": "IRB"
124
+ - "Irb Kit": "IRB Kit"
124
125
  - "Json": "JSON"
125
126
  - "Mac Os Config": "macOS Configuration"
126
127
  - "Mac Os": "MacOS"
@@ -177,6 +178,9 @@ git_hub:
177
178
  http:
178
179
  statuses:
179
180
  url: "https://developer.mozilla.org/docs/Web/HTTP/Status"
181
+ htmx:
182
+ examples_uri: "https://htmx.org/examples"
183
+ references_uri: "https://htmx.org/reference"
180
184
  ruby_gems:
181
185
  api_url: "https://rubygems.org/api/v1"
182
186
  standard_gems:
@@ -435,11 +439,11 @@ Provides quick access to the link:https://html.spec.whatwg.org/multipage[HTML] l
435
439
  double click to install.
436
440
  2. Click on _Configure Workflow_ to view documentation.
437
441
 
438
- ===== HTMX
442
+ ===== htmx
439
443
 
440
- image:https://alchemists.io/images/projects/pennyworth/screenshots/htmx.png[HTMX workflow screenshot.,width=706,height=523,role=focal_point]
444
+ image:https://alchemists.io/images/projects/pennyworth/screenshots/htmx.png[htmx workflow screenshot.,width=706,height=631,role=focal_point]
441
445
 
442
- Provides quick access to the link:https://htmx.org[HTMX] JavaScript library.
446
+ Provides quick access to the link:https://htmx.org[htmx] JavaScript library.
443
447
 
444
448
  1. link:https://alchemists.io/public/alfred/workflows/htmx.alfredworkflow[Download] and
445
449
  double click to install.
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "sod"
4
+
5
+ module Pennyworth
6
+ module CLI
7
+ module Actions
8
+ module HTMX
9
+ # Handles examples documentation action.
10
+ class Example < Sod::Action
11
+ include Import[:settings, :io]
12
+
13
+ description "Render Alfred examples script filter."
14
+
15
+ on "--examples"
16
+
17
+ def initialize(processor: Processor.for_htmx, **)
18
+ @processor = processor
19
+ super(**)
20
+ end
21
+
22
+ def call(*) = io.puts processor.call(settings.htmx_examples_uri).to_json
23
+
24
+ private
25
+
26
+ attr_reader :processor
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "sod"
4
+
5
+ module Pennyworth
6
+ module CLI
7
+ module Actions
8
+ module HTMX
9
+ # Handles references documentation action.
10
+ class Reference < Sod::Action
11
+ include Import[:settings, :io]
12
+
13
+ description "Render Alfred references script filter."
14
+
15
+ on "--references"
16
+
17
+ def initialize(processor: Processor.for_htmx, **)
18
+ @processor = processor
19
+ super(**)
20
+ end
21
+
22
+ def call(*) = io.puts processor.call(settings.htmx_references_uri).to_json
23
+
24
+ private
25
+
26
+ attr_reader :processor
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -31,6 +31,11 @@ module Pennyworth
31
31
  on Actions::GitHub::User
32
32
  end
33
33
 
34
+ on "htmx", "Render htmx script filters" do
35
+ on Actions::HTMX::Example
36
+ on Actions::HTMX::Reference
37
+ end
38
+
34
39
  on Actions::Encoding
35
40
  on Actions::HTTPStatus
36
41
  on Actions::Gem
@@ -13,6 +13,8 @@ module Pennyworth
13
13
  optional(:git_hub_organization).filled :string
14
14
  optional(:git_hub_user).filled :string
15
15
  required(:http_statuses_url).filled :string
16
+ required(:htmx_examples_uri).filled :string
17
+ required(:htmx_references_uri).filled :string
16
18
  required(:ruby_gems_api_url).filled :string
17
19
  optional(:ruby_gems_owner).filled :string
18
20
  required(:standard_gems_api_url).filled :string
@@ -76,6 +76,9 @@ git_hub:
76
76
  http:
77
77
  statuses:
78
78
  url: "https://developer.mozilla.org/docs/Web/HTTP/Status"
79
+ htmx:
80
+ examples_uri: "https://htmx.org/examples"
81
+ references_uri: "https://htmx.org/reference"
79
82
  ruby_gems:
80
83
  api_url: "https://rubygems.org/api/v1"
81
84
  standard_gems:
@@ -9,6 +9,8 @@ module Pennyworth
9
9
  :git_hub_organization,
10
10
  :git_hub_user,
11
11
  :http_statuses_url,
12
+ :htmx_examples_uri,
13
+ :htmx_references_uri,
12
14
  :ruby_gems_api_url,
13
15
  :ruby_gems_owner,
14
16
  :standard_gems_api_url
@@ -22,7 +22,7 @@ module Pennyworth
22
22
  register(:specification) { Spek::Loader.call "#{__dir__}/../../pennyworth.gemspec" }
23
23
  register(:defaults_path) { Pathname(__dir__).join("configuration/defaults.yml") }
24
24
  register(:xdg_config) { Runcom::Config.new "pennyworth/configuration.yml" }
25
- register :http, HTTP
25
+ register(:http) { HTTP.timeout 3 }
26
26
  register(:logger) { Cogger.new id: :pennyworth }
27
27
  register :io, STDOUT
28
28
  end
@@ -0,0 +1,64 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "core"
4
+ require "ox"
5
+ require "refinements/string"
6
+
7
+ module Pennyworth
8
+ module Loaders
9
+ # Loads htmx documentation by scraping web page.
10
+ class HTMX
11
+ include Import[:http]
12
+
13
+ using Refinements::String
14
+
15
+ PARSER = Ox.tap do |ox|
16
+ ox.default_options = {mode: :generic, effort: :tolerant, smart: true}
17
+ end
18
+
19
+ def self.text_for element
20
+ parts = element.each.with_object [] do |item, content|
21
+ content.append item.is_a?(Ox::Element) ? "`#{item.text}`" : item
22
+ end
23
+
24
+ parts.join.up.delete_suffix "."
25
+ end
26
+
27
+ def initialize(parser: PARSER, model: Models::HTMX, **)
28
+ @parser = parser
29
+ @model = model
30
+ super(**)
31
+ end
32
+
33
+ def call uri
34
+ read(uri).each.with_object [] do |row, entries|
35
+ next unless row.locate("td") in Ox::Element => item, Ox::Element => description
36
+
37
+ label = item.locate("*/code").first || item.locate("a").first
38
+
39
+ entries.append record_for(label, description, item)
40
+ end
41
+ end
42
+
43
+ private
44
+
45
+ attr_reader :parser, :model
46
+
47
+ def read uri
48
+ http.get(uri).then do |response|
49
+ [200, 301].include?(response.status) ? parse_rows(response.body.to_s) : Core::EMPTY_ARRAY
50
+ end
51
+ end
52
+
53
+ def parse_rows(document) = parser.parse(document).locate "*/tr"
54
+
55
+ def record_for label, description, item
56
+ model[
57
+ label: label.text,
58
+ description: "#{self.class.text_for description}.",
59
+ uri: item.locate("*/@href").first
60
+ ]
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pennyworth
4
+ module Models
5
+ # Represents a htmx link.
6
+ HTMX = Data.define :label, :description, :uri
7
+ end
8
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Pennyworth
4
4
  module Presenters
5
- # Renders encoding into a compatible format for use in Alfred script filters.
5
+ # Shapes an encoding record for serialization.
6
6
  class Encoding
7
7
  def initialize record
8
8
  @record = record
@@ -4,7 +4,7 @@ require "refinements/string"
4
4
 
5
5
  module Pennyworth
6
6
  module Presenters
7
- # Renders RubyGems records into a compatible format for use in Alfred script filters.
7
+ # Shapes a RubyGems record for serialization.
8
8
  class Gem
9
9
  using Refinements::Array
10
10
  using Refinements::String
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "forwardable"
4
+
5
+ module Pennyworth
6
+ module Presenters
7
+ # Shapes a htmx record for serialization.
8
+ class HTMX
9
+ extend Forwardable
10
+
11
+ delegate %i[label description uri] => :record
12
+
13
+ def initialize record
14
+ @record = record
15
+ end
16
+
17
+ alias id label
18
+
19
+ private
20
+
21
+ attr_reader :record
22
+ end
23
+ end
24
+ end
@@ -5,7 +5,7 @@ require "refinements/string"
5
5
 
6
6
  module Pennyworth
7
7
  module Presenters
8
- # Renders system error into a compatible format for use in Alfred script filters.
8
+ # Shapes a HTTP status record for serialization.
9
9
  class HTTPStatus
10
10
  extend Forwardable
11
11
 
@@ -4,7 +4,7 @@ require "refinements/string"
4
4
 
5
5
  module Pennyworth
6
6
  module Presenters
7
- # Renders a GitHub repository record into a compatible format for use in Alfred script filters.
7
+ # Shapes a repository record for serialization.
8
8
  class Repository
9
9
  using Refinements::String
10
10
 
@@ -4,7 +4,7 @@ require "refinements/array"
4
4
 
5
5
  module Pennyworth
6
6
  module Presenters
7
- # Renders a standard error into a compatible format for use in Alfred script filters.
7
+ # Shapes a standard error record for serialization.
8
8
  class StandardError
9
9
  using Refinements::Array
10
10
 
@@ -5,7 +5,7 @@ require "refinements/string"
5
5
 
6
6
  module Pennyworth
7
7
  module Presenters
8
- # Renders Standard Gem records into a compatible format for use in Alfred script filters.
8
+ # Shapes a standard gem record for serialization.
9
9
  class StandardGem
10
10
  using Refinements::Array
11
11
  using Refinements::String
@@ -21,10 +21,11 @@ module Pennyworth
21
21
 
22
22
  def subtitle = record.fetch :description
23
23
 
24
- # :reek:FeatureEnvy
25
24
  def version
26
25
  versions = record.fetch :versions, Core::EMPTY_HASH
27
- (versions[:bundled] || versions[:default] || versions).values.first
26
+ bundled, defaults = versions.values_at :bundled, :default
27
+
28
+ (bundled || defaults || versions).values.first
28
29
  end
29
30
 
30
31
  def site_url = record.fetch(:sourceRepository, Core::EMPTY_STRING)
@@ -5,7 +5,7 @@ require "forwardable"
5
5
  module Pennyworth
6
6
  module Presenters
7
7
  module System
8
- # Renders system error into a compatible format for use in Alfred script filters.
8
+ # Shapes a system error record for serialization.
9
9
  class Error
10
10
  extend Forwardable
11
11
 
@@ -3,7 +3,7 @@
3
3
  module Pennyworth
4
4
  module Presenters
5
5
  module System
6
- # Renders strings into a compatible format for use in Alfred script filters.
6
+ # Shapes a system signal record for serialization.
7
7
  class Signal
8
8
  def initialize record
9
9
  @record = record
@@ -4,7 +4,7 @@ require "forwardable"
4
4
 
5
5
  module Pennyworth
6
6
  module Presenters
7
- # Renders text into a compatible format for use in Alfred script filters.
7
+ # Shapes a text record for serialization.
8
8
  class Text
9
9
  extend Forwardable
10
10
 
@@ -19,6 +19,10 @@ module Pennyworth
19
19
  serializer: Serializers::HTTPStatus
20
20
  end
21
21
 
22
+ def self.for_htmx
23
+ new loader: Loaders::HTMX.new, presenter: Presenters::HTMX, serializer: Serializers::HTMX
24
+ end
25
+
22
26
  def self.for_projects
23
27
  new loader: Loaders::GitHub.new,
24
28
  presenter: Presenters::Repository,
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Pennyworth
4
4
  module Serializers
5
- # Serializes a encoding into a compatible format for parsing within Alfred script filters.
5
+ # Serializes an encoding presenter for parsing by Alfred script filters.
6
6
  class Encoding
7
7
  using Refinements::Array
8
8
 
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pennyworth
4
+ module Serializers
5
+ # Serializes a htmx presenter for parsing by Alfred script filters.
6
+ class HTMX
7
+ def initialize presenter
8
+ @presenter = presenter
9
+ end
10
+
11
+ def to_h
12
+ {
13
+ uid: presenter.id,
14
+ title: presenter.label,
15
+ subtitle: presenter.description,
16
+ arg: site_url,
17
+ quicklookurl: site_url,
18
+ mods: modifications,
19
+ text:
20
+ }
21
+ end
22
+
23
+ private
24
+
25
+ attr_reader :presenter
26
+
27
+ def modifications
28
+ {
29
+ alt: modification(presenter.label, "Copy label."),
30
+ cmd: modification(presenter.description, "Copy description.")
31
+ }
32
+ end
33
+
34
+ def modification argument, subtitle
35
+ {
36
+ subtitle:,
37
+ arg: argument
38
+ }
39
+ end
40
+
41
+ def text
42
+ {
43
+ copy: site_url,
44
+ largetype: site_url
45
+ }
46
+ end
47
+
48
+ def site_url = presenter.uri
49
+ end
50
+ end
51
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Pennyworth
4
4
  module Serializers
5
- # Serializes a HTTP status into a compatible format for parsing within Alfred script filters.
5
+ # Serializes a HTTP status presenter for parsing by Alfred script filters.
6
6
  class HTTPStatus
7
7
  def initialize presenter
8
8
  @presenter = presenter
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Pennyworth
4
4
  module Serializers
5
- # Serializes a project into a compatible format for parsing within Alfred script filters.
5
+ # Serializes a project presenter for parsing by Alfred script filters.
6
6
  class Project
7
7
  def initialize presenter
8
8
  @presenter = presenter
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Pennyworth
4
4
  module Serializers
5
- # Serializes a standard error into a compatible format for parsing within Alfred script filters.
5
+ # Serializes a standard error presenter for parsing by Alfred script filters.
6
6
  class StandardError
7
7
  def initialize presenter
8
8
  @presenter = presenter
@@ -3,7 +3,7 @@
3
3
  module Pennyworth
4
4
  module Serializers
5
5
  module System
6
- # Serializes a system error into a compatible format for parsing within Alfred script filters.
6
+ # Serializes a system error presenter for parsing by Alfred script filters.
7
7
  class Error
8
8
  def initialize presenter
9
9
  @presenter = presenter
@@ -3,7 +3,7 @@
3
3
  module Pennyworth
4
4
  module Serializers
5
5
  module System
6
- # Serializes a signal into a compatible format for parsing within Alfred script filters.
6
+ # Serializes a system signal presenter for parsing by Alfred script filters.
7
7
  class Signal
8
8
  def initialize presenter
9
9
  @presenter = presenter
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Pennyworth
4
4
  module Serializers
5
- # Serializes a text into a compatible format for parsing within Alfred script filters.
5
+ # Serializes a text presenter for parsing by Alfred script filters.
6
6
  class Text
7
7
  def initialize presenter
8
8
  @presenter = presenter
data/lib/pennyworth.rb CHANGED
@@ -5,7 +5,8 @@ require "zeitwerk"
5
5
  Zeitwerk::Loader.new.then do |loader|
6
6
  loader.inflector.inflect "cli" => "CLI",
7
7
  "http_status" => "HTTPStatus",
8
- "http_statuses" => "HTTPStatuses"
8
+ "http_statuses" => "HTTPStatuses",
9
+ "htmx" => "HTMX"
9
10
  loader.tag = File.basename __FILE__, ".rb"
10
11
  loader.push_dir __dir__
11
12
  loader.setup
data/pennyworth.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "pennyworth"
5
- spec.version = "17.3.0"
5
+ spec.version = "17.4.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://alchemists.io/projects/pennyworth"
@@ -30,6 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.add_dependency "ghub", "~> 0.11"
31
31
  spec.add_dependency "http", "~> 5.1"
32
32
  spec.add_dependency "infusible", "~> 3.8"
33
+ spec.add_dependency "ox", "~> 2.14"
33
34
  spec.add_dependency "rack", "~> 3.0"
34
35
  spec.add_dependency "refinements", "~> 12.8"
35
36
  spec.add_dependency "runcom", "~> 11.5"
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pennyworth
3
3
  version: !ruby/object:Gem::Version
4
- version: 17.3.0
4
+ version: 17.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -35,7 +35,7 @@ cert_chain:
35
35
  3n5C8/6Zh9DYTkpcwPSuIfAga6wf4nXc9m6JAw8AuMLaiWN/r/2s4zJsUHYERJEu
36
36
  gZGm4JqtuSg8pYjPeIJxS960owq+SfuC+jxqmRA54BisFCv/0VOJi7tiJVY=
37
37
  -----END CERTIFICATE-----
38
- date: 2024-09-01 00:00:00.000000000 Z
38
+ date: 2024-09-24 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: cogger
@@ -135,6 +135,20 @@ dependencies:
135
135
  - - "~>"
136
136
  - !ruby/object:Gem::Version
137
137
  version: '3.8'
138
+ - !ruby/object:Gem::Dependency
139
+ name: ox
140
+ requirement: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '2.14'
145
+ type: :runtime
146
+ prerelease: false
147
+ version_requirements: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '2.14'
138
152
  - !ruby/object:Gem::Dependency
139
153
  name: rack
140
154
  requirement: !ruby/object:Gem::Requirement
@@ -237,6 +251,8 @@ files:
237
251
  - lib/pennyworth/cli/actions/gem.rb
238
252
  - lib/pennyworth/cli/actions/git_hub/organization.rb
239
253
  - lib/pennyworth/cli/actions/git_hub/user.rb
254
+ - lib/pennyworth/cli/actions/htmx/example.rb
255
+ - lib/pennyworth/cli/actions/htmx/reference.rb
240
256
  - lib/pennyworth/cli/actions/http_status.rb
241
257
  - lib/pennyworth/cli/actions/standard_error.rb
242
258
  - lib/pennyworth/cli/actions/standard_gem.rb
@@ -253,6 +269,7 @@ files:
253
269
  - lib/pennyworth/loaders/encoding.rb
254
270
  - lib/pennyworth/loaders/gem.rb
255
271
  - lib/pennyworth/loaders/git_hub.rb
272
+ - lib/pennyworth/loaders/htmx.rb
256
273
  - lib/pennyworth/loaders/http_status.rb
257
274
  - lib/pennyworth/loaders/standard_error.rb
258
275
  - lib/pennyworth/loaders/standard_gem.rb
@@ -260,6 +277,7 @@ files:
260
277
  - lib/pennyworth/loaders/system/signal.rb
261
278
  - lib/pennyworth/loaders/text.rb
262
279
  - lib/pennyworth/models/encoding.rb
280
+ - lib/pennyworth/models/htmx.rb
263
281
  - lib/pennyworth/models/http_status.rb
264
282
  - lib/pennyworth/models/standard_error.rb
265
283
  - lib/pennyworth/models/system/error.rb
@@ -267,6 +285,7 @@ files:
267
285
  - lib/pennyworth/models/text.rb
268
286
  - lib/pennyworth/presenters/encoding.rb
269
287
  - lib/pennyworth/presenters/gem.rb
288
+ - lib/pennyworth/presenters/htmx.rb
270
289
  - lib/pennyworth/presenters/http_status.rb
271
290
  - lib/pennyworth/presenters/repository.rb
272
291
  - lib/pennyworth/presenters/standard_error.rb
@@ -276,6 +295,7 @@ files:
276
295
  - lib/pennyworth/presenters/text.rb
277
296
  - lib/pennyworth/processor.rb
278
297
  - lib/pennyworth/serializers/encoding.rb
298
+ - lib/pennyworth/serializers/htmx.rb
279
299
  - lib/pennyworth/serializers/http_status.rb
280
300
  - lib/pennyworth/serializers/project.rb
281
301
  - lib/pennyworth/serializers/standard_error.rb
@@ -312,7 +332,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
312
332
  - !ruby/object:Gem::Version
313
333
  version: '0'
314
334
  requirements: []
315
- rubygems_version: 3.5.18
335
+ rubygems_version: 3.5.19
316
336
  signing_key:
317
337
  specification_version: 4
318
338
  summary: A command line interface for augmented Alfred workflows.
metadata.gz.sig CHANGED
Binary file