@todesktop/cli 1.9.8 → 1.10.1

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/README.md CHANGED
@@ -1125,6 +1125,14 @@ Now, when we build your app on ToDesktop servers, it will also run your custom `
1125
1125
 
1126
1126
  ## Changelog
1127
1127
 
1128
+ ### v1.10.1
1129
+
1130
+ - Fix: add JSON schema for missing `todesktop.json` properties
1131
+
1132
+ ### v1.10.0
1133
+
1134
+ - Throw error if unsupported properties are provided in `todesktop.json`
1135
+
1128
1136
  ### v1.9.8
1129
1137
 
1130
1138
  - Chore: bump dependencies
package/dist/cli.js CHANGED
@@ -1472,6 +1472,7 @@ var full_default = (context) => {
1472
1472
  return {
1473
1473
  type: "object",
1474
1474
  required: ["id", "icon", "schemaVersion"],
1475
+ additionalProperties: false,
1475
1476
  properties: {
1476
1477
  appBuilderLibVersion: {
1477
1478
  type: "string",
@@ -1532,11 +1533,13 @@ var full_default = (context) => {
1532
1533
  type: "string",
1533
1534
  minLength: 1
1534
1535
  },
1536
+ extends: { type: "string", minLength: 1 },
1535
1537
  extraContentFiles: {
1536
1538
  type: "array",
1537
1539
  items: {
1538
1540
  type: "object",
1539
1541
  required: ["from"],
1542
+ additionalProperties: false,
1540
1543
  properties: {
1541
1544
  from: {
1542
1545
  type: "string",
@@ -1551,6 +1554,7 @@ var full_default = (context) => {
1551
1554
  items: {
1552
1555
  type: "object",
1553
1556
  required: ["from"],
1557
+ additionalProperties: false,
1554
1558
  properties: {
1555
1559
  from: {
1556
1560
  type: "string",
@@ -1565,6 +1569,7 @@ var full_default = (context) => {
1565
1569
  items: {
1566
1570
  type: "object",
1567
1571
  required: ["ext"],
1572
+ additionalProperties: false,
1568
1573
  properties: {
1569
1574
  ext: getItemOrArrayOfItemsSchema({
1570
1575
  type: "string",
@@ -1595,7 +1600,7 @@ var full_default = (context) => {
1595
1600
  },
1596
1601
  rank: {
1597
1602
  type: "string",
1598
- minLength: 1
1603
+ enum: ["Owner", "Default", "Alternate", "None"]
1599
1604
  }
1600
1605
  }
1601
1606
  },
@@ -1612,6 +1617,7 @@ var full_default = (context) => {
1612
1617
  icon: getIconSchema(),
1613
1618
  linux: {
1614
1619
  type: "object",
1620
+ additionalProperties: false,
1615
1621
  properties: {
1616
1622
  category: { type: "string", minLength: 1 },
1617
1623
  icon: getIconSchema(),
@@ -1625,6 +1631,7 @@ var full_default = (context) => {
1625
1631
  },
1626
1632
  mac: {
1627
1633
  type: "object",
1634
+ additionalProperties: false,
1628
1635
  properties: {
1629
1636
  category: { type: "string", minLength: 1 },
1630
1637
  additionalBinariesToSign: {
@@ -1669,6 +1676,7 @@ var full_default = (context) => {
1669
1676
  },
1670
1677
  mas: {
1671
1678
  type: "object",
1679
+ additionalProperties: false,
1672
1680
  properties: {
1673
1681
  entitlements: {
1674
1682
  type: "string",
@@ -1708,6 +1716,7 @@ var full_default = (context) => {
1708
1716
  },
1709
1717
  dmg: {
1710
1718
  type: "object",
1719
+ additionalProperties: false,
1711
1720
  properties: {
1712
1721
  background: {
1713
1722
  type: "string",
@@ -1727,6 +1736,7 @@ var full_default = (context) => {
1727
1736
  type: "array",
1728
1737
  items: {
1729
1738
  type: "object",
1739
+ additionalProperties: false,
1730
1740
  properties: {
1731
1741
  x: { type: "number" },
1732
1742
  y: { type: "number" }
@@ -1735,6 +1745,7 @@ var full_default = (context) => {
1735
1745
  },
1736
1746
  window: {
1737
1747
  type: "object",
1748
+ additionalProperties: false,
1738
1749
  properties: {
1739
1750
  x: { type: "number" },
1740
1751
  y: { type: "number" },
@@ -1759,6 +1770,9 @@ var full_default = (context) => {
1759
1770
  validSemver: {},
1760
1771
  minLength: 1
1761
1772
  },
1773
+ packageJson: {
1774
+ type: "object"
1775
+ },
1762
1776
  packageManager: {
1763
1777
  type: "string",
1764
1778
  enum: ["npm", "yarn", "pnpm"]
@@ -1770,6 +1784,7 @@ var full_default = (context) => {
1770
1784
  schemaVersion: { type: "number", minimum: 1, maximum: 1 },
1771
1785
  snap: {
1772
1786
  type: "object",
1787
+ additionalProperties: false,
1773
1788
  properties: {
1774
1789
  after: {
1775
1790
  type: "array",
@@ -1848,10 +1863,12 @@ var full_default = (context) => {
1848
1863
  },
1849
1864
  windows: {
1850
1865
  type: "object",
1866
+ additionalProperties: false,
1851
1867
  properties: {
1852
1868
  icon: getIconSchema(["ico"]),
1853
1869
  nsisCustomBinary: {
1854
1870
  type: "object",
1871
+ additionalProperties: false,
1855
1872
  properties: {
1856
1873
  checksum: { type: "string" },
1857
1874
  debugLogging: { type: "boolean" },
@@ -1891,6 +1908,15 @@ function validateConfig({
1891
1908
  (0, import_ajv_formats2.default)(ajv);
1892
1909
  addCustomKeywords_default(ajv, context);
1893
1910
  const validate = ajv.compile(schema);
1911
+ if (config2.productName) {
1912
+ throw new Error(
1913
+ `todesktop.json invalid.
1914
+
1915
+ The "productName" property is no longer supported in todesktop.json. Please remove it and add it to your app's package.json instead.
1916
+
1917
+ We made this change because Electron also uses the "productName" if it exists in your app's package.json. If you do not add it to your package.json, your app name will default to the value of the "name" property in your package.json.`
1918
+ );
1919
+ }
1894
1920
  if (!validate(config2)) {
1895
1921
  const output = (0, import_better_ajv_errors2.default)(schema, config2, validate.errors, {
1896
1922
  indent: 2
@@ -1902,15 +1928,6 @@ Learn more here: https://www.npmjs.com/package/@todesktop/cli#project-configurat
1902
1928
  ${output}`
1903
1929
  );
1904
1930
  }
1905
- if (config2.productName) {
1906
- throw new Error(
1907
- `todesktop.json invalid.
1908
-
1909
- The "productName" property is no longer supported in todesktop.json. Please remove it and add it to your app's package.json instead.
1910
-
1911
- We made this change because Electron also uses the "productName" if it exists in your app's package.json. If you do not add it to your package.json, your app name will default to the value of the "name" property in your package.json.`
1912
- );
1913
- }
1914
1931
  }
1915
1932
 
1916
1933
  // src/utilities/projectConfig/computeFullProjectConfig.ts
@@ -5297,7 +5314,7 @@ var package_default = {
5297
5314
  access: "public"
5298
5315
  },
5299
5316
  name: "@todesktop/cli",
5300
- version: "1.9.7",
5317
+ version: "1.10.0",
5301
5318
  license: "MIT",
5302
5319
  author: "Dave Jeffery <dave@todesktop.com> (http://www.todesktop.com/)",
5303
5320
  homepage: "https://todesktop.com/cli",