@extenshi/cli 0.17.0 → 0.19.0

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.
Files changed (46) hide show
  1. package/README.md +52 -0
  2. package/dist/cli.js +71 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/config.d.ts.map +1 -1
  5. package/dist/config.js +17 -1
  6. package/dist/config.js.map +1 -1
  7. package/dist/cws-policies.d.ts.map +1 -1
  8. package/dist/cws-policies.js +1 -0
  9. package/dist/cws-policies.js.map +1 -1
  10. package/dist/extension-localization.d.ts +20 -0
  11. package/dist/extension-localization.d.ts.map +1 -0
  12. package/dist/extension-localization.js +94 -0
  13. package/dist/extension-localization.js.map +1 -0
  14. package/dist/generate-listing.d.ts +31 -0
  15. package/dist/generate-listing.d.ts.map +1 -0
  16. package/dist/generate-listing.js +145 -0
  17. package/dist/generate-listing.js.map +1 -0
  18. package/dist/listing-checks.d.ts +9 -1
  19. package/dist/listing-checks.d.ts.map +1 -1
  20. package/dist/listing-checks.js +89 -1
  21. package/dist/listing-checks.js.map +1 -1
  22. package/dist/localize-init.d.ts +9 -0
  23. package/dist/localize-init.d.ts.map +1 -0
  24. package/dist/localize-init.js +166 -0
  25. package/dist/localize-init.js.map +1 -0
  26. package/dist/localize.d.ts +27 -0
  27. package/dist/localize.d.ts.map +1 -0
  28. package/dist/localize.js +292 -0
  29. package/dist/localize.js.map +1 -0
  30. package/dist/permission-justifications.d.ts +39 -0
  31. package/dist/permission-justifications.d.ts.map +1 -0
  32. package/dist/permission-justifications.js +145 -0
  33. package/dist/permission-justifications.js.map +1 -0
  34. package/dist/project-workspace.d.ts +1976 -0
  35. package/dist/project-workspace.d.ts.map +1 -0
  36. package/dist/project-workspace.js +350 -0
  37. package/dist/project-workspace.js.map +1 -0
  38. package/dist/project.d.ts +17 -0
  39. package/dist/project.d.ts.map +1 -0
  40. package/dist/project.js +671 -0
  41. package/dist/project.js.map +1 -0
  42. package/dist/review-checks.d.ts +10 -0
  43. package/dist/review-checks.d.ts.map +1 -1
  44. package/dist/review-checks.js +24 -0
  45. package/dist/review-checks.js.map +1 -1
  46. package/package.json +7 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-listing.js","sourceRoot":"","sources":["../src/generate-listing.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,14 @@ import type { ReviewFinding } from './review-checks.js';
38
38
  * before and after a bump. Same discipline as `ANALYSIS_VERSION` on the
39
39
  * permission-usage rows. Bump on any change to a dictionary or a threshold.
40
40
  */
41
- export declare const LISTING_DICTIONARY_VERSION = "3";
41
+ /**
42
+ * Dictionary history: v3 — first FP repair over the v2 sample (claim denials,
43
+ * glued `#1`, ornamental stars, technical lists, Excel allow-list). v4 — new
44
+ * `listing-gambling-content` rule (real-money gambling promotion is banned
45
+ * listing content and a removal class the corpus adjudication surfaced —
46
+ * ROADMAP it.4 T4): no earlier rule read gambling terms at all.
47
+ */
48
+ export declare const LISTING_DICTIONARY_VERSION = "4";
42
49
  /**
43
50
  * "If your product has a blank description field … it will be rejected."
44
51
  *
@@ -88,6 +95,7 @@ export declare function checkTestimonialBlock(listing: Listing): ReviewFinding[]
88
95
  export declare function checkImpossibleClaims(listing: Listing): ReviewFinding[];
89
96
  /** Ranking / guarantee claims a reviewer cannot verify. */
90
97
  export declare function checkUnverifiableClaims(listing: Listing): ReviewFinding[];
98
+ export declare function checkGamblingContent(listing: Listing): ReviewFinding[];
91
99
  /** Every listing rule, over every locale. Returns [] when there is no listing. */
92
100
  export declare function runListingChecks(listing: Listing | null): ReviewFinding[];
93
101
  //# sourceMappingURL=listing-checks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"listing-checks.d.ts","sourceRoot":"","sources":["../src/listing-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAmY7C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA8DzE;AASD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CAqDxE;AAID;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA6DlE;AAID;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA8BnE;AAID,iGAAiG;AACjG,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA4BvE;AAID;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA8BvE;AAED,2DAA2D;AAC3D,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA4BzE;AAID,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,aAAa,EAAE,CAWzE"}
1
+ {"version":3,"file":"listing-checks.d.ts","sourceRoot":"","sources":["../src/listing-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD;;;;;;;;GAQG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAmY7C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA8DzE;AASD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CAqDxE;AAID;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA6DlE;AAID;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA8BnE;AAID,iGAAiG;AACjG,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA4BvE;AAID;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA8BvE;AAED,2DAA2D;AAC3D,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CA4BzE;AA+CD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,EAAE,CAwCtE;AAID,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,aAAa,EAAE,CAYzE"}
@@ -36,7 +36,14 @@
36
36
  * before and after a bump. Same discipline as `ANALYSIS_VERSION` on the
37
37
  * permission-usage rows. Bump on any change to a dictionary or a threshold.
38
38
  */
39
- export const LISTING_DICTIONARY_VERSION = '3';
39
+ /**
40
+ * Dictionary history: v3 — first FP repair over the v2 sample (claim denials,
41
+ * glued `#1`, ornamental stars, technical lists, Excel allow-list). v4 — new
42
+ * `listing-gambling-content` rule (real-money gambling promotion is banned
43
+ * listing content and a removal class the corpus adjudication surfaced —
44
+ * ROADMAP it.4 T4): no earlier rule read gambling terms at all.
45
+ */
46
+ export const LISTING_DICTIONARY_VERSION = '4';
40
47
  const DOC_LISTING = 'https://developer.chrome.com/docs/webstore/program-policies/listing-requirements';
41
48
  const DOC_UNEXPECTED = 'https://developer.chrome.com/docs/webstore/program-policies/unexpected-behavior';
42
49
  /**
@@ -722,6 +729,86 @@ export function checkUnverifiableClaims(listing) {
722
729
  }
723
730
  return out;
724
731
  }
732
+ // ── Check: real-money gambling promotion ─────────────────────────────────────
733
+ /**
734
+ * Real-money gambling promotion is banned store content — it arrives as SEO
735
+ * spam wearing an unrelated extension name (a vocab quiz whose description is
736
+ * a redirect to a casino), and the removal-adjudication corpus named
737
+ * `spam-and-abuse` for it (ROADMAP it.4 T4). The terms below are the
738
+ * near-unambiguous ones only: every entry is a noun phrase whose presence in
739
+ * a store listing is gambling promotion rather than incidental vocabulary.
740
+ * `slots`, `bet`, `game`, `bonus` are deliberately absent — each has a common
741
+ * non-gambling sense and that is exactly how the earlier listing rules earned
742
+ * their false-positive reputation.
743
+ *
744
+ * Latin terms are matched with word boundaries; Cyrillic and Vietnamese terms
745
+ * are matched unanchored — JS `\b` is ASCII-only and never matches at a
746
+ * space→н boundary (same trap the claim dictionary documents). The matched
747
+ * TEXT is the subject, never prose, so a reworded rule does not orphan triage.
748
+ */
749
+ const GAMBLING_TERMS = [
750
+ { term: 'casino', boundary: true },
751
+ { term: 'online casino', boundary: true },
752
+ { term: 'slot machine', boundary: true },
753
+ { term: 'sports betting', boundary: true },
754
+ { term: 'betting site', boundary: true },
755
+ { term: 'bookmaker', boundary: true },
756
+ { term: 'jackpot', boundary: true },
757
+ { term: 'roulette', boundary: true },
758
+ { term: 'blackjack', boundary: true },
759
+ { term: 'baccarat', boundary: true },
760
+ { term: 'poker', boundary: true },
761
+ { term: 'win real money', boundary: false },
762
+ { term: 'no deposit bonus', boundary: false },
763
+ { term: 'free spins', boundary: false },
764
+ { term: 'казино', boundary: false },
765
+ { term: 'букмекер', boundary: false },
766
+ { term: 'джекпот', boundary: false },
767
+ { term: 'ставки на спорт', boundary: false },
768
+ { term: 'слот-машина', boundary: false },
769
+ { term: 'Nhà cái', boundary: false },
770
+ { term: 'casino trực tuyến', boundary: false },
771
+ { term: 'Nổ hũ', boundary: false },
772
+ { term: 'Game bài', boundary: false },
773
+ { term: 'Bắn cá đổi thưởng', boundary: false },
774
+ ];
775
+ export function checkGamblingContent(listing) {
776
+ const out = [];
777
+ for (const locale of listing.locales) {
778
+ for (const field of FIELDS) {
779
+ const value = fieldValue(locale, field.key);
780
+ if (!value)
781
+ continue;
782
+ const lowered = value.toLowerCase();
783
+ for (const { term, boundary } of GAMBLING_TERMS) {
784
+ const needle = term.toLowerCase();
785
+ const at = lowered.indexOf(needle);
786
+ if (at === -1)
787
+ continue;
788
+ if (boundary) {
789
+ const before = at === 0 ? ' ' : lowered[at - 1];
790
+ const after = at + needle.length >= lowered.length ? ' ' : lowered[at + needle.length];
791
+ if (/[a-z0-9]/i.test(before) || /[a-z0-9]/i.test(after))
792
+ continue;
793
+ }
794
+ out.push(advisory({
795
+ check: 'listing-gambling-content',
796
+ title: `The ${field.label} promotes real-money gambling`,
797
+ detail: 'Real-money gambling content is banned store material, and on the store it ' +
798
+ 'arrives almost exclusively as SEO spam: an unrelated extension name wrapped ' +
799
+ 'around a casino landing page. Spam and Abuse forbids this, and listings that ' +
800
+ 'carry it are removed outright.',
801
+ evidence: stamp(`${where(locale, field.label)}: "${value.slice(at, at + needle.length)}" — real-money gambling term`),
802
+ recommendation: 'Remove the gambling content and any links to it. If the extension genuinely ' +
803
+ 'serves a gambling site, the store is not a distribution channel for it.',
804
+ citation: 'Chrome Web Store: Spam and Abuse — https://developer.chrome.com/docs/webstore/program-policies/spam-and-abuse',
805
+ }));
806
+ break;
807
+ }
808
+ }
809
+ }
810
+ return out;
811
+ }
725
812
  // ── Orchestration ────────────────────────────────────────────────────────────
726
813
  /** Every listing rule, over every locale. Returns [] when there is no listing. */
727
814
  export function runListingChecks(listing) {
@@ -735,6 +822,7 @@ export function runListingChecks(listing) {
735
822
  ...checkTestimonialBlock(listing),
736
823
  ...checkImpossibleClaims(listing),
737
824
  ...checkUnverifiableClaims(listing),
825
+ ...checkGamblingContent(listing),
738
826
  ];
739
827
  }
740
828
  //# sourceMappingURL=listing-checks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"listing-checks.js","sourceRoot":"","sources":["../src/listing-checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listing-checks.js","sourceRoot":"","sources":["../src/listing-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAKH;;;;;;;;GAQG;AACH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAA;AAE7C,MAAM,WAAW,GAAG,kFAAkF,CAAA;AACtG,MAAM,cAAc,GAAG,iFAAiF,CAAA;AAExG;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAE7B,2EAA2E;AAC3E,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAE5B;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,mBAAmB,GAAG,IAAI,CAAA;AAEhC;;;;GAIG;AACH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC9B,UAAU;IACV,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,OAAO;IACP,QAAQ;IACR,SAAS;IACT,SAAS;IACT,SAAS;IACT,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,UAAU;IACV,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,QAAQ;IACR,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;CACN,CAAC,CAAA;AAEF;;;;;;;;;GASG;AACH,MAAM,yBAAyB,GAAgD;IAC9E;QACC,EAAE,EAAE,4FAA4F;QAChG,IAAI,EAAE,yBAAyB;KAC/B;IACD,EAAE,EAAE,EAAE,uCAAuC,EAAE,IAAI,EAAE,0BAA0B,EAAE;IACjF,EAAE,EAAE,EAAE,yCAAyC,EAAE,IAAI,EAAE,oBAAoB,EAAE;IAC7E,EAAE,EAAE,EAAE,4CAA4C,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC7E,uEAAuE;IACvE,yEAAyE;IACzE;QACC,EAAE,EAAE,+FAA+F;QACnG,IAAI,EAAE,qBAAqB;KAC3B;IACD,EAAE,EAAE,EAAE,0DAA0D,EAAE,IAAI,EAAE,uBAAuB,EAAE;IACjG,EAAE,EAAE,EAAE,sDAAsD,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAC3F,EAAE,EAAE,EAAE,mDAAmD,EAAE,IAAI,EAAE,2BAA2B,EAAE;IAC9F,EAAE,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IACvD,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,EAAE,EAAE,EAAE,+CAA+C,EAAE,IAAI,EAAE,yBAAyB,EAAE;CACxF,CAAA;AAED;;;;;GAKG;AACH,MAAM,2BAA2B,GAAgD;IAChF,EAAE,EAAE,EAAE,kDAAkD,EAAE,IAAI,EAAE,oBAAoB,EAAE;IACtF,EAAE,EAAE,EAAE,0DAA0D,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5F,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,sBAAsB,EAAE;IAC5E,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,4BAA4B,EAAE;IAClF,sEAAsE;IACtE,EAAE,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,qBAAqB,EAAE;CACnE,CAAA;AAED,oFAAoF;AACpF,MAAM,oBAAoB,GAAG,oBAAoB,CAAA;AACjD,2EAA2E;AAC3E,iEAAiE;AACjE,MAAM,eAAe,GAAG,uEAAuE,CAAA;AAC/F,6EAA6E;AAC7E,8EAA8E;AAC9E,qEAAqE;AACrE,MAAM,kBAAkB,GACvB,2KAA2K,CAAA;AAC5K,MAAM,eAAe,GAAG,oFAAoF,CAAA;AAC5G,MAAM,cAAc,GAAG,wEAAwE,CAAA;AAC/F,MAAM,gBAAgB,GACrB,kGAAkG,CAAA;AACnG,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC/B,KAAK;IACL,SAAS;IACT,OAAO;IACP,QAAQ;IACR,YAAY;IACZ,IAAI;IACJ,KAAK;IACL,SAAS;IACT,MAAM;IACN,OAAO;IACP,QAAQ;IACR,SAAS;IACT,UAAU;IACV,WAAW;IACX,YAAY;IACZ,SAAS;IACT,SAAS;IACT,SAAS;IACT,QAAQ;IACR,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,aAAa;IACb,UAAU;IACV,KAAK;IACL,KAAK;IACL,YAAY;IACZ,MAAM;IACN,OAAO;IACP,KAAK;IACL,KAAK;IACL,MAAM;IACN,YAAY;IACZ,SAAS;IACT,OAAO;IACP,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,SAAS;IACT,WAAW;IACX,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,WAAW;IACX,KAAK;IACL,KAAK;IACL,KAAK;IACL,aAAa;IACb,cAAc;IACd,OAAO;CACP,CAAC,CAAA;AACF,MAAM,UAAU,GAAG,sDAAsD,CAAA;AAEzE,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW;IAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,CAAA;IACxC,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IAChD,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5C,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/D,OAAO,KAAK,CAAA;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,GAAW,EAAE,KAAa;IACnE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAA;IAC1C,yEAAyE;IACzE,0EAA0E;IAC1E,6DAA6D;IAC7D,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACxC,yEAAyE;IACzE,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAA;IAC/B,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3B,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5C,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACzC,OAAO,KAAK,CAAA;AACb,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IAClC,OAAO,IAAI;SACT,IAAI,EAAE;SACN,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC;SACvC,IAAI,EAAE,CAAA;AACT,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAe;IAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACxD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACtC,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAClG,IAAI,EAAE,CAAA;IACR,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,CAAA;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,GAAG,gBAAgB,CAAA;AACpC,MAAM,MAAM,GAAG,2BAA2B,CAAA;AAC1C,MAAM,cAAc,GAAG,mBAAmB,CAAA;AAE1C,SAAS,SAAS,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAA;AACzF,CAAC;AAED,iDAAiD;AACjD,MAAM,iBAAiB,GAAG,UAAU,CAAA;AAEpC,mFAAmF;AACnF,MAAM,4BAA4B,GAAG,EAAE,CAAA;AAEvC,+EAA+E;AAC/E,MAAM,oBAAoB,GAAG,EAAE,CAAA;AAE/B,0EAA0E;AAC1E,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAE3B;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAE5B,kEAAkE;AAClE,MAAM,0BAA0B,GAAG,CAAC,CAAA;AAEpC,kFAAkF;AAClF,MAAM,MAAM,GAAG;IACd,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;IAC9B,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,EAAE;IACvD,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;CACnC,CAAA;AAIV,SAAS,UAAU,CAAC,MAAqB,EAAE,GAAa;IACvD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAA;AACnB,CAAC;AAED,qEAAqE;AACrE,SAAS,KAAK,CAAC,MAAqB,EAAE,KAAa;IAClD,OAAO,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAA;AACrC,CAAC;AAED;;;;;GAKG;AACH,SAAS,KAAK,CAAC,QAAgB;IAC9B,OAAO,GAAG,QAAQ,oBAAoB,0BAA0B,GAAG,CAAA;AACpE,CAAC;AAED,SAAS,QAAQ,CAAC,CAAiC;IAClD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAA;AACjC,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACvD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,MAAM,kBAAkB,GAAG,CAAC,GAAa,EAAE,IAAmB,EAAW,EAAE,CAC1E,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC/E,yEAAyE;IACzE,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,CAAC,GAAa,EAAE,IAAmB,EAAW,EAAE,CAChE,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAE/D,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;QAChC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;gBACR,KAAK,EAAE,qBAAqB;gBAC5B,KAAK,EAAE,wCAAwC;gBAC/C,MAAM,EACL,mGAAmG;oBACnG,6EAA6E;gBAC9E,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;gBAC/C,cAAc,EACb,sGAAsG;oBACtG,gCAAgC;gBACjC,QAAQ,EAAE,4CAA4C,WAAW,EAAE;aACnE,CAAC,CACF,CAAA;QACF,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAA;QAC7C,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,EAAE,CAAC;YACpD,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;gBACR,KAAK,EAAE,qBAAqB;gBAC5B,KAAK,EAAE,qDAAqD;gBAC5D,MAAM,EACL,sGAAsG;oBACtG,iGAAiG;gBAClG,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;gBAC5D,cAAc,EACb,8GAA8G;gBAC/G,QAAQ,EAAE,4CAA4C,WAAW,EAAE;aACnE,CAAC,CACF,CAAA;QACF,CAAC;aAAM,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,4BAA4B,EAAE,CAAC;YACjE,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;gBACR,KAAK,EAAE,qBAAqB;gBAC5B,KAAK,EAAE,8DAA8D;gBACrE,MAAM,EACL,MAAM,KAAK,CAAC,MAAM,sFAAsF;oBACxG,qGAAqG;oBACrG,mDAAmD;gBACpD,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,mBAAmB,CAAC,MAAM,KAAK,GAAG,CAAC;gBACpE,cAAc,EACb,wGAAwG;oBACxG,mDAAmD;gBACpD,QAAQ,EAAE,4CAA4C,WAAW,EAAE;aACnE,CAAC,CACF,CAAA;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF,oFAAoF;AACpF,SAAS,KAAK,CAAC,IAAY;IAC1B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAA;AACzD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACtD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YACzC,IAAI,CAAC,GAAG;gBAAE,SAAQ;YAClB,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;YAE5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;YACxC,IAAI,YAAY,GAAG,CAAC,CAAA;YACpB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,CAAC,MAAM,GAAG,kBAAkB,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,SAAQ;gBACpE,YAAY,EAAE,CAAA;gBACd,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACxC,CAAC;YACD,IAAI,YAAY,KAAK,CAAC;gBAAE,SAAQ;YAEhC,iEAAiE;YACjE,oEAAoE;YACpE,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;iBAChC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,mBAAmB,IAAI,CAAC,GAAG,YAAY,IAAI,mBAAmB,CAAC;iBACrF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAQ;YAE/B,iEAAiE;YACjE,iEAAiE;YACjE,4BAA4B;YAC5B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;YACnD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACzD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAQ;YACpC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;YAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAClE,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;gBACR,KAAK,EAAE,4BAA4B;gBACnC,KAAK,EAAE,IAAI,SAAS,iBAAiB,UAAU,iBAAiB,KAAK,CAAC,KAAK,EAAE;gBAC7E,MAAM,EACL,yGAAyG;oBACzG,iCAAiC,mBAAmB,qDAAqD;oBACzG,iGAAiG;gBAClG,QAAQ,EAAE,KAAK,CACd,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,SAAS,KAAK,UAAU,EAAE;oBAC3D,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACrD;gBACD,cAAc,EACb,wGAAwG;oBACxG,+EAA+E;gBAChF,QAAQ,EAAE,4CAA4C,WAAW,EAAE;aACnE,CAAC,CACF,CAAA;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAChD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YACzC,IAAI,CAAC,GAAG;gBAAE,SAAQ;YAClB,8DAA8D;YAC9D,gEAAgE;YAChE,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;YAE5B,qEAAqE;YACrE,qEAAqE;YACrE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;YAC/C,IAAI,IAAI,GAAG,CAAC,CAAA;YACZ,IAAI,SAAS,GAAG,CAAC,CAAA;YACjB,IAAI,GAAG,GAAG,CAAC,CAAA;YACX,IAAI,QAAQ,GAAG,CAAC,CAAA;YAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;gBAC3C,MAAM,UAAU,GAAG,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,0BAA0B,CAAA;gBAC3E,IAAI,UAAU,EAAE,CAAC;oBAChB,IAAI,GAAG,KAAK,CAAC;wBAAE,QAAQ,GAAG,CAAC,CAAA;oBAC3B,GAAG,EAAE,CAAA;oBACL,IAAI,GAAG,GAAG,IAAI,EAAE,CAAC;wBAChB,IAAI,GAAG,GAAG,CAAA;wBACV,SAAS,GAAG,QAAQ,CAAA;oBACrB,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,GAAG,GAAG,CAAC,CAAA;gBACR,CAAC;YACF,CAAC;YACD,IAAI,IAAI,GAAG,iBAAiB;gBAAE,SAAQ;YACtC,MAAM,QAAQ,GAAG,QAAQ;iBACvB,KAAK,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;iBAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACpB,MAAM,CAAC,OAAO,CAAC,CAAA;YACjB,IAAI,kBAAkB,CAAC,QAAQ,CAAC;gBAAE,SAAQ;YAE1C,MAAM,MAAM,GAAG,QAAQ;iBACrB,KAAK,CAAC,SAAS,EAAE,SAAS,GAAG,CAAC,CAAC;iBAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACpB,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,IAAI,CAAC,CAAA;YACZ,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;gBACR,KAAK,EAAE,sBAAsB;gBAC7B,KAAK,EAAE,OAAO,KAAK,CAAC,KAAK,eAAe,IAAI,oBAAoB;gBAChE,MAAM,EACL,yGAAyG;oBACzG,uGAAuG;oBACvG,8CAA8C;gBAC/C,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,YAAY,MAAM,GAAG,CAAC;gBAC5E,cAAc,EACb,sGAAsG;oBACtG,kEAAkE;gBACnE,QAAQ,EAAE,4CAA4C,WAAW,EAAE;aACnE,CAAC,CACF,CAAA;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IACjD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;QAChC,IAAI,CAAC,IAAI;YAAE,SAAQ;QAEnB,MAAM,QAAQ,GAAG,IAAI;aACnB,KAAK,CAAC,aAAa,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC,CAAA;QACjB,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,GAAG,iBAAiB,CAAA;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,oBAAoB,CAAA;QAClD,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC;YAAE,SAAQ;QAE3C,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;YACR,KAAK,EAAE,uBAAuB;YAC9B,KAAK,EAAE,wDAAwD;YAC/D,MAAM,EACL,gBAAgB,IAAI,CAAC,MAAM,sBAAsB,QAAQ,CAAC,MAAM,wCAAwC;gBACxG,2GAA2G;gBAC3G,8BAA8B;YAC/B,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;YACtD,cAAc,EACb,0GAA0G;YAC3G,QAAQ,EAAE,4CAA4C,WAAW,EAAE;SACnE,CAAC,CACF,CAAA;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF,iGAAiG;AACjG,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACrD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,MAAM,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC1C,IAAI,CAAC,CAAC;gBAAE,SAAQ;YAChB,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAAE,SAAQ;YAEnE,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;gBACR,KAAK,EAAE,2BAA2B;gBAClC,KAAK,EAAE,OAAO,KAAK,CAAC,KAAK,iDAAiD;gBAC1E,MAAM,EACL,yGAAyG;oBACzG,sGAAsG;oBACtG,4BAA4B;gBAC7B,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3D,cAAc,EACb,yGAAyG;oBACzG,qCAAqC;gBACtC,QAAQ,EAAE,4CAA4C,WAAW,EAAE;aACnE,CAAC,CACF,CAAA;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACrD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,KAAK,MAAM,OAAO,IAAI,yBAAyB,EAAE,CAAC;gBACjD,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAChC,IAAI,CAAC,CAAC;oBAAE,SAAQ;gBAChB,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAAE,SAAQ;gBAClE,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;oBACR,KAAK,EAAE,0BAA0B;oBACjC,KAAK,EAAE,OAAO,KAAK,CAAC,KAAK,gDAAgD;oBACzE,MAAM,EACL,8FAA8F;wBAC9F,oGAAoG;wBACpG,qGAAqG;wBACrG,qFAAqF;oBACtF,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;oBAC7E,cAAc,EACb,kGAAkG;wBAClG,0CAA0C;oBAC3C,QAAQ,EAAE,yDAAyD,cAAc,EAAE;iBACnF,CAAC,CACF,CAAA;YACF,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACvD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,KAAK,MAAM,OAAO,IAAI,2BAA2B,EAAE,CAAC;gBACnD,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAChC,IAAI,CAAC,CAAC;oBAAE,SAAQ;gBAChB,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAAE,SAAQ;gBAClE,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;oBACR,KAAK,EAAE,kCAAkC;oBACzC,KAAK,EAAE,OAAO,KAAK,CAAC,KAAK,yCAAyC;oBAClE,MAAM,EACL,qGAAqG;wBACrG,sGAAsG;wBACtG,2CAA2C;oBAC5C,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;oBAC7E,cAAc,EACb,uFAAuF;oBACxF,QAAQ,EAAE,yDAAyD,cAAc,EAAE;iBACnF,CAAC,CACF,CAAA;YACF,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,cAAc,GAAuD;IAC1E,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;IAClC,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE;IACzC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;IACxC,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC1C,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;IACxC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE;IACrC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;IACnC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;IACpC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE;IACrC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;IACpC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;IACjC,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE;IAC3C,EAAE,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,EAAE;IAC7C,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE;IACvC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;IACnC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE;IACrC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE;IACpC,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE;IAC5C,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE;IACxC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE;IACpC,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE;IAC9C,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE;IAClC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE;IACrC,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE;CAC9C,CAAA;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACpD,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;YACnC,KAAK,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,cAAc,EAAE,CAAC;gBACjD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;gBACjC,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBAClC,IAAI,EAAE,KAAK,CAAC,CAAC;oBAAE,SAAQ;gBACvB,IAAI,QAAQ,EAAE,CAAC;oBACd,MAAM,MAAM,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;oBAC/C,MAAM,KAAK,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;oBACtF,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;wBAAE,SAAQ;gBAClE,CAAC;gBACD,GAAG,CAAC,IAAI,CACP,QAAQ,CAAC;oBACR,KAAK,EAAE,0BAA0B;oBACjC,KAAK,EAAE,OAAO,KAAK,CAAC,KAAK,+BAA+B;oBACxD,MAAM,EACL,4EAA4E;wBAC5E,8EAA8E;wBAC9E,+EAA+E;wBAC/E,gCAAgC;oBACjC,QAAQ,EAAE,KAAK,CACd,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,8BAA8B,CACpG;oBACD,cAAc,EACb,8EAA8E;wBAC9E,yEAAyE;oBAC1E,QAAQ,EACP,+GAA+G;iBAChH,CAAC,CACF,CAAA;gBACD,MAAK;YACN,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,gFAAgF;AAEhF,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACvD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACvD,OAAO;QACN,GAAG,uBAAuB,CAAC,OAAO,CAAC;QACnC,GAAG,sBAAsB,CAAC,OAAO,CAAC;QAClC,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAC5B,GAAG,iBAAiB,CAAC,OAAO,CAAC;QAC7B,GAAG,qBAAqB,CAAC,OAAO,CAAC;QACjC,GAAG,qBAAqB,CAAC,OAAO,CAAC;QACjC,GAAG,uBAAuB,CAAC,OAAO,CAAC;QACnC,GAAG,oBAAoB,CAAC,OAAO,CAAC;KAChC,CAAA;AACF,CAAC"}
@@ -0,0 +1,9 @@
1
+ export interface LocalizationInitResult {
2
+ outputDirectory: string;
3
+ extractedFields: string[];
4
+ untouchedFiles: string[];
5
+ copiedFiles: number;
6
+ }
7
+ /** Initialize an English manifest in a new copy. HTML/JS extraction requires a separate reviewed step. */
8
+ export declare function initializeLocalization(inputDirectory: string, outputDirectory: string): LocalizationInitResult;
9
+ //# sourceMappingURL=localize-init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localize-init.d.ts","sourceRoot":"","sources":["../src/localize-init.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,sBAAsB;IACtC,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;CACnB;AAgBD,0GAA0G;AAC1G,wBAAgB,sBAAsB,CACrC,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,GACrB,sBAAsB,CAqJxB"}
@@ -0,0 +1,166 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ const MAX_BYTES = 100 * 1024 * 1024;
4
+ const MAX_FILE_BYTES = 25 * 1024 * 1024;
5
+ const MAX_ENTRIES = 10_000;
6
+ const RESERVED = ['_locales', 'localization.json', 'LOCALIZATION-REPORT.md', '.extenshi-localization.json'];
7
+ function exists(file) {
8
+ try {
9
+ fs.lstatSync(file);
10
+ return true;
11
+ }
12
+ catch (error) {
13
+ if (error.code === 'ENOENT')
14
+ return false;
15
+ throw error;
16
+ }
17
+ }
18
+ function object(value) {
19
+ return !!value && typeof value === 'object' && !Array.isArray(value);
20
+ }
21
+ /** Initialize an English manifest in a new copy. HTML/JS extraction requires a separate reviewed step. */
22
+ export function initializeLocalization(inputDirectory, outputDirectory) {
23
+ const input = path.resolve(inputDirectory);
24
+ if (fs.lstatSync(input).isSymbolicLink() || !fs.statSync(input).isDirectory())
25
+ throw new Error('Input must be a directory, not a symlink');
26
+ const source = fs.realpathSync(input);
27
+ const requestedOutput = path.resolve(outputDirectory);
28
+ if (exists(requestedOutput))
29
+ throw new Error('Output directory already exists; choose a new directory');
30
+ // Require the parent to exist, so ownership of the one directory we create is unambiguous.
31
+ const destination = path.join(fs.realpathSync(path.dirname(requestedOutput)), path.basename(requestedOutput));
32
+ if (destination === source || destination.startsWith(`${source}${path.sep}`))
33
+ throw new Error('Output must be outside the source directory');
34
+ for (const relative of RESERVED) {
35
+ if (exists(path.join(source, relative)))
36
+ throw new Error(`Existing ${relative}; use localize prepare for a localized project or choose a clean source`);
37
+ }
38
+ const files = [];
39
+ const directories = [];
40
+ let bytes = 0;
41
+ let entries = 0;
42
+ function walk(relative, depth) {
43
+ if (depth > 64)
44
+ throw new Error('Source exceeds maximum directory depth (64)');
45
+ for (const entry of fs.readdirSync(path.join(source, relative), { withFileTypes: true })) {
46
+ if (++entries > MAX_ENTRIES)
47
+ throw new Error('Source exceeds 10,000 entries');
48
+ const child = path.join(relative, entry.name);
49
+ const stat = fs.lstatSync(path.join(source, child));
50
+ if (stat.isSymbolicLink())
51
+ throw new Error(`Symlinks are not supported: ${child}`);
52
+ if (entry.name === 'node_modules' || entry.name === '.git')
53
+ continue;
54
+ if (stat.isDirectory()) {
55
+ directories.push(child);
56
+ walk(child, depth + 1);
57
+ }
58
+ else if (stat.isFile()) {
59
+ bytes += stat.size;
60
+ if (stat.size > MAX_FILE_BYTES || bytes > MAX_BYTES)
61
+ throw new Error('Source exceeds copy limits (25 MiB per file, 100 MiB total)');
62
+ files.push({ relative: child, size: stat.size });
63
+ }
64
+ else
65
+ throw new Error(`Unsupported filesystem entry: ${child}`);
66
+ }
67
+ }
68
+ walk('', 0);
69
+ function readSource(relative) {
70
+ const planned = files.find((file) => file.relative === relative);
71
+ if (!planned)
72
+ throw new Error(`Missing source file: ${relative}`);
73
+ const fd = fs.openSync(path.join(source, relative), fs.constants.O_RDONLY | fs.constants.O_NOFOLLOW);
74
+ try {
75
+ const stat = fs.fstatSync(fd);
76
+ if (!stat.isFile() || stat.size !== planned.size)
77
+ throw new Error(`Source changed during copy: ${relative}`);
78
+ return fs.readFileSync(fd);
79
+ }
80
+ finally {
81
+ fs.closeSync(fd);
82
+ }
83
+ }
84
+ if ((files.find((file) => file.relative === 'manifest.json')?.size ?? 0) > 1024 * 1024)
85
+ throw new Error('manifest.json exceeds 1 MiB');
86
+ const manifest = JSON.parse(readSource('manifest.json').toString('utf8'));
87
+ if (!object(manifest))
88
+ throw new Error('manifest.json must be an object');
89
+ if ('default_locale' in manifest)
90
+ throw new Error('Existing default_locale; use localize prepare');
91
+ if (typeof manifest.name !== 'string' || !manifest.name.trim())
92
+ throw new Error('Manifest name must be a non-empty literal string');
93
+ const originalName = manifest.name;
94
+ const messages = {};
95
+ const extractedFields = [];
96
+ function extract(target, field, key, description, fieldPath = field) {
97
+ if (!(field in target))
98
+ return;
99
+ const text = target[field];
100
+ if (typeof text !== 'string' || !text.trim() || /__MSG_/i.test(text))
101
+ throw new Error(`${fieldPath} must be a non-empty literal string`);
102
+ messages[key] = { message: text.replaceAll('$', () => '$$'), description };
103
+ target[field] = `__MSG_${key}__`;
104
+ extractedFields.push(fieldPath);
105
+ }
106
+ extract(manifest, 'name', 'extensionName', 'Extension display name; preserve brand spelling.');
107
+ extract(manifest, 'description', 'extensionDescription', 'Manifest description of the actual extension features.');
108
+ extract(manifest, 'short_name', 'extensionShortName', 'Short extension display name for constrained UI.');
109
+ for (const [field, key] of [
110
+ ['action', 'extensionActionTitle'],
111
+ ['browser_action', 'extensionBrowserActionTitle'],
112
+ ['page_action', 'extensionPageActionTitle'],
113
+ ['sidebar_action', 'extensionSidebarActionTitle'],
114
+ ]) {
115
+ if (!(field in manifest))
116
+ continue;
117
+ const action = manifest[field];
118
+ if (!object(action))
119
+ throw new Error(`Manifest ${field} must be an object`);
120
+ extract(action, 'default_title', key, `${field} tooltip or sidebar title.`, `${field}.default_title`);
121
+ }
122
+ manifest.default_locale = 'en';
123
+ const untouchedFiles = files
124
+ .filter(({ relative }) => /\.(?:html?|[cm]?jsx?|tsx?|vue|svelte)$/i.test(relative))
125
+ .map(({ relative }) => relative);
126
+ const report = [
127
+ '# Localization initialization report',
128
+ '',
129
+ 'Scope: manifest-only initialization. Source copy is assumed to be English; verify this before translation.',
130
+ 'HTML, JavaScript and framework templates remain byte-for-byte unchanged. Safe parser-based extraction and runtime wiring require a separate reviewed implementation.',
131
+ '',
132
+ '## Extracted manifest fields',
133
+ ...extractedFields.map((field) => `- ${field}`),
134
+ '',
135
+ '## Source files requiring manual inspection',
136
+ ...(untouchedFiles.length
137
+ ? untouchedFiles.map((file) => `- ${JSON.stringify(file)}: extraction unsupported; review visible strings and runtime i18n wiring.`)
138
+ : ['No HTML/JS/template files were identified; inspect other source formats manually.']),
139
+ '',
140
+ '## Next steps',
141
+ '- Review the copied manifest and English messages. Configure targetLocales in localization.json or pass --lang to localize prepare.',
142
+ '- Review protectedTerms: the original extension name is protected by default.',
143
+ '- Translate and validate with localize prepare/apply/check. Review language quality, listing risk and RTL layout in each packaged browser build.',
144
+ '- node_modules and .git directories are excluded from this copy. Reinstall build dependencies when needed.',
145
+ '',
146
+ ].join('\n');
147
+ fs.mkdirSync(destination);
148
+ try {
149
+ for (const directory of directories)
150
+ fs.mkdirSync(path.join(destination, directory), { recursive: true });
151
+ for (const { relative } of files)
152
+ fs.writeFileSync(path.join(destination, relative), readSource(relative), { flag: 'wx' });
153
+ fs.mkdirSync(path.join(destination, '_locales', 'en'), { recursive: true });
154
+ const writeJson = (relative, value) => fs.writeFileSync(path.join(destination, relative), `${JSON.stringify(value, null, '\t')}\n`);
155
+ writeJson('manifest.json', manifest);
156
+ writeJson('_locales/en/messages.json', messages);
157
+ writeJson('localization.json', { sourceLocale: 'en', targetLocales: [], protectedTerms: [originalName] });
158
+ fs.writeFileSync(path.join(destination, 'LOCALIZATION-REPORT.md'), report, { flag: 'wx' });
159
+ }
160
+ catch (error) {
161
+ fs.rmSync(destination, { recursive: true, force: true });
162
+ throw error;
163
+ }
164
+ return { outputDirectory: destination, extractedFields, untouchedFiles, copiedFiles: files.length };
165
+ }
166
+ //# sourceMappingURL=localize-init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localize-init.js","sourceRoot":"","sources":["../src/localize-init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { type MessageCatalog } from './extension-localization.js';
2
+ interface LocaleTranslation {
3
+ removeKeys?: string[];
4
+ reviewed?: boolean;
5
+ sourceHashes: Record<string, string>;
6
+ messages: MessageCatalog;
7
+ }
8
+ export interface LocalizationBundle {
9
+ version: 1;
10
+ sourceLocale: string;
11
+ locales: Record<string, LocaleTranslation>;
12
+ }
13
+ export declare function prepareLocalization(directory: string, options: {
14
+ lang?: string;
15
+ output: string;
16
+ protect?: string;
17
+ }): LocalizationBundle;
18
+ export declare function applyLocalization(directory: string, translations: unknown, protect?: string): {
19
+ locales: string[];
20
+ keys: number;
21
+ };
22
+ export declare function checkLocalization(directory: string, protect?: string): {
23
+ locales: string[];
24
+ errors: string[];
25
+ };
26
+ export {};
27
+ //# sourceMappingURL=localize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localize.d.ts","sourceRoot":"","sources":["../src/localize.ts"],"names":[],"mappings":"AAGA,OAAO,EAGN,KAAK,cAAc,EAEnB,MAAM,6BAA6B,CAAA;AAIpC,UAAU,iBAAiB;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,QAAQ,EAAE,cAAc,CAAA;CACxB;AACD,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,CAAC,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;CAC1C;AAmHD,wBAAgB,mBAAmB,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D,kBAAkB,CAsCpB;AA6ED,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,OAAO,EACrB,OAAO,CAAC,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CA4DrC;AACD,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CA0BzC"}