brut 0.17.0 → 0.18.1

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.
Files changed (1103) hide show
  1. checksums.yaml +4 -4
  2. data/exe/brut +34 -0
  3. data/lib/brut/cli/apps/build_assets.rb +78 -48
  4. data/lib/brut/cli/apps/db.rb +168 -202
  5. data/lib/brut/cli/apps/deploy.rb +291 -0
  6. data/lib/brut/cli/apps/heroku_container_based_deploy.rb +6 -0
  7. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/add_segment.rb +5 -5
  8. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/add_segment_options.rb +1 -1
  9. data/lib/brut/cli/apps/new/app.rb +240 -0
  10. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/app_id.rb +1 -1
  11. data/lib/brut/cli/apps/new/app_name.rb +29 -0
  12. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/base.rb +9 -6
  13. data/lib/brut/cli/apps/new/erb_binding_delegate.rb +23 -0
  14. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/internet_identifier.rb +5 -5
  15. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/invalid_identifier.rb +1 -1
  16. data/{mkbrut/lib/mkbrut/app.rb → lib/brut/cli/apps/new/old_app.rb} +8 -11
  17. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/add_css_import.rb +1 -1
  18. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/add_i18n_message.rb +1 -1
  19. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/add_method.rb +1 -1
  20. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/append_to_file.rb +1 -1
  21. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/base_op.rb +3 -3
  22. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/copy_file.rb +1 -1
  23. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/insert_code_in_method.rb +1 -1
  24. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/insert_into_file.rb +1 -1
  25. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/insert_route.rb +1 -1
  26. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/mkdir.rb +1 -1
  27. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/prism_parsing_op.rb +1 -1
  28. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/render_template.rb +1 -1
  29. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/ops/skip_file.rb +1 -1
  30. data/lib/brut/cli/apps/new/ops.rb +17 -0
  31. data/lib/brut/cli/apps/new/organization.rb +5 -0
  32. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/prefix.rb +1 -1
  33. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/segments/bare_bones.rb +12 -11
  34. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/segments/demo.rb +16 -15
  35. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/segments/heroku.rb +9 -5
  36. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/segments/sidekiq.rb +44 -21
  37. data/lib/brut/cli/apps/new/segments.rb +8 -0
  38. data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/versions.rb +3 -3
  39. data/lib/brut/cli/apps/new.rb +26 -0
  40. data/lib/brut/cli/apps/scaffold.rb +150 -141
  41. data/lib/brut/cli/apps/test.rb +92 -68
  42. data/lib/brut/cli/commands/base_command.rb +174 -0
  43. data/lib/brut/cli/commands/compound_command.rb +29 -0
  44. data/lib/brut/cli/commands/execution_context.rb +32 -0
  45. data/lib/brut/cli/commands/help.rb +26 -0
  46. data/lib/brut/cli/commands/output_error.rb +13 -0
  47. data/lib/brut/cli/commands/raise_error.rb +11 -0
  48. data/lib/brut/cli/commands.rb +8 -0
  49. data/lib/brut/cli/execute_result.rb +39 -0
  50. data/lib/brut/cli/executor.rb +9 -4
  51. data/lib/brut/cli/output.rb +13 -0
  52. data/lib/brut/cli/parsed_command_line.rb +143 -0
  53. data/lib/brut/cli/runner.rb +124 -0
  54. data/lib/brut/cli.rb +7 -29
  55. data/lib/brut/framework/container.rb +1 -1
  56. data/lib/brut/framework/mcp.rb +59 -13
  57. data/lib/brut/framework/project_environment.rb +3 -1
  58. data/lib/brut/junk_drawer.rb +3 -1
  59. data/lib/brut/spec_support/cli_command_support.rb +45 -0
  60. data/lib/brut/spec_support/e2e_test_server.rb +3 -0
  61. data/lib/brut/spec_support/general_support.rb +1 -1
  62. data/lib/brut/spec_support/matchers/have_executed.rb +35 -0
  63. data/lib/brut/spec_support/rspec_setup.rb +4 -8
  64. data/lib/brut/spec_support.rb +1 -0
  65. data/lib/brut/tui/markup_string.rb +2 -0
  66. data/lib/brut/tui/script/events/command_std_out.rb +3 -2
  67. data/lib/brut/tui/script/exec_step.rb +11 -4
  68. data/lib/brut/tui/script/puts_subscriber.rb +4 -4
  69. data/lib/brut/tui/script.rb +7 -3
  70. data/lib/brut/tui/terminal_theme.rb +15 -11
  71. data/lib/brut/version.rb +1 -1
  72. data/templates/Base/.env.development.local +2 -0
  73. data/templates/Base/bin/ci +42 -0
  74. data/{mkbrut/templates → templates}/Base/bin/release +2 -2
  75. data/templates/Base/bin/setup +174 -0
  76. data/{mkbrut/templates → templates}/Base/bin/watch-and-build-assets +1 -1
  77. data/{mkbrut/templates → templates}/Base/dx/docker-compose.env.erb +1 -1
  78. data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/css/fonts.css +1 -1
  79. data/{mkbrut/templates → templates}/segments/Heroku/deploy/Dockerfile +2 -2
  80. data/templates/segments/Heroku/deploy/docker_config.rb +30 -0
  81. metadata +190 -1055
  82. data/.gitignore +0 -61
  83. data/.projections.json +0 -10
  84. data/CHANGELOG.md +0 -172
  85. data/CODE_OF_CONDUCT.txt +0 -99
  86. data/Dockerfile.dx +0 -82
  87. data/Gemfile +0 -6
  88. data/Gemfile.lock +0 -246
  89. data/LICENSE.txt +0 -370
  90. data/README.md +0 -90
  91. data/Rakefile +0 -25
  92. data/assets/Logo-Square.pxd +0 -0
  93. data/assets/LogoPylon.pxd +0 -0
  94. data/assets/LogoStop.pxd +0 -0
  95. data/assets/LogoTall.pxd +0 -0
  96. data/assets/MetroIcon.graffle +0 -0
  97. data/assets/MetroLogo.graffle +0 -0
  98. data/assets/SocialImage.png +0 -0
  99. data/assets/SocialImage.pxd +0 -0
  100. data/assets/YouTubeThumb.pxd +0 -0
  101. data/bin/bin_kit.rb +0 -51
  102. data/bin/build +0 -86
  103. data/bin/ci +0 -40
  104. data/bin/dev +0 -20
  105. data/bin/docs +0 -86
  106. data/bin/generate-and-run-rubocop +0 -52
  107. data/bin/new-version +0 -8
  108. data/bin/publish +0 -61
  109. data/bin/rake +0 -27
  110. data/bin/rspec +0 -27
  111. data/bin/rubocop +0 -27
  112. data/bin/setup +0 -252
  113. data/bin/test +0 -18
  114. data/brut-css/.nvim.lua +0 -1
  115. data/brut-css/README.md +0 -28
  116. data/brut-css/bin/build +0 -50
  117. data/brut-css/bin/ci +0 -19
  118. data/brut-css/bin/dev +0 -1
  119. data/brut-css/bin/docs +0 -34
  120. data/brut-css/bin/publish +0 -21
  121. data/brut-css/bin/setup +0 -6
  122. data/brut-css/config/media-queries-all.css +0 -15
  123. data/brut-css/config/media-queries-minimal.css +0 -5
  124. data/brut-css/config/postcss.config.cjs +0 -7
  125. data/brut-css/config/pseudo-classes-all.css +0 -9
  126. data/brut-css/dx +0 -1
  127. data/brut-css/package-lock.json +0 -3165
  128. data/brut-css/package.json +0 -36
  129. data/brut-css/src/css/appearance.css +0 -145
  130. data/brut-css/src/css/border.css +0 -522
  131. data/brut-css/src/css/colors.css +0 -3502
  132. data/brut-css/src/css/dimensions.css +0 -548
  133. data/brut-css/src/css/flex.css +0 -179
  134. data/brut-css/src/css/index.css +0 -13
  135. data/brut-css/src/css/layout.css +0 -120
  136. data/brut-css/src/css/list.css +0 -41
  137. data/brut-css/src/css/positioning.css +0 -354
  138. data/brut-css/src/css/properties/colors.css +0 -455
  139. data/brut-css/src/css/properties/index.css +0 -3
  140. data/brut-css/src/css/properties/spacing.css +0 -140
  141. data/brut-css/src/css/properties/typography.css +0 -224
  142. data/brut-css/src/css/reset.css +0 -107
  143. data/brut-css/src/css/spacing.css +0 -585
  144. data/brut-css/src/css/typography.css +0 -519
  145. data/brut-css/src/css/utils.css +0 -104
  146. data/brut-css/src/docs/1_getting-started/1_overview.md +0 -46
  147. data/brut-css/src/docs/1_getting-started/2_installation.md +0 -25
  148. data/brut-css/src/docs/1_getting-started/3_core-concepts.md +0 -75
  149. data/brut-css/src/docs/1_getting-started/4_simple-example.md +0 -132
  150. data/brut-css/src/docs/1_getting-started/page.html.ejs +0 -10
  151. data/brut-css/src/docs/2_properties/page.html.ejs +0 -71
  152. data/brut-css/src/docs/3_classes/color-demo.html.ejs +0 -31
  153. data/brut-css/src/docs/3_classes/page.html.ejs +0 -87
  154. data/brut-css/src/docs/4_customization/1_design-system.md +0 -36
  155. data/brut-css/src/docs/4_customization/2_breakpoints.md +0 -75
  156. data/brut-css/src/docs/4_customization/3_pseudo-classes.md +0 -74
  157. data/brut-css/src/docs/4_customization/4_advanced-configuration.md +0 -40
  158. data/brut-css/src/docs/4_customization/page.html.ejs +0 -10
  159. data/brut-css/src/docs/docs.css +0 -98
  160. data/brut-css/src/docs/includes/body-and-header.html.ejs +0 -30
  161. data/brut-css/src/docs/includes/footer-and-rest.html.ejs +0 -9
  162. data/brut-css/src/docs/includes/head.html.ejs +0 -5
  163. data/brut-css/src/docs/includes/nav.html.ejs +0 -10
  164. data/brut-css/src/docs/index.html.ejs +0 -32
  165. data/brut-css/src/docs/prism-twilight.min.css +0 -1
  166. data/brut-css/src/js/Logger.js +0 -71
  167. data/brut-css/src/js/build.js +0 -111
  168. data/brut-css/src/js/cli/CLIArgError.js +0 -7
  169. data/brut-css/src/js/cli/Debug.js +0 -27
  170. data/brut-css/src/js/cli/DocsDir.js +0 -16
  171. data/brut-css/src/js/cli/DocsTemplateSourceDir.js +0 -16
  172. data/brut-css/src/js/cli/InputFile.js +0 -31
  173. data/brut-css/src/js/cli/MediaQueryConfigFile.js +0 -10
  174. data/brut-css/src/js/cli/OutputFile.js +0 -22
  175. data/brut-css/src/js/cli/ParsedArg.js +0 -17
  176. data/brut-css/src/js/cli/PathToBrutCSSRoot.js +0 -19
  177. data/brut-css/src/js/cli/PseudoClassConfigFile.js +0 -11
  178. data/brut-css/src/js/cli.js +0 -108
  179. data/brut-css/src/js/docGenerator.js +0 -467
  180. data/brut-css/src/js/mediaQueryConfigParser.js +0 -98
  181. data/brut-css/src/js/post-css-plugins/addMediaQueriesPlugin.js +0 -49
  182. data/brut-css/src/js/post-css-plugins/addPseudoClassesPlugin.js +0 -42
  183. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/Category.js +0 -9
  184. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/DocState.js +0 -185
  185. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/Documentable.js +0 -8
  186. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/Group.js +0 -7
  187. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/ParsedComment.js +0 -73
  188. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/Property.js +0 -9
  189. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/PropertyCategory.js +0 -4
  190. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/PropertyGroup.js +0 -8
  191. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/Rule.js +0 -12
  192. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/RuleCategory.js +0 -4
  193. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/RuleGroup.js +0 -8
  194. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/SeeRef.js +0 -5
  195. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin/SeeURL.js +0 -9
  196. data/brut-css/src/js/post-css-plugins/generateDocumentationPlugin.js +0 -49
  197. data/brut-css/src/js/post-css-plugins/generateRootCustomPropertiesPlugin.js +0 -45
  198. data/brut-css/src/js/pseudoClassConfigParser.js +0 -145
  199. data/brut-js/.projections.json +0 -10
  200. data/brut-js/README.md +0 -118
  201. data/brut-js/bin/build +0 -19
  202. data/brut-js/bin/ci +0 -5
  203. data/brut-js/bin/docs +0 -25
  204. data/brut-js/bin/publish +0 -21
  205. data/brut-js/bin/setup +0 -6
  206. data/brut-js/docs/README.md +0 -8
  207. data/brut-js/docs/jsdoc-plugins/customElementTag.js +0 -8
  208. data/brut-js/docs/jsdoc-theme/publish.js +0 -692
  209. data/brut-js/docs/jsdoc-theme/static/scripts/linenumber.js +0 -25
  210. data/brut-js/docs/jsdoc-theme/static/scripts/prettify/Apache-License-2.0.txt +0 -202
  211. data/brut-js/docs/jsdoc-theme/static/scripts/prettify/lang-css.js +0 -2
  212. data/brut-js/docs/jsdoc-theme/static/scripts/prettify/prettify.js +0 -28
  213. data/brut-js/docs/jsdoc-theme/static/styles/jsdoc-default.css +0 -327
  214. data/brut-js/docs/jsdoc-theme/static/styles/prettify-jsdoc.css +0 -111
  215. data/brut-js/docs/jsdoc-theme/static/styles/prettify-tomorrow.css +0 -132
  216. data/brut-js/docs/jsdoc-theme/tmpl/augments.tmpl +0 -10
  217. data/brut-js/docs/jsdoc-theme/tmpl/container.tmpl +0 -199
  218. data/brut-js/docs/jsdoc-theme/tmpl/details.tmpl +0 -143
  219. data/brut-js/docs/jsdoc-theme/tmpl/example.tmpl +0 -2
  220. data/brut-js/docs/jsdoc-theme/tmpl/examples.tmpl +0 -13
  221. data/brut-js/docs/jsdoc-theme/tmpl/exceptions.tmpl +0 -32
  222. data/brut-js/docs/jsdoc-theme/tmpl/layout.tmpl +0 -38
  223. data/brut-js/docs/jsdoc-theme/tmpl/mainpage.tmpl +0 -14
  224. data/brut-js/docs/jsdoc-theme/tmpl/members.tmpl +0 -38
  225. data/brut-js/docs/jsdoc-theme/tmpl/method.tmpl +0 -131
  226. data/brut-js/docs/jsdoc-theme/tmpl/modifies.tmpl +0 -14
  227. data/brut-js/docs/jsdoc-theme/tmpl/params.tmpl +0 -131
  228. data/brut-js/docs/jsdoc-theme/tmpl/properties.tmpl +0 -108
  229. data/brut-js/docs/jsdoc-theme/tmpl/returns.tmpl +0 -19
  230. data/brut-js/docs/jsdoc-theme/tmpl/source.tmpl +0 -8
  231. data/brut-js/docs/jsdoc-theme/tmpl/tutorial.tmpl +0 -19
  232. data/brut-js/docs/jsdoc-theme/tmpl/type.tmpl +0 -7
  233. data/brut-js/docs/jsdoc.config.json +0 -23
  234. data/brut-js/docs/package-lock.json +0 -343
  235. data/brut-js/docs/package.json +0 -7
  236. data/brut-js/dx +0 -1
  237. data/brut-js/package-lock.json +0 -2210
  238. data/brut-js/package.json +0 -36
  239. data/brut-js/specs/AjaxSubmit.spec.js +0 -453
  240. data/brut-js/specs/Autosubmit.spec.js +0 -127
  241. data/brut-js/specs/ConfirmSubmit.spec.js +0 -224
  242. data/brut-js/specs/ConstraintViolationMessage.spec.js +0 -33
  243. data/brut-js/specs/ConstraintViolationMessages.spec.js +0 -32
  244. data/brut-js/specs/CopyToClipboard.spec.js +0 -35
  245. data/brut-js/specs/Form.spec.js +0 -137
  246. data/brut-js/specs/I18nTranslation.spec.js +0 -19
  247. data/brut-js/specs/LocaleDetection.spec.js +0 -22
  248. data/brut-js/specs/Message.spec.js +0 -15
  249. data/brut-js/specs/SpecHelper.js +0 -23
  250. data/brut-js/specs/Tabs.spec.js +0 -41
  251. data/brut-js/specs/Toast.spec.js +0 -34
  252. data/brut-js/specs/config/asset_metadata.json +0 -7
  253. data/brut-js/src/AjaxSubmit.js +0 -499
  254. data/brut-js/src/Autosubmit.js +0 -63
  255. data/brut-js/src/BaseCustomElement.js +0 -261
  256. data/brut-js/src/ConfirmSubmit.js +0 -137
  257. data/brut-js/src/ConfirmationDialog.js +0 -143
  258. data/brut-js/src/ConstraintViolationMessage.js +0 -140
  259. data/brut-js/src/ConstraintViolationMessages.js +0 -98
  260. data/brut-js/src/CopyToClipboard.js +0 -96
  261. data/brut-js/src/Form.js +0 -147
  262. data/brut-js/src/I18nTranslation.js +0 -64
  263. data/brut-js/src/LocaleDetection.js +0 -117
  264. data/brut-js/src/Logger.js +0 -90
  265. data/brut-js/src/Message.js +0 -62
  266. data/brut-js/src/RichString.js +0 -116
  267. data/brut-js/src/Tabs.js +0 -168
  268. data/brut-js/src/Toast.js +0 -102
  269. data/brut-js/src/Tracing.js +0 -247
  270. data/brut-js/src/appForTestingOnly.js +0 -15
  271. data/brut-js/src/index.js +0 -133
  272. data/brut-js/src/testing/AssetMetadata.js +0 -35
  273. data/brut-js/src/testing/AssetMetadataLoader.js +0 -25
  274. data/brut-js/src/testing/CustomElementTest.js +0 -235
  275. data/brut-js/src/testing/DOMCreator.js +0 -45
  276. data/brut-js/src/testing/index.js +0 -48
  277. data/brut.gemspec +0 -73
  278. data/brutrb.com/.vitepress/config.mjs +0 -164
  279. data/brutrb.com/.vitepress/plugins/jsdocLinker.js +0 -34
  280. data/brutrb.com/.vitepress/plugins/rdocLinker.js +0 -18
  281. data/brutrb.com/.vitepress/theme/custom.css +0 -14
  282. data/brutrb.com/.vitepress/theme/index.js +0 -18
  283. data/brutrb.com/.vitepress/theme/style.css +0 -139
  284. data/brutrb.com/adrs.md +0 -16
  285. data/brutrb.com/ai.md +0 -68
  286. data/brutrb.com/assets.md +0 -131
  287. data/brutrb.com/bin/build +0 -5
  288. data/brutrb.com/bin/deploy +0 -7
  289. data/brutrb.com/bin/dev +0 -5
  290. data/brutrb.com/bin/setup +0 -6
  291. data/brutrb.com/brut-js.md +0 -128
  292. data/brutrb.com/business-logic.md +0 -55
  293. data/brutrb.com/cli.md +0 -274
  294. data/brutrb.com/components.md +0 -265
  295. data/brutrb.com/configuration.md +0 -256
  296. data/brutrb.com/css.md +0 -103
  297. data/brutrb.com/custom-element-tests.md +0 -148
  298. data/brutrb.com/database-access.md +0 -201
  299. data/brutrb.com/database-schema.md +0 -320
  300. data/brutrb.com/deployment.md +0 -158
  301. data/brutrb.com/dev-environment.md +0 -186
  302. data/brutrb.com/dir-structure.md +0 -120
  303. data/brutrb.com/doc-conventions.md +0 -41
  304. data/brutrb.com/dx +0 -1
  305. data/brutrb.com/end-to-end-tests.md +0 -176
  306. data/brutrb.com/features.md +0 -373
  307. data/brutrb.com/flash-and-session.md +0 -208
  308. data/brutrb.com/form-constraints.md +0 -266
  309. data/brutrb.com/forms.md +0 -238
  310. data/brutrb.com/getting-started.md +0 -142
  311. data/brutrb.com/handlers.md +0 -177
  312. data/brutrb.com/hooks.md +0 -176
  313. data/brutrb.com/i18n.md +0 -190
  314. data/brutrb.com/images/DevEnvironment.graffle +0 -0
  315. data/brutrb.com/images/DevEnvironment.png +0 -0
  316. data/brutrb.com/images/LogoSquare.png +0 -0
  317. data/brutrb.com/images/LogoStop.png +0 -0
  318. data/brutrb.com/images/LogoTall.png +0 -0
  319. data/brutrb.com/images/Makefile +0 -10
  320. data/brutrb.com/images/OverviewMetro.graffle +0 -0
  321. data/brutrb.com/images/OverviewMetro.png +0 -0
  322. data/brutrb.com/images/dev-env-overview.dot +0 -54
  323. data/brutrb.com/images/dev-env-overview.png +0 -0
  324. data/brutrb.com/images/dev-env-protocol.dot +0 -37
  325. data/brutrb.com/images/dev-env-protocol.png +0 -0
  326. data/brutrb.com/images/overview.graffle +0 -0
  327. data/brutrb.com/images/overview.png +0 -0
  328. data/brutrb.com/images/spa.dot +0 -19
  329. data/brutrb.com/images/spa.png +0 -0
  330. data/brutrb.com/images/tutorial/02-confirmation-dialog-browser-element-styled.png +0 -0
  331. data/brutrb.com/images/tutorial/02-confirmation-dialog-browser-element.png +0 -0
  332. data/brutrb.com/images/tutorial/02-confirmation-dialog-browser.png +0 -0
  333. data/brutrb.com/images/tutorial/02-confirmation-flow.graffle +0 -0
  334. data/brutrb.com/images/tutorial/02-confirmation-flow.png +0 -0
  335. data/brutrb.com/images/tutorial/basic-form-with-violations.png +0 -0
  336. data/brutrb.com/images/tutorial/basic-form.png +0 -0
  337. data/brutrb.com/images/tutorial/initial-home-page.png +0 -0
  338. data/brutrb.com/images/tutorial/new-post-editor.png +0 -0
  339. data/brutrb.com/images/tutorial/new-post-home-page.png +0 -0
  340. data/brutrb.com/images/tutorial/styled-form-with-server-side-violations.png +0 -0
  341. data/brutrb.com/images/tutorial/styled-form-with-violations.png +0 -0
  342. data/brutrb.com/images/tutorial/styled-home-page-with-posts.png +0 -0
  343. data/brutrb.com/images/tutorial/styled-home-page.png +0 -0
  344. data/brutrb.com/images/tutorial/welcome-to-brut.png +0 -0
  345. data/brutrb.com/images/workspace-protocol.dot +0 -44
  346. data/brutrb.com/images/workspace-protocol.png +0 -0
  347. data/brutrb.com/index.md +0 -34
  348. data/brutrb.com/instrumentation.md +0 -331
  349. data/brutrb.com/javascript.md +0 -122
  350. data/brutrb.com/jobs.md +0 -114
  351. data/brutrb.com/keyword-injection.md +0 -195
  352. data/brutrb.com/layouts.md +0 -156
  353. data/brutrb.com/lsp.md +0 -23
  354. data/brutrb.com/markdown-examples.md +0 -85
  355. data/brutrb.com/middleware.md +0 -80
  356. data/brutrb.com/overview.md +0 -68
  357. data/brutrb.com/package-lock.json +0 -2451
  358. data/brutrb.com/package.json +0 -11
  359. data/brutrb.com/pages.md +0 -290
  360. data/brutrb.com/public/SocialImage.png +0 -0
  361. data/brutrb.com/public/favicon.ico +0 -0
  362. data/brutrb.com/recipes/alternate-layouts.md +0 -32
  363. data/brutrb.com/recipes/authentication.md +0 -336
  364. data/brutrb.com/recipes/custom-flash.md +0 -51
  365. data/brutrb.com/recipes/dev-env-secrets.md +0 -87
  366. data/brutrb.com/recipes/form-errors.md +0 -148
  367. data/brutrb.com/recipes/indexed-forms.md +0 -149
  368. data/brutrb.com/recipes/migrations.md +0 -210
  369. data/brutrb.com/recipes/text-field-component.md +0 -182
  370. data/brutrb.com/roadmap.md +0 -52
  371. data/brutrb.com/routes.md +0 -189
  372. data/brutrb.com/security.md +0 -102
  373. data/brutrb.com/seed-data.md +0 -63
  374. data/brutrb.com/space-time-continuum.md +0 -81
  375. data/brutrb.com/tutorial.md +0 -138
  376. data/brutrb.com/tutorials/01-intro.md +0 -1654
  377. data/brutrb.com/tutorials/02-dialog.md +0 -569
  378. data/brutrb.com/unit-tests.md +0 -148
  379. data/brutrb.com/why.md +0 -19
  380. data/docker-compose.dx.yml +0 -25
  381. data/docs/404.html +0 -26
  382. data/docs/CNAME +0 -1
  383. data/docs/SocialImage.png +0 -0
  384. data/docs/adrs.html +0 -29
  385. data/docs/ai.html +0 -29
  386. data/docs/api/Brut/BackEnd/SeedData.html +0 -493
  387. data/docs/api/Brut/BackEnd/Sidekiq/Middlewares/Server/FlushSpans.html +0 -214
  388. data/docs/api/Brut/BackEnd/Sidekiq/Middlewares/Server.html +0 -125
  389. data/docs/api/Brut/BackEnd/Sidekiq/Middlewares.html +0 -125
  390. data/docs/api/Brut/BackEnd/Sidekiq.html +0 -125
  391. data/docs/api/Brut/BackEnd/Validators/FormValidator.html +0 -414
  392. data/docs/api/Brut/BackEnd/Validators.html +0 -128
  393. data/docs/api/Brut/BackEnd.html +0 -132
  394. data/docs/api/Brut/CLI/App.html +0 -1601
  395. data/docs/api/Brut/CLI/AppRunner.html +0 -491
  396. data/docs/api/Brut/CLI/Apps/BuildAssets/All.html +0 -264
  397. data/docs/api/Brut/CLI/Apps/BuildAssets/CSS.html +0 -306
  398. data/docs/api/Brut/CLI/Apps/BuildAssets/Images.html +0 -262
  399. data/docs/api/Brut/CLI/Apps/BuildAssets/JS.html +0 -314
  400. data/docs/api/Brut/CLI/Apps/BuildAssets.html +0 -183
  401. data/docs/api/Brut/CLI/Apps/DB/Create.html +0 -365
  402. data/docs/api/Brut/CLI/Apps/DB/Drop.html +0 -357
  403. data/docs/api/Brut/CLI/Apps/DB/Migrate.html +0 -389
  404. data/docs/api/Brut/CLI/Apps/DB/NewMigration.html +0 -339
  405. data/docs/api/Brut/CLI/Apps/DB/Rebuild.html +0 -329
  406. data/docs/api/Brut/CLI/Apps/DB/Seed.html +0 -347
  407. data/docs/api/Brut/CLI/Apps/DB/Status.html +0 -383
  408. data/docs/api/Brut/CLI/Apps/DB.html +0 -183
  409. data/docs/api/Brut/CLI/Apps/DeployBase/GitChecks.html +0 -270
  410. data/docs/api/Brut/CLI/Apps/DeployBase.html +0 -257
  411. data/docs/api/Brut/CLI/Apps/HerokuContainerBasedDeploy/Deploy.html +0 -587
  412. data/docs/api/Brut/CLI/Apps/HerokuContainerBasedDeploy.html +0 -196
  413. data/docs/api/Brut/CLI/Apps/Scaffold/Action/Route.html +0 -303
  414. data/docs/api/Brut/CLI/Apps/Scaffold/Action.html +0 -508
  415. data/docs/api/Brut/CLI/Apps/Scaffold/Component.html +0 -398
  416. data/docs/api/Brut/CLI/Apps/Scaffold/CustomElementTest.html +0 -374
  417. data/docs/api/Brut/CLI/Apps/Scaffold/DbModel.html +0 -384
  418. data/docs/api/Brut/CLI/Apps/Scaffold/E2ETest.html +0 -410
  419. data/docs/api/Brut/CLI/Apps/Scaffold/Form.html +0 -262
  420. data/docs/api/Brut/CLI/Apps/Scaffold/Page/Route.html +0 -303
  421. data/docs/api/Brut/CLI/Apps/Scaffold/Page.html +0 -480
  422. data/docs/api/Brut/CLI/Apps/Scaffold/RoutesEditor.html +0 -450
  423. data/docs/api/Brut/CLI/Apps/Scaffold/Test.html +0 -380
  424. data/docs/api/Brut/CLI/Apps/Scaffold.html +0 -253
  425. data/docs/api/Brut/CLI/Apps/Test/Audit.html +0 -474
  426. data/docs/api/Brut/CLI/Apps/Test/E2e.html +0 -407
  427. data/docs/api/Brut/CLI/Apps/Test/JS.html +0 -262
  428. data/docs/api/Brut/CLI/Apps/Test/Run.html +0 -578
  429. data/docs/api/Brut/CLI/Apps/Test.html +0 -253
  430. data/docs/api/Brut/CLI/Apps.html +0 -125
  431. data/docs/api/Brut/CLI/Command.html +0 -2425
  432. data/docs/api/Brut/CLI/Error.html +0 -139
  433. data/docs/api/Brut/CLI/ExecutionResults/Result.html +0 -664
  434. data/docs/api/Brut/CLI/ExecutionResults.html +0 -675
  435. data/docs/api/Brut/CLI/Executor.html +0 -561
  436. data/docs/api/Brut/CLI/InvalidOption.html +0 -245
  437. data/docs/api/Brut/CLI/Options.html +0 -880
  438. data/docs/api/Brut/CLI/Output.html +0 -699
  439. data/docs/api/Brut/CLI/SystemExecError.html +0 -451
  440. data/docs/api/Brut/CLI.html +0 -263
  441. data/docs/api/Brut/FactoryBot.html +0 -225
  442. data/docs/api/Brut/Framework/App.html +0 -1097
  443. data/docs/api/Brut/Framework/Config.html +0 -1071
  444. data/docs/api/Brut/Framework/Container.html +0 -1464
  445. data/docs/api/Brut/Framework/Error.html +0 -140
  446. data/docs/api/Brut/Framework/Errors/AbstractMethod.html +0 -232
  447. data/docs/api/Brut/Framework/Errors/Bug.html +0 -234
  448. data/docs/api/Brut/Framework/Errors/MissingConfiguration.html +0 -257
  449. data/docs/api/Brut/Framework/Errors/MissingParameter.html +0 -273
  450. data/docs/api/Brut/Framework/Errors/NoClassForPath.html +0 -471
  451. data/docs/api/Brut/Framework/Errors/NotFound.html +0 -308
  452. data/docs/api/Brut/Framework/Errors/NotImplemented.html +0 -234
  453. data/docs/api/Brut/Framework/Errors.html +0 -351
  454. data/docs/api/Brut/Framework/FussyTypeEnforcement.html +0 -392
  455. data/docs/api/Brut/Framework/MCP.html +0 -871
  456. data/docs/api/Brut/Framework/ProjectEnvironment.html +0 -648
  457. data/docs/api/Brut/Framework.html +0 -129
  458. data/docs/api/Brut/FrontEnd/AssetPathResolver.html +0 -317
  459. data/docs/api/Brut/FrontEnd/Component/Helpers.html +0 -420
  460. data/docs/api/Brut/FrontEnd/Component.html +0 -434
  461. data/docs/api/Brut/FrontEnd/Components/ConstraintViolations.html +0 -491
  462. data/docs/api/Brut/FrontEnd/Components/FormTag.html +0 -526
  463. data/docs/api/Brut/FrontEnd/Components/I18nTranslations.html +0 -313
  464. data/docs/api/Brut/FrontEnd/Components/Input.html +0 -195
  465. data/docs/api/Brut/FrontEnd/Components/Inputs/ButtonTag.html +0 -447
  466. data/docs/api/Brut/FrontEnd/Components/Inputs/CsrfToken.html +0 -339
  467. data/docs/api/Brut/FrontEnd/Components/Inputs/InputTag.html +0 -568
  468. data/docs/api/Brut/FrontEnd/Components/Inputs/RadioButton.html +0 -419
  469. data/docs/api/Brut/FrontEnd/Components/Inputs/SelectTagWithOptions.html +0 -610
  470. data/docs/api/Brut/FrontEnd/Components/Inputs/TextareaTag.html +0 -534
  471. data/docs/api/Brut/FrontEnd/Components/Inputs.html +0 -125
  472. data/docs/api/Brut/FrontEnd/Components/LocaleDetection.html +0 -367
  473. data/docs/api/Brut/FrontEnd/Components/PageIdentifier.html +0 -355
  474. data/docs/api/Brut/FrontEnd/Components/TimeTag.html +0 -655
  475. data/docs/api/Brut/FrontEnd/Components/Traceparent.html +0 -352
  476. data/docs/api/Brut/FrontEnd/Components.html +0 -156
  477. data/docs/api/Brut/FrontEnd/CsrfProtector.html +0 -250
  478. data/docs/api/Brut/FrontEnd/Download.html +0 -467
  479. data/docs/api/Brut/FrontEnd/Flash.html +0 -1150
  480. data/docs/api/Brut/FrontEnd/Form.html +0 -1227
  481. data/docs/api/Brut/FrontEnd/Forms/Button.html +0 -331
  482. data/docs/api/Brut/FrontEnd/Forms/ButtonInputDefinition.html +0 -537
  483. data/docs/api/Brut/FrontEnd/Forms/ConstraintViolation.html +0 -590
  484. data/docs/api/Brut/FrontEnd/Forms/Input/Color.html +0 -201
  485. data/docs/api/Brut/FrontEnd/Forms/Input/TimeOfDay.html +0 -535
  486. data/docs/api/Brut/FrontEnd/Forms/Input.html +0 -1567
  487. data/docs/api/Brut/FrontEnd/Forms/InputDeclarations.html +0 -635
  488. data/docs/api/Brut/FrontEnd/Forms/InputDefinition.html +0 -1336
  489. data/docs/api/Brut/FrontEnd/Forms/RadioButtonGroupInput.html +0 -730
  490. data/docs/api/Brut/FrontEnd/Forms/RadioButtonGroupInputDefinition.html +0 -587
  491. data/docs/api/Brut/FrontEnd/Forms/SelectInput.html +0 -734
  492. data/docs/api/Brut/FrontEnd/Forms/SelectInputDefinition.html +0 -582
  493. data/docs/api/Brut/FrontEnd/Forms/ValidityState.html +0 -659
  494. data/docs/api/Brut/FrontEnd/Forms.html +0 -127
  495. data/docs/api/Brut/FrontEnd/GenericResponse.html +0 -377
  496. data/docs/api/Brut/FrontEnd/Handler.html +0 -442
  497. data/docs/api/Brut/FrontEnd/Handlers/CspReportingHandler.html +0 -318
  498. data/docs/api/Brut/FrontEnd/Handlers/InstrumentationHandler/TraceParent.html +0 -336
  499. data/docs/api/Brut/FrontEnd/Handlers/InstrumentationHandler.html +0 -399
  500. data/docs/api/Brut/FrontEnd/Handlers/LocaleDetectionHandler.html +0 -354
  501. data/docs/api/Brut/FrontEnd/Handlers/MissingHandler/Form.html +0 -151
  502. data/docs/api/Brut/FrontEnd/Handlers/MissingHandler.html +0 -315
  503. data/docs/api/Brut/FrontEnd/Handlers.html +0 -125
  504. data/docs/api/Brut/FrontEnd/HandlingResults.html +0 -339
  505. data/docs/api/Brut/FrontEnd/HttpMethod.html +0 -661
  506. data/docs/api/Brut/FrontEnd/HttpStatus.html +0 -496
  507. data/docs/api/Brut/FrontEnd/InlineSvgLocator.html +0 -284
  508. data/docs/api/Brut/FrontEnd/Layout.html +0 -486
  509. data/docs/api/Brut/FrontEnd/Middleware.html +0 -135
  510. data/docs/api/Brut/FrontEnd/Middlewares/AnnotateBrutOwnedPaths.html +0 -288
  511. data/docs/api/Brut/FrontEnd/Middlewares/Favicon.html +0 -292
  512. data/docs/api/Brut/FrontEnd/Middlewares/OpenTelemetrySpan.html +0 -324
  513. data/docs/api/Brut/FrontEnd/Middlewares/ReloadApp.html +0 -376
  514. data/docs/api/Brut/FrontEnd/Middlewares.html +0 -125
  515. data/docs/api/Brut/FrontEnd/Page.html +0 -781
  516. data/docs/api/Brut/FrontEnd/Pages/MissingPage.html +0 -797
  517. data/docs/api/Brut/FrontEnd/Pages.html +0 -125
  518. data/docs/api/Brut/FrontEnd/RequestContext.html +0 -1312
  519. data/docs/api/Brut/FrontEnd/RouteHook.html +0 -424
  520. data/docs/api/Brut/FrontEnd/RouteHooks/AgeFlash.html +0 -242
  521. data/docs/api/Brut/FrontEnd/RouteHooks/CSPNoInlineScripts.html +0 -249
  522. data/docs/api/Brut/FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts/ReportOnly.html +0 -264
  523. data/docs/api/Brut/FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts.html +0 -261
  524. data/docs/api/Brut/FrontEnd/RouteHooks/LocaleDetection.html +0 -284
  525. data/docs/api/Brut/FrontEnd/RouteHooks/SetupRequestContext.html +0 -252
  526. data/docs/api/Brut/FrontEnd/RouteHooks.html +0 -115
  527. data/docs/api/Brut/FrontEnd/Routing/FormHandlerRoute.html +0 -227
  528. data/docs/api/Brut/FrontEnd/Routing/FormRoute.html +0 -305
  529. data/docs/api/Brut/FrontEnd/Routing/MissingForm.html +0 -324
  530. data/docs/api/Brut/FrontEnd/Routing/MissingHandler.html +0 -319
  531. data/docs/api/Brut/FrontEnd/Routing/MissingPage.html +0 -315
  532. data/docs/api/Brut/FrontEnd/Routing/MissingPath.html +0 -315
  533. data/docs/api/Brut/FrontEnd/Routing/PageRoute.html +0 -327
  534. data/docs/api/Brut/FrontEnd/Routing/Route.html +0 -761
  535. data/docs/api/Brut/FrontEnd/Routing.html +0 -927
  536. data/docs/api/Brut/FrontEnd/Session.html +0 -1195
  537. data/docs/api/Brut/FrontEnd.html +0 -134
  538. data/docs/api/Brut/I18n/BaseMethods.html +0 -931
  539. data/docs/api/Brut/I18n/ForBackEnd.html +0 -302
  540. data/docs/api/Brut/I18n/ForCLI.html +0 -302
  541. data/docs/api/Brut/I18n/ForHTML.html +0 -296
  542. data/docs/api/Brut/I18n/HTTPAcceptLanguage/AlwaysEnglish.html +0 -316
  543. data/docs/api/Brut/I18n/HTTPAcceptLanguage.html +0 -930
  544. data/docs/api/Brut/I18n.html +0 -127
  545. data/docs/api/Brut/Instrumentation/LoggerSpanExporter.html +0 -435
  546. data/docs/api/Brut/Instrumentation/Methods/ClassMethods.html +0 -596
  547. data/docs/api/Brut/Instrumentation/Methods.html +0 -173
  548. data/docs/api/Brut/Instrumentation/OpenTelemetry/NormalizedAttributes.html +0 -286
  549. data/docs/api/Brut/Instrumentation/OpenTelemetry/Span.html +0 -302
  550. data/docs/api/Brut/Instrumentation/OpenTelemetry.html +0 -866
  551. data/docs/api/Brut/Instrumentation.html +0 -128
  552. data/docs/api/Brut/RubocopConfig.html +0 -237
  553. data/docs/api/Brut/SinatraHelpers/ClassMethods.html +0 -534
  554. data/docs/api/Brut/SinatraHelpers.html +0 -281
  555. data/docs/api/Brut/SpecSupport/ClockSupport.html +0 -383
  556. data/docs/api/Brut/SpecSupport/ComponentSupport.html +0 -496
  557. data/docs/api/Brut/SpecSupport/E2ETestServer.html +0 -503
  558. data/docs/api/Brut/SpecSupport/E2eSupport.html +0 -142
  559. data/docs/api/Brut/SpecSupport/EnhancedNode.html +0 -403
  560. data/docs/api/Brut/SpecSupport/FlashSupport.html +0 -278
  561. data/docs/api/Brut/SpecSupport/GeneralSupport/ClassMethods.html +0 -401
  562. data/docs/api/Brut/SpecSupport/GeneralSupport.html +0 -195
  563. data/docs/api/Brut/SpecSupport/HandlerSupport.html +0 -160
  564. data/docs/api/Brut/SpecSupport/Matchers/BeABug.html +0 -142
  565. data/docs/api/Brut/SpecSupport/Matchers/BePageFor.html +0 -142
  566. data/docs/api/Brut/SpecSupport/Matchers/BeRoutingFor.html +0 -155
  567. data/docs/api/Brut/SpecSupport/Matchers/HaveConstraintViolation.html +0 -583
  568. data/docs/api/Brut/SpecSupport/Matchers/HaveGenerated.html +0 -149
  569. data/docs/api/Brut/SpecSupport/Matchers/HaveHTMLAttribute.html +0 -466
  570. data/docs/api/Brut/SpecSupport/Matchers/HaveI18nString.html +0 -149
  571. data/docs/api/Brut/SpecSupport/Matchers/HaveLinkTo.html +0 -149
  572. data/docs/api/Brut/SpecSupport/Matchers/HaveRedirectedTo.html +0 -165
  573. data/docs/api/Brut/SpecSupport/Matchers/HaveReturnedHttpStatus.html +0 -158
  574. data/docs/api/Brut/SpecSupport/Matchers/HaveReturnedRackResponse.html +0 -156
  575. data/docs/api/Brut/SpecSupport/Matchers.html +0 -125
  576. data/docs/api/Brut/SpecSupport/RSpecSetup/OptionalSidekiqSupport.html +0 -335
  577. data/docs/api/Brut/SpecSupport/RSpecSetup.html +0 -637
  578. data/docs/api/Brut/SpecSupport/SessionSupport.html +0 -196
  579. data/docs/api/Brut/SpecSupport.html +0 -129
  580. data/docs/api/Brut/TUI/AnsiEscapeCode/Mod.html +0 -409
  581. data/docs/api/Brut/TUI/AnsiEscapeCode.html +0 -426
  582. data/docs/api/Brut/TUI/EventLoop/Deque.html +0 -531
  583. data/docs/api/Brut/TUI/EventLoop.html +0 -676
  584. data/docs/api/Brut/TUI/Events/BaseEvent.html +0 -449
  585. data/docs/api/Brut/TUI/Events/EventBus.html +0 -485
  586. data/docs/api/Brut/TUI/Events/EventLoopStarted.html +0 -211
  587. data/docs/api/Brut/TUI/Events/Exception.html +0 -523
  588. data/docs/api/Brut/TUI/Events/Tick.html +0 -294
  589. data/docs/api/Brut/TUI/Events.html +0 -131
  590. data/docs/api/Brut/TUI/MarkupString.html +0 -537
  591. data/docs/api/Brut/TUI/Script/BlockStep.html +0 -300
  592. data/docs/api/Brut/TUI/Script/Events/CommandExecutionFailed.html +0 -252
  593. data/docs/api/Brut/TUI/Script/Events/CommandExecutionSucceeded.html +0 -163
  594. data/docs/api/Brut/TUI/Script/Events/CommandStdErr.html +0 -163
  595. data/docs/api/Brut/TUI/Script/Events/CommandStdOut.html +0 -300
  596. data/docs/api/Brut/TUI/Script/Events/ExecutingCommand.html +0 -298
  597. data/docs/api/Brut/TUI/Script/Events/Message.html +0 -345
  598. data/docs/api/Brut/TUI/Script/Events/PhaseCompleted.html +0 -229
  599. data/docs/api/Brut/TUI/Script/Events/PhaseStarted.html +0 -350
  600. data/docs/api/Brut/TUI/Script/Events/ScriptCompleted.html +0 -282
  601. data/docs/api/Brut/TUI/Script/Events/ScriptStarted.html +0 -343
  602. data/docs/api/Brut/TUI/Script/Events/StepCompleted.html +0 -163
  603. data/docs/api/Brut/TUI/Script/Events/StepStarted.html +0 -346
  604. data/docs/api/Brut/TUI/Script/Events.html +0 -115
  605. data/docs/api/Brut/TUI/Script/ExecStep/ProcessStatusFailed.html +0 -210
  606. data/docs/api/Brut/TUI/Script/ExecStep.html +0 -493
  607. data/docs/api/Brut/TUI/Script/LoggingSubscriber.html +0 -914
  608. data/docs/api/Brut/TUI/Script/PutsSubscriber.html +0 -783
  609. data/docs/api/Brut/TUI/Script/Step.html +0 -313
  610. data/docs/api/Brut/TUI/Script.html +0 -1250
  611. data/docs/api/Brut/TUI/Terminal.html +0 -593
  612. data/docs/api/Brut/TUI/TerminalTheme.html +0 -1403
  613. data/docs/api/Brut/TUI/Themes/Dark.html +0 -706
  614. data/docs/api/Brut/TUI/Themes/Light.html +0 -804
  615. data/docs/api/Brut/TUI/Themes/None.html +0 -218
  616. data/docs/api/Brut/TUI/Themes.html +0 -115
  617. data/docs/api/Brut/TUI.html +0 -129
  618. data/docs/api/Brut.html +0 -341
  619. data/docs/api/Clock.html +0 -603
  620. data/docs/api/ModuleName.html +0 -595
  621. data/docs/api/RichString.html +0 -775
  622. data/docs/api/SemanticLogger/Appender/Async.html +0 -219
  623. data/docs/api/Sequel/Extensions/BrutInstrumentation.html +0 -119
  624. data/docs/api/Sequel/Extensions/BrutMigrations.html +0 -541
  625. data/docs/api/Sequel/Extensions.html +0 -117
  626. data/docs/api/Sequel/Plugins/CreatedAt/InstanceMethods.html +0 -105
  627. data/docs/api/Sequel/Plugins/CreatedAt.html +0 -125
  628. data/docs/api/Sequel/Plugins/ExternalId/ClassMethods.html +0 -207
  629. data/docs/api/Sequel/Plugins/ExternalId/InstanceMethods.html +0 -186
  630. data/docs/api/Sequel/Plugins/ExternalId.html +0 -218
  631. data/docs/api/Sequel/Plugins/FindBang/ClassMethods.html +0 -202
  632. data/docs/api/Sequel/Plugins/FindBang.html +0 -125
  633. data/docs/api/Sequel/Plugins.html +0 -117
  634. data/docs/api/Sequel.html +0 -117
  635. data/docs/api/SpecSupport/Matchers/BeABug.html +0 -143
  636. data/docs/api/_index.html +0 -1964
  637. data/docs/api/class_list.html +0 -54
  638. data/docs/api/css/common.css +0 -1
  639. data/docs/api/css/full_list.css +0 -59
  640. data/docs/api/css/style.css +0 -504
  641. data/docs/api/file.README.html +0 -172
  642. data/docs/api/file_list.html +0 -59
  643. data/docs/api/frames.html +0 -22
  644. data/docs/api/index.html +0 -172
  645. data/docs/api/js/app.js +0 -344
  646. data/docs/api/js/full_list.js +0 -242
  647. data/docs/api/js/jquery.js +0 -4
  648. data/docs/api/method_list.html +0 -5542
  649. data/docs/api/top-level-namespace.html +0 -112
  650. data/docs/assets/02-confirmation-dialog-browser-element-styled.3NEGM20-.png +0 -0
  651. data/docs/assets/02-confirmation-dialog-browser-element.DPsf0xUW.png +0 -0
  652. data/docs/assets/02-confirmation-dialog-browser.DH8ALFO4.png +0 -0
  653. data/docs/assets/02-confirmation-flow.D9gZ0S5U.png +0 -0
  654. data/docs/assets/DevEnvironment.DaFcVfwP.png +0 -0
  655. data/docs/assets/LogoStop.Gb3tDhL1.png +0 -0
  656. data/docs/assets/OverviewMetro.DUS-5fUZ.png +0 -0
  657. data/docs/assets/adrs.md.YglbWtQe.js +0 -1
  658. data/docs/assets/adrs.md.YglbWtQe.lean.js +0 -1
  659. data/docs/assets/ai.md.ChLnvDAX.js +0 -1
  660. data/docs/assets/ai.md.ChLnvDAX.lean.js +0 -1
  661. data/docs/assets/app.B8jAEB7R.js +0 -1
  662. data/docs/assets/assets.md.BEF6Oz6K.js +0 -19
  663. data/docs/assets/assets.md.BEF6Oz6K.lean.js +0 -1
  664. data/docs/assets/basic-form-with-violations.Cv6Y9-Q_.png +0 -0
  665. data/docs/assets/basic-form.DbHnu0oW.png +0 -0
  666. data/docs/assets/brut-js.md.BMz0X1Rz.js +0 -12
  667. data/docs/assets/brut-js.md.BMz0X1Rz.lean.js +0 -1
  668. data/docs/assets/business-logic.md.DbuaOYGU.js +0 -1
  669. data/docs/assets/business-logic.md.DbuaOYGU.lean.js +0 -1
  670. data/docs/assets/chunks/@localSearchIndexroot.DJ8mocCj.js +0 -1
  671. data/docs/assets/chunks/VPLocalSearchBox.gF-Po_fz.js +0 -8
  672. data/docs/assets/chunks/framework.C4nOkCZI.js +0 -18
  673. data/docs/assets/chunks/theme.BjPAOJkz.js +0 -2
  674. data/docs/assets/cli.md.DDMar_51.js +0 -122
  675. data/docs/assets/cli.md.DDMar_51.lean.js +0 -1
  676. data/docs/assets/components.md.Ber8UBM0.js +0 -96
  677. data/docs/assets/components.md.Ber8UBM0.lean.js +0 -1
  678. data/docs/assets/configuration.md.DrJ6YVoZ.js +0 -78
  679. data/docs/assets/configuration.md.DrJ6YVoZ.lean.js +0 -1
  680. data/docs/assets/css.md.K5rOCOQY.js +0 -21
  681. data/docs/assets/css.md.K5rOCOQY.lean.js +0 -1
  682. data/docs/assets/custom-element-tests.md.DiLe-eFw.js +0 -69
  683. data/docs/assets/custom-element-tests.md.DiLe-eFw.lean.js +0 -1
  684. data/docs/assets/database-access.md.Dc8l2Plf.js +0 -63
  685. data/docs/assets/database-access.md.Dc8l2Plf.lean.js +0 -1
  686. data/docs/assets/database-schema.md.BJ_JhXmO.js +0 -70
  687. data/docs/assets/database-schema.md.BJ_JhXmO.lean.js +0 -1
  688. data/docs/assets/deployment.md.CHTx2eTR.js +0 -55
  689. data/docs/assets/deployment.md.CHTx2eTR.lean.js +0 -1
  690. data/docs/assets/dev-env-protocol.DysDAtnz.png +0 -0
  691. data/docs/assets/dev-environment.md.B1S9p5ZK.js +0 -16
  692. data/docs/assets/dev-environment.md.B1S9p5ZK.lean.js +0 -1
  693. data/docs/assets/dir-structure.md.D1T2kGwj.js +0 -46
  694. data/docs/assets/dir-structure.md.D1T2kGwj.lean.js +0 -1
  695. data/docs/assets/doc-conventions.md.CDnWaEFg.js +0 -1
  696. data/docs/assets/doc-conventions.md.CDnWaEFg.lean.js +0 -1
  697. data/docs/assets/end-to-end-tests.md.BJJdNDYL.js +0 -28
  698. data/docs/assets/end-to-end-tests.md.BJJdNDYL.lean.js +0 -1
  699. data/docs/assets/features.md.BDWxnyNO.js +0 -154
  700. data/docs/assets/features.md.BDWxnyNO.lean.js +0 -1
  701. data/docs/assets/flash-and-session.md.CUsMxoNl.js +0 -79
  702. data/docs/assets/flash-and-session.md.CUsMxoNl.lean.js +0 -1
  703. data/docs/assets/form-constraints.md.KlfXSKm2.js +0 -90
  704. data/docs/assets/form-constraints.md.KlfXSKm2.lean.js +0 -1
  705. data/docs/assets/forms.md.RK0zkhm0.js +0 -64
  706. data/docs/assets/forms.md.RK0zkhm0.lean.js +0 -1
  707. data/docs/assets/getting-started.md.CGJ44juQ.js +0 -31
  708. data/docs/assets/getting-started.md.CGJ44juQ.lean.js +0 -1
  709. data/docs/assets/handlers.md.C5tUwmmo.js +0 -54
  710. data/docs/assets/handlers.md.C5tUwmmo.lean.js +0 -1
  711. data/docs/assets/hooks.md.CoiYCKRc.js +0 -80
  712. data/docs/assets/hooks.md.CoiYCKRc.lean.js +0 -1
  713. data/docs/assets/i18n.md.DxkCKhUw.js +0 -23
  714. data/docs/assets/i18n.md.DxkCKhUw.lean.js +0 -1
  715. data/docs/assets/index.md.DnphWyQd.js +0 -1
  716. data/docs/assets/index.md.DnphWyQd.lean.js +0 -1
  717. data/docs/assets/initial-home-page.DNIaYmgP.png +0 -0
  718. data/docs/assets/instrumentation.md.BcxjC4jd.js +0 -90
  719. data/docs/assets/instrumentation.md.BcxjC4jd.lean.js +0 -1
  720. data/docs/assets/javascript.md.D6fxhaQb.js +0 -31
  721. data/docs/assets/javascript.md.D6fxhaQb.lean.js +0 -1
  722. data/docs/assets/jobs.md.Bi3qb3v6.js +0 -25
  723. data/docs/assets/jobs.md.Bi3qb3v6.lean.js +0 -1
  724. data/docs/assets/keyword-injection.md.CqLnnzIz.js +0 -21
  725. data/docs/assets/keyword-injection.md.CqLnnzIz.lean.js +0 -1
  726. data/docs/assets/layouts.md.HEbeK7Jr.js +0 -68
  727. data/docs/assets/layouts.md.HEbeK7Jr.lean.js +0 -1
  728. data/docs/assets/lsp.md.bE9dW8n9.js +0 -1
  729. data/docs/assets/lsp.md.bE9dW8n9.lean.js +0 -1
  730. data/docs/assets/markdown-examples.md.BPmtHlc-.js +0 -33
  731. data/docs/assets/markdown-examples.md.BPmtHlc-.lean.js +0 -1
  732. data/docs/assets/middleware.md.BhOIsg59.js +0 -20
  733. data/docs/assets/middleware.md.BhOIsg59.lean.js +0 -1
  734. data/docs/assets/new-post-editor.DrHr-5oh.png +0 -0
  735. data/docs/assets/new-post-home-page.Bm34lyMg.png +0 -0
  736. data/docs/assets/overview.md.BpWAgPFH.js +0 -1
  737. data/docs/assets/overview.md.BpWAgPFH.lean.js +0 -1
  738. data/docs/assets/pages.md.B3sQXpEd.js +0 -45
  739. data/docs/assets/pages.md.B3sQXpEd.lean.js +0 -1
  740. data/docs/assets/recipes_alternate-layouts.md.C1QzVkA7.js +0 -22
  741. data/docs/assets/recipes_alternate-layouts.md.C1QzVkA7.lean.js +0 -1
  742. data/docs/assets/recipes_authentication.md.CyvoIW82.js +0 -157
  743. data/docs/assets/recipes_authentication.md.CyvoIW82.lean.js +0 -1
  744. data/docs/assets/recipes_custom-flash.md.6gFqf2uL.js +0 -26
  745. data/docs/assets/recipes_custom-flash.md.6gFqf2uL.lean.js +0 -1
  746. data/docs/assets/recipes_dev-env-secrets.md.DC_jVY9U.js +0 -12
  747. data/docs/assets/recipes_dev-env-secrets.md.DC_jVY9U.lean.js +0 -1
  748. data/docs/assets/recipes_form-errors.md.B5ptSzMO.js +0 -66
  749. data/docs/assets/recipes_form-errors.md.B5ptSzMO.lean.js +0 -1
  750. data/docs/assets/recipes_indexed-forms.md.BYYQGW2C.js +0 -74
  751. data/docs/assets/recipes_indexed-forms.md.BYYQGW2C.lean.js +0 -1
  752. data/docs/assets/recipes_migrations.md.Cid7-3cu.js +0 -97
  753. data/docs/assets/recipes_migrations.md.Cid7-3cu.lean.js +0 -1
  754. data/docs/assets/recipes_text-field-component.md.VhOsCtKI.js +0 -101
  755. data/docs/assets/recipes_text-field-component.md.VhOsCtKI.lean.js +0 -1
  756. data/docs/assets/roadmap.md.DqC1Y7Zt.js +0 -1
  757. data/docs/assets/roadmap.md.DqC1Y7Zt.lean.js +0 -1
  758. data/docs/assets/routes.md.C1dgIBtD.js +0 -21
  759. data/docs/assets/routes.md.C1dgIBtD.lean.js +0 -1
  760. data/docs/assets/security.md.Jn4SY1uK.js +0 -1
  761. data/docs/assets/security.md.Jn4SY1uK.lean.js +0 -1
  762. data/docs/assets/seed-data.md.UZW0WxYN.js +0 -14
  763. data/docs/assets/seed-data.md.UZW0WxYN.lean.js +0 -1
  764. data/docs/assets/spa.qejUdp-5.png +0 -0
  765. data/docs/assets/space-time-continuum.md.D9rYGDFH.js +0 -1
  766. data/docs/assets/space-time-continuum.md.D9rYGDFH.lean.js +0 -1
  767. data/docs/assets/style.B1z60PPQ.css +0 -1
  768. data/docs/assets/styled-form-with-server-side-violations.Bjxd8Dpv.png +0 -0
  769. data/docs/assets/styled-form-with-violations.Bv_sa9tg.png +0 -0
  770. data/docs/assets/styled-home-page-with-posts.Dd4kG89D.png +0 -0
  771. data/docs/assets/styled-home-page.BzdI7dWz.png +0 -0
  772. data/docs/assets/tutorial.md.BX6f6l00.js +0 -27
  773. data/docs/assets/tutorial.md.BX6f6l00.lean.js +0 -1
  774. data/docs/assets/tutorials_01-intro.md.CzZ3kpF_.js +0 -708
  775. data/docs/assets/tutorials_01-intro.md.CzZ3kpF_.lean.js +0 -1
  776. data/docs/assets/tutorials_02-dialog.md.DE5WfCXI.js +0 -274
  777. data/docs/assets/tutorials_02-dialog.md.DE5WfCXI.lean.js +0 -1
  778. data/docs/assets/unit-tests.md.vDsdBbO_.js +0 -13
  779. data/docs/assets/unit-tests.md.vDsdBbO_.lean.js +0 -1
  780. data/docs/assets/welcome-to-brut.VSWzl17-.png +0 -0
  781. data/docs/assets/why.md.4WpxdrQ2.js +0 -1
  782. data/docs/assets/why.md.4WpxdrQ2.lean.js +0 -1
  783. data/docs/assets/workspace-protocol.C0gXsoDb.png +0 -0
  784. data/docs/assets.html +0 -47
  785. data/docs/brut-css/brut.css +0 -1
  786. data/docs/brut-css/brut.max.css +0 -22372
  787. data/docs/brut-css/classes/appearances.html +0 -783
  788. data/docs/brut-css/classes/background-colors.html +0 -3529
  789. data/docs/brut-css/classes/border-colors.html +0 -3529
  790. data/docs/brut-css/classes/borders.html +0 -2293
  791. data/docs/brut-css/classes/dimensions.html +0 -2581
  792. data/docs/brut-css/classes/flex.html +0 -917
  793. data/docs/brut-css/classes/foreground-colors.html +0 -3261
  794. data/docs/brut-css/classes/junk-drawer.html +0 -431
  795. data/docs/brut-css/classes/layout.html +0 -668
  796. data/docs/brut-css/classes/lists.html +0 -331
  797. data/docs/brut-css/classes/positioning.html +0 -1751
  798. data/docs/brut-css/classes/spacings.html +0 -2633
  799. data/docs/brut-css/classes/typography.html +0 -2206
  800. data/docs/brut-css/customization/advanced-configuration.html +0 -204
  801. data/docs/brut-css/customization/breakpoints.html +0 -227
  802. data/docs/brut-css/customization/design-system.html +0 -197
  803. data/docs/brut-css/customization/pseudo-classes.html +0 -228
  804. data/docs/brut-css/docs.css +0 -98
  805. data/docs/brut-css/getting-started/core-concepts.html +0 -234
  806. data/docs/brut-css/getting-started/installation.html +0 -190
  807. data/docs/brut-css/getting-started/overview.html +0 -210
  808. data/docs/brut-css/getting-started/simple-example.html +0 -285
  809. data/docs/brut-css/index.html +0 -193
  810. data/docs/brut-css/prism-twilight.min.css +0 -1
  811. data/docs/brut-css/properties/colors.html +0 -1548
  812. data/docs/brut-css/properties/spacings.html +0 -614
  813. data/docs/brut-css/properties/typography.html +0 -777
  814. data/docs/brut-js/api/AjaxSubmit.html +0 -452
  815. data/docs/brut-js/api/AjaxSubmit.js.html +0 -550
  816. data/docs/brut-js/api/Autosubmit.html +0 -192
  817. data/docs/brut-js/api/Autosubmit.js.html +0 -114
  818. data/docs/brut-js/api/BaseCustomElement.html +0 -1091
  819. data/docs/brut-js/api/BaseCustomElement.js.html +0 -312
  820. data/docs/brut-js/api/BrutCustomElements.html +0 -172
  821. data/docs/brut-js/api/BufferedLogger.html +0 -173
  822. data/docs/brut-js/api/ConfirmSubmit.html +0 -286
  823. data/docs/brut-js/api/ConfirmSubmit.js.html +0 -188
  824. data/docs/brut-js/api/ConfirmationDialog.html +0 -425
  825. data/docs/brut-js/api/ConfirmationDialog.js.html +0 -194
  826. data/docs/brut-js/api/ConstraintViolationMessage.html +0 -498
  827. data/docs/brut-js/api/ConstraintViolationMessage.js.html +0 -191
  828. data/docs/brut-js/api/ConstraintViolationMessages.html +0 -590
  829. data/docs/brut-js/api/ConstraintViolationMessages.js.html +0 -149
  830. data/docs/brut-js/api/CopyToClipboard.html +0 -345
  831. data/docs/brut-js/api/CopyToClipboard.js.html +0 -147
  832. data/docs/brut-js/api/Form.html +0 -291
  833. data/docs/brut-js/api/Form.js.html +0 -198
  834. data/docs/brut-js/api/I18nTranslation.html +0 -409
  835. data/docs/brut-js/api/I18nTranslation.js.html +0 -115
  836. data/docs/brut-js/api/LocaleDetection.html +0 -312
  837. data/docs/brut-js/api/LocaleDetection.js.html +0 -168
  838. data/docs/brut-js/api/Logger.html +0 -702
  839. data/docs/brut-js/api/Logger.js.html +0 -141
  840. data/docs/brut-js/api/Message.html +0 -238
  841. data/docs/brut-js/api/Message.js.html +0 -113
  842. data/docs/brut-js/api/PrefixedLogger.html +0 -369
  843. data/docs/brut-js/api/RichString.html +0 -1049
  844. data/docs/brut-js/api/RichString.js.html +0 -167
  845. data/docs/brut-js/api/Tabs.html +0 -295
  846. data/docs/brut-js/api/Tabs.js.html +0 -219
  847. data/docs/brut-js/api/Toast.html +0 -270
  848. data/docs/brut-js/api/Toast.js.html +0 -153
  849. data/docs/brut-js/api/Tracing.html +0 -277
  850. data/docs/brut-js/api/Tracing.js.html +0 -298
  851. data/docs/brut-js/api/external-CustomElementRegistry.html +0 -140
  852. data/docs/brut-js/api/external-Performance.html +0 -138
  853. data/docs/brut-js/api/external-Promise.html +0 -138
  854. data/docs/brut-js/api/external-ValidityState.html +0 -138
  855. data/docs/brut-js/api/external-Window.html +0 -233
  856. data/docs/brut-js/api/external-fetch.html +0 -138
  857. data/docs/brut-js/api/global.html +0 -400
  858. data/docs/brut-js/api/index.html +0 -168
  859. data/docs/brut-js/api/index.js.html +0 -184
  860. data/docs/brut-js/api/module-testing.html +0 -383
  861. data/docs/brut-js/api/scripts/linenumber.js +0 -25
  862. data/docs/brut-js/api/scripts/prettify/Apache-License-2.0.txt +0 -202
  863. data/docs/brut-js/api/scripts/prettify/lang-css.js +0 -2
  864. data/docs/brut-js/api/scripts/prettify/prettify.js +0 -28
  865. data/docs/brut-js/api/styles/jsdoc-default.css +0 -327
  866. data/docs/brut-js/api/styles/prettify-jsdoc.css +0 -111
  867. data/docs/brut-js/api/styles/prettify-tomorrow.css +0 -132
  868. data/docs/brut-js/api/testing.AssetMetadata.html +0 -172
  869. data/docs/brut-js/api/testing.AssetMetadataLoader.html +0 -171
  870. data/docs/brut-js/api/testing.CustomElementTest.html +0 -679
  871. data/docs/brut-js/api/testing.DOMCreator.html +0 -171
  872. data/docs/brut-js/api/testing_AssetMetadata.js.html +0 -86
  873. data/docs/brut-js/api/testing_AssetMetadataLoader.js.html +0 -76
  874. data/docs/brut-js/api/testing_CustomElementTest.js.html +0 -286
  875. data/docs/brut-js/api/testing_DOMCreator.js.html +0 -96
  876. data/docs/brut-js/api/testing_index.js.html +0 -99
  877. data/docs/brut-js.html +0 -40
  878. data/docs/business-logic.html +0 -29
  879. data/docs/cli.html +0 -150
  880. data/docs/components.html +0 -124
  881. data/docs/configuration.html +0 -106
  882. data/docs/css.html +0 -49
  883. data/docs/custom-element-tests.html +0 -97
  884. data/docs/database-access.html +0 -91
  885. data/docs/database-schema.html +0 -98
  886. data/docs/deployment.html +0 -83
  887. data/docs/dev-environment.html +0 -44
  888. data/docs/dir-structure.html +0 -74
  889. data/docs/doc-conventions.html +0 -29
  890. data/docs/end-to-end-tests.html +0 -56
  891. data/docs/favicon.ico +0 -0
  892. data/docs/features.html +0 -182
  893. data/docs/flash-and-session.html +0 -107
  894. data/docs/form-constraints.html +0 -118
  895. data/docs/forms.html +0 -92
  896. data/docs/getting-started.html +0 -59
  897. data/docs/handlers.html +0 -82
  898. data/docs/hashmap.json +0 -1
  899. data/docs/hooks.html +0 -108
  900. data/docs/i18n.html +0 -51
  901. data/docs/index.html +0 -29
  902. data/docs/instrumentation.html +0 -118
  903. data/docs/javascript.html +0 -59
  904. data/docs/jobs.html +0 -53
  905. data/docs/keyword-injection.html +0 -49
  906. data/docs/layouts.html +0 -96
  907. data/docs/lsp.html +0 -29
  908. data/docs/markdown-examples.html +0 -61
  909. data/docs/middleware.html +0 -48
  910. data/docs/overview.html +0 -29
  911. data/docs/pages.html +0 -73
  912. data/docs/recipes/alternate-layouts.html +0 -50
  913. data/docs/recipes/authentication.html +0 -185
  914. data/docs/recipes/custom-flash.html +0 -54
  915. data/docs/recipes/dev-env-secrets.html +0 -40
  916. data/docs/recipes/form-errors.html +0 -94
  917. data/docs/recipes/indexed-forms.html +0 -102
  918. data/docs/recipes/migrations.html +0 -125
  919. data/docs/recipes/text-field-component.html +0 -129
  920. data/docs/roadmap.html +0 -29
  921. data/docs/routes.html +0 -49
  922. data/docs/security.html +0 -29
  923. data/docs/seed-data.html +0 -42
  924. data/docs/space-time-continuum.html +0 -29
  925. data/docs/tutorial.html +0 -55
  926. data/docs/tutorials/01-intro.html +0 -736
  927. data/docs/tutorials/02-dialog.html +0 -302
  928. data/docs/unit-tests.html +0 -41
  929. data/docs/vp-icons.css +0 -1
  930. data/docs/why.html +0 -29
  931. data/docs-todo.md +0 -32
  932. data/dx/bash_customizations +0 -6
  933. data/dx/build +0 -73
  934. data/dx/build.pre +0 -15
  935. data/dx/docker-compose.env +0 -22
  936. data/dx/dx.sh.lib +0 -24
  937. data/dx/exec +0 -75
  938. data/dx/setupkit.sh.lib +0 -144
  939. data/dx/show-help-in-app-container-then-wait.sh +0 -38
  940. data/lib/brut/cli/app.rb +0 -238
  941. data/lib/brut/cli/app_runner.rb +0 -252
  942. data/lib/brut/cli/command.rb +0 -258
  943. data/lib/brut/cli/execution_results.rb +0 -119
  944. data/lib/brut/front_end/layouts/_internal.html.erb +0 -68
  945. data/lib/brut/front_end/pages/_missing_page.html.erb +0 -17
  946. data/mkbrut/.gitignore +0 -16
  947. data/mkbrut/CODE_OF_CONDUCT.txt +0 -100
  948. data/mkbrut/Gemfile +0 -3
  949. data/mkbrut/Gemfile.lock +0 -20
  950. data/mkbrut/LICENSE.txt +0 -370
  951. data/mkbrut/README.md +0 -145
  952. data/mkbrut/Rakefile +0 -2
  953. data/mkbrut/bin/build +0 -36
  954. data/mkbrut/bin/ci +0 -19
  955. data/mkbrut/bin/docs +0 -19
  956. data/mkbrut/bin/publish +0 -129
  957. data/mkbrut/bin/rake +0 -16
  958. data/mkbrut/bin/setup +0 -30
  959. data/mkbrut/brut-welcome.png +0 -0
  960. data/mkbrut/deploy/.dockerignore +0 -2
  961. data/mkbrut/deploy/Dockerfile +0 -25
  962. data/mkbrut/dx +0 -1
  963. data/mkbrut/exe/mkbrut +0 -5
  964. data/mkbrut/lib/mkbrut/app_name.rb +0 -29
  965. data/mkbrut/lib/mkbrut/app_options.rb +0 -36
  966. data/mkbrut/lib/mkbrut/cli.rb +0 -189
  967. data/mkbrut/lib/mkbrut/erb_binding_delegate.rb +0 -20
  968. data/mkbrut/lib/mkbrut/ops.rb +0 -17
  969. data/mkbrut/lib/mkbrut/organization.rb +0 -5
  970. data/mkbrut/lib/mkbrut/segments.rb +0 -8
  971. data/mkbrut/lib/mkbrut/version.rb +0 -3
  972. data/mkbrut/lib/mkbrut.rb +0 -20
  973. data/mkbrut/mkbrut.gemspec +0 -34
  974. data/mkbrut/templates/Base/app/src/front_end/images/LogoPylon.png +0 -0
  975. data/mkbrut/templates/Base/bin/build-assets +0 -7
  976. data/mkbrut/templates/Base/bin/ci +0 -39
  977. data/mkbrut/templates/Base/bin/db +0 -9
  978. data/mkbrut/templates/Base/bin/scaffold +0 -9
  979. data/mkbrut/templates/Base/bin/setup +0 -287
  980. data/mkbrut/templates/Base/bin/test +0 -9
  981. data/mkbrut/templates/Base/bin/test-server +0 -29
  982. data/mkbrut/templates/Base/dx/prune +0 -19
  983. data/mkbrut/templates/Base/dx/start +0 -30
  984. data/mkbrut/templates/Base/dx/stop +0 -23
  985. data/mkbrut/templates/segments/Heroku/deploy/heroku_config.rb +0 -27
  986. data/specs/brut/front_end/forms/input.spec.rb +0 -978
  987. data/specs/brut/front_end/forms/radio_button_group_input.spec.rb +0 -54
  988. data/specs/brut/front_end/forms/select_input.spec.rb +0 -54
  989. data/specs/brut/instrumentation/methods.spec.rb +0 -399
  990. data/specs/brut/junk_drawer.spec.rb +0 -79
  991. data/specs/brut/tui/ansi_escape_code.spec.rb +0 -30
  992. data/specs/brut/tui/event_loop.spec.rb +0 -70
  993. data/specs/brut/tui/events/base_event.spec.rb +0 -26
  994. data/specs/brut/tui/events/event_bus.spec.rb +0 -141
  995. data/specs/brut/tui/events/exception.spec.rb +0 -19
  996. data/specs/brut/tui/events/test_event.rb +0 -5
  997. data/specs/spec_helper.rb +0 -31
  998. data/specs/support/matchers/have_constraint_violation.rb +0 -23
  999. data/specs/support/matchers.rb +0 -5
  1000. data/specs/support.rb +0 -3
  1001. /data/{mkbrut/lib/mkbrut → lib/brut/cli/apps/new}/prefixed_io.rb +0 -0
  1002. /data/{mkbrut/templates → templates}/Base/.dockerignore +0 -0
  1003. /data/{mkbrut/templates → templates}/Base/.env.development.erb +0 -0
  1004. /data/{mkbrut/templates → templates}/Base/.env.test.erb +0 -0
  1005. /data/{mkbrut/templates → templates}/Base/.gitignore +0 -0
  1006. /data/{mkbrut/templates → templates}/Base/.projections.json +0 -0
  1007. /data/{mkbrut/templates → templates}/Base/Dockerfile.dx +0 -0
  1008. /data/{mkbrut/templates → templates}/Base/Gemfile.erb +0 -0
  1009. /data/{mkbrut/templates → templates}/Base/Procfile.development +0 -0
  1010. /data/{mkbrut/templates → templates}/Base/Procfile.test +0 -0
  1011. /data/{mkbrut/templates → templates}/Base/README.md +0 -0
  1012. /data/{mkbrut/templates → templates}/Base/README.md.erb +0 -0
  1013. /data/{mkbrut/templates → templates}/Base/app/bootstrap.rb +0 -0
  1014. /data/{mkbrut/templates → templates}/Base/app/config/i18n/en/1_defaults.rb +0 -0
  1015. /data/{mkbrut/templates → templates}/Base/app/config/i18n/en/2_app.rb +0 -0
  1016. /data/{mkbrut/templates → templates}/Base/app/public/static/manifest.json.erb +0 -0
  1017. /data/{mkbrut/templates → templates}/Base/app/src/app.rb.erb +0 -0
  1018. /data/{mkbrut/templates → templates}/Base/app/src/back_end/data_models/app_data_model.rb +0 -0
  1019. /data/{mkbrut/templates → templates}/Base/app/src/back_end/data_models/db.rb +0 -0
  1020. /data/{mkbrut/templates → templates}/Base/app/src/back_end/data_models/migrations/20240101130000_citext.rb +0 -0
  1021. /data/{mkbrut/templates → templates}/Base/app/src/back_end/data_models/seed/seed_data.rb +0 -0
  1022. /data/{mkbrut/templates → templates}/Base/app/src/front_end/components/app_component.rb +0 -0
  1023. /data/{mkbrut/templates → templates}/Base/app/src/front_end/components/custom_element_registration.rb.erb +0 -0
  1024. /data/{mkbrut/templates → templates}/Base/app/src/front_end/css/index.css +0 -0
  1025. /data/{mkbrut/templates → templates}/Base/app/src/front_end/css/svgs.css +0 -0
  1026. /data/{mkbrut/templates → templates}/Base/app/src/front_end/forms/app_form.rb +0 -0
  1027. /data/{mkbrut/templates → templates}/Base/app/src/front_end/handlers/app_handler.rb +0 -0
  1028. /data/{brutrb.com → templates/Base/app/src/front_end}/images/LogoPylon.png +0 -0
  1029. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/LogoTransit.png +0 -0
  1030. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/apple-touch-icon-120x120.png +0 -0
  1031. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/apple-touch-icon-152x152.png +0 -0
  1032. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/apple-touch-icon-167x167.png +0 -0
  1033. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/apple-touch-icon-180x180.png +0 -0
  1034. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/favicon.ico +0 -0
  1035. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/icon.png +0 -0
  1036. /data/{mkbrut/templates → templates}/Base/app/src/front_end/images/mkicons.sh +0 -0
  1037. /data/{mkbrut/templates → templates}/Base/app/src/front_end/js/index.js +0 -0
  1038. /data/{mkbrut/templates → templates}/Base/app/src/front_end/layouts/blank_layout.rb +0 -0
  1039. /data/{mkbrut/templates → templates}/Base/app/src/front_end/layouts/default_layout.rb.erb +0 -0
  1040. /data/{mkbrut/templates → templates}/Base/app/src/front_end/pages/app_page.rb +0 -0
  1041. /data/{mkbrut/templates → templates}/Base/app/src/front_end/pages/home_page.rb +0 -0
  1042. /data/{mkbrut/templates → templates}/Base/app/src/front_end/support/app_session.rb +0 -0
  1043. /data/{mkbrut/templates → templates}/Base/app/src/front_end/svgs/README.md +0 -0
  1044. /data/{mkbrut/templates → templates}/Base/app/src/front_end/svgs/comment-button.svg +0 -0
  1045. /data/{mkbrut/templates → templates}/Base/bin/README.md.erb +0 -0
  1046. /data/{mkbrut/templates → templates}/Base/bin/console +0 -0
  1047. /data/{mkbrut/templates → templates}/Base/bin/dbconsole +0 -0
  1048. /data/{mkbrut/templates → templates}/Base/bin/dev +0 -0
  1049. /data/{mkbrut/templates → templates}/Base/bin/run +0 -0
  1050. /data/{mkbrut/templates → templates}/Base/bin/run.run +0 -0
  1051. /data/{mkbrut/templates → templates}/Base/bin/startup-message +0 -0
  1052. /data/{mkbrut/templates → templates}/Base/config.ru +0 -0
  1053. /data/{mkbrut/templates → templates}/Base/docker-compose.dx.yml +0 -0
  1054. /data/{mkbrut/templates → templates}/Base/dx/README.md +0 -0
  1055. /data/{mkbrut/templates → templates}/Base/dx/bash_customizations +0 -0
  1056. /data/{mkbrut/templates → templates}/Base/dx/bash_customizations.local +0 -0
  1057. /data/{mkbrut/templates → templates}/Base/dx/build +0 -0
  1058. /data/{mkbrut/templates → templates}/Base/dx/dx.sh.lib +0 -0
  1059. /data/{mkbrut/templates → templates}/Base/dx/exec +0 -0
  1060. /data/{dx → templates/Base/dx}/prune +0 -0
  1061. /data/{mkbrut/templates → templates}/Base/dx/show-help-in-app-container-then-wait.sh +0 -0
  1062. /data/{dx → templates/Base/dx}/start +0 -0
  1063. /data/{dx → templates/Base/dx}/stop +0 -0
  1064. /data/{mkbrut/templates → templates}/Base/package.json.erb +0 -0
  1065. /data/{mkbrut/templates → templates}/Base/puma.config.rb +0 -0
  1066. /data/{mkbrut/templates → templates}/Base/specs/e2e/home_page.spec.rb.erb +0 -0
  1067. /data/{mkbrut/templates → templates}/Base/specs/front_end/js/SpecHelper.js +0 -0
  1068. /data/{mkbrut/templates → templates}/Base/specs/front_end/pages/home_page.spec.rb +0 -0
  1069. /data/{mkbrut/templates → templates}/Base/specs/lint_factories.spec.rb +0 -0
  1070. /data/{mkbrut/templates → templates}/Base/specs/spec_helper.rb +0 -0
  1071. /data/{mkbrut/templates → templates}/Base/specs/support.rb +0 -0
  1072. /data/{mkbrut/templates → templates}/segments/BareBones/app/src/front_end/handlers/trigger_exception_handler.rb +0 -0
  1073. /data/{mkbrut/templates → templates}/segments/BareBones/app/src/front_end/js/Example.js.erb +0 -0
  1074. /data/{mkbrut/templates → templates}/segments/BareBones/specs/front_end/handlers/trigger_exception_handler.spec.rb +0 -0
  1075. /data/{mkbrut/templates → templates}/segments/BareBones/specs/front_end/js/Example.spec.js.erb +0 -0
  1076. /data/{mkbrut/templates → templates}/segments/Demo/app/src/back_end/data_models/db/guestbook_message.rb +0 -0
  1077. /data/{mkbrut/templates → templates}/segments/Demo/app/src/back_end/data_models/migrations/20250628194124_guestbook.rb +0 -0
  1078. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/components/flash_component.rb +0 -0
  1079. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/css/constraint-violations.css +0 -0
  1080. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/fonts/monaspace-xenon.ttf +0 -0
  1081. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/forms/guestbook_message_form.rb +0 -0
  1082. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/handlers/guestbook_message_handler.rb +0 -0
  1083. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/pages/guestbook_page/message_component.rb +0 -0
  1084. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/pages/guestbook_page.rb +0 -0
  1085. /data/{mkbrut/templates → templates}/segments/Demo/app/src/front_end/pages/new_guestbook_message_page.rb +0 -0
  1086. /data/{mkbrut/templates → templates}/segments/Demo/specs/back_end/data_models/db/guestbook_message.spec.rb +0 -0
  1087. /data/{mkbrut/templates → templates}/segments/Demo/specs/e2e/guest_message.spec.rb +0 -0
  1088. /data/{mkbrut/templates → templates}/segments/Demo/specs/factories/db/guestbook_message.factory.rb +0 -0
  1089. /data/{mkbrut/templates → templates}/segments/Demo/specs/front_end/components/flash_component.spec.rb +0 -0
  1090. /data/{mkbrut/templates → templates}/segments/Demo/specs/front_end/handlers/guestbook_message_handler.spec.rb +0 -0
  1091. /data/{mkbrut/templates → templates}/segments/Demo/specs/front_end/pages/guestbook_page/message_component.spec.rb +0 -0
  1092. /data/{mkbrut/templates → templates}/segments/Demo/specs/front_end/pages/guestbook_page.spec.rb +0 -0
  1093. /data/{mkbrut/templates → templates}/segments/Demo/specs/front_end/pages/new_guestbook_message_page.spec.rb +0 -0
  1094. /data/{mkbrut/templates → templates}/segments/Heroku/bin/deploy +0 -0
  1095. /data/{mkbrut/templates → templates}/segments/Heroku/deploy/docker-entrypoint +0 -0
  1096. /data/{mkbrut/templates → templates}/segments/Sidekiq/app/boot_sidekiq.rb +0 -0
  1097. /data/{mkbrut/templates → templates}/segments/Sidekiq/app/config/sidekiq.yml +0 -0
  1098. /data/{mkbrut/templates → templates}/segments/Sidekiq/app/src/back_end/jobs/app_job.rb +0 -0
  1099. /data/{mkbrut/templates → templates}/segments/Sidekiq/app/src/back_end/jobs/example_job.rb +0 -0
  1100. /data/{mkbrut/templates → templates}/segments/Sidekiq/app/src/back_end/segments/sidekiq_segment.rb +0 -0
  1101. /data/{mkbrut/templates → templates}/segments/Sidekiq/bin/run.sidekiq +0 -0
  1102. /data/{mkbrut/templates → templates}/segments/Sidekiq/specs/back_end/jobs/example_job.spec.rb +0 -0
  1103. /data/{mkbrut/templates → templates}/segments/Sidekiq/specs/integration/sidekiq_works.spec.rb +0 -0
@@ -1,1071 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Class: Brut::Framework::Config
8
-
9
- &mdash; Documentation by YARD 0.9.37
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../../css/style.css" type="text/css" />
14
-
15
- <link rel="stylesheet" href="../../css/common.css" type="text/css" />
16
-
17
- <script type="text/javascript">
18
- pathId = "Brut::Framework::Config";
19
- relpath = '../../';
20
- </script>
21
-
22
-
23
- <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
24
-
25
- <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="../../class_list.html?1"></iframe>
32
- <div id="resizer"></div>
33
- </div>
34
-
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="../../_index.html">Index (C)</a> &raquo;
40
- <span class='title'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Framework.html" title="Brut::Framework (module)">Framework</a></span></span>
41
- &raquo;
42
- <span class="title">Config</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="../../class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <div id="content"><h1>Class: Brut::Framework::Config
63
-
64
-
65
-
66
- </h1>
67
- <div class="box_info">
68
-
69
- <dl>
70
- <dt>Inherits:</dt>
71
- <dd>
72
- <span class="inheritName">Object</span>
73
-
74
- <ul class="fullTree">
75
- <li>Object</li>
76
-
77
- <li class="next">Brut::Framework::Config</li>
78
-
79
- </ul>
80
- <a href="#" class="inheritanceTree">show all</a>
81
-
82
- </dd>
83
- </dl>
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
- <dl>
96
- <dt>Defined in:</dt>
97
- <dd>lib/brut/framework/config.rb</dd>
98
- </dl>
99
-
100
- </div>
101
-
102
- <h2>Overview</h2><div class="docstring">
103
- <div class="discussion">
104
- <p>Holds configuration for the framework and your app. In general, you
105
- should not interact with this class, however it's source code is a good
106
- reference for what is configured by default by Brut.</p>
107
-
108
-
109
- </div>
110
- </div>
111
- <div class="tags">
112
-
113
-
114
- </div>
115
-
116
-
117
-
118
-
119
-
120
-
121
-
122
- <h2>
123
- Instance Method Summary
124
- <small><a href="#" class="summary_toggle">collapse</a></small>
125
- </h2>
126
-
127
- <ul class="summary">
128
-
129
- <li class="public ">
130
- <span class="summary_signature">
131
-
132
- <a href="#configure!-instance_method" title="#configure! (instance method)">#<strong>configure!</strong> &#x21d2; Object </a>
133
-
134
-
135
-
136
- </span>
137
-
138
-
139
-
140
-
141
-
142
-
143
-
144
-
145
-
146
- <span class="summary_desc"><div class='inline'><p>Configures all defaults.</p>
147
- </div></span>
148
-
149
- </li>
150
-
151
-
152
- </ul>
153
-
154
-
155
-
156
-
157
- <div id="instance_method_details" class="method_details_list">
158
- <h2>Instance Method Details</h2>
159
-
160
-
161
- <div class="method_details first">
162
- <h3 class="signature first" id="configure!-instance_method">
163
-
164
- #<strong>configure!</strong> &#x21d2; <tt>Object</tt>
165
-
166
-
167
-
168
-
169
-
170
- </h3><div class="docstring">
171
- <div class="discussion">
172
- <p>Configures all defaults. In general, this attempts to be lazy in
173
- setting things up, so calling this should not attempt to make a
174
- connection to your database.</p>
175
-
176
-
177
- </div>
178
- </div>
179
- <div class="tags">
180
-
181
-
182
- </div><table class="source_code">
183
- <tr>
184
- <td>
185
- <pre class="lines">
186
-
187
-
188
- 12
189
- 13
190
- 14
191
- 15
192
- 16
193
- 17
194
- 18
195
- 19
196
- 20
197
- 21
198
- 22
199
- 23
200
- 24
201
- 25
202
- 26
203
- 27
204
- 28
205
- 29
206
- 30
207
- 31
208
- 32
209
- 33
210
- 34
211
- 35
212
- 36
213
- 37
214
- 38
215
- 39
216
- 40
217
- 41
218
- 42
219
- 43
220
- 44
221
- 45
222
- 46
223
- 47
224
- 48
225
- 49
226
- 50
227
- 51
228
- 52
229
- 53
230
- 54
231
- 55
232
- 56
233
- 57
234
- 58
235
- 59
236
- 60
237
- 61
238
- 62
239
- 63
240
- 64
241
- 65
242
- 66
243
- 67
244
- 68
245
- 69
246
- 70
247
- 71
248
- 72
249
- 73
250
- 74
251
- 75
252
- 76
253
- 77
254
- 78
255
- 79
256
- 80
257
- 81
258
- 82
259
- 83
260
- 84
261
- 85
262
- 86
263
- 87
264
- 88
265
- 89
266
- 90
267
- 91
268
- 92
269
- 93
270
- 94
271
- 95
272
- 96
273
- 97
274
- 98
275
- 99
276
- 100
277
- 101
278
- 102
279
- 103
280
- 104
281
- 105
282
- 106
283
- 107
284
- 108
285
- 109
286
- 110
287
- 111
288
- 112
289
- 113
290
- 114
291
- 115
292
- 116
293
- 117
294
- 118
295
- 119
296
- 120
297
- 121
298
- 122
299
- 123
300
- 124
301
- 125
302
- 126
303
- 127
304
- 128
305
- 129
306
- 130
307
- 131
308
- 132
309
- 133
310
- 134
311
- 135
312
- 136
313
- 137
314
- 138
315
- 139
316
- 140
317
- 141
318
- 142
319
- 143
320
- 144
321
- 145
322
- 146
323
- 147
324
- 148
325
- 149
326
- 150
327
- 151
328
- 152
329
- 153
330
- 154
331
- 155
332
- 156
333
- 157
334
- 158
335
- 159
336
- 160
337
- 161
338
- 162
339
- 163
340
- 164
341
- 165
342
- 166
343
- 167
344
- 168
345
- 169
346
- 170
347
- 171
348
- 172
349
- 173
350
- 174
351
- 175
352
- 176
353
- 177
354
- 178
355
- 179
356
- 180
357
- 181
358
- 182
359
- 183
360
- 184
361
- 185
362
- 186
363
- 187
364
- 188
365
- 189
366
- 190
367
- 191
368
- 192
369
- 193
370
- 194
371
- 195
372
- 196
373
- 197
374
- 198
375
- 199
376
- 200
377
- 201
378
- 202
379
- 203
380
- 204
381
- 205
382
- 206
383
- 207
384
- 208
385
- 209
386
- 210
387
- 211
388
- 212
389
- 213
390
- 214
391
- 215
392
- 216
393
- 217
394
- 218
395
- 219
396
- 220
397
- 221
398
- 222
399
- 223
400
- 224
401
- 225
402
- 226
403
- 227
404
- 228
405
- 229
406
- 230
407
- 231
408
- 232
409
- 233
410
- 234
411
- 235
412
- 236
413
- 237
414
- 238
415
- 239
416
- 240
417
- 241
418
- 242
419
- 243
420
- 244
421
- 245
422
- 246
423
- 247
424
- 248
425
- 249
426
- 250
427
- 251
428
- 252
429
- 253
430
- 254
431
- 255
432
- 256
433
- 257
434
- 258
435
- 259
436
- 260
437
- 261
438
- 262
439
- 263
440
- 264
441
- 265
442
- 266
443
- 267
444
- 268
445
- 269
446
- 270
447
- 271
448
- 272
449
- 273
450
- 274
451
- 275
452
- 276
453
- 277
454
- 278
455
- 279
456
- 280
457
- 281
458
- 282
459
- 283
460
- 284
461
- 285
462
- 286
463
- 287
464
- 288
465
- 289
466
- 290
467
- 291
468
- 292
469
- 293
470
- 294
471
- 295
472
- 296
473
- 297
474
- 298
475
- 299
476
- 300
477
- 301
478
- 302
479
- 303
480
- 304
481
- 305
482
- 306
483
- 307
484
- 308
485
- 309
486
- 310
487
- 311
488
- 312
489
- 313
490
- 314
491
- 315
492
- 316
493
- 317
494
- 318
495
- 319
496
- 320
497
- 321
498
- 322
499
- 323
500
- 324
501
- 325
502
- 326
503
- 327
504
- 328
505
- 329
506
- 330
507
- 331
508
- 332
509
- 333
510
- 334
511
- 335
512
- 336
513
- 337
514
- 338
515
- 339
516
- 340
517
- 341
518
- 342
519
- 343
520
- 344
521
- 345
522
- 346
523
- 347
524
- 348
525
- 349
526
- 350
527
- 351
528
- 352
529
- 353
530
- 354
531
- 355
532
- 356
533
- 357
534
- 358
535
- 359
536
- 360
537
- 361
538
- 362
539
- 363
540
- 364
541
- 365
542
- 366
543
- 367
544
- 368
545
- 369
546
- 370
547
- 371
548
- 372
549
- 373
550
- 374
551
- 375
552
- 376
553
- 377
554
- 378
555
- 379
556
- 380
557
- 381
558
- 382
559
- 383
560
- 384
561
- 385
562
- 386
563
- 387
564
- 388
565
- 389
566
- 390
567
- 391
568
- 392
569
- 393
570
- 394
571
- 395
572
- 396
573
- 397
574
- 398
575
- 399
576
- 400
577
- 401
578
- 402
579
- 403
580
- 404
581
- 405
582
- 406
583
- 407
584
- 408
585
- 409
586
- 410
587
- 411
588
- 412
589
- 413
590
- 414
591
- 415
592
- 416
593
- 417
594
- 418
595
- 419
596
- 420
597
- 421
598
- 422
599
- 423
600
- 424
601
- 425
602
- 426
603
- 427
604
- 428
605
- 429
606
- 430
607
- 431
608
- 432
609
- 433
610
- 434
611
- 435
612
- 436
613
- 437
614
- 438
615
- 439
616
- 440
617
- 441
618
- 442</pre>
619
- </td>
620
- <td>
621
- <pre class="code"><span class="info file"># File 'lib/brut/framework/config.rb', line 12</span>
622
-
623
- <span class='kw'>def</span> <span class='id identifier rubyid_configure!'>configure!</span>
624
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='period'>.</span><span class='id identifier rubyid_container'><span class='object_link'><a href="../../Brut.html#container-class_method" title="Brut.container (method)">container</a></span></span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_c'>c</span><span class='op'>|</span>
625
- <span class='comment'># Brut Stuff that should not be changed
626
- </span>
627
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
628
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>tmp_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
629
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Temporary directory where ephemeral files can do</span><span class='tstring_end'>&quot;</span></span>
630
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_root'>project_root</span><span class='op'>|</span>
631
- <span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>tmp</span><span class='tstring_end'>&quot;</span></span>
632
- <span class='kw'>end</span>
633
-
634
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
635
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>project_env</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
636
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Framework.html" title="Brut::Framework (module)">Framework</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ProjectEnvironment.html" title="Brut::Framework::ProjectEnvironment (class)">ProjectEnvironment</a></span></span><span class='comma'>,</span>
637
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>The environment of the running app, e.g. dev/test/prod</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
638
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Framework.html" title="Brut::Framework (module)">Framework</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ProjectEnvironment.html" title="Brut::Framework::ProjectEnvironment (class)">ProjectEnvironment</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="ProjectEnvironment.html#initialize-instance_method" title="Brut::Framework::ProjectEnvironment#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>RACK_ENV</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
639
- <span class='rparen'>)</span>
640
-
641
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
642
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>log_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
643
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path where log files may be written</span><span class='tstring_end'>&quot;</span></span>
644
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_root'>project_root</span><span class='op'>|</span>
645
- <span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>logs</span><span class='tstring_end'>&quot;</span></span>
646
- <span class='kw'>end</span>
647
-
648
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
649
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>public_root_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
650
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of all public files</span><span class='tstring_end'>&quot;</span></span>
651
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_root'>project_root</span><span class='op'>|</span>
652
- <span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>app</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>public</span><span class='tstring_end'>&quot;</span></span>
653
- <span class='kw'>end</span>
654
-
655
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
656
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>images_root_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
657
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of all images</span><span class='tstring_end'>&quot;</span></span>
658
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_public_root_dir'>public_root_dir</span><span class='op'>|</span>
659
- <span class='id identifier rubyid_public_root_dir'>public_root_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>static</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>images</span><span class='tstring_end'>&quot;</span></span>
660
- <span class='kw'>end</span>
661
-
662
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
663
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>css_bundle_output_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
664
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path where bundled CSS is written for use in web pages</span><span class='tstring_end'>&quot;</span></span>
665
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_public_root_dir'>public_root_dir</span><span class='op'>|</span>
666
- <span class='id identifier rubyid_public_root_dir'>public_root_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>css</span><span class='tstring_end'>&quot;</span></span>
667
- <span class='kw'>end</span>
668
-
669
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
670
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>js_bundle_output_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
671
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path where bundled JS is written for use in web pages</span><span class='tstring_end'>&quot;</span></span>
672
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_public_root_dir'>public_root_dir</span><span class='op'>|</span>
673
- <span class='id identifier rubyid_public_root_dir'>public_root_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>js</span><span class='tstring_end'>&quot;</span></span>
674
- <span class='kw'>end</span>
675
-
676
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
677
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>database_url</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
678
- <span class='const'>String</span><span class='comma'>,</span>
679
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>URL to the primary database - generally avoid this and use sequel_db_handle</span><span class='tstring_end'>&quot;</span></span>
680
- <span class='rparen'>)</span> <span class='kw'>do</span>
681
- <span class='const'>ENV</span><span class='period'>.</span><span class='id identifier rubyid_fetch'>fetch</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>DATABASE_URL</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
682
- <span class='kw'>end</span>
683
-
684
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
685
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sequel_db_handle</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
686
- <span class='const'>Object</span><span class='comma'>,</span>
687
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Handle to the database</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
688
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_database_url'>database_url</span><span class='op'>|</span>
689
- <span class='const'><span class='object_link'><a href="../../Sequel.html" title="Sequel (module)">Sequel</a></span></span><span class='period'>.</span><span class='id identifier rubyid_connect'>connect</span><span class='lparen'>(</span><span class='id identifier rubyid_database_url'>database_url</span><span class='rparen'>)</span>
690
- <span class='kw'>end</span>
691
-
692
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
693
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>app_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
694
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to root of where all the app&#39;s source files are</span><span class='tstring_end'>&quot;</span></span>
695
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_root'>project_root</span><span class='op'>|</span>
696
- <span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>app</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>src</span><span class='tstring_end'>&quot;</span></span>
697
- <span class='kw'>end</span>
698
-
699
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
700
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>app_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
701
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to root of where all the app&#39;s specs/tests are</span><span class='tstring_end'>&quot;</span></span>
702
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_root'>project_root</span><span class='op'>|</span>
703
- <span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>specs</span><span class='tstring_end'>&quot;</span></span>
704
- <span class='kw'>end</span>
705
-
706
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
707
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>e2e_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
708
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of all end-to-end tests</span><span class='tstring_end'>&quot;</span></span>
709
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span><span class='op'>|</span>
710
- <span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>e2e</span><span class='tstring_end'>&quot;</span></span>
711
- <span class='kw'>end</span>
712
-
713
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
714
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>js_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
715
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to root of where all JS-based specs/tests are</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
716
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span><span class='op'>|</span>
717
- <span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>front_end</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>js</span><span class='tstring_end'>&quot;</span></span>
718
- <span class='kw'>end</span>
719
-
720
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
721
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>front_end_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
722
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of the front end layer for the app</span><span class='tstring_end'>&quot;</span></span>
723
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_src_dir'>app_src_dir</span><span class='op'>|</span>
724
- <span class='id identifier rubyid_app_src_dir'>app_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>front_end</span><span class='tstring_end'>&quot;</span></span>
725
- <span class='kw'>end</span>
726
-
727
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
728
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>components_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
729
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where components classes and templates are stored</span><span class='tstring_end'>&quot;</span></span>
730
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
731
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>components</span><span class='tstring_end'>&quot;</span></span>
732
- <span class='kw'>end</span>
733
-
734
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
735
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>components_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
736
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where tests of components classes are stored</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
737
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span><span class='op'>|</span>
738
- <span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>front_end</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>components</span><span class='tstring_end'>&quot;</span></span>
739
- <span class='kw'>end</span>
740
-
741
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
742
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>forms_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
743
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where form classes are stored</span><span class='tstring_end'>&quot;</span></span>
744
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
745
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>forms</span><span class='tstring_end'>&quot;</span></span>
746
- <span class='kw'>end</span>
747
-
748
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
749
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handlers_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
750
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where handlers are stored</span><span class='tstring_end'>&quot;</span></span>
751
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
752
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handlers</span><span class='tstring_end'>&quot;</span></span>
753
- <span class='kw'>end</span>
754
-
755
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
756
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handlers_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
757
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where tests of handler classes are stored</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
758
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span><span class='op'>|</span>
759
- <span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>front_end</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handlers</span><span class='tstring_end'>&quot;</span></span>
760
- <span class='kw'>end</span>
761
-
762
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
763
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>svgs_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
764
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where svgs are stored</span><span class='tstring_end'>&quot;</span></span>
765
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
766
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>svgs</span><span class='tstring_end'>&quot;</span></span>
767
- <span class='kw'>end</span>
768
-
769
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
770
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>images_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
771
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where images are stored</span><span class='tstring_end'>&quot;</span></span>
772
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
773
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>images</span><span class='tstring_end'>&quot;</span></span>
774
- <span class='kw'>end</span>
775
-
776
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_required_path'>store_required_path</span><span class='lparen'>(</span>
777
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>pages_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
778
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where page classes and templates are stored</span><span class='tstring_end'>&quot;</span></span>
779
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
780
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>pages</span><span class='tstring_end'>&quot;</span></span>
781
- <span class='kw'>end</span>
782
-
783
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_required_path'>store_required_path</span><span class='lparen'>(</span>
784
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>pages_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
785
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where tests of page classes are stored</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
786
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span><span class='op'>|</span>
787
- <span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>front_end</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>pages</span><span class='tstring_end'>&quot;</span></span>
788
- <span class='kw'>end</span>
789
-
790
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_required_path'>store_required_path</span><span class='lparen'>(</span>
791
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>layouts_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
792
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where layout classes and templates are stored</span><span class='tstring_end'>&quot;</span></span>
793
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
794
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>layouts</span><span class='tstring_end'>&quot;</span></span>
795
- <span class='kw'>end</span>
796
-
797
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_required_path'>store_required_path</span><span class='lparen'>(</span>
798
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>js_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
799
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where JS files are</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
800
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span><span class='op'>|</span>
801
- <span class='id identifier rubyid_front_end_src_dir'>front_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>js</span><span class='tstring_end'>&quot;</span></span>
802
- <span class='kw'>end</span>
803
-
804
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
805
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>back_end_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
806
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of the back end layer for the app</span><span class='tstring_end'>&quot;</span></span>
807
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_src_dir'>app_src_dir</span><span class='op'>|</span>
808
- <span class='id identifier rubyid_app_src_dir'>app_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>back_end</span><span class='tstring_end'>&quot;</span></span>
809
- <span class='kw'>end</span>
810
-
811
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
812
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data_models_src_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
813
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of all data modeling</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
814
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_back_end_src_dir'>back_end_src_dir</span><span class='op'>|</span>
815
- <span class='id identifier rubyid_back_end_src_dir'>back_end_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data_models</span><span class='tstring_end'>&quot;</span></span>
816
- <span class='kw'>end</span>
817
-
818
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
819
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data_models_specs_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
820
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the root of all data model specs</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
821
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span><span class='op'>|</span>
822
- <span class='id identifier rubyid_app_specs_dir'>app_specs_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>back_end</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>data_models</span><span class='tstring_end'>&quot;</span></span>
823
- <span class='kw'>end</span>
824
-
825
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
826
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>migrations_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
827
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the DB migrations</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
828
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_data_models_src_dir'>data_models_src_dir</span><span class='op'>|</span>
829
- <span class='id identifier rubyid_data_models_src_dir'>data_models_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>migrations</span><span class='tstring_end'>&quot;</span></span>
830
- <span class='kw'>end</span>
831
-
832
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
833
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>db_seeds_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
834
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the seed data for the DB</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
835
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_data_models_src_dir'>data_models_src_dir</span><span class='op'>|</span>
836
- <span class='id identifier rubyid_data_models_src_dir'>data_models_src_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>seed</span><span class='tstring_end'>&quot;</span></span>
837
- <span class='kw'>end</span>
838
-
839
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
840
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>config_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
841
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where configuration files are stores</span><span class='tstring_end'>&quot;</span></span>
842
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_root'>project_root</span><span class='op'>|</span>
843
- <span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>app</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>config</span><span class='tstring_end'>&quot;</span></span>
844
- <span class='kw'>end</span>
845
-
846
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_ensured_path'>store_ensured_path</span><span class='lparen'>(</span>
847
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>i18n_locales_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
848
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to where I18N locale files are stored</span><span class='tstring_end'>&quot;</span></span>
849
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_config_dir'>config_dir</span><span class='op'>|</span>
850
- <span class='id identifier rubyid_config_dir'>config_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>i18n</span><span class='tstring_end'>&quot;</span></span>
851
- <span class='kw'>end</span>
852
-
853
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
854
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>asset_metadata_file</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
855
- <span class='const'>Pathname</span><span class='comma'>,</span>
856
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path to the asset metadata file, used to manage hashed asset names</span><span class='tstring_end'>&quot;</span></span>
857
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_config_dir'>config_dir</span><span class='op'>|</span>
858
- <span class='id identifier rubyid_config_dir'>config_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>asset_metadata.json</span><span class='tstring_end'>&quot;</span></span>
859
- <span class='kw'>end</span>
860
-
861
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store_required_path'>store_required_path</span><span class='lparen'>(</span>
862
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>brut_internal_dir</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
863
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Location to where the Brut gem is installed.</span><span class='tstring_end'>&quot;</span></span>
864
- <span class='rparen'>)</span> <span class='kw'>do</span>
865
- <span class='lparen'>(</span><span class='const'>Pathname</span><span class='lparen'>(</span><span class='kw'>__FILE__</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>..</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>..</span><span class='tstring_end'>&quot;</span></span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>..</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_expand_path'>expand_path</span>
866
- <span class='kw'>end</span>
867
-
868
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
869
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>svg_locator</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
870
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Brut::FrontEnd::InlineSvgLocator</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
871
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Object to use to locate SVGs</span><span class='tstring_end'>&quot;</span></span>
872
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_svgs_src_dir'>svgs_src_dir</span><span class='op'>|</span>
873
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/InlineSvgLocator.html" title="Brut::FrontEnd::InlineSvgLocator (class)">InlineSvgLocator</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../FrontEnd/InlineSvgLocator.html#initialize-instance_method" title="Brut::FrontEnd::InlineSvgLocator#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='label'>paths:</span> <span class='id identifier rubyid_svgs_src_dir'>svgs_src_dir</span><span class='rparen'>)</span>
874
- <span class='kw'>end</span>
875
-
876
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
877
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>asset_path_resolver</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
878
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Brut::FrontEnd::AssetPathResolver</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
879
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Object to use to resolve logical asset paths to actual asset paths</span><span class='tstring_end'>&quot;</span></span>
880
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_asset_metadata_file'>asset_metadata_file</span><span class='op'>|</span>
881
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/AssetPathResolver.html" title="Brut::FrontEnd::AssetPathResolver (class)">AssetPathResolver</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../FrontEnd/AssetPathResolver.html#initialize-instance_method" title="Brut::FrontEnd::AssetPathResolver#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='label'>metadata_file:</span> <span class='id identifier rubyid_asset_metadata_file'>asset_metadata_file</span><span class='rparen'>)</span>
882
- <span class='kw'>end</span>
883
-
884
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
885
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>routing</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
886
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Brut::FrontEnd::Routing</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
887
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Routing for all registered routes of this app</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
888
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/Routing.html" title="Brut::FrontEnd::Routing (class)">Routing</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../FrontEnd/Routing.html#initialize-instance_method" title="Brut::FrontEnd::Routing#initialize (method)">new</a></span></span>
889
- <span class='rparen'>)</span>
890
-
891
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
892
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>instrumentation</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
893
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Instrumentation.html" title="Brut::Instrumentation (module)">Instrumentation</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Instrumentation/OpenTelemetry.html" title="Brut::Instrumentation::OpenTelemetry (class)">OpenTelemetry</a></span></span><span class='comma'>,</span>
894
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Interface for recording instrumentable events and subscribing to them</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
895
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Instrumentation.html" title="Brut::Instrumentation (module)">Instrumentation</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Instrumentation/OpenTelemetry.html" title="Brut::Instrumentation::OpenTelemetry (class)">OpenTelemetry</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
896
- <span class='rparen'>)</span>
897
-
898
- <span class='comment'># App can override
899
- </span>
900
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
901
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>external_id_prefix</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
902
- <span class='const'>String</span><span class='comma'>,</span>
903
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>String to use as a prefix for external ids in tables using the external_id feature. Nil means the feature is disabled</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
904
- <span class='kw'>nil</span><span class='comma'>,</span>
905
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
906
- <span class='label'>allow_nil:</span> <span class='kw'>true</span><span class='comma'>,</span>
907
- <span class='rparen'>)</span>
908
-
909
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
910
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>debug_zeitwerk?</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
911
- <span class='symbol'>:boolean</span><span class='comma'>,</span>
912
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>If true, Zeitwerk&#39;s loading will be logged for debugging purposes. Do not enable this in production</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
913
- <span class='kw'>false</span><span class='comma'>,</span>
914
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
915
- <span class='rparen'>)</span>
916
-
917
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
918
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>session_class</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
919
- <span class='const'>Class</span><span class='comma'>,</span>
920
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Class to use when wrapping the Rack session</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
921
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/Session.html" title="Brut::FrontEnd::Session (class)">Session</a></span></span><span class='comma'>,</span>
922
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
923
- <span class='rparen'>)</span>
924
-
925
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
926
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>flash_class</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
927
- <span class='const'>Class</span><span class='comma'>,</span>
928
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Class to use to represent the Flash</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
929
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/Flash.html" title="Brut::FrontEnd::Flash (class)">Flash</a></span></span><span class='comma'>,</span>
930
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
931
- <span class='rparen'>)</span>
932
-
933
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
934
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>csrf_protector</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
935
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/CsrfProtector.html" title="Brut::FrontEnd::CsrfProtector (class)">CsrfProtector</a></span></span><span class='comma'>,</span>
936
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Object to allow custom logic related to CSRF protection</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
937
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span>
938
- <span class='rparen'>)</span> <span class='kw'>do</span>
939
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/CsrfProtector.html" title="Brut::FrontEnd::CsrfProtector (class)">CsrfProtector</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
940
- <span class='kw'>end</span>
941
-
942
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
943
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>semantic_logger_appenders</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
944
- <span class='lbrace'>{</span> <span class='const'>Hash</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>if only one appender is needed</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='const'>Array</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>to configure multiple appenders</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span><span class='comma'>,</span>
945
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>List of appenders to be configured for SemanticLogger</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
946
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span>
947
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_env'>project_env</span><span class='comma'>,</span><span class='id identifier rubyid_log_dir'>log_dir</span><span class='op'>|</span>
948
- <span class='kw'>if</span> <span class='id identifier rubyid_project_env'>project_env</span><span class='period'>.</span><span class='id identifier rubyid_development?'>development?</span>
949
- <span class='lbracket'>[</span>
950
- <span class='lbrace'>{</span> <span class='label'>formatter:</span> <span class='symbol'>:color</span><span class='comma'>,</span> <span class='label'>io:</span> <span class='gvar'>$stdout</span> <span class='rbrace'>}</span><span class='comma'>,</span>
951
- <span class='lbrace'>{</span> <span class='label'>file_name:</span> <span class='lparen'>(</span><span class='id identifier rubyid_log_dir'>log_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>development.log</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='rbrace'>}</span><span class='comma'>,</span>
952
- <span class='rbracket'>]</span>
953
- <span class='kw'>elsif</span> <span class='id identifier rubyid_project_env'>project_env</span><span class='period'>.</span><span class='id identifier rubyid_test?'>test?</span>
954
- <span class='lbrace'>{</span> <span class='label'>file_name:</span> <span class='lparen'>(</span><span class='id identifier rubyid_log_dir'>log_dir</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>test.log</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='rbrace'>}</span>
955
- <span class='kw'>else</span>
956
- <span class='lbrace'>{</span> <span class='label'>io:</span> <span class='gvar'>$stdout</span> <span class='rbrace'>}</span>
957
- <span class='kw'>end</span>
958
- <span class='kw'>end</span>
959
-
960
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
961
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>eager_load_classes?</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
962
- <span class='symbol'>:boolean</span><span class='comma'>,</span>
963
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>If true, classes are eagerly loaded upon startup</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
964
- <span class='kw'>true</span><span class='comma'>,</span>
965
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span>
966
- <span class='rparen'>)</span>
967
-
968
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
969
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>auto_reload_classes?</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
970
- <span class='symbol'>:boolean</span><span class='comma'>,</span>
971
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>If true, classes are reloaded with each request. Useful only really for development</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
972
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span>
973
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_env'>project_env</span><span class='op'>|</span>
974
- <span class='id identifier rubyid_no_reload_in_dev'>no_reload_in_dev</span> <span class='op'>=</span> <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>BRUT_NO_RELOAD_IN_DEV</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>true</span><span class='tstring_end'>&quot;</span></span>
975
- <span class='kw'>if</span> <span class='id identifier rubyid_project_env'>project_env</span><span class='period'>.</span><span class='id identifier rubyid_development?'>development?</span>
976
- <span class='op'>!</span><span class='id identifier rubyid_no_reload_in_dev'>no_reload_in_dev</span>
977
- <span class='kw'>else</span>
978
- <span class='kw'>false</span>
979
- <span class='kw'>end</span>
980
- <span class='kw'>end</span>
981
-
982
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
983
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>log_level</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
984
- <span class='const'>String</span><span class='comma'>,</span>
985
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Log level to control how much logging is happening</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
986
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
987
- <span class='rparen'>)</span> <span class='kw'>do</span>
988
- <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>LOG_LEVEL</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>debug</span><span class='tstring_end'>&quot;</span></span>
989
- <span class='kw'>end</span>
990
-
991
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
992
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>csp_class</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
993
- <span class='const'>Class</span><span class='comma'>,</span>
994
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Route Hook to use for setting the Content-Security-Policy header</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
995
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
996
- <span class='label'>allow_nil:</span> <span class='kw'>true</span><span class='comma'>,</span>
997
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_project_env'>project_env</span><span class='op'>|</span>
998
- <span class='kw'>if</span> <span class='id identifier rubyid_project_env'>project_env</span><span class='period'>.</span><span class='id identifier rubyid_development?'>development?</span>
999
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks.html" title="Brut::FrontEnd::RouteHooks (module)">RouteHooks</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks/CSPNoInlineScripts.html" title="Brut::FrontEnd::RouteHooks::CSPNoInlineScripts (class)">CSPNoInlineScripts</a></span></span>
1000
- <span class='kw'>else</span>
1001
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks.html" title="Brut::FrontEnd::RouteHooks (module)">RouteHooks</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts.html" title="Brut::FrontEnd::RouteHooks::CSPNoInlineStylesOrScripts (class)">CSPNoInlineStylesOrScripts</a></span></span>
1002
- <span class='kw'>end</span>
1003
- <span class='kw'>end</span>
1004
-
1005
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
1006
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>csp_reporting_class</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1007
- <span class='const'>Class</span><span class='comma'>,</span>
1008
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Route Hook to use for setting the Content-Security-Policy-Report-Only header</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1009
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd.html" title="Brut::FrontEnd (module)">FrontEnd</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks.html" title="Brut::FrontEnd::RouteHooks (module)">RouteHooks</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts.html" title="Brut::FrontEnd::RouteHooks::CSPNoInlineStylesOrScripts (class)">CSPNoInlineStylesOrScripts</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts/ReportOnly.html" title="Brut::FrontEnd::RouteHooks::CSPNoInlineStylesOrScripts::ReportOnly (class)">ReportOnly</a></span></span><span class='comma'>,</span>
1010
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
1011
- <span class='label'>allow_nil:</span> <span class='kw'>true</span><span class='comma'>,</span>
1012
- <span class='rparen'>)</span>
1013
-
1014
- <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='period'>.</span><span class='id identifier rubyid_container'><span class='object_link'><a href="../../Brut.html#container-class_method" title="Brut.container (method)">container</a></span></span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
1015
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>fallback_host</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1016
- <span class='const'>URI</span><span class='comma'>,</span>
1017
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Hostname to use in situations where the request is not available</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1018
- <span class='kw'>nil</span><span class='comma'>,</span>
1019
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
1020
- <span class='label'>allow_nil:</span> <span class='kw'>true</span>
1021
- <span class='rparen'>)</span>
1022
-
1023
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
1024
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>local_hostname</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1025
- <span class='const'>String</span><span class='comma'>,</span>
1026
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>If present, this is an additional host on which your app responds locally. Useful if you have local domain names set up for dev</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1027
- <span class='kw'>nil</span><span class='comma'>,</span>
1028
- <span class='label'>allow_app_override:</span> <span class='kw'>true</span><span class='comma'>,</span>
1029
- <span class='label'>allow_nil:</span> <span class='kw'>true</span>
1030
- <span class='rparen'>)</span>
1031
-
1032
-
1033
- <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_store'>store</span><span class='lparen'>(</span>
1034
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>permitted_hosts</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1035
- <span class='const'>Array</span><span class='comma'>,</span>
1036
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>An array of hostnames or IPAddr objects representing which hosts this app will respond to</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1037
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_local_hostname'>local_hostname</span><span class='comma'>,</span><span class='id identifier rubyid_project_env'>project_env</span><span class='op'>|</span>
1038
- <span class='kw'>if</span> <span class='id identifier rubyid_project_env'>project_env</span><span class='period'>.</span><span class='id identifier rubyid_production?'>production?</span>
1039
- <span class='lbracket'>[</span><span class='rbracket'>]</span>
1040
- <span class='kw'>else</span>
1041
- <span class='lbracket'>[</span>
1042
- <span class='id identifier rubyid_local_hostname'>local_hostname</span><span class='comma'>,</span>
1043
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>localhost</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1044
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>.localhost</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1045
- <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>.test</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
1046
- <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.0.0.0/0</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='comma'>,</span>
1047
- <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>::/0</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='comma'>,</span>
1048
- <span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_compact'>compact</span>
1049
- <span class='kw'>end</span>
1050
- <span class='kw'>end</span>
1051
-
1052
- <span class='kw'>end</span>
1053
- <span class='kw'>end</span></pre>
1054
- </td>
1055
- </tr>
1056
- </table>
1057
- </div>
1058
-
1059
- </div>
1060
-
1061
- </div>
1062
-
1063
- <div id="footer">
1064
- Generated on Sun Nov 30 20:50:11 2025 by
1065
- <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1066
- 0.9.37 (ruby-3.4.6).
1067
- </div>
1068
-
1069
- </div>
1070
- </body>
1071
- </html>