maglevcms 1.2.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b23017be4bbbf4d06d99cf0f94ede1136e0e0ea343e0fbbef94edb6dc4d112d4
4
- data.tar.gz: b6e5d107a2ea7a18091ffdd084a3fed631d0726fe845e0ac0f7100f1fc3e2b60
3
+ metadata.gz: 248515cbe62cad407de20c6cffc54b333b764b997051916dcc25db54744536ae
4
+ data.tar.gz: 1d7b14f11bde0e7efb1eb88b8804dc5028b3d55da858e963e538c92640377b5c
5
5
  SHA512:
6
- metadata.gz: 1b579c11945ca3c28bb48f59d7efc0ea70a6d1608b7275cd507c3044cf30446bf3a342163ad9c468f0f3cf690386be137401e34f6426bbc016b4306af2d701ff
7
- data.tar.gz: d4257dfeb8ef1a210fc9147325e4cae5517c4a5f676b7c27637353573ee9c4ba315283edc4b0c97253d06b6327ba48b4fbf25199b4247f21913482b17f53777a
6
+ metadata.gz: b3409a4c7c5712a9e7bfa0541ca7d683e3ce17ace4a0113f9eaafeb2c3ad0d9a24a5bc07717f6ec2b5942a94539ebb9312a0cf18f3f9c9ec6bf1516e9b560dce
7
+ data.tar.gz: a72a1e948ef6d9ad0003c987a745959a2da567ad78d0db890e1b207f45c4a50d3c86629537bec27bd891d6f4e48f333a0cef22b9bfa3c72168ec64b9a3a5966e
@@ -10,11 +10,10 @@ module Maglev
10
10
  private
11
11
 
12
12
  def maglev_authenticate
13
- username = maglev_config.admin_username
14
- password = maglev_config.admin_password
15
- return if !username || !password
13
+ return unless Maglev.config.admin_username.present? && Maglev.config.admin_password.present?
16
14
 
17
- redirect_to main_app.root_path unless authenticate_with_http_basic { |u, p| username == u && password == p }
15
+ http_basic_authenticate_or_request_with name: Maglev.config.admin_username,
16
+ password: Maglev.config.admin_password
18
17
  end
19
18
  end
20
19
  end
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 10.828l-4.95 4.95-1.414-1.414L12 8l6.364 6.364-1.414 1.414z"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11.9997 10.8284L7.04996 15.7782L5.63574 14.364L11.9997 8L18.3637 14.364L16.9495 15.7782L11.9997 10.8284Z"></path></svg>
@@ -16,7 +16,7 @@
16
16
  v-model="selectedCollectionItem"
17
17
  >
18
18
  <template v-slot:value>
19
- <div class="flex items-center">
19
+ <div class="flex items-center flex-grow-0 overflow-x-hidden" :title="selectedCollectionItem.label">
20
20
  <div
21
21
  class="h-10 w-10 bg-gray-400 mr-3"
22
22
  v-if="selectedCollectionItem.imageUrl"
@@ -26,15 +26,15 @@
26
26
  :src="selectedCollectionItem.imageUrl"
27
27
  />
28
28
  </div>
29
- <span>{{ selectedCollectionItem.label }}</span>
29
+ <span class="truncate">{{ selectedCollectionItem.label }}</span>
30
30
  </div>
31
31
  </template>
32
32
  <template v-slot:item="{ item }">
33
- <div class="flex items-center">
33
+ <div class="flex items-center" :title="item.label">
34
34
  <div class="h-10 w-10 bg-gray-400 mr-3" v-if="item.imageUrl">
35
35
  <img class="object-cover w-full h-full" :src="item.imageUrl" />
36
36
  </div>
37
- <span class="font-bold">{{ item.label }}</span>
37
+ <span class="truncate font-bold">{{ item.label }}</span>
38
38
  </div>
39
39
  </template>
40
40
  </select-input>
@@ -18,24 +18,16 @@
18
18
  <span v-else>{{ placeholder }}</span>
19
19
  <button
20
20
  type="button"
21
- class="ml-auto"
21
+ class="ml-auto flex-shrink-0"
22
22
  @click.stop.prevent="clear"
23
23
  v-if="canClear"
24
24
  >
25
25
  <icon name="ri-close-line" />
26
26
  </button>
27
- <icon
28
- name="arrow-up-s-line"
29
- size="1.5rem"
30
- :class="{ 'ml-1': canClear, 'ml-auto': !canClear }"
31
- v-if="isOpen"
32
- />
33
- <icon
34
- name="arrow-down-s-line"
35
- size="1.5rem"
36
- :class="{ 'ml-1': canClear, 'ml-auto': !canClear }"
37
- v-else
38
- />
27
+ <div :class="{ 'flex-shrink-0': true, 'ml-1': canClear, 'ml-auto': !canClear }">
28
+ <icon name="arrow-up-s-line" size="1.5rem" :class="{ 'hidden': !isOpen }" />
29
+ <icon name="arrow-down-s-line" size="1.5rem" :class="{ 'hidden': isOpen }" />
30
+ </div>
39
31
  </div>
40
32
  </button>
41
33
  <div
@@ -172,6 +172,9 @@ export const getBlockLabel = (block, definition, index) => {
172
172
  label = value.text
173
173
  }
174
174
  break
175
+ case 'collection_item':
176
+ if (!label && !isBlank(value?.label)) label = value.label
177
+ if (!image && !isBlank(value?.imageUrl)) image = value.imageUrl
175
178
  default:
176
179
  break
177
180
  }
@@ -66,7 +66,7 @@ module Maglev
66
66
  end
67
67
 
68
68
  def item_label(item)
69
- item[label_field]
69
+ label_field && item.respond_to?(label_field) ? item.public_send(label_field) : nil
70
70
  end
71
71
 
72
72
  def item_image(item)
@@ -9,7 +9,7 @@ module Maglev
9
9
  end
10
10
 
11
11
  def call(path)
12
- theme = add(YAML.safe_load(File.read(path.join('theme.yml'))))
12
+ theme = add(YAML.safe_load(File.read(path.join('theme.yml')), aliases: true))
13
13
  sections = load_sections(theme, Pathname.new(path).join('sections/**/*.yml'))
14
14
  theme.sections = Maglev::Section::Store.new(sections)
15
15
  theme
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Maglev
4
- VERSION = '1.2.0'
4
+ VERSION = '1.2.2'
5
5
  end
@@ -74,8 +74,14 @@ namespace :maglev do
74
74
  desc 'Ensure build dependencies like Vite are installed before bundling'
75
75
  task install_dependencies: :environment do
76
76
  within_engine_folder do
77
+ install_dev_dependencies = ENV['VITE_RUBY_SKIP_INSTALL_DEV_DEPENDENCIES'] == 'true'
78
+ # rubocop:disable Style/StringHashKeys
79
+ install_env_args = install_dev_dependencies ? {} : { 'NODE_ENV' => 'development' }
80
+ # rubocop:enable Style/StringHashKeys
77
81
  cmd = Maglev::Engine.vite_ruby.commands.legacy_npm_version? ? 'npx ci --yes' : 'npx --yes ci'
78
- system({ 'NODE_ENV' => 'development' }, cmd)
82
+ result = system(install_env_args, cmd)
83
+ # Fallback to `yarn` if `npx` is not available.
84
+ system(install_env_args, 'yarn install --frozen-lockfile') if result.nil?
79
85
  end
80
86
  end
81
87
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maglevcms
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Didier Lafforgue
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-14 00:00:00.000000000 Z
11
+ date: 2023-09-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jbuilder