@mohasinac/appkit 3.8.0 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,9 @@
1
1
  "use client";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import { sieveFilter, SIEVE_OP } from "@mohasinac/appkit";
4
3
  import { sortBy } from "@mohasinac/appkit";
5
4
  import React from "react";
6
- import { FilterChipGroup, ListingLayout } from "../../../ui";
5
+ import { ListingLayout } from "../../../ui";
7
6
  import { ADMIN_ENDPOINTS } from "../../../constants/api-endpoints";
8
- import { ADMIN_CART_OWNERSHIP_TABS } from "../constants/filter-tabs";
9
7
  import { toRecordArray, toRelativeDate, toStringValue, } from "../hooks/useAdminListingData";
10
8
  import { DataListingView } from "./DataListingView";
11
9
  const ADMIN_CARTS_CONFIG = {
@@ -13,7 +11,7 @@ const ADMIN_CARTS_CONFIG = {
13
11
  title: "Carts",
14
12
  searchPlaceholder: "Search by user ID or session",
15
13
  emptyLabel: "No carts found",
16
- filterKeys: ["type"],
14
+ filterKeys: [],
17
15
  defaultSort: sortBy("updatedAt", "DESC"),
18
16
  queryKey: ["admin", "carts", "listing"],
19
17
  endpoint: ADMIN_ENDPOINTS.ADMIN_CARTS,
@@ -36,8 +34,7 @@ const ADMIN_CARTS_CONFIG = {
36
34
  };
37
35
  }),
38
36
  getTotal: (response, mappedRows) => typeof response.total === "number" ? response.total : mappedRows.length,
39
- buildFilters: (state) => state.type && state.type !== "All" ? sieveFilter("type", SIEVE_OP.EQ, state.type) : undefined,
40
- renderFilterPanel: ({ pendingFilters, setPendingFilters }) => (_jsx(FilterChipGroup, { label: "Type", tabs: ADMIN_CART_OWNERSHIP_TABS, value: pendingFilters.type ?? "", onChange: (id) => setPendingFilters((p) => ({ ...p, type: id })) })),
37
+ buildFilters: () => undefined,
41
38
  };
42
39
  export function AdminCartsView({ children, ...props }) {
43
40
  if (React.Children.count(children) > 0) {
@@ -69,7 +69,7 @@ export function SellerArtView({ onCreateClick, onEditClick, onDelete, onBulkDele
69
69
  sortOptions: [
70
70
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
71
71
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
72
- { value: "productTitle", label: "Name A–Z" },
72
+ { value: "title", label: "Name A–Z" },
73
73
  { value: sortBy("price", "ASC"), label: "Price: Low–High" },
74
74
  { value: sortBy("price", "DESC"), label: "Price: High–Low" },
75
75
  ],
@@ -39,12 +39,12 @@ export function SellerAuctionsView({ children, onEditClick, onDelete, onBulkDele
39
39
  searchPlaceholder: "Search auctions by product name",
40
40
  emptyLabel: "No auctions found",
41
41
  filterKeys: ["status"],
42
- defaultSort: sortBy("endsAt", "ASC"),
42
+ defaultSort: sortBy("auctionEndDate", "ASC"),
43
43
  queryKey: ["seller", "auctions", "listing"],
44
44
  endpoint: SELLER_ENDPOINTS.AUCTIONS,
45
45
  sortOptions: [
46
- { value: "endsAt", label: "Ending soon" },
47
- { value: sortBy("endsAt", "DESC"), label: "Ending latest" },
46
+ { value: "auctionEndDate", label: "Ending soon" },
47
+ { value: sortBy("auctionEndDate", "DESC"), label: "Ending latest" },
48
48
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
49
49
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
50
50
  ],
@@ -70,7 +70,7 @@ export function SellerClassifiedView({ onCreateClick, onEditClick, onDelete, onB
70
70
  sortOptions: [
71
71
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
72
72
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
73
- { value: "productTitle", label: "Name A–Z" },
73
+ { value: "title", label: "Name A–Z" },
74
74
  { value: sortBy("price", "ASC"), label: "Price: Low–High" },
75
75
  { value: sortBy("price", "DESC"), label: "Price: High–Low" },
76
76
  ],
@@ -75,7 +75,7 @@ export function SellerDigitalCodesView({ onCreateClick, onEditClick, onDelete, o
75
75
  sortOptions: [
76
76
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
77
77
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
78
- { value: "productTitle", label: "Name A–Z" },
78
+ { value: "title", label: "Name A–Z" },
79
79
  { value: sortBy("price", "ASC"), label: "Price: Low–High" },
80
80
  ],
81
81
  columns: COLUMNS,
@@ -74,7 +74,7 @@ export function SellerLiveView({ onCreateClick, onEditClick, onDelete, onBulkDel
74
74
  sortOptions: [
75
75
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
76
76
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
77
- { value: "productTitle", label: "Name A–Z" },
77
+ { value: "title", label: "Name A–Z" },
78
78
  { value: sortBy("price", "ASC"), label: "Price: Low–High" },
79
79
  { value: sortBy("price", "DESC"), label: "Price: High–Low" },
80
80
  ],
@@ -88,7 +88,7 @@ export function SellerPreOrdersView({ children, onDelete, ...props }) {
88
88
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
89
89
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
90
90
  { value: "title", label: "Title A–Z" },
91
- { value: "preorderAvailableDate", label: "Delivery Soon" },
91
+ { value: "preOrderDeliveryDate", label: "Delivery Soon" },
92
92
  ],
93
93
  columns: PRE_ORDER_COLUMNS,
94
94
  mapRows: (response) => toRecordArray(response.products).map((item, index) => {
@@ -99,8 +99,8 @@ export function SellerPreOrdersView({ children, onDelete, ...props }) {
99
99
  secondary: toStringValue(item.condition, ""),
100
100
  status: toStringValue(item.status, "draft"),
101
101
  price: priceRaw ? toRupees(priceRaw) : "—",
102
- deliveryDate: item.preorderAvailableDate
103
- ? toRelativeDate(item.preorderAvailableDate)
102
+ deliveryDate: item.preOrderDeliveryDate
103
+ ? toRelativeDate(item.preOrderDeliveryDate)
104
104
  : "TBA",
105
105
  updatedAt: toRelativeDate(item.updatedAt ?? item.createdAt),
106
106
  imageUrl: toStringValue(item.mainImage ?? item.images?.[0], undefined),
@@ -85,7 +85,7 @@ export function SellerPrizeDrawsView({ children, onDelete, ...props }) {
85
85
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
86
86
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
87
87
  { value: "title", label: "Title A–Z" },
88
- { value: "prizeDrawEndDate", label: "Draw Date Soon" },
88
+ { value: "prizeRevealWindowEnd", label: "Draw Date Soon" },
89
89
  ],
90
90
  columns: PRIZE_DRAW_COLUMNS,
91
91
  mapRows: (response) => toRecordArray(response.products).map((item, index) => {
@@ -96,8 +96,8 @@ export function SellerPrizeDrawsView({ children, onDelete, ...props }) {
96
96
  secondary: toStringValue(item.condition, ""),
97
97
  status: toStringValue(item.status, "draft"),
98
98
  entryFee: priceRaw ? toRupees(priceRaw) : "Free",
99
- drawDate: item.prizeDrawEndDate
100
- ? toRelativeDate(item.prizeDrawEndDate)
99
+ drawDate: item.prizeRevealWindowEnd
100
+ ? toRelativeDate(item.prizeRevealWindowEnd)
101
101
  : "TBA",
102
102
  updatedAt: toRelativeDate(item.updatedAt ?? item.createdAt),
103
103
  imageUrl: toStringValue(item.mainImage ?? item.images?.[0], undefined),
@@ -69,7 +69,7 @@ export function SellerStickersView({ onCreateClick, onEditClick, onDelete, onBul
69
69
  sortOptions: [
70
70
  { value: sortBy("createdAt", "DESC"), label: "Newest" },
71
71
  { value: sortBy("createdAt", "ASC"), label: "Oldest" },
72
- { value: "productTitle", label: "Name A–Z" },
72
+ { value: "title", label: "Name A–Z" },
73
73
  { value: sortBy("price", "ASC"), label: "Price: Low–High" },
74
74
  { value: sortBy("price", "DESC"), label: "Price: High–Low" },
75
75
  ],
package/dist/index.d.ts CHANGED
@@ -444,10 +444,8 @@ export { BID_PII_FIELDS } from "./security/index";
444
444
  export { CHAT_PII_FIELDS } from "./security/index";
445
445
  export { Can } from "./security/index";
446
446
  export { DEFAULT_ROLES } from "./security/index";
447
- export { ENC_PREFIX } from "./security/index";
448
447
  export { EVENT_ENTRY_PII_FIELDS } from "./security/index";
449
448
  export { LOTTERY_ENTRY_PII_FIELDS } from "./security/index";
450
- export { HMAC_PREFIX } from "./security/index";
451
449
  export { NEWSLETTER_PII_FIELDS } from "./security/index";
452
450
  export { NEWSLETTER_PII_INDEX_MAP } from "./security/index";
453
451
  export { OFFER_PII_FIELDS } from "./security/index";
@@ -461,7 +459,6 @@ export { TOKEN_PII_FIELDS } from "./security/index";
461
459
  export { TOKEN_PII_INDEX_MAP } from "./security/index";
462
460
  export { USER_PII_FIELDS } from "./security/index";
463
461
  export { USER_PII_INDEX_MAP } from "./security/index";
464
- export { addPiiIndices } from "./security/index";
465
462
  export { applyRateLimit } from "./security/index";
466
463
  export { buildCSP } from "./security/index";
467
464
  export { canChangeRole } from "./security/index";
@@ -470,39 +467,15 @@ export { createRbacHook } from "./security/index";
470
467
  export { createRbacMiddleware } from "./security/index";
471
468
  export { createRequirePermission } from "./security/index";
472
469
  export { createRequirePermissionSync } from "./security/index";
473
- export { decryptPayoutBankAccount } from "./security/index";
474
- export { decryptPayoutDetails } from "./security/index";
475
- export { decryptPii } from "./security/index";
476
- export { decryptPiiFields } from "./security/index";
477
470
  export { decryptSecret } from "./security/index";
478
- export { decryptShippingAddress } from "./security/index";
479
- export { decryptShippingConfig } from "./security/index";
480
- export { decryptValue } from "./security/index";
481
- export { encryptPayoutBankAccount } from "./security/index";
482
- export { encryptPayoutDetails } from "./security/index";
483
- export { encryptPii } from "./security/index";
484
- export { encryptPiiFields } from "./security/index";
485
471
  export { encryptSecret } from "./security/index";
486
- export { encryptShippingAddress } from "./security/index";
487
- export { encryptShippingConfig } from "./security/index";
488
- export { encryptValue } from "./security/index";
489
472
  export { generateNonce } from "./security/index";
490
- export { getPiiConfigError } from "./security/index";
491
473
  export { getRoleLevel } from "./security/index";
492
474
  export { hasAllPermissions } from "./security/index";
493
475
  export { hasAnyPermission } from "./security/index";
494
476
  export { hasPermission } from "./security/index";
495
- export { hmacBlindIndex } from "./security/index";
496
- export { isPiiEncrypted } from "./security/index";
497
477
  export { isSecretEncrypted } from "./security/index";
498
- export { maskEmail } from "./security/index";
499
- export { maskName } from "./security/index";
500
- export { maskOfferForSeller } from "./security/index";
501
- export { maskPublicBid } from "./security/index";
502
- export { maskPublicEventEntry } from "./security/index";
503
- export { maskPublicReview } from "./security/index";
504
478
  export { maskSecret } from "./security/index";
505
- export { piiBlindIndex } from "./security/index";
506
479
  export { rateLimit } from "./security/index";
507
480
  export { rateLimitByIdentifier } from "./security/index";
508
481
  export { redactPii, safeDisplayName, safeDisplayEmail } from "./security/index";
package/dist/index.js CHANGED
@@ -782,17 +782,11 @@ export { Can } from "./security/index";
782
782
  // DEFAULT_ROLES - Constant used across modules.
783
783
  export { DEFAULT_ROLES } from "./security/index";
784
784
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
785
- // ENC_PREFIX - Constant used across modules.
786
- export { ENC_PREFIX } from "./security/index";
787
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
788
785
  // EVENT_ENTRY_PII_FIELDS - Constant used across modules.
789
786
  export { EVENT_ENTRY_PII_FIELDS } from "./security/index";
790
787
  // LOTTERY_ENTRY_PII_FIELDS - PII fields for lottery entries.
791
788
  export { LOTTERY_ENTRY_PII_FIELDS } from "./security/index";
792
789
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
793
- // HMAC_PREFIX - Constant used across modules.
794
- export { HMAC_PREFIX } from "./security/index";
795
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
796
790
  // NEWSLETTER_PII_FIELDS - Constant used across modules.
797
791
  export { NEWSLETTER_PII_FIELDS } from "./security/index";
798
792
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
@@ -832,9 +826,6 @@ export { USER_PII_FIELDS } from "./security/index";
832
826
  // USER_PII_INDEX_MAP - Constant used across modules.
833
827
  export { USER_PII_INDEX_MAP } from "./security/index";
834
828
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
835
- // addPiiIndices - Helper for add pii indices.
836
- export { addPiiIndices } from "./security/index";
837
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
838
829
  // applyRateLimit - Helper for apply rate limit.
839
830
  export { applyRateLimit } from "./security/index";
840
831
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
@@ -859,60 +850,15 @@ export { createRequirePermission } from "./security/index";
859
850
  // createRequirePermissionSync - Helper for create require permission sync.
860
851
  export { createRequirePermissionSync } from "./security/index";
861
852
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
862
- // decryptPayoutBankAccount - Helper for decrypt payout bank account.
863
- export { decryptPayoutBankAccount } from "./security/index";
864
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
865
- // decryptPayoutDetails - Helper for decrypt payout details.
866
- export { decryptPayoutDetails } from "./security/index";
867
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
868
- // decryptPii - Helper for decrypt pii.
869
- export { decryptPii } from "./security/index";
870
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
871
- // decryptPiiFields - Helper for decrypt pii fields.
872
- export { decryptPiiFields } from "./security/index";
873
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
874
853
  // decryptSecret - Helper for decrypt secret.
875
854
  export { decryptSecret } from "./security/index";
876
855
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
877
- // decryptShippingAddress - Helper for decrypt shipping address.
878
- export { decryptShippingAddress } from "./security/index";
879
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
880
- // decryptShippingConfig - Helper for decrypt shipping config.
881
- export { decryptShippingConfig } from "./security/index";
882
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
883
- // decryptValue - Helper for decrypt value.
884
- export { decryptValue } from "./security/index";
885
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
886
- // encryptPayoutBankAccount - Helper for encrypt payout bank account.
887
- export { encryptPayoutBankAccount } from "./security/index";
888
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
889
- // encryptPayoutDetails - Helper for encrypt payout details.
890
- export { encryptPayoutDetails } from "./security/index";
891
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
892
- // encryptPii - Helper for encrypt pii.
893
- export { encryptPii } from "./security/index";
894
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
895
- // encryptPiiFields - Helper for encrypt pii fields.
896
- export { encryptPiiFields } from "./security/index";
897
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
898
856
  // encryptSecret - Helper for encrypt secret.
899
857
  export { encryptSecret } from "./security/index";
900
858
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
901
- // encryptShippingAddress - Helper for encrypt shipping address.
902
- export { encryptShippingAddress } from "./security/index";
903
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
904
- // encryptShippingConfig - Helper for encrypt shipping config.
905
- export { encryptShippingConfig } from "./security/index";
906
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
907
- // encryptValue - Helper for encrypt value.
908
- export { encryptValue } from "./security/index";
909
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
910
859
  // generateNonce - Helper for generate nonce.
911
860
  export { generateNonce } from "./security/index";
912
861
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
913
- // getPiiConfigError - Helper for get pii config error.
914
- export { getPiiConfigError } from "./security/index";
915
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
916
862
  // getRoleLevel - Helper for get role level.
917
863
  export { getRoleLevel } from "./security/index";
918
864
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
@@ -925,39 +871,12 @@ export { hasAnyPermission } from "./security/index";
925
871
  // hasPermission - Model for has permission.
926
872
  export { hasPermission } from "./security/index";
927
873
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
928
- // hmacBlindIndex - Shared export for hmac blind index.
929
- export { hmacBlindIndex } from "./security/index";
930
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
931
- // isPiiEncrypted - Shared export for is pii encrypted.
932
- export { isPiiEncrypted } from "./security/index";
933
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
934
874
  // isSecretEncrypted - Shared export for is secret encrypted.
935
875
  export { isSecretEncrypted } from "./security/index";
936
876
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
937
- // maskEmail - Helper for mask email.
938
- export { maskEmail } from "./security/index";
939
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
940
- // maskName - Helper for mask name.
941
- export { maskName } from "./security/index";
942
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
943
- // maskOfferForSeller - Helper for mask offer for seller.
944
- export { maskOfferForSeller } from "./security/index";
945
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
946
- // maskPublicBid - Helper for mask public bid.
947
- export { maskPublicBid } from "./security/index";
948
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
949
- // maskPublicEventEntry - Helper for mask public event entry.
950
- export { maskPublicEventEntry } from "./security/index";
951
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
952
- // maskPublicReview - Helper for mask public review.
953
- export { maskPublicReview } from "./security/index";
954
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
955
877
  // maskSecret - Helper for mask secret.
956
878
  export { maskSecret } from "./security/index";
957
879
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
958
- // piiBlindIndex - Shared export for pii blind index.
959
- export { piiBlindIndex } from "./security/index";
960
- // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
961
880
  // rateLimit - Shared export for rate limit.
962
881
  export { rateLimit } from "./security/index";
963
882
  // [CLIENT-SSR]-Runs in both SSR and browser â€" React component or hook that does not depend on browser-only APIs.
package/dist/server.d.ts CHANGED
@@ -454,6 +454,32 @@ export { applyRateLimit } from "./security/index";
454
454
  export { rateLimitByIdentifier } from "./security/index";
455
455
  export { RateLimitPresets } from "./security/index";
456
456
  export { maskPublicEventEntry } from "./security/index";
457
+ export { encryptValue } from "./security/index";
458
+ export { decryptValue } from "./security/index";
459
+ export { hmacBlindIndex } from "./security/index";
460
+ export { encryptPiiFields } from "./security/index";
461
+ export { decryptPiiFields } from "./security/index";
462
+ export { encryptPii } from "./security/index";
463
+ export { decryptPii } from "./security/index";
464
+ export { isPiiEncrypted } from "./security/index";
465
+ export { piiBlindIndex } from "./security/index";
466
+ export { addPiiIndices } from "./security/index";
467
+ export { getPiiConfigError } from "./security/index";
468
+ export { encryptShippingAddress } from "./security/index";
469
+ export { decryptShippingAddress } from "./security/index";
470
+ export { encryptPayoutDetails } from "./security/index";
471
+ export { decryptPayoutDetails } from "./security/index";
472
+ export { encryptShippingConfig } from "./security/index";
473
+ export { decryptShippingConfig } from "./security/index";
474
+ export { encryptPayoutBankAccount } from "./security/index";
475
+ export { decryptPayoutBankAccount } from "./security/index";
476
+ export { maskName } from "./security/index";
477
+ export { maskEmail } from "./security/index";
478
+ export { maskPublicReview } from "./security/index";
479
+ export { maskPublicBid } from "./security/index";
480
+ export { maskOfferForSeller } from "./security/index";
481
+ export { ENC_PREFIX } from "./security/index";
482
+ export { HMAC_PREFIX } from "./security/index";
457
483
  export { createInstrumentation } from "./instrumentation/index";
458
484
  export { SEO_CONFIG } from "./seo/index";
459
485
  export { createSeoConfig } from "./seo/index";
package/dist/server.js CHANGED
@@ -1312,6 +1312,33 @@ export { rateLimitByIdentifier } from "./security/index";
1312
1312
  export { RateLimitPresets } from "./security/index";
1313
1313
  // maskPublicEventEntry - Redact PII from event entries before public exposure.
1314
1314
  export { maskPublicEventEntry } from "./security/index";
1315
+ // PII encryption/masking (server-only -- crypto module via node:module, must never leak into a client bundle; see appkit Export Rules in CLAUDE.md)
1316
+ export { encryptValue } from "./security/index";
1317
+ export { decryptValue } from "./security/index";
1318
+ export { hmacBlindIndex } from "./security/index";
1319
+ export { encryptPiiFields } from "./security/index";
1320
+ export { decryptPiiFields } from "./security/index";
1321
+ export { encryptPii } from "./security/index";
1322
+ export { decryptPii } from "./security/index";
1323
+ export { isPiiEncrypted } from "./security/index";
1324
+ export { piiBlindIndex } from "./security/index";
1325
+ export { addPiiIndices } from "./security/index";
1326
+ export { getPiiConfigError } from "./security/index";
1327
+ export { encryptShippingAddress } from "./security/index";
1328
+ export { decryptShippingAddress } from "./security/index";
1329
+ export { encryptPayoutDetails } from "./security/index";
1330
+ export { decryptPayoutDetails } from "./security/index";
1331
+ export { encryptShippingConfig } from "./security/index";
1332
+ export { decryptShippingConfig } from "./security/index";
1333
+ export { encryptPayoutBankAccount } from "./security/index";
1334
+ export { decryptPayoutBankAccount } from "./security/index";
1335
+ export { maskName } from "./security/index";
1336
+ export { maskEmail } from "./security/index";
1337
+ export { maskPublicReview } from "./security/index";
1338
+ export { maskPublicBid } from "./security/index";
1339
+ export { maskOfferForSeller } from "./security/index";
1340
+ export { ENC_PREFIX } from "./security/index";
1341
+ export { HMAC_PREFIX } from "./security/index";
1315
1342
  // -- Instrumentation ---------------------------------------------------------
1316
1343
  // createInstrumentation - Factory for Next.js instrumentation hooks.
1317
1344
  export { createInstrumentation } from "./instrumentation/index";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mohasinac/appkit",
3
- "version": "3.8.0",
3
+ "version": "3.8.1",
4
4
  "license": "MIT",
5
5
  "publishConfig": {
6
6
  "access": "public"