@mohasinac/appkit 4.14.0 → 4.16.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.
- package/dist/_internal/server/features/auctions/actions.js +2 -2
- package/dist/_internal/server/features/cart/service.d.ts +3 -3
- package/dist/_internal/server/features/checkout/actions.js +19 -0
- package/dist/_internal/server/features/checkout/source-context.d.ts +5 -0
- package/dist/_internal/server/features/checkout/source-context.js +157 -0
- package/dist/_internal/server/features/offers/adapters.d.ts +103 -0
- package/dist/_internal/server/features/offers/adapters.js +88 -0
- package/dist/_internal/server/features/offers/index.d.ts +2 -0
- package/dist/_internal/server/features/offers/index.js +1 -0
- package/dist/_internal/server/features/orders/adapters.js +24 -0
- package/dist/_internal/server/jobs/core/offerExpiry.js +10 -10
- package/dist/_internal/shared/actions/action-registry.d.ts +9 -2
- package/dist/_internal/shared/actions/action-registry.js +458 -7
- package/dist/_internal/shared/features/auctions/schema.d.ts +14 -2
- package/dist/_internal/shared/features/auctions/schema.js +13 -1
- package/dist/_internal/shared/features/blog/schema.d.ts +4 -4
- package/dist/_internal/shared/features/cart/schema.d.ts +25 -20
- package/dist/_internal/shared/features/cart/schema.js +15 -0
- package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +22 -22
- package/dist/_internal/shared/features/orders/schema.d.ts +4 -4
- package/dist/_internal/shared/features/products/schema.d.ts +27 -27
- package/dist/_internal/shared/features/promotions/schema.d.ts +4 -4
- package/dist/_internal/shared/features/reviews/schema.d.ts +2 -2
- package/dist/_internal/shared/history/history.d.ts +22 -0
- package/dist/_internal/shared/history/history.js +41 -1
- package/dist/client.d.ts +13 -2
- package/dist/client.js +20 -2
- package/dist/constants/field-names.d.ts +8 -6
- package/dist/constants/field-names.js +48 -6
- package/dist/contracts/extend.d.ts +29 -0
- package/dist/contracts/extend.js +20 -0
- package/dist/contracts/index.d.ts +2 -1
- package/dist/contracts/index.js +2 -0
- package/dist/features/account/components/UserBidsView.js +12 -4
- package/dist/features/account/components/UserReturnsView.d.ts +3 -0
- package/dist/features/account/components/UserReturnsView.js +17 -1
- package/dist/features/admin/components/AdminAuditLogView.js +1 -0
- package/dist/features/admin/components/AdminBidsView.js +15 -2
- package/dist/features/admin/components/AdminBlogEditorView.js +65 -33
- package/dist/features/admin/components/AdminFeatureEditorView.js +35 -6
- package/dist/features/admin/components/AdminNavEditorView.js +15 -5
- package/dist/features/admin/components/AdminNewsletterView.js +18 -2
- package/dist/features/admin/components/AdminOffersView.js +62 -18
- package/dist/features/admin/components/AdminPaymentMethodsView.js +24 -4
- package/dist/features/admin/components/AdminScammerEditorView.d.ts +2 -1
- package/dist/features/admin/components/AdminScammerEditorView.js +3 -13
- package/dist/features/admin/components/AdminScammersView.js +3 -8
- package/dist/features/admin/components/AdminSectionsView.js +32 -23
- package/dist/features/admin/components/AdminSessionsView.js +17 -2
- package/dist/features/admin/components/AdminViewCards.js +24 -17
- package/dist/features/admin/components/DataListingView.js +15 -1
- package/dist/features/admin/components/DataTable.js +7 -17
- package/dist/features/admin/components/ViewAuditLogEntryModal.js +1 -0
- package/dist/features/admin/components/sections/adminSectionsTypes.d.ts +4 -2
- package/dist/features/admin/components/sections/adminSectionsTypes.js +45 -27
- package/dist/features/admin/constants/filter-tabs.d.ts +3 -0
- package/dist/features/admin/constants/filter-tabs.js +1 -0
- package/dist/features/admin/schemas/homepage-section-form.d.ts +22 -0
- package/dist/features/admin/schemas/homepage-section-form.js +68 -0
- package/dist/features/admin/schemas/nav-item-form.d.ts +74 -0
- package/dist/features/admin/schemas/nav-item-form.js +72 -0
- package/dist/features/auctions/components/AuctionBidsTable.d.ts +10 -1
- package/dist/features/auctions/components/AuctionBidsTable.js +22 -4
- package/dist/features/auctions/components/bid-detail-fields.d.ts +29 -0
- package/dist/features/auctions/components/bid-detail-fields.js +103 -0
- package/dist/features/auctions/schemas/index.d.ts +14 -14
- package/dist/features/audit-log/schemas/firestore.d.ts +14 -0
- package/dist/features/audit-log/schemas/firestore.js +7 -0
- package/dist/features/auth/schemas/index.d.ts +2 -2
- package/dist/features/blog/actions/blog-actions.d.ts +7 -7
- package/dist/features/blog/schemas/blog-form.d.ts +80 -0
- package/dist/features/blog/schemas/blog-form.js +100 -0
- package/dist/features/blog/schemas/index.d.ts +10 -10
- package/dist/features/cart/schemas/index.d.ts +3 -3
- package/dist/features/catalogue/schemas/validation.d.ts +12 -12
- package/dist/features/categories/schemas/index.d.ts +16 -16
- package/dist/features/collections/schemas/index.d.ts +8 -8
- package/dist/features/events/components/AdminEventEditorView.js +32 -54
- package/dist/features/events/components/AdminEventEntriesView.js +22 -3
- package/dist/features/events/schemas/event-form.d.ts +113 -0
- package/dist/features/events/schemas/event-form.js +82 -0
- package/dist/features/events/schemas/index.d.ts +2 -2
- package/dist/features/faq/actions/faq-actions.d.ts +6 -6
- package/dist/features/faq/schemas/index.d.ts +6 -6
- package/dist/features/grouped/schemas/grouped-listing-form.d.ts +101 -0
- package/dist/features/grouped/schemas/grouped-listing-form.js +89 -0
- package/dist/features/grouped/schemas/index.d.ts +4 -4
- package/dist/features/homepage/actions/homepage-section-actions.d.ts +11 -3
- package/dist/features/homepage/actions/homepage-section-actions.js +33 -1
- package/dist/features/homepage/schemas/index.d.ts +71 -40
- package/dist/features/homepage/schemas/index.js +24 -0
- package/dist/features/messages/schemas/index.d.ts +2 -2
- package/dist/features/orders/components/OrderStatusTimeline.d.ts +5 -1
- package/dist/features/orders/components/OrderStatusTimeline.js +39 -20
- package/dist/features/orders/repository/orders.repository.js +5 -0
- package/dist/features/orders/schemas/firestore.d.ts +36 -1
- package/dist/features/orders/schemas/index.d.ts +24 -24
- package/dist/features/orders/types/index.d.ts +35 -7
- package/dist/features/pre-orders/schemas/index.d.ts +4 -4
- package/dist/features/products/components/GroupSettingsPanel.js +5 -1
- package/dist/features/products/schemas/index.d.ts +38 -38
- package/dist/features/products/schemas/product-features.validators.d.ts +75 -2
- package/dist/features/products/schemas/product-features.validators.js +63 -0
- package/dist/features/promotions/schemas/index.d.ts +14 -14
- package/dist/features/reviews/schemas/index.d.ts +14 -14
- package/dist/features/scams/constants/scammer-status-display.d.ts +28 -0
- package/dist/features/scams/constants/scammer-status-display.js +79 -0
- package/dist/features/scams/schemas/index.d.ts +2 -2
- package/dist/features/search/schemas/index.d.ts +2 -2
- package/dist/features/seller/actions/offer-actions.js +32 -2
- package/dist/features/seller/components/OfferPhaseTimeline.d.ts +59 -0
- package/dist/features/seller/components/OfferPhaseTimeline.js +107 -0
- package/dist/features/seller/components/SellerBidsView.js +11 -4
- package/dist/features/seller/components/SellerCouponEditorView.js +17 -17
- package/dist/features/seller/components/SellerOffersView.js +2 -1
- package/dist/features/seller/components/SellerPayoutSettingsView.js +38 -14
- package/dist/features/seller/repository/offer.repository.d.ts +69 -8
- package/dist/features/seller/repository/offer.repository.js +127 -23
- package/dist/features/seller/schemas/coupon-form.d.ts +72 -0
- package/dist/features/seller/schemas/coupon-form.js +116 -0
- package/dist/features/seller/schemas/firestore.d.ts +56 -2
- package/dist/features/seller/schemas/firestore.js +27 -0
- package/dist/features/seller/schemas/index.d.ts +2 -2
- package/dist/features/seller/schemas/offer-forms.d.ts +21 -0
- package/dist/features/seller/schemas/offer-forms.js +21 -0
- package/dist/features/shell/build-sections.d.ts +63 -0
- package/dist/features/shell/build-sections.js +207 -0
- package/dist/features/shell/field-ui-meta.d.ts +115 -0
- package/dist/features/shell/field-ui-meta.js +324 -0
- package/dist/features/shell/index.d.ts +4 -0
- package/dist/features/shell/index.js +2 -0
- package/dist/features/shipments/schemas/validation.d.ts +22 -22
- package/dist/features/status-history/components/StatusTimeline.d.ts +74 -0
- package/dist/features/status-history/components/StatusTimeline.js +46 -0
- package/dist/features/status-history/index.d.ts +11 -0
- package/dist/features/status-history/index.js +10 -0
- package/dist/features/store-extensions/components/ReviewDecisionModal.d.ts +27 -0
- package/dist/features/store-extensions/components/ReviewDecisionModal.js +82 -0
- package/dist/features/store-extensions/index.d.ts +12 -0
- package/dist/features/store-extensions/index.js +12 -0
- package/dist/features/store-extensions/schemas/admin-notification-form.d.ts +36 -0
- package/dist/features/store-extensions/schemas/admin-notification-form.js +114 -0
- package/dist/features/store-extensions/schemas/analytics-forms.d.ts +57 -0
- package/dist/features/store-extensions/schemas/analytics-forms.js +158 -0
- package/dist/features/store-extensions/schemas/custom-role-form.d.ts +85 -0
- package/dist/features/store-extensions/schemas/custom-role-form.js +118 -0
- package/dist/features/store-extensions/schemas/firestore.d.ts +21 -1
- package/dist/features/store-extensions/schemas/firestore.js +60 -0
- package/dist/features/store-extensions/schemas/google-config-form.d.ts +53 -0
- package/dist/features/store-extensions/schemas/google-config-form.js +105 -0
- package/dist/features/store-extensions/schemas/item-request-create-form.d.ts +28 -0
- package/dist/features/store-extensions/schemas/item-request-create-form.js +80 -0
- package/dist/features/store-extensions/schemas/listing-template-form.d.ts +78 -0
- package/dist/features/store-extensions/schemas/listing-template-form.js +87 -0
- package/dist/features/store-extensions/schemas/moderation-review-form.d.ts +49 -0
- package/dist/features/store-extensions/schemas/moderation-review-form.js +101 -0
- package/dist/features/store-extensions/schemas/payout-method-form.d.ts +153 -0
- package/dist/features/store-extensions/schemas/payout-method-form.js +155 -0
- package/dist/features/store-extensions/schemas/report-create-form.d.ts +25 -0
- package/dist/features/store-extensions/schemas/report-create-form.js +79 -0
- package/dist/features/store-extensions/schemas/report-review-form.d.ts +47 -0
- package/dist/features/store-extensions/schemas/report-review-form.js +111 -0
- package/dist/features/store-extensions/schemas/shipping-config-form.d.ts +148 -0
- package/dist/features/store-extensions/schemas/shipping-config-form.js +104 -0
- package/dist/features/store-extensions/schemas/store-category-form.d.ts +54 -0
- package/dist/features/store-extensions/schemas/store-category-form.js +73 -0
- package/dist/features/stores/schemas/index.d.ts +4 -4
- package/dist/features/support/schemas/index.d.ts +4 -4
- package/dist/features/tester/seed-data/tester-checklist-seed-data.js +350 -0
- package/dist/features/wishlist/hooks/useWishlistWithGuest.d.ts +1 -1
- package/dist/index.d.ts +12 -2
- package/dist/index.js +12 -2
- package/dist/next/routing/route-map.d.ts +16 -2
- package/dist/next/routing/route-map.js +9 -2
- package/dist/schemas/firestore-value.d.ts +8 -0
- package/dist/schemas/firestore-value.js +44 -0
- package/dist/schemas/index.d.ts +1 -1
- package/dist/schemas/index.js +1 -1
- package/dist/schemas/registry.d.ts +734 -101
- package/dist/schemas/registry.js +64 -1
- package/dist/seed/bids-seed-data.js +30 -0
- package/dist/seed/offers-seed-data.js +212 -7
- package/dist/seed/orders-seed-data.js +336 -1
- package/dist/seed/products-auctions-seed-data.js +41 -0
- package/dist/server.d.ts +2 -0
- package/dist/server.js +5 -0
- package/dist/styles.css +1 -1
- package/dist/tailwind-utilities.css +1 -1
- package/dist/ui/DataTable.js +4 -2
- package/dist/ui/columns/build-columns.d.ts +6 -1
- package/dist/ui/columns/build-columns.js +53 -0
- package/dist/ui/columns/cell-renderers.d.ts +68 -0
- package/dist/ui/columns/cell-renderers.js +111 -0
- package/dist/ui/columns/column-renderers.d.ts +6 -1
- package/dist/ui/columns/column-renderers.js +6 -1
- package/dist/ui/columns/index.d.ts +2 -1
- package/dist/ui/columns/index.js +5 -1
- package/dist/ui/components/Button.js +27 -2
- package/dist/ui/components/RecordDetailModal.d.ts +10 -1
- package/dist/ui/components/RecordDetailModal.js +2 -2
- package/dist/ui/icons/icon-registry.d.ts +65 -0
- package/dist/ui/icons/icon-registry.js +115 -0
- package/package.json +2 -1
- package/scripts/node-esm-loader.mjs +65 -0
- package/scripts/seed-cli-loader.mjs +6 -49
- package/scripts/seed-cli.mjs +1 -1
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ESM resolver hook — makes `import("@mohasinac/appkit")` work from ANY
|
|
3
|
+
* standalone Node script.
|
|
4
|
+
*
|
|
5
|
+
* appkit is `"type": "module"` built by plain `tsc`, and tsc does not rewrite
|
|
6
|
+
* import specifiers — so all ~2,190 emitted `.js` files carry bare relative
|
|
7
|
+
* imports with no `.js` extension. Bundlers (Next/Turbopack, tsup, vite)
|
|
8
|
+
* resolve those happily; Node's ESM resolver refuses them outright. This hook
|
|
9
|
+
* retries with `.js` and then `/index.js` on ERR_MODULE_NOT_FOUND, and stubs
|
|
10
|
+
* the two other things that make a raw Node import of appkit explode.
|
|
11
|
+
*
|
|
12
|
+
* Registered by:
|
|
13
|
+
* - `appkit/scripts/seed-cli.mjs` (the appkit-seed CLI)
|
|
14
|
+
* - `scripts/qa/roundtrip-diff.mjs` (the schema field-loss gate)
|
|
15
|
+
*
|
|
16
|
+
* **Renamed from `seed-cli-loader.mjs`** — it was never seed-specific, and
|
|
17
|
+
* that name was why a later session diagnosed the same ESM failure from
|
|
18
|
+
* scratch and concluded the fix was to rewrite every specifier at build time.
|
|
19
|
+
* It is not: it is this file, registered in three lines. `seed-cli-loader.mjs`
|
|
20
|
+
* remains as a re-export so any pinned path keeps working.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
// Stub out non-JS asset imports (CSS, etc.) — appkit's dist contains
|
|
24
|
+
// `import "./foo.css"` side-effect statements that Node ESM can't load.
|
|
25
|
+
const STUB_EXTENSIONS = [".css", ".scss", ".sass", ".png", ".jpg", ".jpeg", ".svg", ".webp", ".gif"];
|
|
26
|
+
|
|
27
|
+
// server-only / client-only are Next.js-specific sentinel packages — their
|
|
28
|
+
// entire module body unconditionally throws, because their whole purpose is
|
|
29
|
+
// a Next.js-compiler-time + Next.js-runtime guard against importing a
|
|
30
|
+
// server-only (or client-only) module from the wrong side of the boundary.
|
|
31
|
+
// A raw Node script (this CLI) is neither a Next.js Server Component nor a
|
|
32
|
+
// Client Component, so the guard is meaningless here — the main
|
|
33
|
+
// @mohasinac/appkit barrel transitively reaches a module (e.g.
|
|
34
|
+
// features/contact/email.tsx) that imports "server-only" at the top level,
|
|
35
|
+
// which crashes the whole CLI on load. Stub both to a no-op module. Found
|
|
36
|
+
// 2026-08-17 debugging the CLI seed tool being unable to import appkit at all.
|
|
37
|
+
const SENTINEL_SPECIFIERS = new Set(["server-only", "client-only"]);
|
|
38
|
+
|
|
39
|
+
export async function load(url, context, nextLoad) {
|
|
40
|
+
if (STUB_EXTENSIONS.some((ext) => url.endsWith(ext))) {
|
|
41
|
+
return { format: "module", shortCircuit: true, source: "export default undefined;" };
|
|
42
|
+
}
|
|
43
|
+
return nextLoad(url, context);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export async function resolve(specifier, context, nextResolve) {
|
|
47
|
+
if (SENTINEL_SPECIFIERS.has(specifier)) {
|
|
48
|
+
return { url: `data:text/javascript,export default undefined;`, shortCircuit: true };
|
|
49
|
+
}
|
|
50
|
+
try {
|
|
51
|
+
return await nextResolve(specifier, context);
|
|
52
|
+
} catch (err) {
|
|
53
|
+
if (err?.code !== "ERR_MODULE_NOT_FOUND" && err?.code !== "ERR_UNSUPPORTED_DIR_IMPORT") throw err;
|
|
54
|
+
if (specifier.endsWith(".js") || specifier.endsWith(".mjs") || specifier.endsWith(".cjs")) throw err;
|
|
55
|
+
// Try with .js suffix (most common case)
|
|
56
|
+
try {
|
|
57
|
+
return await nextResolve(`${specifier}.js`, context);
|
|
58
|
+
} catch {}
|
|
59
|
+
// Try as a directory index
|
|
60
|
+
try {
|
|
61
|
+
return await nextResolve(`${specifier}/index.js`, context);
|
|
62
|
+
} catch {}
|
|
63
|
+
throw err;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -1,52 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Back-compat shim. The real implementation is `node-esm-loader.mjs`.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* The hook was never seed-specific — it makes a bare `import("@mohasinac/appkit")`
|
|
5
|
+
* resolve from any standalone Node script — so it was renamed. This file stays
|
|
6
|
+
* so a pinned path (a published tarball, a script outside this repo) keeps
|
|
7
|
+
* working. Register `node-esm-loader.mjs` directly in anything new.
|
|
8
8
|
*/
|
|
9
|
-
|
|
10
|
-
// Stub out non-JS asset imports (CSS, etc.) — appkit's dist contains
|
|
11
|
-
// `import "./foo.css"` side-effect statements that Node ESM can't load.
|
|
12
|
-
const STUB_EXTENSIONS = [".css", ".scss", ".sass", ".png", ".jpg", ".jpeg", ".svg", ".webp", ".gif"];
|
|
13
|
-
|
|
14
|
-
// server-only / client-only are Next.js-specific sentinel packages — their
|
|
15
|
-
// entire module body unconditionally throws, because their whole purpose is
|
|
16
|
-
// a Next.js-compiler-time + Next.js-runtime guard against importing a
|
|
17
|
-
// server-only (or client-only) module from the wrong side of the boundary.
|
|
18
|
-
// A raw Node script (this CLI) is neither a Next.js Server Component nor a
|
|
19
|
-
// Client Component, so the guard is meaningless here — the main
|
|
20
|
-
// @mohasinac/appkit barrel transitively reaches a module (e.g.
|
|
21
|
-
// features/contact/email.tsx) that imports "server-only" at the top level,
|
|
22
|
-
// which crashes the whole CLI on load. Stub both to a no-op module. Found
|
|
23
|
-
// 2026-08-17 debugging the CLI seed tool being unable to import appkit at all.
|
|
24
|
-
const SENTINEL_SPECIFIERS = new Set(["server-only", "client-only"]);
|
|
25
|
-
|
|
26
|
-
export async function load(url, context, nextLoad) {
|
|
27
|
-
if (STUB_EXTENSIONS.some((ext) => url.endsWith(ext))) {
|
|
28
|
-
return { format: "module", shortCircuit: true, source: "export default undefined;" };
|
|
29
|
-
}
|
|
30
|
-
return nextLoad(url, context);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export async function resolve(specifier, context, nextResolve) {
|
|
34
|
-
if (SENTINEL_SPECIFIERS.has(specifier)) {
|
|
35
|
-
return { url: `data:text/javascript,export default undefined;`, shortCircuit: true };
|
|
36
|
-
}
|
|
37
|
-
try {
|
|
38
|
-
return await nextResolve(specifier, context);
|
|
39
|
-
} catch (err) {
|
|
40
|
-
if (err?.code !== "ERR_MODULE_NOT_FOUND" && err?.code !== "ERR_UNSUPPORTED_DIR_IMPORT") throw err;
|
|
41
|
-
if (specifier.endsWith(".js") || specifier.endsWith(".mjs") || specifier.endsWith(".cjs")) throw err;
|
|
42
|
-
// Try with .js suffix (most common case)
|
|
43
|
-
try {
|
|
44
|
-
return await nextResolve(`${specifier}.js`, context);
|
|
45
|
-
} catch {}
|
|
46
|
-
// Try as a directory index
|
|
47
|
-
try {
|
|
48
|
-
return await nextResolve(`${specifier}/index.js`, context);
|
|
49
|
-
} catch {}
|
|
50
|
-
throw err;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
9
|
+
export { load, resolve } from "./node-esm-loader.mjs";
|
package/scripts/seed-cli.mjs
CHANGED
|
@@ -34,7 +34,7 @@ import readline from "node:readline";
|
|
|
34
34
|
// Register an ESM resolver hook that retries with `.js` / `/index.js` when
|
|
35
35
|
// appkit's bundler-target dist emits extension-less relative imports.
|
|
36
36
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
37
|
-
register("./
|
|
37
|
+
register("./node-esm-loader.mjs", pathToFileURL(__dirname + "/"));
|
|
38
38
|
|
|
39
39
|
// ---------------------------------------------------------------------------
|
|
40
40
|
// CLI parsing — entry point detects bin name so the same script powers
|