@salla.sa/twilight-theme-engine 1.0.1 → 1.0.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.
Files changed (125) hide show
  1. package/dist/{AddToCartForm-E6LDRNGM.js → AddToCartForm-53RS5Q5V.js} +3 -3
  2. package/dist/{AddToCartForm-E6LDRNGM.js.map → AddToCartForm-53RS5Q5V.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-SK7ZTUPN.js → BlogAuthorPage-HVXYXCFU.js} +6 -6
  4. package/dist/{BlogAuthorPage-SK7ZTUPN.js.map → BlogAuthorPage-HVXYXCFU.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-XEUUE3H2.js → BlogCategoryPage-YJFB43IQ.js} +6 -6
  6. package/dist/{BlogCategoryPage-XEUUE3H2.js.map → BlogCategoryPage-YJFB43IQ.js.map} +1 -1
  7. package/dist/{BlogPage-67ZEZTMY.js → BlogPage-S6EAVJIY.js} +5 -5
  8. package/dist/{BlogPage-67ZEZTMY.js.map → BlogPage-S6EAVJIY.js.map} +1 -1
  9. package/dist/{BlogSinglePage-H5NWL37R.js → BlogSinglePage-ZHU3VK3E.js} +5 -5
  10. package/dist/{BlogSinglePage-H5NWL37R.js.map → BlogSinglePage-ZHU3VK3E.js.map} +1 -1
  11. package/dist/{BlogTagPage-I6YXVDTH.js → BlogTagPage-TBHWPSUH.js} +6 -6
  12. package/dist/{BlogTagPage-I6YXVDTH.js.map → BlogTagPage-TBHWPSUH.js.map} +1 -1
  13. package/dist/{BrandsPage-RVK36ZAV.js → BrandsPage-U423FG6C.js} +5 -5
  14. package/dist/{BrandsPage-RVK36ZAV.js.map → BrandsPage-U423FG6C.js.map} +1 -1
  15. package/dist/{Breadcrumb-KINELHN4.js → Breadcrumb-OXZBQBLS.js} +5 -5
  16. package/dist/{Breadcrumb-KINELHN4.js.map → Breadcrumb-OXZBQBLS.js.map} +1 -1
  17. package/dist/{CartItem-YPIGZYJX.js → CartItem-KLKAXL3S.js} +5 -5
  18. package/dist/{CartItem-YPIGZYJX.js.map → CartItem-KLKAXL3S.js.map} +1 -1
  19. package/dist/{CartSummary-FHG4IR4S.js → CartSummary-IVN6UGAX.js} +5 -5
  20. package/dist/{CartSummary-FHG4IR4S.js.map → CartSummary-IVN6UGAX.js.map} +1 -1
  21. package/dist/{Copyright-TWAHRC7V.js → Copyright-3HHSFHQ3.js} +3 -3
  22. package/dist/{Copyright-TWAHRC7V.js.map → Copyright-3HHSFHQ3.js.map} +1 -1
  23. package/dist/{CustomerLayout-NI3HBOZB.js → CustomerLayout-ZCQGLTAE.js} +5 -5
  24. package/dist/{CustomerLayout-NI3HBOZB.js.map → CustomerLayout-ZCQGLTAE.js.map} +1 -1
  25. package/dist/{Footer-6XXLPWRH.js → Footer-ZHRI4NZF.js} +5 -5
  26. package/dist/{Footer-6XXLPWRH.js.map → Footer-ZHRI4NZF.js.map} +1 -1
  27. package/dist/{Header-56YZL6PB.js → Header-QHZL5UQA.js} +4 -4
  28. package/dist/{Header-56YZL6PB.js.map → Header-QHZL5UQA.js.map} +1 -1
  29. package/dist/{LoyaltyPage-3QLMFVWD.js → LoyaltyPage-AGH3IVYI.js} +5 -5
  30. package/dist/{LoyaltyPage-3QLMFVWD.js.map → LoyaltyPage-AGH3IVYI.js.map} +1 -1
  31. package/dist/{MainMenu-TDLQET2Y.js → MainMenu-PCROGFQC.js} +3 -3
  32. package/dist/{MainMenu-TDLQET2Y.js.map → MainMenu-PCROGFQC.js.map} +1 -1
  33. package/dist/{MasterLayout-4IYMFDYJ.js → MasterLayout-DTACDKVK.js} +5 -5
  34. package/dist/{MasterLayout-4IYMFDYJ.js.map → MasterLayout-DTACDKVK.js.map} +1 -1
  35. package/dist/{MobileMenu-GVXPV5HQ.js → MobileMenu-FTZSKCII.js} +5 -5
  36. package/dist/{MobileMenu-GVXPV5HQ.js.map → MobileMenu-FTZSKCII.js.map} +1 -1
  37. package/dist/{NotificationsPage-AOZRDULT.js → NotificationsPage-F3OTRK7K.js} +5 -5
  38. package/dist/{NotificationsPage-AOZRDULT.js.map → NotificationsPage-F3OTRK7K.js.map} +1 -1
  39. package/dist/{OrderSinglePage-M6GBDZPD.js → OrderSinglePage-R2KROJE4.js} +5 -5
  40. package/dist/{OrderSinglePage-M6GBDZPD.js.map → OrderSinglePage-R2KROJE4.js.map} +1 -1
  41. package/dist/{OrdersPage-DJMOQVJP.js → OrdersPage-VZHEQSFJ.js} +5 -5
  42. package/dist/{OrdersPage-DJMOQVJP.js.map → OrdersPage-VZHEQSFJ.js.map} +1 -1
  43. package/dist/{PageSingle-TQC47BEK.js → PageSingle-ETIXKVXZ.js} +3 -3
  44. package/dist/{PageSingle-TQC47BEK.js.map → PageSingle-ETIXKVXZ.js.map} +1 -1
  45. package/dist/{ProductDetails-4YZW7CKN.js → ProductDetails-VK46PQJK.js} +3 -3
  46. package/dist/{ProductDetails-4YZW7CKN.js.map → ProductDetails-VK46PQJK.js.map} +1 -1
  47. package/dist/{ProfilePage-KFR7PX6Z.js → ProfilePage-MBKB5LPK.js} +5 -5
  48. package/dist/{ProfilePage-KFR7PX6Z.js.map → ProfilePage-MBKB5LPK.js.map} +1 -1
  49. package/dist/{SeoCartWidget-N6KHTRZA.js → SeoCartWidget-ROWYOKVH.js} +5 -5
  50. package/dist/{SeoCartWidget-N6KHTRZA.js.map → SeoCartWidget-ROWYOKVH.js.map} +1 -1
  51. package/dist/{SettingsPage-7VCOR3YR.js → SettingsPage-D4WV5UGB.js} +5 -5
  52. package/dist/{SettingsPage-7VCOR3YR.js.map → SettingsPage-D4WV5UGB.js.map} +1 -1
  53. package/dist/{StoreClosedNotification-7XSPEVKM.js → StoreClosedNotification-32XNRJSB.js} +6 -6
  54. package/dist/{StoreClosedNotification-7XSPEVKM.js.map → StoreClosedNotification-32XNRJSB.js.map} +1 -1
  55. package/dist/{TestimonialsPage-YWWIGHDX.js → TestimonialsPage-KTTHUI4R.js} +3 -3
  56. package/dist/{TestimonialsPage-YWWIGHDX.js.map → TestimonialsPage-KTTHUI4R.js.map} +1 -1
  57. package/dist/{ThankYouPage-O6NMGVNQ.js → ThankYouPage-6VSRSXQ7.js} +5 -5
  58. package/dist/{ThankYouPage-O6NMGVNQ.js.map → ThankYouPage-6VSRSXQ7.js.map} +1 -1
  59. package/dist/{WalletPage-TGFDG6JQ.js → WalletPage-D2BXFF6D.js} +5 -5
  60. package/dist/{WalletPage-TGFDG6JQ.js.map → WalletPage-D2BXFF6D.js.map} +1 -1
  61. package/dist/{WishlistPage-XDXSQXME.js → WishlistPage-6OMEQAAV.js} +5 -5
  62. package/dist/{WishlistPage-XDXSQXME.js.map → WishlistPage-6OMEQAAV.js.map} +1 -1
  63. package/dist/{chunk-THMQ2Z3N.js → chunk-4SRRQ3CB.js} +7 -7
  64. package/dist/{chunk-THMQ2Z3N.js.map → chunk-4SRRQ3CB.js.map} +1 -1
  65. package/dist/{chunk-4UG4W72N.js → chunk-5ER5JOIJ.js} +4 -4
  66. package/dist/{chunk-4UG4W72N.js.map → chunk-5ER5JOIJ.js.map} +1 -1
  67. package/dist/{chunk-2FG3NNIK.js → chunk-64BTO3EH.js} +3 -3
  68. package/dist/{chunk-2FG3NNIK.js.map → chunk-64BTO3EH.js.map} +1 -1
  69. package/dist/{chunk-FH5YDZFQ.js → chunk-6LBZICSK.js} +5 -5
  70. package/dist/{chunk-FH5YDZFQ.js.map → chunk-6LBZICSK.js.map} +1 -1
  71. package/dist/{chunk-CJEBLY6D.js → chunk-7HLQBGEF.js} +6 -6
  72. package/dist/{chunk-CJEBLY6D.js.map → chunk-7HLQBGEF.js.map} +1 -1
  73. package/dist/{chunk-DHXE3JE6.js → chunk-B22KZVIV.js} +4 -4
  74. package/dist/{chunk-DHXE3JE6.js.map → chunk-B22KZVIV.js.map} +1 -1
  75. package/dist/{chunk-SM7VMQZY.js → chunk-GUWCL4GP.js} +3 -3
  76. package/dist/{chunk-SM7VMQZY.js.map → chunk-GUWCL4GP.js.map} +1 -1
  77. package/dist/{chunk-XECKVHG7.js → chunk-LVYPHIG3.js} +3 -3
  78. package/dist/{chunk-XECKVHG7.js.map → chunk-LVYPHIG3.js.map} +1 -1
  79. package/dist/{chunk-SSZR6JBK.js → chunk-OOMIE3U4.js} +4 -4
  80. package/dist/{chunk-SSZR6JBK.js.map → chunk-OOMIE3U4.js.map} +1 -1
  81. package/dist/chunk-SS6ELPCL.js +14 -0
  82. package/dist/{chunk-P4M64WVZ.js.map → chunk-SS6ELPCL.js.map} +1 -1
  83. package/dist/{chunk-A4HWQ5PP.js → chunk-YS7SR5IJ.js} +3 -3
  84. package/dist/{chunk-A4HWQ5PP.js.map → chunk-YS7SR5IJ.js.map} +1 -1
  85. package/dist/components/cart/index.js +1 -1
  86. package/dist/components/common/index.js +1 -1
  87. package/dist/components/drawer/index.js +3 -3
  88. package/dist/components/home/index.js +5 -5
  89. package/dist/components/layout/index.js +5 -5
  90. package/dist/components/product/index.js +4 -4
  91. package/dist/components/store/index.js +5 -5
  92. package/dist/{document-class-4EILSNLT.js → document-class-KX2Y62OJ.js} +3 -3
  93. package/dist/{document-class-4EILSNLT.js.map → document-class-KX2Y62OJ.js.map} +1 -1
  94. package/dist/hooks/index.js +3 -3
  95. package/dist/hooks/useGtm.js +3 -3
  96. package/dist/hooks/useMoney.js +3 -3
  97. package/dist/hooks/useStore.js +3 -3
  98. package/dist/index.js +3 -3
  99. package/dist/{not-found-MGLRWOWH.js → not-found-7H7SUY7D.js} +5 -5
  100. package/dist/{not-found-MGLRWOWH.js.map → not-found-7H7SUY7D.js.map} +1 -1
  101. package/dist/providers/index.js +3 -3
  102. package/dist/routes/account/orders.js +1 -1
  103. package/dist/routes/account.js +6 -6
  104. package/dist/routes/blog.js +5 -5
  105. package/dist/routes/brands.js +1 -1
  106. package/dist/routes/cart.js +7 -7
  107. package/dist/routes/home.js +6 -6
  108. package/dist/routes/loyalty.js +1 -1
  109. package/dist/routes/page.js +1 -1
  110. package/dist/routes/product-listing.js +5 -5
  111. package/dist/routes/product.js +5 -5
  112. package/dist/routes/testimonials.js +1 -1
  113. package/dist/routes/thank-you.js +1 -1
  114. package/dist/skeleton.js +6 -6
  115. package/dist/tanstack.js +2 -2
  116. package/dist/vite/index.d.ts +1 -0
  117. package/dist/vite/index.d.ts.map +1 -1
  118. package/dist/vite/index.js +46 -2
  119. package/dist/vite/index.js.map +1 -1
  120. package/dist/vite/plugins/twilight-manifest.d.ts +50 -0
  121. package/dist/vite/plugins/twilight-manifest.d.ts.map +1 -0
  122. package/dist/vite/plugins/twilight-schema.plugin.d.ts +4 -0
  123. package/dist/vite/plugins/twilight-schema.plugin.d.ts.map +1 -1
  124. package/package.json +1 -1
  125. package/dist/chunk-P4M64WVZ.js +0 -14
@@ -0,0 +1,50 @@
1
+ /**
2
+ * The `type` discriminator that marks a `twilight.json` as a React/SSR theme.
3
+ *
4
+ * A twig theme's manifest has no `type` at all — every theme that predates the
5
+ * React engine omits it — so `"type": "react"` is what tells the toolchain this
6
+ * folder is rendered by this engine rather than by twig. The Salla CLI reads the
7
+ * same field (`detectKind()` in `src/helpers/themes/kind.js`) to route
8
+ * `salla theme dev` / `preview` / `publish` to the React driver, and the same
9
+ * value travels to the portal on `POST /theme`.
10
+ *
11
+ * Pure and Node-safe: consumed by the dev-only vite plugin, never bundled.
12
+ */
13
+ /** Value of `twilight.json`'s `type` for a React/SSR theme. */
14
+ export declare const REACT_THEME_TYPE = "react";
15
+ /** The top-level shape of `twilight.json` that the engine cares about. */
16
+ export interface TwilightManifest {
17
+ /**
18
+ * Theme kind. `'react'` for themes rendered by this engine; absent on twig
19
+ * themes. See {@link REACT_THEME_TYPE}.
20
+ */
21
+ type?: string;
22
+ name?: Record<string, string>;
23
+ repository?: string;
24
+ author_email?: string;
25
+ support_url?: string;
26
+ description?: Record<string, string>;
27
+ features?: string[];
28
+ settings?: unknown[];
29
+ components?: unknown[];
30
+ }
31
+ /**
32
+ * Read the declared theme type, tolerating any hand-edited shape.
33
+ *
34
+ * The value is returned **verbatim**, never trimmed: the CLI compares it with
35
+ * `===`, so normalising here would green-light a `" react "` that the CLI still
36
+ * routes to twig — the engine would go quiet about the one thing it exists to
37
+ * catch. Whitespace is reported as the problem it is by
38
+ * {@link describeThemeTypeIssue} instead.
39
+ */
40
+ export declare function getThemeType(raw: unknown): string | undefined;
41
+ /** Whether a parsed manifest declares itself a React/SSR theme. */
42
+ export declare function isReactThemeManifest(raw: unknown): boolean;
43
+ /**
44
+ * Dev-time diagnostic for the `type` field, or `null` when it is correct.
45
+ *
46
+ * Returns a message rather than logging so it stays pure and testable; the
47
+ * plugin owns the console.
48
+ */
49
+ export declare function describeThemeTypeIssue(raw: unknown, fileLabel?: string): string | null;
50
+ //# sourceMappingURL=twilight-manifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twilight-manifest.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/twilight-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,+DAA+D;AAC/D,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC,0EAA0E;AAC1E,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI7D;AAED,mEAAmE;AACnE,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAE1D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,SAAkB,GAAG,MAAM,GAAG,IAAI,CAyB/F"}
@@ -7,6 +7,10 @@
7
7
  * populated ONLY in the dev server; a production build ships an empty schema so
8
8
  * no theme manifest leaks into the bundle and the widget tree-shakes away.
9
9
  *
10
+ * It also owns the dev-time check of the manifest's `"type": "react"` marker
11
+ * (see `twilight-manifest.ts`) — this is the only place the engine reads
12
+ * twilight.json, so it is where a wrong or missing `type` is caught.
13
+ *
10
14
  * @example
11
15
  * // vite.config.ts
12
16
  * twilightReact() // reads ./twilight.json by default
@@ -1 +1 @@
1
- {"version":3,"file":"twilight-schema.plugin.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/twilight-schema.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAUnC,wBAAgB,oBAAoB,CAAC,gBAAgB,SAAkB,GAAG,MAAM,CAiD/E"}
1
+ {"version":3,"file":"twilight-schema.plugin.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/twilight-schema.plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAYnC,wBAAgB,oBAAoB,CAAC,gBAAgB,SAAkB,GAAG,MAAM,CA+E/E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-theme-engine",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1,14 +0,0 @@
1
- import { lazy } from 'react';
2
-
3
- // src/components/cart/lazy.ts
4
- var LazyCartItem = lazy(() => import('./CartItem-YPIGZYJX.js').then((m) => ({ default: m.CartItem })));
5
- var LazyCartSummary = lazy(
6
- () => import('./CartSummary-FHG4IR4S.js').then((m) => ({ default: m.CartSummary }))
7
- );
8
- var LazySeoCartWidget = lazy(
9
- () => import('./SeoCartWidget-N6KHTRZA.js').then((m) => ({ default: m.SeoCartWidget }))
10
- );
11
-
12
- export { LazyCartItem, LazyCartSummary, LazySeoCartWidget };
13
- //# sourceMappingURL=chunk-P4M64WVZ.js.map
14
- //# sourceMappingURL=chunk-P4M64WVZ.js.map