@koda-sl/baker-cli 0.32.0-dev.31ee8d9c → 0.34.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.
- package/README.md +101 -12
- package/dist/cli.js +1 -1
- package/dist/commands/images/extract.d.ts +5 -0
- package/dist/commands/images/extract.d.ts.map +1 -1
- package/dist/commands/images/extract.js +8 -0
- package/dist/commands/images/extract.js.map +1 -1
- package/dist/commands/images/find.d.ts +5 -0
- package/dist/commands/images/find.d.ts.map +1 -1
- package/dist/commands/images/find.js +9 -1
- package/dist/commands/images/find.js.map +1 -1
- package/dist/commands/images/gif.d.ts +5 -0
- package/dist/commands/images/gif.d.ts.map +1 -1
- package/dist/commands/images/gif.js +8 -0
- package/dist/commands/images/gif.js.map +1 -1
- package/dist/commands/images/google.d.ts +5 -0
- package/dist/commands/images/google.d.ts.map +1 -1
- package/dist/commands/images/google.js +8 -0
- package/dist/commands/images/google.js.map +1 -1
- package/dist/commands/images/icon.d.ts +10 -0
- package/dist/commands/images/icon.d.ts.map +1 -1
- package/dist/commands/images/icon.js +17 -0
- package/dist/commands/images/icon.js.map +1 -1
- package/dist/commands/images/logo.d.ts +10 -0
- package/dist/commands/images/logo.d.ts.map +1 -1
- package/dist/commands/images/logo.js +24 -2
- package/dist/commands/images/logo.js.map +1 -1
- package/dist/commands/images/screenshot.d.ts +5 -0
- package/dist/commands/images/screenshot.d.ts.map +1 -1
- package/dist/commands/images/screenshot.js +8 -0
- package/dist/commands/images/screenshot.js.map +1 -1
- package/dist/commands/images/sticker.d.ts +5 -0
- package/dist/commands/images/sticker.d.ts.map +1 -1
- package/dist/commands/images/sticker.js +8 -0
- package/dist/commands/images/sticker.js.map +1 -1
- package/dist/commands/images/stock.d.ts +5 -0
- package/dist/commands/images/stock.d.ts.map +1 -1
- package/dist/commands/images/stock.js +8 -0
- package/dist/commands/images/stock.js.map +1 -1
- package/dist/commands/images/upload.d.ts +17 -2
- package/dist/commands/images/upload.d.ts.map +1 -1
- package/dist/commands/images/upload.js +95 -26
- package/dist/commands/images/upload.js.map +1 -1
- package/dist/commands/images/use.d.ts +5 -0
- package/dist/commands/images/use.d.ts.map +1 -1
- package/dist/commands/images/use.js +10 -1
- package/dist/commands/images/use.js.map +1 -1
- package/package.json +1 -1
- package/dist/commands/images/meme.d.ts +0 -28
- package/dist/commands/images/meme.d.ts.map +0 -1
- package/dist/commands/images/meme.js +0 -66
- package/dist/commands/images/meme.js.map +0 -1
package/README.md
CHANGED
|
@@ -1592,15 +1592,28 @@ Each external source is its own subcommand. Pick the verb that matches the sourc
|
|
|
1592
1592
|
| `baker images ingest <url>` | Save a remote URL to the library | ~$0.001–$0.002 (describe + embed) | always on |
|
|
1593
1593
|
| `baker images use <url>` | Sugar over `ingest` — waits until `ready` | same as `ingest` | always on |
|
|
1594
1594
|
| `baker images get <id>` | Single record | $0 | n/a |
|
|
1595
|
-
| `baker images upload <file>` | Upload a local file | $0 | always on |
|
|
1595
|
+
| `baker images upload <file\|url>` | Upload a local file OR remote URL to the library | $0 (local) / ~$0.001–$0.002 describe+embed (remote) | always on |
|
|
1596
1596
|
| `baker images delete <id>` | Delete a record | $0 | n/a |
|
|
1597
1597
|
|
|
1598
1598
|
**Auto-ingest** runs the full `processImage` pipeline (Gemini describe + Voyage multimodal embed + OpenRouter text embed, ~$0.001–$0.002/image) on top of the provider cost. Override with `--auto-ingest N` (turn on) or `--no-auto-ingest` (turn off where default is on). After auto-ingest the next `baker images library` query for the same concept hits the local row.
|
|
1599
1599
|
|
|
1600
|
+
**Provider context biases the description.** When a hit carries human-readable text (Giphy `alt_text` / `title`, Magnific `title`, Brandfetch type+theme, etc.) it's surfaced on the hit as `descriptionContext` and forwarded to Gemini during auto-ingest as a hint — Gemini still trusts the pixels (e.g. it'll correct a wrong botanical name) but uses the hint for cultural/brand/scene awareness it can't infer from bytes alone.
|
|
1601
|
+
|
|
1602
|
+
**`--context` is available on every command that adds an image to the library** — `ingest`, `use`, `upload`, `find`, `extract`, `screenshot`, `logo`, `stock`, `google`, `icon`, `gif`, `sticker`. On auto-ingest paths it **overrides** the provider-derived `descriptionContext` for every hit that gets ingested. Especially valuable for brand-vs-competitor disambiguation — Gemini cannot tell from pixels alone whether an icon belongs to "Stripe (integration partner)" vs "Stripe (competitor)". Concrete cases:
|
|
1603
|
+
|
|
1604
|
+
```bash
|
|
1605
|
+
baker images logo stripe.com --context "Stripe — payments integration partner shown in the integrations grid"
|
|
1606
|
+
baker images logo acme.com --context "Acme — direct competitor brand mark"
|
|
1607
|
+
baker images upload ./cert.png --context "ISO 27001 certification badge — show on enterprise pricing tier"
|
|
1608
|
+
baker images screenshot https://competitor.com/pricing --context "Competitor pricing page captured for comparison hero"
|
|
1609
|
+
```
|
|
1610
|
+
|
|
1600
1611
|
**Hash-dedup is automatic.** `contentHash` (sha256 of bytes) + `externalId` per-source — same JPEG from two providers becomes one library row.
|
|
1601
1612
|
|
|
1602
1613
|
**`baker images search` is a deprecated alias** for `library` (stderr deprecation log, removed in next minor).
|
|
1603
1614
|
|
|
1615
|
+
**Migrating from Tenor:** the old `baker images meme` command and Tenor provider have been removed. Use `baker images gif` (Giphy) instead. Existing library rows ingested via Tenor remain stored with `source: "tenor"` but are no longer returned by `baker images find` and `--source tenor` is no longer a valid filter on `library`. Re-ingest via `baker images gif --auto-ingest N` if you need fresh equivalents.
|
|
1616
|
+
|
|
1604
1617
|
### `baker images library <query>`
|
|
1605
1618
|
|
|
1606
1619
|
Search the company library (hybrid BM25 + vector + Cohere rerank). Use this FIRST before any external provider.
|
|
@@ -1638,7 +1651,7 @@ baker images find "office" --sources library,magnific --fallback --threshold 0.4
|
|
|
1638
1651
|
baker images find "celebration" --sources library,giphy --auto-ingest 3
|
|
1639
1652
|
```
|
|
1640
1653
|
|
|
1641
|
-
Providers: `library`, `magnific`, `google`, `iconify`, `
|
|
1654
|
+
Providers: `library`, `magnific`, `google`, `iconify`, `giphy`. Brandfetch is not part of the fanout — it takes a domain, not a query, so it lives at `baker images logo <domain>`. Response shape: `{ groups: { library, external }, meta: { counts, errors } }`. Partial failures (one provider throws) return the successful providers plus a `meta.errors` array; the whole call never fails on a single provider error.
|
|
1642
1655
|
|
|
1643
1656
|
**Flags:**
|
|
1644
1657
|
|
|
@@ -1649,6 +1662,7 @@ Providers: `library`, `magnific`, `google`, `iconify`, `brandfetch`, `giphy`. Re
|
|
|
1649
1662
|
| `--fallback` | Skip external providers when the top library score ≥ `--threshold` |
|
|
1650
1663
|
| `--threshold` | Library score floor for `--fallback` (default `0.4`) |
|
|
1651
1664
|
| `--auto-ingest` | Ingest top N external hits into the library (0–20, default 0) |
|
|
1665
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1652
1666
|
|
|
1653
1667
|
### `baker images stock <query>`
|
|
1654
1668
|
|
|
@@ -1678,6 +1692,7 @@ Cost: $0.002/req. Free tier exists but watermarks previews — pass `--license f
|
|
|
1678
1692
|
| `--limit` | Max results (1–50, default 10) |
|
|
1679
1693
|
| `--page` | Page number for pagination |
|
|
1680
1694
|
| `--auto-ingest` | Ingest top N hits (0–20, default 0) |
|
|
1695
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1681
1696
|
|
|
1682
1697
|
### `baker images google <query>`
|
|
1683
1698
|
|
|
@@ -1701,25 +1716,75 @@ Requires both `GOOGLE_CUSTOM_SEARCH_API_KEY` and `GOOGLE_CUSTOM_SEARCH_ENGINE_ID
|
|
|
1701
1716
|
| `--safe` | `off \| active` |
|
|
1702
1717
|
| `--limit` | Max results (1–50, paginated 10 per call) |
|
|
1703
1718
|
| `--auto-ingest` | Ingest top N (0–20, default 0) |
|
|
1719
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1704
1720
|
|
|
1705
1721
|
### `baker images logo <domain>`
|
|
1706
1722
|
|
|
1707
|
-
Brand logo via Brandfetch CDN (`fallback/404`).
|
|
1723
|
+
Brand logo via Brandfetch CDN (`fallback/404`). Probes all 5 logo variants in parallel and returns whichever ones the domain actually publishes. Auto-ingests the first by default.
|
|
1708
1724
|
|
|
1709
1725
|
```bash
|
|
1710
|
-
baker images logo stripe.com
|
|
1711
|
-
baker images logo linear.app --variant logo
|
|
1712
|
-
baker images logo
|
|
1726
|
+
baker images logo stripe.com # all available variants
|
|
1727
|
+
baker images logo linear.app --variant logo # just full wordmark logos (light + dark)
|
|
1728
|
+
baker images logo linear.app --variant icon # just the square app icon
|
|
1729
|
+
baker images logo linear.app --variant symbol # just the bare brand mark (no wordmark), light + dark
|
|
1730
|
+
baker images logo example.com --no-auto-ingest # browse without writing to library
|
|
1731
|
+
baker images logo stripe.com --auto-ingest 5 # ingest every returned variant
|
|
1732
|
+
```
|
|
1733
|
+
|
|
1734
|
+
**The 5 variants — pick by use case:**
|
|
1735
|
+
|
|
1736
|
+
| `--variant` | `providerMeta.type` | `providerMeta.theme` | What it is | Typical use |
|
|
1737
|
+
|---|---|---|---|---|
|
|
1738
|
+
| `icon` | `icon` | `null` (single) | App-style square icon (favicon-grade), often rounded | Favicon, social proof grid, app-tile mock |
|
|
1739
|
+
| `logo` | `logo` | `light` | Full wordmark designed for **light backgrounds** (dark ink on transparent) | Logo on white page, light hero |
|
|
1740
|
+
| `logo` | `logo` | `dark` | Full wordmark designed for **dark backgrounds** (light ink on transparent) | Footer on dark, dark hero |
|
|
1741
|
+
| `symbol` | `symbol` | `light` | Brand mark/glyph only (no wordmark) for **light backgrounds** | Compact UI, avatar, small-space placement |
|
|
1742
|
+
| `symbol` | `symbol` | `dark` | Brand mark/glyph only for **dark backgrounds** | Dark-mode compact UI |
|
|
1743
|
+
|
|
1744
|
+
Variants that don't exist for a domain are silently skipped — `linear.app` returns all 5, smaller brands may return only `icon + logo/light`. To enumerate exactly what a brand has, run with no `--variant` and inspect `providerMeta`.
|
|
1745
|
+
|
|
1746
|
+
**Response:**
|
|
1747
|
+
|
|
1748
|
+
```json
|
|
1749
|
+
{
|
|
1750
|
+
"ok": true,
|
|
1751
|
+
"data": {
|
|
1752
|
+
"hits": [
|
|
1753
|
+
{
|
|
1754
|
+
"source": "brandfetch",
|
|
1755
|
+
"url": "https://cdn.brandfetch.io/domain/linear.app/fallback/404/h/400/w/400/icon?c=…",
|
|
1756
|
+
"externalId": "linear.app:icon:none",
|
|
1757
|
+
"externalUrl": "https://linear.app",
|
|
1758
|
+
"descriptionContext": "linear.app brand icon",
|
|
1759
|
+
"providerMeta": { "type": "icon", "theme": null, "contentType": "image/png" }
|
|
1760
|
+
},
|
|
1761
|
+
{
|
|
1762
|
+
"source": "brandfetch",
|
|
1763
|
+
"url": "https://cdn.brandfetch.io/domain/linear.app/fallback/404/theme/light/h/400/w/400/logo?c=…",
|
|
1764
|
+
"externalId": "linear.app:logo:light",
|
|
1765
|
+
"providerMeta": { "type": "logo", "theme": "light", "contentType": "image/svg+xml" }
|
|
1766
|
+
},
|
|
1767
|
+
{ "providerMeta": { "type": "logo", "theme": "dark" }, "…": "…" },
|
|
1768
|
+
{ "providerMeta": { "type": "symbol", "theme": "light" }, "…": "…" },
|
|
1769
|
+
{ "providerMeta": { "type": "symbol", "theme": "dark" }, "…": "…" }
|
|
1770
|
+
],
|
|
1771
|
+
"ingested": [{ "imageId": "…", "deduped": false }]
|
|
1772
|
+
}
|
|
1773
|
+
}
|
|
1713
1774
|
```
|
|
1714
1775
|
|
|
1715
|
-
|
|
1776
|
+
The `externalId` shape is stable (`<domain>:<type>:<theme|none>`) — safe to use as a dedup key. Bytes are not prefetched into the response (Convex cache size limit); ingest re-fetches the CDN URL on demand.
|
|
1777
|
+
|
|
1778
|
+
If the domain isn't in Brandfetch at all the `hits` array is empty — fall back to `baker images extract https://<domain>` to pull the logo from the site directly.
|
|
1716
1779
|
|
|
1717
1780
|
**Flags:**
|
|
1718
1781
|
|
|
1719
1782
|
| Flag | Description |
|
|
1720
1783
|
|---------------------|--------------------------------------------------------------------------|
|
|
1721
|
-
| `--variant` | Pin to one variant: `icon \| logo \| symbol` (default:
|
|
1784
|
+
| `--variant` | Pin to one variant family: `icon \| logo \| symbol` (default: probe all 5). Combined with `--auto-ingest` you'll ingest both light + dark for `logo`/`symbol`. |
|
|
1785
|
+
| `--auto-ingest` | Ingest top N hits (0–20). Defaults to **1** (the first variant returned). Pass `5` to ingest every variant; pass `0` or `--no-auto-ingest` to browse without writing. |
|
|
1722
1786
|
| `--no-auto-ingest` | Skip the default top-1 ingest |
|
|
1787
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths). **Use this to distinguish competitor / partner / integration logos** — e.g. `--context "Stripe — payments integration partner"` vs `--context "Stripe — direct competitor"`. |
|
|
1723
1788
|
|
|
1724
1789
|
### `baker images icon <name> [--set <set>]`
|
|
1725
1790
|
|
|
@@ -1740,6 +1805,7 @@ Pass a prefixed id (`lucide:check`) to pin both set and name explicitly. Without
|
|
|
1740
1805
|
| `--set` | Iconify set (`simple-icons`, `logos`, `lucide`, `devicon`, `heroicons`, `tabler`, `phosphor`, …) |
|
|
1741
1806
|
| `--color` | Hex color — replaces `currentColor` in the SVG |
|
|
1742
1807
|
| `--width` | Render width in px (height auto-scales) |
|
|
1808
|
+
| `--context`| Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1743
1809
|
|
|
1744
1810
|
### `baker images gif <query>`
|
|
1745
1811
|
|
|
@@ -1763,6 +1829,7 @@ Each hit returns the primary URL (WebP — best for ingest) plus `providerMeta.g
|
|
|
1763
1829
|
| `--rating` | Content rating: `g \| pg \| pg-13 \| r` (default `pg`) |
|
|
1764
1830
|
| `--lang` | ISO 639-1 language code (`en`, `es`, `fr`, …) to bias results |
|
|
1765
1831
|
| `--auto-ingest` | Ingest top N (0–20, default 0). Ingest uses the WebP URL; `processImage` partial-fails on animated GIFs (no thumbhash/palette) but describe + embed still work. |
|
|
1832
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1766
1833
|
|
|
1767
1834
|
### `baker images sticker <query>`
|
|
1768
1835
|
|
|
@@ -1776,7 +1843,7 @@ baker images sticker --trending --limit 25
|
|
|
1776
1843
|
|
|
1777
1844
|
Same response shape as `gif`. `providerMeta.kind` is `"sticker"`; `externalUrl` points at `https://giphy.com/stickers/<id>`.
|
|
1778
1845
|
|
|
1779
|
-
**Flags:** identical to `baker images gif` (`--trending`, `--limit`, `--rating`, `--lang`, `--auto-ingest`).
|
|
1846
|
+
**Flags:** identical to `baker images gif` (`--trending`, `--limit`, `--rating`, `--lang`, `--auto-ingest`, `--context`).
|
|
1780
1847
|
|
|
1781
1848
|
### `baker images extract <url>`
|
|
1782
1849
|
|
|
@@ -1798,6 +1865,7 @@ Cost: $0.001/scrape. JS-rendered pages with `--wait-for` cost the heavier credit
|
|
|
1798
1865
|
| `--wait-for` | JS render wait in ms (0–30000) |
|
|
1799
1866
|
| `--limit` | Max images returned (default 50) |
|
|
1800
1867
|
| `--auto-ingest` | Ingest top N (0–20, default 0) |
|
|
1868
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1801
1869
|
|
|
1802
1870
|
### `baker images screenshot <url>`
|
|
1803
1871
|
|
|
@@ -1820,6 +1888,7 @@ Cost: $0.009/capture. ScreenshotOne caches captures for 30 days, so re-shotting
|
|
|
1820
1888
|
| `--full-page` | Capture the full scrolled page (default: viewport only) |
|
|
1821
1889
|
| `--viewport` | `WxH` viewport (default `1280x800`) |
|
|
1822
1890
|
| `--format` | `webp \| png \| jpg` (default `webp`) |
|
|
1891
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (always auto-ingests, so this overrides the URL-derived context) |
|
|
1823
1892
|
|
|
1824
1893
|
### `baker images ingest <url> --source <enum>`
|
|
1825
1894
|
|
|
@@ -1856,6 +1925,7 @@ baker images use https://cdn.example.com/hero.png --source magnific --max-wait 6
|
|
|
1856
1925
|
|----------------|--------------------------------------------------------------------------------------------|
|
|
1857
1926
|
| `--source` | Source enum (default `uploaded`) |
|
|
1858
1927
|
| `--max-wait` | Max wait ms before returning `TIMEOUT` (default `30000`, polled every 1500ms) |
|
|
1928
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags |
|
|
1859
1929
|
|
|
1860
1930
|
### `baker images get <id>`
|
|
1861
1931
|
|
|
@@ -1866,17 +1936,36 @@ baker images get j571abc123def
|
|
|
1866
1936
|
baker images get j571abc123def --full
|
|
1867
1937
|
```
|
|
1868
1938
|
|
|
1869
|
-
### `baker images upload <file>`
|
|
1939
|
+
### `baker images upload <file|url>`
|
|
1870
1940
|
|
|
1871
|
-
|
|
1941
|
+
Add an image to the library — accepts a **local file path** or a **remote `http(s)://` URL**. The positional arg is sniffed: if it starts with `http://` or `https://`, the call dispatches to `/api/images/ingest` (hash-deduped on bytes + externalId, byte-fetch happens server-side); otherwise the local file is read, base64-encoded, and sent to `/api/images/upload`.
|
|
1872
1942
|
|
|
1873
1943
|
```bash
|
|
1944
|
+
# Local file
|
|
1874
1945
|
baker images upload ./logo.png
|
|
1875
1946
|
baker images upload ./banner.jpg --source uploaded
|
|
1876
1947
|
baker images upload ./logo.png --dry-run
|
|
1948
|
+
baker images upload ./certificate.png --context "ISO 27001 certification badge — show on enterprise pricing tier"
|
|
1949
|
+
|
|
1950
|
+
# Remote URL — dispatches to ingest
|
|
1951
|
+
baker images upload https://acme.com/hero.png --source firecrawl --external-url https://acme.com/pricing --context "Acme — competitor pricing hero"
|
|
1952
|
+
baker images upload https://cdn.example.com/team.jpg --source uploaded --context "Real team photo from 2024 offsite — use on About page"
|
|
1877
1953
|
```
|
|
1878
1954
|
|
|
1879
|
-
|
|
1955
|
+
Local-mode supported extensions: `.png`, `.jpg`, `.jpeg`, `.gif`, `.webp`, `.svg`, `.avif`. Remote mode supports anything the ingest pipeline can fetch (25 MB cap).
|
|
1956
|
+
|
|
1957
|
+
**Flags:**
|
|
1958
|
+
|
|
1959
|
+
| Flag | Mode | Description |
|
|
1960
|
+
|------------------|--------|--------------------------------------------------------------------------------------------|
|
|
1961
|
+
| `--source` | both | Source enum (default `uploaded`). For remote URLs prefer `firecrawl`, `magnific`, etc. to match the origin |
|
|
1962
|
+
| `--content-type` | local | MIME type override (default: inferred from file extension). Ignored for URLs |
|
|
1963
|
+
| `--external-id` | remote | Provider asset id — enables per-source dedup before bytes are fetched |
|
|
1964
|
+
| `--external-url` | remote | Canonical page URL (parent page for scraped/Google hits, provider page for stock) |
|
|
1965
|
+
| `--dry-run` | both | Validate inputs without writing |
|
|
1966
|
+
| `--context` | both | Free-text hint passed to Gemini describe to bias the generated description and tags |
|
|
1967
|
+
|
|
1968
|
+
`baker images upload <url>` is functionally equivalent to `baker images ingest <url> --source <enum>` — use whichever verb reads more naturally in your agent prompt.
|
|
1880
1969
|
|
|
1881
1970
|
### `baker images delete <id>`
|
|
1882
1971
|
|
package/dist/cli.js
CHANGED
|
@@ -12,7 +12,7 @@ import { videosCommand } from "./commands/videos/index.js";
|
|
|
12
12
|
const main = defineCommand({
|
|
13
13
|
meta: {
|
|
14
14
|
name: "baker",
|
|
15
|
-
version: "0.
|
|
15
|
+
version: "0.34.1",
|
|
16
16
|
description: `AI-agent CLI for finding and managing images, videos, testimonials, action items, and ad platform data in Baker.
|
|
17
17
|
|
|
18
18
|
Auth: Set BAKER_API_KEY (starts with bk_) and BAKER_API_URL environment variables.
|
|
@@ -19,5 +19,10 @@ export declare const extractCommand: import("citty").CommandDef<{
|
|
|
19
19
|
readonly description: "Auto-ingest top N";
|
|
20
20
|
readonly required: false;
|
|
21
21
|
};
|
|
22
|
+
readonly context: {
|
|
23
|
+
readonly type: "string";
|
|
24
|
+
readonly description: "Description context hint applied to auto-ingested hits";
|
|
25
|
+
readonly required: false;
|
|
26
|
+
};
|
|
22
27
|
}>;
|
|
23
28
|
//# sourceMappingURL=extract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../../src/commands/images/extract.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../../src/commands/images/extract.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCzB,CAAC"}
|
|
@@ -10,6 +10,11 @@ registerSchema({
|
|
|
10
10
|
"wait-for": { type: "number", description: "JS render wait ms", required: false },
|
|
11
11
|
limit: { type: "number", description: "Limit returned images", required: false, default: 50 },
|
|
12
12
|
"auto-ingest": { type: "number", description: "Auto-ingest top N", required: false, default: 0 },
|
|
13
|
+
context: {
|
|
14
|
+
type: "string",
|
|
15
|
+
description: "Free-text hint applied to every auto-ingested hit (overrides provider-derived context)",
|
|
16
|
+
required: false,
|
|
17
|
+
},
|
|
13
18
|
},
|
|
14
19
|
});
|
|
15
20
|
export const extractCommand = defineCommand({
|
|
@@ -22,6 +27,7 @@ export const extractCommand = defineCommand({
|
|
|
22
27
|
"wait-for": { type: "string", description: "JS render wait ms", required: false },
|
|
23
28
|
limit: { type: "string", description: "Max returned images", required: false },
|
|
24
29
|
"auto-ingest": { type: "string", description: "Auto-ingest top N", required: false },
|
|
30
|
+
context: { type: "string", description: "Description context hint applied to auto-ingested hits", required: false },
|
|
25
31
|
},
|
|
26
32
|
run: async ({ args }) => {
|
|
27
33
|
try {
|
|
@@ -37,6 +43,8 @@ export const extractCommand = defineCommand({
|
|
|
37
43
|
body.limit = Number(args.limit);
|
|
38
44
|
if (args["auto-ingest"])
|
|
39
45
|
body.autoIngest = Number(args["auto-ingest"]);
|
|
46
|
+
if (args.context)
|
|
47
|
+
body.descriptionContext = args.context;
|
|
40
48
|
const data = await apiPost("/api/images/extract", body);
|
|
41
49
|
writeJson({ ok: true, data });
|
|
42
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../src/commands/images/extract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,CAAC;IACb,OAAO,EAAE,gBAAgB;IACzB,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE;QACJ,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE;QACrE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE;QACjF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QAC7F,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../src/commands/images/extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,5 +29,10 @@ export declare const findCommand: import("citty").CommandDef<{
|
|
|
29
29
|
readonly description: "Auto-ingest top N external hits";
|
|
30
30
|
readonly required: false;
|
|
31
31
|
};
|
|
32
|
+
readonly context: {
|
|
33
|
+
readonly type: "string";
|
|
34
|
+
readonly description: "Description context hint applied to auto-ingested hits";
|
|
35
|
+
readonly required: false;
|
|
36
|
+
};
|
|
32
37
|
}>;
|
|
33
38
|
//# sourceMappingURL=find.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/commands/images/find.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/commands/images/find.ts"],"names":[],"mappings":"AAiCA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCtB,CAAC"}
|
|
@@ -9,7 +9,7 @@ registerSchema({
|
|
|
9
9
|
query: { type: "string", description: "Search query", required: true },
|
|
10
10
|
sources: {
|
|
11
11
|
type: "string",
|
|
12
|
-
description: "Comma-separated providers: library,magnific,google,iconify,brandfetch
|
|
12
|
+
description: "Comma-separated providers: library,magnific,google,iconify,giphy (brandfetch lives at `baker images logo`)",
|
|
13
13
|
required: false,
|
|
14
14
|
},
|
|
15
15
|
limit: { type: "number", description: "Max results per group", required: false, default: 20 },
|
|
@@ -21,6 +21,11 @@ registerSchema({
|
|
|
21
21
|
},
|
|
22
22
|
threshold: { type: "number", description: "Fallback threshold (0-1)", required: false, default: 0.4 },
|
|
23
23
|
"auto-ingest": { type: "number", description: "Auto-ingest top N external hits", required: false, default: 0 },
|
|
24
|
+
context: {
|
|
25
|
+
type: "string",
|
|
26
|
+
description: "Free-text hint applied to every auto-ingested hit (overrides provider-derived context)",
|
|
27
|
+
required: false,
|
|
28
|
+
},
|
|
24
29
|
},
|
|
25
30
|
});
|
|
26
31
|
export const findCommand = defineCommand({
|
|
@@ -35,6 +40,7 @@ export const findCommand = defineCommand({
|
|
|
35
40
|
fallback: { type: "boolean", description: "Cascade to externals only when library thin", required: false },
|
|
36
41
|
threshold: { type: "string", description: "Fallback threshold (default 0.4)", required: false },
|
|
37
42
|
"auto-ingest": { type: "string", description: "Auto-ingest top N external hits", required: false },
|
|
43
|
+
context: { type: "string", description: "Description context hint applied to auto-ingested hits", required: false },
|
|
38
44
|
},
|
|
39
45
|
run: async ({ args }) => {
|
|
40
46
|
try {
|
|
@@ -54,6 +60,8 @@ export const findCommand = defineCommand({
|
|
|
54
60
|
body.threshold = Number(args.threshold);
|
|
55
61
|
if (args["auto-ingest"])
|
|
56
62
|
body.autoIngest = Number(args["auto-ingest"]);
|
|
63
|
+
if (args.context)
|
|
64
|
+
body.descriptionContext = args.context;
|
|
57
65
|
const data = await apiPost("/api/images/find", body);
|
|
58
66
|
writeJson({ ok: true, data });
|
|
59
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../src/commands/images/find.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,CAAC;IACb,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,uEAAuE;IACpF,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtE,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,
|
|
1
|
+
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../../src/commands/images/find.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,5 +29,10 @@ export declare const gifCommand: import("citty").CommandDef<{
|
|
|
29
29
|
readonly description: "Auto-ingest top N";
|
|
30
30
|
readonly required: false;
|
|
31
31
|
};
|
|
32
|
+
readonly context: {
|
|
33
|
+
readonly type: "string";
|
|
34
|
+
readonly description: "Description context hint applied to ingested GIFs";
|
|
35
|
+
readonly required: false;
|
|
36
|
+
};
|
|
32
37
|
}>;
|
|
33
38
|
//# sourceMappingURL=gif.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gif.d.ts","sourceRoot":"","sources":["../../../src/commands/images/gif.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gif.d.ts","sourceRoot":"","sources":["../../../src/commands/images/gif.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8CrB,CAAC"}
|
|
@@ -26,6 +26,11 @@ registerSchema({
|
|
|
26
26
|
required: false,
|
|
27
27
|
default: 0,
|
|
28
28
|
},
|
|
29
|
+
context: {
|
|
30
|
+
type: "string",
|
|
31
|
+
description: "Free-text hint applied to ingested GIFs (overrides Giphy title/alt)",
|
|
32
|
+
required: false,
|
|
33
|
+
},
|
|
29
34
|
},
|
|
30
35
|
});
|
|
31
36
|
export const gifCommand = defineCommand({
|
|
@@ -40,6 +45,7 @@ export const gifCommand = defineCommand({
|
|
|
40
45
|
rating: { type: "string", description: "Content rating", required: false },
|
|
41
46
|
lang: { type: "string", description: "Language code", required: false },
|
|
42
47
|
"auto-ingest": { type: "string", description: "Auto-ingest top N", required: false },
|
|
48
|
+
context: { type: "string", description: "Description context hint applied to ingested GIFs", required: false },
|
|
43
49
|
},
|
|
44
50
|
run: async ({ args }) => {
|
|
45
51
|
try {
|
|
@@ -65,6 +71,8 @@ export const gifCommand = defineCommand({
|
|
|
65
71
|
body.lang = args.lang;
|
|
66
72
|
if (args["auto-ingest"])
|
|
67
73
|
body.autoIngest = Number(args["auto-ingest"]);
|
|
74
|
+
if (args.context)
|
|
75
|
+
body.descriptionContext = args.context;
|
|
68
76
|
const data = await apiPost("/api/images/gif", body);
|
|
69
77
|
writeJson({ ok: true, data });
|
|
70
78
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gif.js","sourceRoot":"","sources":["../../../src/commands/images/gif.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,CAAC;IACb,OAAO,EAAE,YAAY;IACrB,WAAW,EAAE,gEAAgE;IAC7E,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC9F,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,yDAAyD;YACtE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;SACf;QACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACxG,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,iDAAiD;YAC9D,QAAQ,EAAE,KAAK;SAChB;QACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC9F,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC;SACX;KACF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC;IACtC,IAAI,EAAE;QACJ,IAAI,EAAE,KAAK;QACX,WAAW,EACT,uYAAuY;KAC1Y;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,qCAAqC,EAAE,QAAQ,EAAE,KAAK,EAAE;QAClG,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC5E,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE;QACtE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC1E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE;QACvE,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"gif.js","sourceRoot":"","sources":["../../../src/commands/images/gif.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,5 +34,10 @@ export declare const googleCommand: import("citty").CommandDef<{
|
|
|
34
34
|
readonly description: "Auto-ingest top N";
|
|
35
35
|
readonly required: false;
|
|
36
36
|
};
|
|
37
|
+
readonly context: {
|
|
38
|
+
readonly type: "string";
|
|
39
|
+
readonly description: "Description context hint applied to auto-ingested hits";
|
|
40
|
+
readonly required: false;
|
|
41
|
+
};
|
|
37
42
|
}>;
|
|
38
43
|
//# sourceMappingURL=google.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.d.ts","sourceRoot":"","sources":["../../../src/commands/images/google.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"google.d.ts","sourceRoot":"","sources":["../../../src/commands/images/google.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CxB,CAAC"}
|
|
@@ -25,6 +25,11 @@ registerSchema({
|
|
|
25
25
|
safe: { type: "string", description: "safe: off | active", required: false },
|
|
26
26
|
limit: { type: "number", description: "Max results (1-50, paginated 10 per call)", required: false, default: 10 },
|
|
27
27
|
"auto-ingest": { type: "number", description: "Auto-ingest top N", required: false, default: 0 },
|
|
28
|
+
context: {
|
|
29
|
+
type: "string",
|
|
30
|
+
description: "Free-text hint applied to every auto-ingested hit (overrides Google title)",
|
|
31
|
+
required: false,
|
|
32
|
+
},
|
|
28
33
|
},
|
|
29
34
|
});
|
|
30
35
|
export const googleCommand = defineCommand({
|
|
@@ -40,6 +45,7 @@ export const googleCommand = defineCommand({
|
|
|
40
45
|
safe: { type: "string", description: "safe (off|active)", required: false },
|
|
41
46
|
limit: { type: "string", description: "Max results (1-50)", required: false },
|
|
42
47
|
"auto-ingest": { type: "string", description: "Auto-ingest top N", required: false },
|
|
48
|
+
context: { type: "string", description: "Description context hint applied to auto-ingested hits", required: false },
|
|
43
49
|
},
|
|
44
50
|
run: async ({ args }) => {
|
|
45
51
|
try {
|
|
@@ -61,6 +67,8 @@ export const googleCommand = defineCommand({
|
|
|
61
67
|
body.limit = Number(args.limit);
|
|
62
68
|
if (args["auto-ingest"])
|
|
63
69
|
body.autoIngest = Number(args["auto-ingest"]);
|
|
70
|
+
if (args.context)
|
|
71
|
+
body.descriptionContext = args.context;
|
|
64
72
|
const data = await apiPost("/api/images/google", body);
|
|
65
73
|
writeJson({ ok: true, data });
|
|
66
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../../src/commands/images/google.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,CAAC;IACb,OAAO,EAAE,eAAe;IACxB,WAAW,EACT,2GAA2G;IAC7G,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtE,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qEAAqE;YAClF,QAAQ,EAAE,KAAK;SAChB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kEAAkE;YAC/E,QAAQ,EAAE,KAAK;SAChB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,KAAK;SAChB;QACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC5E,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACjH,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../../src/commands/images/google.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,5 +19,15 @@ export declare const iconCommand: import("citty").CommandDef<{
|
|
|
19
19
|
readonly description: "Width in px";
|
|
20
20
|
readonly required: false;
|
|
21
21
|
};
|
|
22
|
+
readonly "auto-ingest": {
|
|
23
|
+
readonly type: "string";
|
|
24
|
+
readonly description: "Auto-ingest top N";
|
|
25
|
+
readonly required: false;
|
|
26
|
+
};
|
|
27
|
+
readonly context: {
|
|
28
|
+
readonly type: "string";
|
|
29
|
+
readonly description: "Description context hint applied to ingested icons";
|
|
30
|
+
readonly required: false;
|
|
31
|
+
};
|
|
22
32
|
}>;
|
|
23
33
|
//# sourceMappingURL=icon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../src/commands/images/icon.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../src/commands/images/icon.ts"],"names":[],"mappings":"AAgCA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuCtB,CAAC"}
|
|
@@ -14,6 +14,17 @@ registerSchema({
|
|
|
14
14
|
},
|
|
15
15
|
color: { type: "string", description: "Hex color (replaces currentColor)", required: false },
|
|
16
16
|
width: { type: "number", description: "Render width in px", required: false },
|
|
17
|
+
"auto-ingest": {
|
|
18
|
+
type: "number",
|
|
19
|
+
description: "Auto-ingest top N hits (0–20, default 0). The Iconify CDN URL is stable so ingest is opt-in.",
|
|
20
|
+
required: false,
|
|
21
|
+
default: 0,
|
|
22
|
+
},
|
|
23
|
+
context: {
|
|
24
|
+
type: "string",
|
|
25
|
+
description: "Free-text hint applied to ingested icons (e.g. 'Stripe integration logo', 'feature checklist icon')",
|
|
26
|
+
required: false,
|
|
27
|
+
},
|
|
17
28
|
},
|
|
18
29
|
});
|
|
19
30
|
export const iconCommand = defineCommand({
|
|
@@ -26,6 +37,8 @@ export const iconCommand = defineCommand({
|
|
|
26
37
|
set: { type: "string", description: "Iconify set", required: false },
|
|
27
38
|
color: { type: "string", description: "Hex color", required: false },
|
|
28
39
|
width: { type: "string", description: "Width in px", required: false },
|
|
40
|
+
"auto-ingest": { type: "string", description: "Auto-ingest top N", required: false },
|
|
41
|
+
context: { type: "string", description: "Description context hint applied to ingested icons", required: false },
|
|
29
42
|
},
|
|
30
43
|
run: async ({ args }) => {
|
|
31
44
|
try {
|
|
@@ -41,6 +54,10 @@ export const iconCommand = defineCommand({
|
|
|
41
54
|
body.color = args.color;
|
|
42
55
|
if (args.width)
|
|
43
56
|
body.width = Number(args.width);
|
|
57
|
+
if (args["auto-ingest"])
|
|
58
|
+
body.autoIngest = Number(args["auto-ingest"]);
|
|
59
|
+
if (args.context)
|
|
60
|
+
body.descriptionContext = args.context;
|
|
44
61
|
const data = await apiPost("/api/images/icon", body);
|
|
45
62
|
writeJson({ ok: true, data });
|
|
46
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon.js","sourceRoot":"","sources":["../../../src/commands/images/icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,CAAC;IACb,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,qDAAqD;IAClE,IAAI,EAAE;QACJ,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC/F,GAAG,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,0EAA0E;YACvF,QAAQ,EAAE,KAAK;SAChB;QACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mCAAmC,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC5F,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE,QAAQ,EAAE,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"","sources":["../../../src/commands/images/icon.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,10 +9,20 @@ export declare const logoCommand: import("citty").CommandDef<{
|
|
|
9
9
|
readonly description: "icon|logo|symbol";
|
|
10
10
|
readonly required: false;
|
|
11
11
|
};
|
|
12
|
+
readonly "auto-ingest": {
|
|
13
|
+
readonly type: "string";
|
|
14
|
+
readonly description: "Ingest top N (0-20, default 1)";
|
|
15
|
+
readonly required: false;
|
|
16
|
+
};
|
|
12
17
|
readonly "no-auto-ingest": {
|
|
13
18
|
readonly type: "boolean";
|
|
14
19
|
readonly description: "Skip auto-ingest";
|
|
15
20
|
readonly required: false;
|
|
16
21
|
};
|
|
22
|
+
readonly context: {
|
|
23
|
+
readonly type: "string";
|
|
24
|
+
readonly description: "Description context hint applied to ingested logos";
|
|
25
|
+
readonly required: false;
|
|
26
|
+
};
|
|
17
27
|
}>;
|
|
18
28
|
//# sourceMappingURL=logo.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../src/commands/images/logo.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logo.d.ts","sourceRoot":"","sources":["../../../src/commands/images/logo.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;EAsCtB,CAAC"}
|