@mundogamernetwork/shared-ui 1.1.52 → 1.1.53

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.
@@ -739,6 +739,11 @@ body:has(.kit-press) {
739
739
  padding: 7px 14px;
740
740
  font-size: 0.78rem;
741
741
  }
742
+ .kit-btn-disabled {
743
+ opacity: 0.45;
744
+ cursor: not-allowed;
745
+ pointer-events: none;
746
+ }
742
747
 
743
748
  /* ── Back to top button ──────────────────────────────────────────────*/
744
749
  .kit-backtop {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mundogamernetwork/shared-ui",
3
- "version": "1.1.52",
3
+ "version": "1.1.53",
4
4
  "description": "Mundo Gamer Network - Shared UI Layer (Nuxt 3)",
5
5
  "type": "module",
6
6
  "main": "./nuxt.config.ts",
@@ -67,6 +67,8 @@ const brandAssets = computed(() => assets.value.filter((a: any) => ['logo', 'doc
67
67
  const tpl = computed(() => kit.value?.theme || null);
68
68
  const layout = computed(() => kit.value?.layout || 'classic');
69
69
  const allowDownload = computed(() => kit.value?.allow_asset_download !== false);
70
+ const hasDownloadableAssets = computed(() => assets.value.length > 0);
71
+ const canDownload = computed(() => allowDownload.value && hasDownloadableAssets.value);
70
72
 
71
73
  const keyPoolsVisible = ref(false);
72
74
  function onPoolsReady(count: number) {
@@ -182,7 +184,10 @@ useSeoMeta({
182
184
  <p v-if="kit.tagline" class="kit-tagline">{{ kit.tagline }}</p>
183
185
  <p v-if="kit.developer" class="kit-kicker">{{ kit.developer }}</p>
184
186
  <div class="kit-actions">
185
- <a v-if="allowDownload" class="kit-btn kit-btn-primary" @click="track('download')">{{ $t('kit.press.download_assets') }}</a>
187
+ <template v-if="allowDownload">
188
+ <a v-if="canDownload" class="kit-btn kit-btn-primary" @click="track('download')">{{ $t('kit.press.download_assets') }}</a>
189
+ <span v-else class="kit-btn kit-btn-primary kit-btn-disabled" :title="$t('kit.press.no_assets')">{{ $t('kit.press.no_assets') }}</span>
190
+ </template>
186
191
  <a v-if="kit.press_contact_email" class="kit-btn kit-btn-ghost" :href="`mailto:${kit.press_contact_email}`" @click="track('contact')">{{ $t('kit.press.request_key') }}</a>
187
192
  </div>
188
193
  </div>
@@ -205,7 +210,10 @@ useSeoMeta({
205
210
  <div class="kit-stickybar" :class="{ visible: scrolled }">
206
211
  <span class="kit-stickybar-name">{{ kit.name }}</span>
207
212
  <div class="kit-stickybar-actions">
208
- <a v-if="allowDownload" class="kit-btn kit-btn-primary kit-btn-sm" @click="track('download')">{{ $t('kit.press.download_assets') }}</a>
213
+ <template v-if="allowDownload">
214
+ <a v-if="canDownload" class="kit-btn kit-btn-primary kit-btn-sm" @click="track('download')">{{ $t('kit.press.download_assets') }}</a>
215
+ <span v-else class="kit-btn kit-btn-primary kit-btn-sm kit-btn-disabled" :title="$t('kit.press.no_assets')">{{ $t('kit.press.no_assets') }}</span>
216
+ </template>
209
217
  <a v-if="kit.press_contact_email" class="kit-btn kit-btn-ghost kit-btn-sm" :href="`mailto:${kit.press_contact_email}`" @click="track('contact')">{{ $t('kit.press.request_key') }}</a>
210
218
  </div>
211
219
  </div>
@@ -249,7 +257,7 @@ useSeoMeta({
249
257
 
250
258
  <section v-if="screenshots.length || brandAssets.length" id="media" class="kit-block">
251
259
  <div v-if="screenshots.length">
252
- <div class="kit-shead"><h2>{{ $t('kit.press.screenshots') }}</h2><a v-if="allowDownload" class="kit-dl" @click="track('download')">{{ $t('kit.press.download_all') }}</a></div>
260
+ <div class="kit-shead"><h2>{{ $t('kit.press.screenshots') }}</h2><a v-if="canDownload" class="kit-dl" @click="track('download')">{{ $t('kit.press.download_all') }}</a></div>
253
261
  <div class="kit-gallery">
254
262
  <a v-for="(s, i) in screenshots" :key="i" class="kit-shot" :href="s.url" target="_blank" rel="noopener"><img :src="s.thumbnail_url || s.url" :alt="s.title || ''" /></a>
255
263
  </div>