codebyplan 1.13.31 → 1.13.32
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/dist/cli.js +36 -11
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -14,7 +14,7 @@ var VERSION, PACKAGE_NAME;
|
|
|
14
14
|
var init_version = __esm({
|
|
15
15
|
"src/lib/version.ts"() {
|
|
16
16
|
"use strict";
|
|
17
|
-
VERSION = "1.13.
|
|
17
|
+
VERSION = "1.13.32";
|
|
18
18
|
PACKAGE_NAME = "codebyplan";
|
|
19
19
|
}
|
|
20
20
|
});
|
|
@@ -1493,6 +1493,23 @@ function mergeBaseSettingsIntoSettings(settings, base) {
|
|
|
1493
1493
|
if (base.permissions.skipDangerousModePermissionPrompt !== void 0 && existing.skipDangerousModePermissionPrompt === void 0) {
|
|
1494
1494
|
existing.skipDangerousModePermissionPrompt = base.permissions.skipDangerousModePermissionPrompt;
|
|
1495
1495
|
}
|
|
1496
|
+
const baseEntryTier = /* @__PURE__ */ new Map();
|
|
1497
|
+
for (const key of ["deny", "ask", "allow"]) {
|
|
1498
|
+
const baseArr = base.permissions[key];
|
|
1499
|
+
if (!baseArr) continue;
|
|
1500
|
+
for (const entry of baseArr) {
|
|
1501
|
+
baseEntryTier.set(entry, key);
|
|
1502
|
+
}
|
|
1503
|
+
}
|
|
1504
|
+
if (baseEntryTier.size > 0) {
|
|
1505
|
+
for (const key of ["deny", "ask", "allow"]) {
|
|
1506
|
+
const current = existing[key];
|
|
1507
|
+
if (!current) continue;
|
|
1508
|
+
existing[key] = current.filter(
|
|
1509
|
+
(entry) => !baseEntryTier.has(entry) || baseEntryTier.get(entry) === key
|
|
1510
|
+
);
|
|
1511
|
+
}
|
|
1512
|
+
}
|
|
1496
1513
|
for (const key of ["deny", "ask", "allow"]) {
|
|
1497
1514
|
const incoming = base.permissions[key];
|
|
1498
1515
|
if (!incoming || incoming.length === 0) continue;
|
|
@@ -1507,6 +1524,11 @@ function mergeBaseSettingsIntoSettings(settings, base) {
|
|
|
1507
1524
|
}
|
|
1508
1525
|
existing[key] = merged;
|
|
1509
1526
|
}
|
|
1527
|
+
for (const key of ["deny", "ask", "allow"]) {
|
|
1528
|
+
if (existing[key]?.length === 0) {
|
|
1529
|
+
delete existing[key];
|
|
1530
|
+
}
|
|
1531
|
+
}
|
|
1510
1532
|
if (settings.permissions !== void 0 || Object.keys(existing).length > 0) {
|
|
1511
1533
|
settings.permissions = existing;
|
|
1512
1534
|
}
|
|
@@ -1550,17 +1572,20 @@ function stripBaseSettingsFromSettings(settings, base) {
|
|
|
1550
1572
|
if (base.permissions.skipDangerousModePermissionPrompt !== void 0 && perms.skipDangerousModePermissionPrompt === base.permissions.skipDangerousModePermissionPrompt) {
|
|
1551
1573
|
delete perms.skipDangerousModePermissionPrompt;
|
|
1552
1574
|
}
|
|
1575
|
+
const baseOwned = /* @__PURE__ */ new Set();
|
|
1553
1576
|
for (const key of ["deny", "ask", "allow"]) {
|
|
1554
|
-
const
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1577
|
+
for (const entry of base.permissions[key] ?? []) baseOwned.add(entry);
|
|
1578
|
+
}
|
|
1579
|
+
if (baseOwned.size > 0) {
|
|
1580
|
+
for (const key of ["deny", "ask", "allow"]) {
|
|
1581
|
+
const current = perms[key];
|
|
1582
|
+
if (!current) continue;
|
|
1583
|
+
const filtered = current.filter((x) => !baseOwned.has(x));
|
|
1584
|
+
if (filtered.length === 0) {
|
|
1585
|
+
delete perms[key];
|
|
1586
|
+
} else {
|
|
1587
|
+
perms[key] = filtered;
|
|
1588
|
+
}
|
|
1564
1589
|
}
|
|
1565
1590
|
}
|
|
1566
1591
|
if (Object.keys(perms).length === 0) {
|