hanamismith 2.1.0 → 2.3.0

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: 24a7f5ed25b0c7f51d6c624b26e7196171435d179cf9b2366e6201d4a50c4857
4
- data.tar.gz: 9a635c71a60fffa27dfb2f00004d05388bc7b6afe60e46523c26516d2582f70f
3
+ metadata.gz: 054e9513006d649fc307c5876e64c8950017f68fd039e167968eab783e2b4417
4
+ data.tar.gz: c18f32c274b99ae767f4224314ec257efdc38e0d0c95621e1f84425e94b0293e
5
5
  SHA512:
6
- metadata.gz: d0d2512fe7e948011ec7054808653e32337a52d54d48612e4ec5c632c9db149e0c060609e6ffe5eec36ea56c9092e25969b81f62c8bfedd2b0b25d43c377712a
7
- data.tar.gz: 45a140e691a30523ebe0f0c37d0bbd334a3dc1343258480bb84b99008dc4aa817f64aba02aa233608afea089062faac6c3dd4fc5b2acc13f7c7b9c0937affde1
6
+ metadata.gz: e6893f6165f59a26476084c0f89004cb2cc16ed4f19ee204bfd9c16d21c505944b27599415a0c2bf8b63d152c09ce23249e3545981b11a6acec97f0cd5262cd6
7
+ data.tar.gz: 364970a4f2ba6306ecd3b25e32ae7250ee8a7c1c047c5ba6bbfcca4d59abc4871a0e22bf71227721c3f75f53ea0f6c44625831b39f2a360e3abe1074b8db3310
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -41,7 +41,7 @@ toc::[]
41
41
 
42
42
  image:https://alchemists.io/images/projects/hanamismith/screenshots/home.png[Home,width=1060,height=725,role=focal_point]
43
43
 
44
- The above is a screenshot of a _Demo_ project that was generated locally. For a fully working demonstration application -- as built by this gem -- check out the link:https://github.com/bkuhlmann/hemo[Hemo] project as shown in this screencast:
44
+ The above is a screenshot of a _demo_ project that was generated locally. Here's a quick screencast of it:
45
45
 
46
46
  video::https://alchemists.io/videos/projects/hemo/demo.mp4[poster=https://alchemists.io/images/projects/hemo/demo.png,width=1280,height=720,role=focal_point]
47
47
 
data/hanamismith.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "hanamismith"
5
- spec.version = "2.1.0"
5
+ spec.version = "2.3.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://alchemists.io/projects/hanamismith"
@@ -24,19 +24,19 @@ Gem::Specification.new do |spec|
24
24
 
25
25
  spec.required_ruby_version = ">= 4.0"
26
26
 
27
- spec.add_dependency "cogger", "~> 2.0"
28
- spec.add_dependency "containable", "~> 2.0"
27
+ spec.add_dependency "cogger", "~> 2.3"
28
+ spec.add_dependency "containable", "~> 2.3"
29
29
  spec.add_dependency "dry-monads", "~> 1.9"
30
30
  spec.add_dependency "dry-schema", "~> 1.15"
31
- spec.add_dependency "etcher", "~> 4.0"
31
+ spec.add_dependency "etcher", "~> 4.3"
32
32
  spec.add_dependency "htmx", "~> 3.0"
33
33
  spec.add_dependency "infusible", "~> 5.0"
34
34
  spec.add_dependency "refinements", "~> 14.0"
35
- spec.add_dependency "rubysmith", "~> 9.1"
35
+ spec.add_dependency "rubysmith", "~> 9.3"
36
36
  spec.add_dependency "runcom", "~> 13.0"
37
37
  spec.add_dependency "sod", "~> 2.0"
38
38
  spec.add_dependency "spek", "~> 5.0"
39
- spec.add_dependency "zeitwerk", "~> 2.7"
39
+ spec.add_dependency "zeitwerk", "~> 2.8"
40
40
 
41
41
  spec.bindir = "exe"
42
42
  spec.executables << "hanamismith"
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "refinements/struct"
4
+
5
+ module Hanamismith
6
+ module Builders
7
+ module Providers
8
+ # Builds project skeleton for database provider.
9
+ class Database < Rubysmith::Builders::Abstract
10
+ using Refinements::Struct
11
+
12
+ def call
13
+ path = "%project_name%/config/providers/db.rb.erb"
14
+ builder.call(settings.with(template_path: path)).render
15
+ true
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -13,6 +13,7 @@ module Hanamismith
13
13
  BUILDERS = [
14
14
  Rubysmith::Builders::Init,
15
15
  Builders::Core,
16
+ Builders::Providers::Database,
16
17
  Builders::Providers::HTMX,
17
18
  Builders::Providers::Logger,
18
19
  Builders::Refinement,
@@ -14,13 +14,7 @@ jobs:
14
14
  steps:
15
15
  - run:
16
16
  name: Chromium Install
17
- command: apk add gcompat glib nss libxcb libgcc chromium
18
-
19
- - run:
20
- name: Chromium Start
21
- command: |
22
- export DISPLAY=:99
23
- chromedriver --url-base=/wd/hub &
17
+ command: apk add chromium
24
18
 
25
19
  - run:
26
20
  name: Node Install
@@ -63,6 +57,10 @@ jobs:
63
57
  paths:
64
58
  - node_modules
65
59
 
60
+ - run:
61
+ name: Project Setup
62
+ command: mkdir log
63
+
66
64
  - run:
67
65
  name: Database Setup
68
66
  command: bin/hanami db prepare
@@ -0,0 +1,5 @@
1
+ Hanami.app.configure_provider :db do
2
+ Sequel.default_timezone = :utc
3
+ Sequel.application_timezone = :local
4
+ Sequel.extension :lit_require_frozen
5
+ end
@@ -1,5 +1,13 @@
1
1
  Hanami.app.register_provider :htmx do
2
2
  prepare { require "htmx" }
3
3
 
4
- start { register :htmx, HTMX }
4
+ start do
5
+ toggler = lambda do |request, default = "app"|
6
+ HTMX.request?(request.env, :request, "true") ? false : default
7
+ end
8
+
9
+ register :htmx, HTMX
10
+ register :htmx_defaults, {"allowScriptTags" => false, "defaultSwapStyle" => "outerHTML"}.freeze
11
+ register :htmx_layout, toggler
12
+ end
5
13
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hanamismith
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -9,9 +9,9 @@ bindir: exe
9
9
  cert_chain:
10
10
  - |
11
11
  -----BEGIN CERTIFICATE-----
12
- MIIENjCCAp6gAwIBAgIBAjANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZicm9v
12
+ MIIENjCCAp6gAwIBAgIBAzANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZicm9v
13
13
  a2UxGjAYBgoJkiaJk/IsZAEZFgphbGNoZW1pc3RzMRIwEAYKCZImiZPyLGQBGRYC
14
- aW8wHhcNMjUwMzIyMTQ1NDE3WhcNMjYwMzIyMTQ1NDE3WjBBMQ8wDQYDVQQDDAZi
14
+ aW8wHhcNMjYwMzI1MTI0OTEyWhcNMjcwMzI1MTI0OTEyWjBBMQ8wDQYDVQQDDAZi
15
15
  cm9va2UxGjAYBgoJkiaJk/IsZAEZFgphbGNoZW1pc3RzMRIwEAYKCZImiZPyLGQB
16
16
  GRYCaW8wggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCro8tj5/E1Hg88
17
17
  f4qfiwPVd2zJQHvdYt4GHVvuHRRgx4HGhJuNp+4BId08RBn7V6V1MW6MY3kezRBs
@@ -23,15 +23,15 @@ cert_chain:
23
23
  GUHU9MyIXbFOsnp3K3ADrAVjPWop8EZkmUR3MV/CUm00w2cZHCSGiXl1KMpiVKvk
24
24
  Ywr1gd2ZME4QLSo+EXUtLxDUa/W3xnBS8dBOuMMz02FPWYr3PN8CAwEAAaM5MDcw
25
25
  CQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFAFgmv0tYMZnItuPycSM
26
- F5wykJEVMA0GCSqGSIb3DQEBCwUAA4IBgQBlzRfyAYx/fCFjizS0Npxw4+4T3aYL
27
- hbXoDqQRWjxuhFZcXUymhz3r8/Ltyri9lSof8grzB+8/+mrMVms7Gwt5qolk6zdn
28
- FkySGy/jmpN12ldOHFbBEnyVBZNBvOBVb8zkkw8PhiHdBdXOUm4Jy39yJvBLfjcC
29
- iM1aeWPmgPy1GbvZU+leRGZLt6dRIR9oCDXcWLRjha8xLMoz6Yn9fJBYexBA3iEz
30
- h5S7pn4AX/JhVRiSyl8pAy4jEKydpyQrliH3gHkpNmUS/XDczP+9xX1bAB4BvqL2
31
- NCxMcQ+hiJNqCKpPgHxaOOHZfIxV33logIuPEQ8NryHAwZ9ZWnwtYDE8kQGGKskI
32
- Kkm6QT474hZl7MpwiJjWgW313CR7jUEekQahX1QxCxHPI7LSrKpno0plH3uWIOQp
33
- KUlkb9uyACBgyRO52ZHiDVI8YvtU5O/j9pSes9/3XgvBeC1onx4qWp+uRX7eVsYS
34
- GiijocTc3enZVrXERetaXj8/9XWs3fB3HWY=
26
+ F5wykJEVMA0GCSqGSIb3DQEBCwUAA4IBgQAG+ykjp+DIXSybGEtX+/ve974mYfN6
27
+ 8U7qcVfRM+qDSOZ+97iu30qUTbVAKIHlHCDKRn3SgOffDUB5VU2MsJBh/3TPKWBZ
28
+ anB/uzMcwOfru+qyA3b7ZFqZzRLWmR5FtPObFxc0gYMT3YvLNHk2Nb9Vjq/PoiGG
29
+ e75PXweDOokwDA5m1gMOz1rdp/dlGMXkSFQg94PPVyUKXgO4VzWTgePSDxOIL+v6
30
+ +OWV6AaEH9BaqxnmdA5ubi0L7bhl0gbN92FxpNO3kpTjww8kme856a+wCK3qyM5w
31
+ 7ZLbUexynDN0Au8eSpT2Bf6ztGmB1S9ffzDJsGX1/lkpMIB51e48Xe2+gzzOgemk
32
+ CdZaGupj6WkarnT8kh/cPtyA5ax4rGX6GOS8meGxzkv8Uy0JSEOYAp6wLfIisYZp
33
+ IJBIXIOkwKKJ0eB5YHrUSJxzpP4LlcIg/eTftaXmJdYjy+2VRrCZYDjfguyLmMjR
34
+ KR9w4/Fjvqy87kCHmxMWa6IL2Vzt1Clm2cA=
35
35
  -----END CERTIFICATE-----
36
36
  date: 1980-01-02 00:00:00.000000000 Z
37
37
  dependencies:
@@ -41,28 +41,28 @@ dependencies:
41
41
  requirements:
42
42
  - - "~>"
43
43
  - !ruby/object:Gem::Version
44
- version: '2.0'
44
+ version: '2.3'
45
45
  type: :runtime
46
46
  prerelease: false
47
47
  version_requirements: !ruby/object:Gem::Requirement
48
48
  requirements:
49
49
  - - "~>"
50
50
  - !ruby/object:Gem::Version
51
- version: '2.0'
51
+ version: '2.3'
52
52
  - !ruby/object:Gem::Dependency
53
53
  name: containable
54
54
  requirement: !ruby/object:Gem::Requirement
55
55
  requirements:
56
56
  - - "~>"
57
57
  - !ruby/object:Gem::Version
58
- version: '2.0'
58
+ version: '2.3'
59
59
  type: :runtime
60
60
  prerelease: false
61
61
  version_requirements: !ruby/object:Gem::Requirement
62
62
  requirements:
63
63
  - - "~>"
64
64
  - !ruby/object:Gem::Version
65
- version: '2.0'
65
+ version: '2.3'
66
66
  - !ruby/object:Gem::Dependency
67
67
  name: dry-monads
68
68
  requirement: !ruby/object:Gem::Requirement
@@ -97,14 +97,14 @@ dependencies:
97
97
  requirements:
98
98
  - - "~>"
99
99
  - !ruby/object:Gem::Version
100
- version: '4.0'
100
+ version: '4.3'
101
101
  type: :runtime
102
102
  prerelease: false
103
103
  version_requirements: !ruby/object:Gem::Requirement
104
104
  requirements:
105
105
  - - "~>"
106
106
  - !ruby/object:Gem::Version
107
- version: '4.0'
107
+ version: '4.3'
108
108
  - !ruby/object:Gem::Dependency
109
109
  name: htmx
110
110
  requirement: !ruby/object:Gem::Requirement
@@ -153,14 +153,14 @@ dependencies:
153
153
  requirements:
154
154
  - - "~>"
155
155
  - !ruby/object:Gem::Version
156
- version: '9.1'
156
+ version: '9.3'
157
157
  type: :runtime
158
158
  prerelease: false
159
159
  version_requirements: !ruby/object:Gem::Requirement
160
160
  requirements:
161
161
  - - "~>"
162
162
  - !ruby/object:Gem::Version
163
- version: '9.1'
163
+ version: '9.3'
164
164
  - !ruby/object:Gem::Dependency
165
165
  name: runcom
166
166
  requirement: !ruby/object:Gem::Requirement
@@ -209,14 +209,14 @@ dependencies:
209
209
  requirements:
210
210
  - - "~>"
211
211
  - !ruby/object:Gem::Version
212
- version: '2.7'
212
+ version: '2.8'
213
213
  type: :runtime
214
214
  prerelease: false
215
215
  version_requirements: !ruby/object:Gem::Requirement
216
216
  requirements:
217
217
  - - "~>"
218
218
  - !ruby/object:Gem::Version
219
- version: '2.7'
219
+ version: '2.8'
220
220
  email:
221
221
  - brooke@alchemists.io
222
222
  executables:
@@ -251,6 +251,7 @@ files:
251
251
  - lib/hanamismith/builders/javascript.rb
252
252
  - lib/hanamismith/builders/layout.rb
253
253
  - lib/hanamismith/builders/node.rb
254
+ - lib/hanamismith/builders/providers/database.rb
254
255
  - lib/hanamismith/builders/providers/htmx.rb
255
256
  - lib/hanamismith/builders/providers/logger.rb
256
257
  - lib/hanamismith/builders/puma/configuration.rb
@@ -305,6 +306,7 @@ files:
305
306
  - lib/hanamismith/templates/%project_name%/config/initializers/rack_attack.rb.erb
306
307
  - lib/hanamismith/templates/%project_name%/config/initializers/rack_logger_patch.rb.erb
307
308
  - lib/hanamismith/templates/%project_name%/config/initializers/sql_logger_patch.rb.erb
309
+ - lib/hanamismith/templates/%project_name%/config/providers/db.rb.erb
308
310
  - lib/hanamismith/templates/%project_name%/config/providers/htmx.rb.erb
309
311
  - lib/hanamismith/templates/%project_name%/config/providers/logger.rb.erb
310
312
  - lib/hanamismith/templates/%project_name%/config/puma.rb.erb
@@ -366,7 +368,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
366
368
  - !ruby/object:Gem::Version
367
369
  version: '0'
368
370
  requirements: []
369
- rubygems_version: 4.0.3
371
+ rubygems_version: 4.0.12
370
372
  specification_version: 4
371
373
  summary: A command line interface for smithing Hanami projects.
372
374
  test_files: []
metadata.gz.sig CHANGED
Binary file