arctic_admin 2.1.0 → 4.0.0.alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 9c81c4c3f36dac95ddfccb6661eab8269f79458b
4
- data.tar.gz: 26d249a62455ba04523ae0e551ceac836d008276
2
+ SHA256:
3
+ metadata.gz: d80f79149e44a52c1d586e425e82313f2d83aea8455d59eaba12a72fb94abc30
4
+ data.tar.gz: ff9b250756327bb54eb0ee374d4cacb0a9cb7b6090da861ee85beceda2534f62
5
5
  SHA512:
6
- metadata.gz: a7f376f0675e4ee0147d3d00b238f67be7aadc4c536a2812461927eaa544aaadaeed93943ee2333456288d326b043da8d929d7229eb4d06384587d957adc87d5
7
- data.tar.gz: 50f3739270b41956e55ac44f6bb86b641aa54df211c3c9a9bb576acbaac5bd513e6f678eb4f338469a8d27768fa0f780e35a54ce47ada4c27bd1763b9ed3a2b6
6
+ metadata.gz: 6844d6c0fbd22ce592aa64c9f5f27e93033564f44bd7856a3e9d2f3f0ab52ffb5c8a44c106ec9eac85e7dd50c6213649930bfa303a451b4ea867405bc9ded0fd
7
+ data.tar.gz: 159bce7c3570d89754af6964c035497b6adbc0a87f6f709a06fa556c4ddfdd924a48866518336e6424a81cd0efa6ae87df472c3e9f8442d10bf4ef846bb62548
data/Readme.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # ArcticAdmin
2
2
  [![Gem Version](https://img.shields.io/gem/v/arctic_admin.svg)](https://rubygems.org/gems/arctic_admin)
3
3
  [![Gem Downloads](https://img.shields.io/gem/dt/arctic_admin.svg)](https://rubygems.org/gems/arctic_admin)
4
+ [![Gem Version](https://img.shields.io/npm/v/arctic_admin.svg)](https://www.npmjs.com/package/arctic_admin)
5
+ [![Gem Downloads](https://img.shields.io/npm/dt/arctic_admin.svg)](https://www.npmjs.com/package/arctic_admin)
4
6
 
5
7
  Simple theme for ActiveAdmin :ok_hand:
6
8
 
@@ -73,6 +75,41 @@ In your `active_admin.js`, include the js file:
73
75
 
74
76
  :exclamation: **Remove the line `//= require active_admin/base`**
75
77
 
78
+ ## Use with webpacker
79
+
80
+ ### 1 - Preparation
81
+
82
+ Install the assets from npm or yarn
83
+
84
+ ```
85
+ yarn add arctic_admin
86
+ ```
87
+
88
+
89
+ ### 2 - CSS
90
+
91
+ In your `app/javascript/stylesheets/active_admin.scss`, add the line:
92
+
93
+ ```scss
94
+ @import '~arctic_admin/src/scss/main';
95
+ ```
96
+
97
+ Remove:
98
+
99
+ ```scss
100
+ @import "~@activeadmin/activeadmin/src/scss/mixins";
101
+ @import "~@activeadmin/activeadmin/src/scss/base";
102
+ ```
103
+
104
+ ### 3 - JS
105
+
106
+ In your `app/javascript/packs/active_admin.js`, add the line:
107
+
108
+ ```js
109
+ import 'arctic_admin'
110
+ ```
111
+
112
+
76
113
  ### Customization
77
114
 
78
115
  For this, you need to use sass to custom the theme.
@@ -1,77 +1,2 @@
1
- //= require jquery
2
- //= require jquery_ujs
3
1
  //= require active_admin/base
4
-
5
- $(function() {
6
- $(document).on('click touchstart', '#sidebar', function(e) {
7
- var position = $(this).position();
8
- var width = $(this).width();
9
- var target = e.target;
10
- if ((e.pageX < position.left) && (target.tagName != 'SELECT') && (target.tagName != 'OPTION')) {
11
- if ($(this).css('right') == '0px') {
12
- $(this).css('position', 'fixed');
13
- $(this).animate({
14
- right: "-="+width
15
- }, 600, function() {
16
- $(this).removeAttr('style');
17
- animationFilterDone = true;
18
- });
19
- } else {
20
- $(this).animate({
21
- right: "+="+width
22
- }, 600, function() {
23
- $(this).css('position', 'absolute');
24
- animationFilterDone = true;
25
- });
26
- }
27
- }
28
- });
29
-
30
- var animationDone = true;
31
- $(document).on('click touchstart', '#utility_nav', function(e) {
32
- var position = $(this).position();
33
- var tabs = $('#tabs');
34
- var width = Math.round(tabs[0].getBoundingClientRect().width);
35
-
36
- if (e.pageX < (position.left + 40)) {
37
- if(animationDone == true) {
38
- animationDone = false;
39
- if (tabs.css('left') == '0px') {
40
- tabs.animate({
41
- left: "-="+width
42
- }, 400, function() {
43
- animationDone = true;
44
- });
45
- } else {
46
- tabs.animate({
47
- left: "+="+width
48
- }, 400, function() {
49
- animationDone = true;
50
- });
51
- }
52
- }
53
- }
54
- });
55
-
56
- $(document).on('click touchstart', 'body', function(e) {
57
- var tabs = $('#tabs');
58
- var width = Math.round(tabs[0].getBoundingClientRect().width);
59
- if (tabs.css('left') == '0px') {
60
- if (e.pageX > width && e.pageY > 60) {
61
- if(animationDone == true) {
62
- animationDone = false;
63
- tabs.animate({
64
- left: "-="+width
65
- }, 400, function() {
66
- animationDone = true;
67
- });
68
- }
69
- }
70
- }
71
- });
72
-
73
- $(document).on('click', '#tabs .has_nested', function(e) {
74
- e.stopPropagation();
75
- $(this).toggleClass('open');
76
- });
77
- });
2
+ //= require ./main
@@ -0,0 +1,50 @@
1
+ document.addEventListener('DOMContentLoaded', () => {
2
+
3
+ // right filter sidebar
4
+ const sidebar = document.querySelector('#sidebar')
5
+ if (sidebar) {
6
+ sidebar.addEventListener('click', event => {
7
+ const insideSection = document.querySelector('#filters_sidebar_section')
8
+ if (!(event.target === insideSection || insideSection.contains(event.target))) {
9
+ sidebar.classList.toggle('sidebar_open')
10
+ }
11
+ })
12
+ }
13
+
14
+ const menuButton = document.querySelector('#utility_nav')
15
+ const menu = document.querySelector('#tabs')
16
+
17
+ // toggle menu sidebar with the menu button
18
+ menuButton.addEventListener('click', event => {
19
+ const currentUser = document.querySelector('#current_user')
20
+ const logout = document.querySelector('#logout')
21
+ const forbiddenLinks = event.target === logout ||
22
+ logout.contains(event.target) ||
23
+ event.target === currentUser ||
24
+ currentUser.contains(event.target)
25
+ if (!forbiddenLinks) {
26
+ menu.classList.toggle('tabs_open')
27
+ }
28
+ })
29
+
30
+ // close left menu sidebar on any click outside
31
+ document.body.addEventListener('click', event => {
32
+ const forbiddenLinks = event.target === menu ||
33
+ menu.contains(event.target) ||
34
+ event.target === menuButton ||
35
+ menuButton.contains(event.target)
36
+ if (menu.classList.contains('tabs_open') && !forbiddenLinks) {
37
+ menu.classList.remove('tabs_open')
38
+ }
39
+ })
40
+
41
+ // toggle of nested menu items
42
+ const nestedMenuItem = document.querySelector('#tabs .has_nested')
43
+ if (nestedMenuItem) {
44
+ nestedMenuItem.addEventListener('click', (e) => {
45
+ e.stopPropagation()
46
+ nestedMenuItem.classList.toggle('open')
47
+ })
48
+ }
49
+
50
+ })
@@ -2,6 +2,11 @@ code {
2
2
  display: block;
3
3
  background-color: #272822;
4
4
  padding: 5px;
5
- margin: 10px 0;
6
5
  color: white;
7
6
  }
7
+
8
+ hr {
9
+ border: 1px solid $border-color;
10
+ color: $primary-color;
11
+ margin: 10px auto 25px auto;
12
+ }
@@ -0,0 +1,54 @@
1
+ @import 'reset';
2
+
3
+ @import './variables/variables';
4
+
5
+ @import './mixins/mixins';
6
+
7
+ @import 'common';
8
+ @import 'buttons';
9
+ @import 'grid';
10
+
11
+ @import './components/columns';
12
+ @import './components/comments';
13
+ @import './components/date_picker';
14
+ @import './components/dialogs';
15
+ @import './components/flash';
16
+ @import './components/form';
17
+ @import './components/inputs';
18
+ @import './components/pagination';
19
+ @import './components/panel_contents';
20
+ @import './components/select2';
21
+ @import './components/status_tag';
22
+ @import './components/tables';
23
+ @import './components/tabs';
24
+
25
+ @import './layouts/filter';
26
+ @import './layouts/footer';
27
+ @import './layouts/header';
28
+ @import './layouts/main_content';
29
+ @import './layouts/sidebar';
30
+ @import './layouts/wrapper';
31
+
32
+ @import './pages/form';
33
+ @import './pages/index';
34
+ @import './pages/login';
35
+ @import './pages/show';
36
+ body {
37
+ font-family: $font-family-body;
38
+ background-color: $body-background;
39
+ color: $text-color;
40
+ }
41
+
42
+ h1,
43
+ h2,
44
+ h3,
45
+ h4,
46
+ h5,
47
+ h6 {
48
+ margin-top: 0;
49
+ }
50
+
51
+ a {
52
+ color: $primary-color;
53
+ text-decoration: none;
54
+ }
@@ -35,4 +35,4 @@
35
35
  text-align: center;
36
36
  }
37
37
  }
38
- }
38
+ }
@@ -40,7 +40,7 @@
40
40
 
41
41
  .inline-hints {
42
42
  margin: 5px 0 20px 25%;
43
- font-size: 14px;
43
+ font-size: $font-size;
44
44
  font-style: italic;
45
45
  }
46
46
 
@@ -48,7 +48,7 @@
48
48
  color: $error;
49
49
  margin-top: 5px;
50
50
  margin-bottom: 20px;
51
- font-size: 14px;
51
+ font-size: $font-size;
52
52
  }
53
53
 
54
54
  label.error {
@@ -8,9 +8,9 @@ input[type="number"], textarea {
8
8
 
9
9
  display: block;
10
10
  width: 100%;
11
- height: 36px;
11
+ height: $input-height;
12
12
  padding: 6px 12px;
13
- font-size: 14px;
13
+ font-size: $font-size;
14
14
  line-height: 1.57142857;
15
15
  color: $text-color;
16
16
  background-color: #fff;
@@ -88,7 +88,7 @@ select {
88
88
  border: 1px solid $border-color;
89
89
  outline: 0;
90
90
  border-radius: $border-radius;
91
- font-size: 14px;
91
+ font-size: $font-size;
92
92
  color: #5a5a5a;
93
93
  @include transition(border-color ease-in-out .15s);
94
94
 
@@ -0,0 +1,50 @@
1
+ .select2-container--default .select2-selection--single .select2-selection__rendered{
2
+ line-height: $input-height;
3
+ color: $text-color;
4
+ font-size: $font-size;
5
+ }
6
+
7
+ .select2-container .select2-selection--single{
8
+ height: $input-height;
9
+ outline: 0;
10
+ }
11
+
12
+ .select2-container--default .select2-selection--single .select2-selection__arrow{
13
+ height: $input-height;
14
+ }
15
+
16
+ .select2-container--default .select2-selection--single {
17
+ border-color: $border-color;
18
+ }
19
+
20
+ .select2-container .select2-selection--single .select2-selection__rendered{
21
+ padding-left: 12px;
22
+ }
23
+
24
+ .select2-dropdown{
25
+ border-color: $border-color;
26
+ }
27
+
28
+ .select2-container--default .select2-results__option--highlighted[aria-selected]{
29
+ background-color: $primary_color;
30
+ }
31
+
32
+ .select2-container--default .select2-search--dropdown .select2-search__field{
33
+ border-color: $border-color;
34
+ }
35
+
36
+ .select2-container--default .select2-results__option[aria-selected=true]{
37
+ background_color: $body-background;
38
+ }
39
+
40
+ .select2-search--dropdown .select2-search__field{
41
+ padding-left: 12px;
42
+ }
43
+
44
+ .select2-results{
45
+ font-size: $font-size;
46
+ }
47
+
48
+ .select2-results__option{
49
+ padding-left: 12px;
50
+ }
@@ -6,12 +6,12 @@
6
6
  padding: 3px 5px 2px 5px;
7
7
  font-size: 0.8em;
8
8
  border-radius: $border-radius;
9
- }
10
9
 
11
- .status_tag.ok, .status_tag.published, .status_tag.complete, .status_tag.completed, .status_tag.green {
12
- background-color: $status-tag-background-valid-color;
13
- }
10
+ &.ok, &.published, &.complete, &.completed, &.green, &.yes {
11
+ background-color: $status-tag-background-valid-color;
12
+ }
14
13
 
15
- .status_tag.cancel, .status_tag.red {
16
- background-color: $status-tag-background-error-color;
17
- }
14
+ &.cancel, &.red, &.no {
15
+ background-color: $status-tag-background-error-color;
16
+ }
17
+ }
@@ -46,7 +46,7 @@ tbody tr {
46
46
  }
47
47
 
48
48
  th {
49
- font-size: 14px;
49
+ font-size: $font-size;
50
50
  }
51
51
 
52
52
  td {
@@ -2,11 +2,11 @@
2
2
  border: 1px solid $border-color;
3
3
 
4
4
  .nav {
5
- text-align: center;
6
5
  border-bottom: 1px solid $border-color;
7
6
 
8
7
  li {
9
8
  display: inline-block;
9
+ text-align: center;
10
10
  @include outline();
11
11
 
12
12
  a {
@@ -22,7 +22,7 @@
22
22
  }
23
23
 
24
24
  .input {
25
- margin-bottom: 15px;
25
+ margin-bottom: 10px;
26
26
 
27
27
  input, select {
28
28
  height: 30px;
@@ -49,6 +49,11 @@
49
49
  .filter_date_range input {
50
50
  width: 45%;
51
51
  display: inline-block;
52
+
53
+ // consistent look of all filters
54
+ &:nth-child(2) {
55
+ float: right;
56
+ }
52
57
  }
53
58
 
54
59
  input[type="submit"] {
@@ -56,9 +61,21 @@
56
61
  line-height: 31px;
57
62
  margin-right: 10px;
58
63
  }
64
+
65
+ &.panel {
66
+ position: relative;
67
+ }
59
68
  }
60
69
 
61
70
  #search-status-_sidebar_section {
62
71
  font-size: 14px;
63
72
  }
64
- }
73
+
74
+ // 'Filter' and 'Clear Filters' buttons
75
+ .buttons {
76
+ display: flex;
77
+ justify-content: space-between;
78
+ align-items: center;
79
+ margin-top: 1rem;
80
+ }
81
+ }
@@ -14,11 +14,11 @@ body.active_admin.logged_in {
14
14
  }
15
15
 
16
16
  #active_admin_content {
17
- padding: 30px 0;
17
+ padding: 20px 0;
18
18
  @include clear-fix();
19
19
 
20
20
  @media screen and (min-width: $lg-width) {
21
- padding: 30px 25px;
21
+ padding: 20px 25px;
22
22
  }
23
23
  }
24
24
  }
@@ -8,6 +8,12 @@
8
8
  z-index: 1;
9
9
  overflow: auto;
10
10
  left: - $header-width;
11
+ transition: .5s;
12
+ transition-timing-function: ease-in-out;
13
+
14
+ &.tabs_open {
15
+ left: 0;
16
+ }
11
17
 
12
18
  @media screen and (min-width: $sm-width) {
13
19
  top: 60px;
@@ -23,7 +29,7 @@
23
29
 
24
30
  li {
25
31
  width: 100%;
26
- font-size: 14px;
32
+ font-size: $font-size;
27
33
  line-height: 38px;
28
34
  cursor: pointer;
29
35
 
@@ -58,6 +58,6 @@
58
58
  text-rendering: auto;
59
59
  -webkit-font-smoothing: antialiased;
60
60
  -moz-osx-font-smoothing: grayscale;
61
- font: 900 normal normal 14px/1 'Font Awesome 5 Free';
61
+ font: 900 normal normal 14px/1 'Font Awesome 5 Free', 'Font Awesome 5 Pro';
62
62
  content: $code-icon;
63
63
  }
@@ -17,7 +17,7 @@ body.logged_in {
17
17
  margin: auto 0;
18
18
  padding-top: 8px;
19
19
  text-align: right;
20
- font-size: 14px;
20
+ font-size: $font-size;
21
21
 
22
22
  @media screen and (min-width: $sm-width) {
23
23
  padding-bottom: 0;
@@ -85,7 +85,7 @@ body.logged_in {
85
85
  }
86
86
 
87
87
  label {
88
- font-size: 14px;
88
+ font-size: $font-size;
89
89
  cursor: pointer;
90
90
  padding: 5px 5px 5px 0;
91
91
  }
@@ -6,7 +6,7 @@ body.index {
6
6
 
7
7
  .table_tools {
8
8
  margin-bottom: 20px;
9
- font-size: 14px;
9
+ font-size: $font-size;
10
10
 
11
11
  &:after {
12
12
  content: '';
@@ -47,7 +47,7 @@ body.index {
47
47
  }
48
48
 
49
49
  #index_footer {
50
- font-size: 14px;
50
+ font-size: $font-size;
51
51
  }
52
52
 
53
53
  .sortable {
@@ -62,7 +62,7 @@ body.index {
62
62
  @include transform(translateY(-50%));
63
63
 
64
64
  @media screen and (min-width: $md-width) {
65
- font-size: 14px/1;
65
+ font-size: $font-size/1;
66
66
  }
67
67
  }
68
68
 
@@ -76,13 +76,16 @@ body.index {
76
76
  }
77
77
 
78
78
  .table_actions {
79
+ margin-bottom: -4px;
80
+
79
81
  .member_link {
80
82
  @include primary-button($primary-color, white);
81
- padding: 2px 9px;
83
+ padding: 4px 8px;
82
84
  margin-right: 4px;
85
+ margin-bottom: 4px;
83
86
  }
84
87
  }
85
-
88
+
86
89
  .scopes {
87
90
  .scope {
88
91
  @include group-button($primary-color);
@@ -91,8 +94,14 @@ body.index {
91
94
 
92
95
  #sidebar {
93
96
  position: fixed;
97
+ transition: .5s;
98
+ transition-timing-function: ease-in-out;
94
99
  right: - $filter-width;
95
100
 
101
+ &.sidebar_open {
102
+ right: 0;
103
+ }
104
+
96
105
  @media screen and (min-width: $x-lg-width) {
97
106
  right: - $lg-filter-width;
98
107
  }
@@ -113,4 +122,4 @@ body.index {
113
122
  padding: 15px 10px;
114
123
  }
115
124
  }
116
- }
125
+ }
@@ -6,4 +6,7 @@ $lg-screen-header-width: calc(100% - 250px) !default;
6
6
  $filter-width: 230px !default;
7
7
  $screen-filter-width: calc(100% - 230px) !default;
8
8
  $lg-filter-width: 270px !default;
9
- $lg-screen-filter-width: calc(100% - 270px) !default;
9
+ $lg-screen-filter-width: calc(100% - 270px) !default;
10
+
11
+ $font-size: 14px !default;
12
+ $input-height: 36px !default;
@@ -1,3 +1,3 @@
1
1
  module ArcticAdmin
2
- VERSION = "2.1.0"
2
+ VERSION = "4.0.0.alpha"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arctic_admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 4.0.0.alpha
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clément Prod'homme
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-01 00:00:00.000000000 Z
11
+ date: 2020-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -47,7 +47,7 @@ dependencies:
47
47
  version: 1.1.0
48
48
  - - "<"
49
49
  - !ruby/object:Gem::Version
50
- version: '2.0'
50
+ version: '3.0'
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
@@ -57,35 +57,21 @@ dependencies:
57
57
  version: 1.1.0
58
58
  - - "<"
59
59
  - !ruby/object:Gem::Version
60
- version: '2.0'
61
- - !ruby/object:Gem::Dependency
62
- name: jquery-rails
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - ">="
66
- - !ruby/object:Gem::Version
67
- version: '0'
68
- type: :runtime
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - ">="
73
- - !ruby/object:Gem::Version
74
- version: '0'
60
+ version: '3.0'
75
61
  - !ruby/object:Gem::Dependency
76
62
  name: font-awesome-sass
77
63
  requirement: !ruby/object:Gem::Requirement
78
64
  requirements:
79
65
  - - "~>"
80
66
  - !ruby/object:Gem::Version
81
- version: 5.6.1
67
+ version: '5.0'
82
68
  type: :runtime
83
69
  prerelease: false
84
70
  version_requirements: !ruby/object:Gem::Requirement
85
71
  requirements:
86
72
  - - "~>"
87
73
  - !ruby/object:Gem::Version
88
- version: 5.6.1
74
+ version: '5.0'
89
75
  description: A responsive theme for Active Admin
90
76
  email:
91
77
  executables: []
@@ -111,11 +97,13 @@ files:
111
97
  - app/assets/fonts/Lato-Regular.woff
112
98
  - app/assets/fonts/Lato-Regular.woff2
113
99
  - app/assets/javascripts/arctic_admin/base.js
100
+ - app/assets/javascripts/arctic_admin/main.js
114
101
  - app/assets/stylesheets/arctic_admin/_base.scss
115
102
  - app/assets/stylesheets/arctic_admin/_buttons.scss
116
103
  - app/assets/stylesheets/arctic_admin/_common.scss
117
104
  - app/assets/stylesheets/arctic_admin/_fonts.scss
118
105
  - app/assets/stylesheets/arctic_admin/_grid.scss
106
+ - app/assets/stylesheets/arctic_admin/_main.scss
119
107
  - app/assets/stylesheets/arctic_admin/_reset.scss
120
108
  - app/assets/stylesheets/arctic_admin/components/_columns.scss
121
109
  - app/assets/stylesheets/arctic_admin/components/_comments.scss
@@ -126,6 +114,7 @@ files:
126
114
  - app/assets/stylesheets/arctic_admin/components/_inputs.scss
127
115
  - app/assets/stylesheets/arctic_admin/components/_pagination.scss
128
116
  - app/assets/stylesheets/arctic_admin/components/_panel_contents.scss
117
+ - app/assets/stylesheets/arctic_admin/components/_select2.scss
129
118
  - app/assets/stylesheets/arctic_admin/components/_status_tag.scss
130
119
  - app/assets/stylesheets/arctic_admin/components/_tables.scss
131
120
  - app/assets/stylesheets/arctic_admin/components/_tabs.scss
@@ -150,7 +139,7 @@ files:
150
139
  - app/assets/stylesheets/arctic_admin/variables/_variables.scss
151
140
  - lib/arctic_admin.rb
152
141
  - lib/arctic_admin/version.rb
153
- homepage: https://github.com/cle61/arctic_admin
142
+ homepage: https://github.com/cprodhomme/arctic_admin
154
143
  licenses:
155
144
  - MIT
156
145
  metadata: {}
@@ -165,12 +154,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
165
154
  version: '0'
166
155
  required_rubygems_version: !ruby/object:Gem::Requirement
167
156
  requirements:
168
- - - ">="
157
+ - - ">"
169
158
  - !ruby/object:Gem::Version
170
- version: '0'
159
+ version: 1.3.1
171
160
  requirements: []
172
- rubyforge_project:
173
- rubygems_version: 2.6.8
161
+ rubygems_version: 3.0.3
174
162
  signing_key:
175
163
  specification_version: 4
176
164
  summary: Arctic Admin theme for ActiveAdmin