solara 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/solara/lib/.DS_Store +0 -0
  3. data/solara/lib/core/.DS_Store +0 -0
  4. data/solara/lib/core/brands/brand_switcher.rb +58 -1
  5. data/solara/lib/core/dashboard/.DS_Store +0 -0
  6. data/solara/lib/core/dashboard/brand/BrandDetail.js +34 -2
  7. data/solara/lib/core/dashboard/brand/BrandDetailController.js +23 -206
  8. data/solara/lib/core/dashboard/brand/BrandDetailModel.js +13 -5
  9. data/solara/lib/core/dashboard/brand/BrandDetailView.js +16 -178
  10. data/solara/lib/core/dashboard/brand/SectionsFormManager.js +232 -0
  11. data/solara/lib/core/dashboard/brand/brand.html +199 -199
  12. data/solara/lib/core/dashboard/brand/source/BrandLocalSource.js +2 -5
  13. data/solara/lib/core/dashboard/brand/source/BrandRemoteSource.js +36 -133
  14. data/solara/lib/core/dashboard/brands/Brands.js +31 -0
  15. data/solara/lib/core/dashboard/brands/BrandsController.js +0 -5
  16. data/solara/lib/core/dashboard/brands/BrandsView.js +2 -2
  17. data/solara/lib/core/dashboard/brands/brands.html +71 -52
  18. data/solara/lib/core/dashboard/component/AliasesBottomSheet.js +6 -6
  19. data/solara/lib/core/dashboard/component/BrandOptionsBottomSheet.js +4 -4
  20. data/solara/lib/core/dashboard/component/ConfirmationDialog.js +15 -10
  21. data/solara/lib/core/dashboard/component/EditJsonSheet.js +160 -0
  22. data/solara/lib/core/dashboard/component/MessageBottomSheet.js +5 -5
  23. data/solara/lib/core/dashboard/component/OnboardBrandBottomSheet.js +5 -3
  24. data/solara/lib/core/dashboard/handler/base_handler.rb +1 -0
  25. data/solara/lib/core/dashboard/handler/edit_section_handler.rb +1 -5
  26. data/solara/lib/core/doctor/schema/brand_configurations.json +0 -8
  27. data/solara/lib/core/doctor/schema/platform/global/resources_manifest.json +30 -0
  28. data/solara/lib/core/doctor/schema/platform/json_manifest.json +57 -0
  29. data/solara/lib/core/doctor/validator/template/android_template_validation_config.yml +35 -1
  30. data/solara/lib/core/doctor/validator/template/flutter_template_validation_config.yml +30 -1
  31. data/solara/lib/core/doctor/validator/template/ios_template_validation_config.yml +35 -1
  32. data/solara/lib/core/doctor/validator/template/template_validator.rb +9 -9
  33. data/solara/lib/core/scripts/brand_config_manager.rb +1 -1
  34. data/solara/lib/core/scripts/brand_configurations_manager.rb +41 -0
  35. data/solara/lib/core/scripts/code_generator.rb +342 -118
  36. data/solara/lib/core/scripts/file_path.rb +21 -1
  37. data/solara/lib/core/scripts/gitignore_manager.rb +11 -3
  38. data/solara/lib/core/scripts/json_manifest_processor.rb +95 -0
  39. data/solara/lib/core/scripts/platform/ios/infoplist_string_catalog_manager.rb +11 -1
  40. data/solara/lib/core/scripts/resource_manifest_processor.rb +151 -0
  41. data/solara/lib/core/scripts/solara_status_manager.rb +1 -1
  42. data/solara/lib/core/scripts/theme_generator.rb +21 -242
  43. data/solara/lib/core/solara_configurator.rb +1 -1
  44. data/solara/lib/core/template/brands/global/resources_manifest.json +10 -0
  45. data/solara/lib/core/template/brands/json/Json-Manifest.md +61 -0
  46. data/solara/lib/core/template/brands/json/json_manifest.json +18 -0
  47. data/solara/lib/core/template/brands/shared/theme.json +213 -29
  48. data/solara/lib/core/template/config/android_template_config.json +50 -0
  49. data/solara/lib/core/template/config/flutter_template_config.json +35 -0
  50. data/solara/lib/core/template/config/ios_template_config.json +50 -0
  51. data/solara/lib/core/template/configurations.json +46 -0
  52. data/solara/lib/core/template/project_template_generator.rb +2 -0
  53. data/solara/lib/solara/version.rb +1 -1
  54. data/solara/lib/solara.rb +19 -0
  55. metadata +13 -4
  56. data/solara/lib/core/dashboard/component/AddFieldSheet.js +0 -175
  57. data/solara/lib/core/dashboard/handler/brand_configurations_manager.rb +0 -73
@@ -0,0 +1,41 @@
1
+ class BrandConfigurationsManager
2
+
3
+ def initialize(brand_key)
4
+ @brand_key = brand_key
5
+ end
6
+
7
+ def template_with_key(key)
8
+ templates.select { |section| section[:key] === key }.first
9
+ end
10
+
11
+ def templates
12
+ configurations = JSON.parse(File.read(FilePath.brand_configurations))['configurations']
13
+ configurations.map do |config|
14
+ {
15
+ key: config['key'],
16
+ name: config['name'],
17
+ path: "#{FilePath.brand(@brand_key)}/#{config['filePath']}"
18
+ }
19
+ end
20
+ end
21
+
22
+ def create
23
+ config_templates = templates
24
+
25
+ config_templates.map do |template|
26
+ create_config_item(
27
+ template[:key],
28
+ template[:name],
29
+ template[:path]
30
+ )
31
+ end
32
+ end
33
+
34
+ def create_config_item(key, name, path)
35
+ {
36
+ key: key,
37
+ name: name,
38
+ content: JSON.parse(File.read(path)),
39
+ }
40
+ end
41
+ end