@mundogamernetwork/shared-ui 1.2.5 → 1.2.7
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.
- package/nuxt.config.ts +30 -0
- package/package.json +1 -1
- package/pages/key-campaigns/[slug].vue +61 -56
package/nuxt.config.ts
CHANGED
|
@@ -61,6 +61,36 @@ export default defineNuxtConfig({
|
|
|
61
61
|
priority: SHARED_UI_COMPONENT_PRIORITY,
|
|
62
62
|
},
|
|
63
63
|
],
|
|
64
|
+
// @pinia/nuxt only auto-scans the top-level app's own storesDirs by
|
|
65
|
+
// default — it does NOT pick up an extended layer's stores/ directory on
|
|
66
|
+
// its own. Every consuming app previously had to hand-list these specific
|
|
67
|
+
// files in its own nuxt.config.ts pinia.storesDirs (see tv-frontend/
|
|
68
|
+
// community-frontend/agency-frontend history) — easy to forget for new
|
|
69
|
+
// apps and a real cause of a production 500 (useAnnouncementStore /
|
|
70
|
+
// useAppInstallBannerStore "is not defined") when tv-frontend's list
|
|
71
|
+
// went stale relative to shared-ui.
|
|
72
|
+
//
|
|
73
|
+
// Nuxt/c12 merges extended-layer config via defu, which concatenates
|
|
74
|
+
// arrays, so declaring these here gets picked up by every consumer
|
|
75
|
+
// automatically without they having to list them — consumers can still
|
|
76
|
+
// add their own storesDirs entries and this list just gets appended.
|
|
77
|
+
//
|
|
78
|
+
// Deliberately an explicit file list, NOT "${packageRoot}/stores/**" —
|
|
79
|
+
// shared-ui also ships auth/chat/contact/institutional/index stores that
|
|
80
|
+
// collide by name with consuming apps' own, more full-featured local
|
|
81
|
+
// versions; a full glob would silently override them.
|
|
82
|
+
//
|
|
83
|
+
// Absolute paths (via packageRoot), same reasoning as the components dir
|
|
84
|
+
// above: a relative path here resolves against the *consuming app's*
|
|
85
|
+
// srcDir when this file is loaded as an extended layer, not shared-ui's
|
|
86
|
+
// own directory.
|
|
87
|
+
pinia: {
|
|
88
|
+
storesDirs: [
|
|
89
|
+
`${packageRoot}/stores/announcement.ts`,
|
|
90
|
+
`${packageRoot}/stores/appInstallBanner.ts`,
|
|
91
|
+
`${packageRoot}/stores/promotion.ts`,
|
|
92
|
+
],
|
|
93
|
+
},
|
|
64
94
|
css: [
|
|
65
95
|
"@mundogamernetwork/shared-ui/assets/kit/kit-base.css",
|
|
66
96
|
"@mundogamernetwork/shared-ui/assets/kit/kit-theme.css",
|
package/package.json
CHANGED
|
@@ -1427,62 +1427,6 @@ onMounted(async () => {
|
|
|
1427
1427
|
}
|
|
1428
1428
|
}
|
|
1429
1429
|
|
|
1430
|
-
.users-modal {
|
|
1431
|
-
position: fixed;
|
|
1432
|
-
inset: 0;
|
|
1433
|
-
z-index: 1000;
|
|
1434
|
-
display: flex;
|
|
1435
|
-
align-items: center;
|
|
1436
|
-
justify-content: center;
|
|
1437
|
-
background: var(--overlay-dark-strong, rgba(0, 0, 0, 0.75));
|
|
1438
|
-
|
|
1439
|
-
.users-modal-content {
|
|
1440
|
-
width: 100%;
|
|
1441
|
-
max-width: 360px;
|
|
1442
|
-
max-height: 70vh;
|
|
1443
|
-
background: var(--button-secondary-default-bg);
|
|
1444
|
-
display: flex;
|
|
1445
|
-
flex-direction: column;
|
|
1446
|
-
}
|
|
1447
|
-
|
|
1448
|
-
.users-modal-header {
|
|
1449
|
-
display: flex;
|
|
1450
|
-
align-items: center;
|
|
1451
|
-
justify-content: space-between;
|
|
1452
|
-
padding: 16px;
|
|
1453
|
-
font-size: 14px;
|
|
1454
|
-
font-weight: 600;
|
|
1455
|
-
color: var(--card-article-title);
|
|
1456
|
-
border-bottom: 1px solid var(--bg-app-badge);
|
|
1457
|
-
|
|
1458
|
-
.close-button { background: transparent; border: none; color: var(--secondary-info-fg); cursor: pointer; }
|
|
1459
|
-
}
|
|
1460
|
-
|
|
1461
|
-
.users-modal-body {
|
|
1462
|
-
overflow-y: auto;
|
|
1463
|
-
padding: 8px 16px;
|
|
1464
|
-
}
|
|
1465
|
-
|
|
1466
|
-
.users-modal-empty {
|
|
1467
|
-
padding: 24px 0;
|
|
1468
|
-
text-align: center;
|
|
1469
|
-
font-size: 13px;
|
|
1470
|
-
color: var(--secondary-info-fg);
|
|
1471
|
-
}
|
|
1472
|
-
|
|
1473
|
-
.users-modal-row {
|
|
1474
|
-
display: flex;
|
|
1475
|
-
align-items: center;
|
|
1476
|
-
gap: 10px;
|
|
1477
|
-
padding: 10px 0;
|
|
1478
|
-
border-bottom: 1px solid var(--bg-app-badge);
|
|
1479
|
-
&:last-child { border-bottom: none; }
|
|
1480
|
-
|
|
1481
|
-
img { width: 36px; height: 36px; border-radius: 0; }
|
|
1482
|
-
span { font-size: 13px; color: var(--card-article-title); }
|
|
1483
|
-
}
|
|
1484
|
-
}
|
|
1485
|
-
|
|
1486
1430
|
.company {
|
|
1487
1431
|
display: flex;
|
|
1488
1432
|
gap: 12px;
|
|
@@ -1524,4 +1468,65 @@ onMounted(async () => {
|
|
|
1524
1468
|
}
|
|
1525
1469
|
}
|
|
1526
1470
|
}
|
|
1471
|
+
|
|
1472
|
+
// Top-level (not nested under #shared-campaign-detail's inner selectors) —
|
|
1473
|
+
// this is a fixed full-screen overlay rendered as a sibling of .actions in
|
|
1474
|
+
// the template, not a descendant, so it can't be scoped under .actions/
|
|
1475
|
+
// .side-border/.cards like the rest of this file without the compiled
|
|
1476
|
+
// descendant selector silently never matching (which is what broke it).
|
|
1477
|
+
.users-modal {
|
|
1478
|
+
position: fixed;
|
|
1479
|
+
inset: 0;
|
|
1480
|
+
z-index: 1000;
|
|
1481
|
+
display: flex;
|
|
1482
|
+
align-items: center;
|
|
1483
|
+
justify-content: center;
|
|
1484
|
+
background: var(--overlay-dark-strong, rgba(0, 0, 0, 0.75));
|
|
1485
|
+
|
|
1486
|
+
.users-modal-content {
|
|
1487
|
+
width: 100%;
|
|
1488
|
+
max-width: 360px;
|
|
1489
|
+
max-height: 70vh;
|
|
1490
|
+
background: var(--button-secondary-default-bg);
|
|
1491
|
+
display: flex;
|
|
1492
|
+
flex-direction: column;
|
|
1493
|
+
}
|
|
1494
|
+
|
|
1495
|
+
.users-modal-header {
|
|
1496
|
+
display: flex;
|
|
1497
|
+
align-items: center;
|
|
1498
|
+
justify-content: space-between;
|
|
1499
|
+
padding: 16px;
|
|
1500
|
+
font-size: 14px;
|
|
1501
|
+
font-weight: 600;
|
|
1502
|
+
color: var(--card-article-title);
|
|
1503
|
+
border-bottom: 1px solid var(--bg-app-badge);
|
|
1504
|
+
|
|
1505
|
+
.close-button { background: transparent; border: none; color: var(--secondary-info-fg); cursor: pointer; }
|
|
1506
|
+
}
|
|
1507
|
+
|
|
1508
|
+
.users-modal-body {
|
|
1509
|
+
overflow-y: auto;
|
|
1510
|
+
padding: 8px 16px;
|
|
1511
|
+
}
|
|
1512
|
+
|
|
1513
|
+
.users-modal-empty {
|
|
1514
|
+
padding: 24px 0;
|
|
1515
|
+
text-align: center;
|
|
1516
|
+
font-size: 13px;
|
|
1517
|
+
color: var(--secondary-info-fg);
|
|
1518
|
+
}
|
|
1519
|
+
|
|
1520
|
+
.users-modal-row {
|
|
1521
|
+
display: flex;
|
|
1522
|
+
align-items: center;
|
|
1523
|
+
gap: 10px;
|
|
1524
|
+
padding: 10px 0;
|
|
1525
|
+
border-bottom: 1px solid var(--bg-app-badge);
|
|
1526
|
+
&:last-child { border-bottom: none; }
|
|
1527
|
+
|
|
1528
|
+
img { width: 36px; height: 36px; border-radius: 100%; object-fit: cover; }
|
|
1529
|
+
span { font-size: 13px; color: var(--card-article-title); }
|
|
1530
|
+
}
|
|
1531
|
+
}
|
|
1527
1532
|
</style>
|