@fias/arche-sdk 1.5.2 → 1.6.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.
File without changes
package/dist/hooks.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { FiasUser, FiasTheme, FiasStorageApi, EntityInvocationApi, ImageGenerationApi, FiasNavigationApi, StepNavigationApi, FiasDataStoreApi } from './types';
1
+ import type { FiasUser, FiasTheme, FiasStorageApi, EntityInvocationApi, ImageGenerationApi, FiasNavigationApi, StepNavigationApi, FiasDataStoreApi, FiasStoreApi } from './types';
2
2
  /**
3
3
  * Access the current user's profile information.
4
4
  * Requires the `user:profile:read` permission in fias-plugin.json.
@@ -88,4 +88,14 @@ export declare function useStepNavigation(initialStep?: string): StepNavigationA
88
88
  * });
89
89
  */
90
90
  export declare function useFiasDataStore(): FiasDataStoreApi;
91
+ /**
92
+ * Access the in-arche purchase (IAP) store.
93
+ * Provides product listing, purchase initiation, entitlement checking,
94
+ * and purchase history. All purchases are mediated by the platform.
95
+ *
96
+ * Requires the `store:purchase` permission in fias-plugin.json.
97
+ *
98
+ * @returns Store API with products, entitlements, and purchase methods.
99
+ */
100
+ export declare function useFiasStore(): FiasStoreApi;
91
101
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,QAAQ,EACR,SAAS,EACT,cAAc,EACd,mBAAmB,EAGnB,kBAAkB,EAGlB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAIjB,MAAM,SAAS,CAAC;AAcjB;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,QAAQ,GAAG,IAAI,CAe7C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,IAAI,SAAS,GAAG,IAAI,CAS/C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,cAAc,CAqC/C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,mBAAmB,CAoCzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,kBAAkB,CA2BvD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,iBAAiB,CAgBrD;AAED;;;;;;;GAOG;AACH;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,CAAC,GACd,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CA2C5C;AAED,wBAAgB,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAWzE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,CAyFnD"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,QAAQ,EACR,SAAS,EACT,cAAc,EACd,mBAAmB,EAGnB,kBAAkB,EAGlB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAIhB,YAAY,EAMb,MAAM,SAAS,CAAC;AAcjB;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,QAAQ,GAAG,IAAI,CAe7C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,IAAI,SAAS,GAAG,IAAI,CAS/C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,cAAc,CAqC/C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,mBAAmB,CAoCzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,kBAAkB,CA2BvD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,iBAAiB,CAgBrD;AAED;;;;;;;GAOG;AACH;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,CAAC,GACd,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CA2C5C;AAED,wBAAgB,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAWzE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,CAyFnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,IAAI,YAAY,CAqG3C"}
package/dist/hooks.js CHANGED
@@ -9,6 +9,7 @@ exports.useFiasNavigation = useFiasNavigation;
9
9
  exports.usePersistentState = usePersistentState;
10
10
  exports.useStepNavigation = useStepNavigation;
11
11
  exports.useFiasDataStore = useFiasDataStore;
12
+ exports.useFiasStore = useFiasStore;
12
13
  const react_1 = require("react");
13
14
  const react_dom_1 = require("react-dom");
14
15
  const context_1 = require("./context");
@@ -299,4 +300,89 @@ function useFiasDataStore() {
299
300
  delete: deleteDoc,
300
301
  }), [createCollection, listCollections, deleteCollection, put, get, query, deleteDoc]);
301
302
  }
303
+ /**
304
+ * Access the in-arche purchase (IAP) store.
305
+ * Provides product listing, purchase initiation, entitlement checking,
306
+ * and purchase history. All purchases are mediated by the platform.
307
+ *
308
+ * Requires the `store:purchase` permission in fias-plugin.json.
309
+ *
310
+ * @returns Store API with products, entitlements, and purchase methods.
311
+ */
312
+ function useFiasStore() {
313
+ const bridge = useBridge();
314
+ const [products, setProducts] = (0, react_1.useState)([]);
315
+ const [entitlements, setEntitlements] = (0, react_1.useState)([]);
316
+ const [isLoading, setIsLoading] = (0, react_1.useState)(true);
317
+ // Load products and entitlements on mount
318
+ (0, react_1.useEffect)(() => {
319
+ let mounted = true;
320
+ Promise.all([
321
+ bridge.request('store_get_products', {}),
322
+ bridge.request('store_get_entitlements', {}),
323
+ ])
324
+ .then(([prods, ents]) => {
325
+ if (mounted) {
326
+ setProducts(prods);
327
+ setEntitlements(ents);
328
+ setIsLoading(false);
329
+ }
330
+ })
331
+ .catch(() => {
332
+ if (mounted)
333
+ setIsLoading(false);
334
+ });
335
+ return () => {
336
+ mounted = false;
337
+ };
338
+ }, [bridge]);
339
+ const purchase = (0, react_1.useCallback)(async (productIdentifier, options) => {
340
+ const result = await bridge.request('store_purchase', {
341
+ productIdentifier,
342
+ ...options,
343
+ });
344
+ // If purchase succeeded and returned an entitlement, update local state
345
+ if (result.success && result.entitlement) {
346
+ setEntitlements((prev) => {
347
+ const existing = prev.findIndex((e) => e.productIdentifier === result.entitlement.productIdentifier);
348
+ if (existing >= 0) {
349
+ const updated = [...prev];
350
+ updated[existing] = result.entitlement;
351
+ return updated;
352
+ }
353
+ return [...prev, result.entitlement];
354
+ });
355
+ }
356
+ return result;
357
+ }, [bridge]);
358
+ const hasEntitlement = (0, react_1.useCallback)((productIdentifier) => {
359
+ return entitlements.some((e) => e.productIdentifier === productIdentifier && e.isActive);
360
+ }, [entitlements]);
361
+ const getPurchaseHistory = (0, react_1.useCallback)(async () => {
362
+ const res = await bridge.request('store_get_purchase_history', {});
363
+ return res.purchases;
364
+ }, [bridge]);
365
+ const restorePurchases = (0, react_1.useCallback)(async () => {
366
+ const restored = await bridge.request('store_restore', {});
367
+ setEntitlements(restored);
368
+ return restored;
369
+ }, [bridge]);
370
+ return (0, react_1.useMemo)(() => ({
371
+ products,
372
+ purchase,
373
+ entitlements,
374
+ hasEntitlement,
375
+ getPurchaseHistory,
376
+ restorePurchases,
377
+ isLoading,
378
+ }), [
379
+ products,
380
+ purchase,
381
+ entitlements,
382
+ hasEntitlement,
383
+ getPurchaseHistory,
384
+ restorePurchases,
385
+ isLoading,
386
+ ]);
387
+ }
302
388
  //# sourceMappingURL=hooks.js.map
package/dist/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { FiasProvider } from './provider';
2
- export { useFiasUser, useFiasTheme, useFiasStorage, useEntityInvocation, useImageGeneration, useFiasNavigation, useStepNavigation, usePersistentState, useFiasDataStore, } from './hooks';
2
+ export { useFiasUser, useFiasTheme, useFiasStorage, useEntityInvocation, useImageGeneration, useFiasNavigation, useStepNavigation, usePersistentState, useFiasDataStore, useFiasStore, } from './hooks';
3
3
  export { fias } from './fias';
4
4
  export { DARK_THEME, LIGHT_THEME, getDefaultTheme } from './theme';
5
5
  export { THEME_CATALOG, getThemeById } from './themes';
@@ -7,5 +7,5 @@ export type { ThemeCatalogEntry } from './themes';
7
7
  export { FONT_PAIRINGS, getFontPairingById } from './themes/fonts';
8
8
  export type { FontPairing } from './themes/fonts';
9
9
  export { FiasBridge, getBridge, resetBridge } from './bridge';
10
- export type { FiasUser, FiasTheme, FiasStorageApi, EntityInvocationApi, EntityInvocationParams, EntityInvocationResult, ImageGenerationApi, ImageGenerationParams, ImageGenerationResult, FiasNavigationApi, StepNavigationApi, FiasDataStoreApi, DataStoreCollection, DataStoreDocument, DataStoreQueryFilter, DataStoreQueryOptions, DataStoreQueryResult, PluginPermission, BridgeMessage, BridgeResponse, BridgeInitMessage, PluginToHostMessageType, HostToPluginMessageType, } from './types';
10
+ export type { FiasUser, FiasTheme, FiasStorageApi, EntityInvocationApi, EntityInvocationParams, EntityInvocationResult, ImageGenerationApi, ImageGenerationParams, ImageGenerationResult, FiasNavigationApi, StepNavigationApi, FiasDataStoreApi, DataStoreCollection, DataStoreDocument, DataStoreQueryFilter, DataStoreQueryOptions, DataStoreQueryResult, FiasStoreApi, StoreProduct, StoreProductType, StoreSubscriptionPeriod, StoreEntitlement, StorePurchase, StorePurchaseResult, StorePurchaseOptions, PluginPermission, BridgeMessage, BridgeResponse, BridgeInitMessage, PluginToHostMessageType, HostToPluginMessageType, } from './types';
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACnE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG9D,YAAY,EAEV,QAAQ,EACR,SAAS,EAET,cAAc,EAEd,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EAEtB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAErB,iBAAiB,EAEjB,iBAAiB,EAEjB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EAEpB,gBAAgB,EAEhB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,GACb,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACnE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG9D,YAAY,EAEV,QAAQ,EACR,SAAS,EAET,cAAc,EAEd,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EAEtB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAErB,iBAAiB,EAEjB,iBAAiB,EAEjB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EAEpB,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EAEpB,gBAAgB,EAEhB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resetBridge = exports.getBridge = exports.FiasBridge = exports.getFontPairingById = exports.FONT_PAIRINGS = exports.getThemeById = exports.THEME_CATALOG = exports.getDefaultTheme = exports.LIGHT_THEME = exports.DARK_THEME = exports.fias = exports.useFiasDataStore = exports.usePersistentState = exports.useStepNavigation = exports.useFiasNavigation = exports.useImageGeneration = exports.useEntityInvocation = exports.useFiasStorage = exports.useFiasTheme = exports.useFiasUser = exports.FiasProvider = void 0;
3
+ exports.resetBridge = exports.getBridge = exports.FiasBridge = exports.getFontPairingById = exports.FONT_PAIRINGS = exports.getThemeById = exports.THEME_CATALOG = exports.getDefaultTheme = exports.LIGHT_THEME = exports.DARK_THEME = exports.fias = exports.useFiasStore = exports.useFiasDataStore = exports.usePersistentState = exports.useStepNavigation = exports.useFiasNavigation = exports.useImageGeneration = exports.useEntityInvocation = exports.useFiasStorage = exports.useFiasTheme = exports.useFiasUser = exports.FiasProvider = void 0;
4
4
  // Components
5
5
  var provider_1 = require("./provider");
6
6
  Object.defineProperty(exports, "FiasProvider", { enumerable: true, get: function () { return provider_1.FiasProvider; } });
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "useFiasNavigation", { enumerable: true, get: fun
15
15
  Object.defineProperty(exports, "useStepNavigation", { enumerable: true, get: function () { return hooks_1.useStepNavigation; } });
16
16
  Object.defineProperty(exports, "usePersistentState", { enumerable: true, get: function () { return hooks_1.usePersistentState; } });
17
17
  Object.defineProperty(exports, "useFiasDataStore", { enumerable: true, get: function () { return hooks_1.useFiasDataStore; } });
18
+ Object.defineProperty(exports, "useFiasStore", { enumerable: true, get: function () { return hooks_1.useFiasStore; } });
18
19
  // Utilities
19
20
  var fias_1 = require("./fias");
20
21
  Object.defineProperty(exports, "fias", { enumerable: true, get: function () { return fias_1.fias; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,aAAa;AACb,uCAA0C;AAAjC,wGAAA,YAAY,OAAA;AAErB,QAAQ;AACR,iCAUiB;AATf,oGAAA,WAAW,OAAA;AACX,qGAAA,YAAY,OAAA;AACZ,uGAAA,cAAc,OAAA;AACd,4GAAA,mBAAmB,OAAA;AACnB,2GAAA,kBAAkB,OAAA;AAClB,0GAAA,iBAAiB,OAAA;AACjB,0GAAA,iBAAiB,OAAA;AACjB,2GAAA,kBAAkB,OAAA;AAClB,yGAAA,gBAAgB,OAAA;AAGlB,YAAY;AACZ,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AAEb,kBAAkB;AAClB,iCAAmE;AAA1D,mGAAA,UAAU,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,wGAAA,eAAe,OAAA;AAEjD,gBAAgB;AAChB,mCAAuD;AAA9C,uGAAA,aAAa,OAAA;AAAE,sGAAA,YAAY,OAAA;AAGpC,gBAAgB;AAChB,wCAAmE;AAA1D,sGAAA,aAAa,OAAA;AAAE,2GAAA,kBAAkB,OAAA;AAG1C,oCAAoC;AACpC,mCAA8D;AAArD,oGAAA,UAAU,OAAA;AAAE,mGAAA,SAAS,OAAA;AAAE,qGAAA,WAAW,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,aAAa;AACb,uCAA0C;AAAjC,wGAAA,YAAY,OAAA;AAErB,QAAQ;AACR,iCAWiB;AAVf,oGAAA,WAAW,OAAA;AACX,qGAAA,YAAY,OAAA;AACZ,uGAAA,cAAc,OAAA;AACd,4GAAA,mBAAmB,OAAA;AACnB,2GAAA,kBAAkB,OAAA;AAClB,0GAAA,iBAAiB,OAAA;AACjB,0GAAA,iBAAiB,OAAA;AACjB,2GAAA,kBAAkB,OAAA;AAClB,yGAAA,gBAAgB,OAAA;AAChB,qGAAA,YAAY,OAAA;AAGd,YAAY;AACZ,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AAEb,kBAAkB;AAClB,iCAAmE;AAA1D,mGAAA,UAAU,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,wGAAA,eAAe,OAAA;AAEjD,gBAAgB;AAChB,mCAAuD;AAA9C,uGAAA,aAAa,OAAA;AAAE,sGAAA,YAAY,OAAA;AAGpC,gBAAgB;AAChB,wCAAmE;AAA1D,sGAAA,aAAa,OAAA;AAAE,2GAAA,kBAAkB,OAAA;AAG1C,oCAAoC;AACpC,mCAA8D;AAArD,oGAAA,UAAU,OAAA;AAAE,mGAAA,SAAS,OAAA;AAAE,qGAAA,WAAW,OAAA"}
package/dist/index.mjs CHANGED
@@ -588,6 +588,91 @@ function useFiasDataStore() {
588
588
  [createCollection, listCollections, deleteCollection, put, get, query, deleteDoc]
589
589
  );
590
590
  }
591
+ function useFiasStore() {
592
+ const bridge = useBridge();
593
+ const [products, setProducts] = useState2([]);
594
+ const [entitlements, setEntitlements] = useState2([]);
595
+ const [isLoading, setIsLoading] = useState2(true);
596
+ useEffect2(() => {
597
+ let mounted = true;
598
+ Promise.all([
599
+ bridge.request("store_get_products", {}),
600
+ bridge.request("store_get_entitlements", {})
601
+ ]).then(([prods, ents]) => {
602
+ if (mounted) {
603
+ setProducts(prods);
604
+ setEntitlements(ents);
605
+ setIsLoading(false);
606
+ }
607
+ }).catch(() => {
608
+ if (mounted) setIsLoading(false);
609
+ });
610
+ return () => {
611
+ mounted = false;
612
+ };
613
+ }, [bridge]);
614
+ const purchase = useCallback(
615
+ async (productIdentifier, options) => {
616
+ const result = await bridge.request("store_purchase", {
617
+ productIdentifier,
618
+ ...options
619
+ });
620
+ if (result.success && result.entitlement) {
621
+ setEntitlements((prev) => {
622
+ const existing = prev.findIndex(
623
+ (e) => e.productIdentifier === result.entitlement.productIdentifier
624
+ );
625
+ if (existing >= 0) {
626
+ const updated = [...prev];
627
+ updated[existing] = result.entitlement;
628
+ return updated;
629
+ }
630
+ return [...prev, result.entitlement];
631
+ });
632
+ }
633
+ return result;
634
+ },
635
+ [bridge]
636
+ );
637
+ const hasEntitlement = useCallback(
638
+ (productIdentifier) => {
639
+ return entitlements.some((e) => e.productIdentifier === productIdentifier && e.isActive);
640
+ },
641
+ [entitlements]
642
+ );
643
+ const getPurchaseHistory = useCallback(async () => {
644
+ const res = await bridge.request(
645
+ "store_get_purchase_history",
646
+ {}
647
+ );
648
+ return res.purchases;
649
+ }, [bridge]);
650
+ const restorePurchases = useCallback(async () => {
651
+ const restored = await bridge.request("store_restore", {});
652
+ setEntitlements(restored);
653
+ return restored;
654
+ }, [bridge]);
655
+ return useMemo2(
656
+ () => ({
657
+ products,
658
+ purchase,
659
+ entitlements,
660
+ hasEntitlement,
661
+ getPurchaseHistory,
662
+ restorePurchases,
663
+ isLoading
664
+ }),
665
+ [
666
+ products,
667
+ purchase,
668
+ entitlements,
669
+ hasEntitlement,
670
+ getPurchaseHistory,
671
+ restorePurchases,
672
+ isLoading
673
+ ]
674
+ );
675
+ }
591
676
 
592
677
  // src/fias.ts
593
678
  var fias = {
@@ -2458,6 +2543,7 @@ export {
2458
2543
  useFiasDataStore,
2459
2544
  useFiasNavigation,
2460
2545
  useFiasStorage,
2546
+ useFiasStore,
2461
2547
  useFiasTheme,
2462
2548
  useFiasUser,
2463
2549
  useImageGeneration,
package/dist/types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Permission scopes that plugins can request in their manifest.
3
3
  */
4
- export type PluginPermission = 'user:profile:read' | 'entities:invoke' | 'storage:sandbox' | 'theme:read' | 'data:store';
4
+ export type PluginPermission = 'user:profile:read' | 'entities:invoke' | 'storage:sandbox' | 'theme:read' | 'data:store' | 'store:purchase';
5
5
  /**
6
6
  * User profile data available via useFiasUser() hook.
7
7
  */
@@ -144,7 +144,7 @@ export interface FiasNavigationApi {
144
144
  /**
145
145
  * Message types sent from the plugin iframe to the parent frame.
146
146
  */
147
- export type PluginToHostMessageType = 'ready' | 'resize' | 'toast' | 'get_user' | 'get_theme' | 'storage_read' | 'storage_write' | 'storage_list' | 'storage_delete' | 'entity_invoke' | 'image_generate' | 'navigate' | 'data_create_collection' | 'data_list_collections' | 'data_delete_collection' | 'data_put' | 'data_get' | 'data_query' | 'data_delete';
147
+ export type PluginToHostMessageType = 'ready' | 'resize' | 'toast' | 'get_user' | 'get_theme' | 'storage_read' | 'storage_write' | 'storage_list' | 'storage_delete' | 'entity_invoke' | 'image_generate' | 'navigate' | 'data_create_collection' | 'data_list_collections' | 'data_delete_collection' | 'data_put' | 'data_get' | 'data_query' | 'data_delete' | 'store_get_products' | 'store_purchase' | 'store_get_entitlements' | 'store_get_purchase_history' | 'store_restore' | 'store_cancel_subscription';
148
148
  /**
149
149
  * Step navigation API available via useStepNavigation() hook.
150
150
  */
@@ -264,4 +264,89 @@ export interface FiasDataStoreApi {
264
264
  /** Delete a document by key. */
265
265
  delete: (collection: string, key: string) => Promise<void>;
266
266
  }
267
+ /**
268
+ * IAP product type (mirrors Apple StoreKit).
269
+ */
270
+ export type StoreProductType = 'consumable' | 'non_consumable' | 'auto_renewable' | 'non_renewing';
271
+ /**
272
+ * Subscription billing period.
273
+ */
274
+ export type StoreSubscriptionPeriod = 'weekly' | 'monthly' | 'quarterly' | 'yearly';
275
+ /**
276
+ * A product available for purchase in this arche.
277
+ */
278
+ export interface StoreProduct {
279
+ productIdentifier: string;
280
+ type: StoreProductType;
281
+ name: string;
282
+ description: string | null;
283
+ priceCredits: number;
284
+ metadata: Record<string, unknown>;
285
+ subscriptionPeriod?: StoreSubscriptionPeriod;
286
+ }
287
+ /**
288
+ * An active entitlement (non-consumable or subscription).
289
+ * Consumable purchases do not create entitlements.
290
+ */
291
+ export interface StoreEntitlement {
292
+ productIdentifier: string;
293
+ productType: Exclude<StoreProductType, 'consumable'>;
294
+ expiresAt: string | null;
295
+ isActive: boolean;
296
+ }
297
+ /**
298
+ * A past purchase record.
299
+ */
300
+ export interface StorePurchase {
301
+ purchaseId: string;
302
+ productIdentifier: string;
303
+ productType: StoreProductType;
304
+ productName: string;
305
+ priceCredits: number;
306
+ status: 'active' | 'refunded';
307
+ purchasedAt: string;
308
+ }
309
+ /**
310
+ * Result of a purchase request.
311
+ */
312
+ export interface StorePurchaseResult {
313
+ success: boolean;
314
+ purchaseId?: string;
315
+ error?: string;
316
+ entitlement?: StoreEntitlement;
317
+ }
318
+ /**
319
+ * Options for initiating a purchase.
320
+ */
321
+ export interface StorePurchaseOptions {
322
+ /** Buy multiple units of a consumable at once. */
323
+ quantity?: number;
324
+ }
325
+ /**
326
+ * Store API available via useFiasStore() hook.
327
+ *
328
+ * Provides in-arche purchase (IAP) capabilities. All purchases are mediated
329
+ * by the platform — the arche never handles payment directly.
330
+ *
331
+ * Requires the `store:purchase` permission in fias-plugin.json.
332
+ */
333
+ export interface FiasStoreApi {
334
+ /** Products available for purchase in this arche. Loaded on mount. */
335
+ products: StoreProduct[];
336
+ /**
337
+ * Initiate a purchase. Triggers a platform confirmation overlay.
338
+ * The user must confirm before credits are charged.
339
+ */
340
+ purchase: (productIdentifier: string, options?: StorePurchaseOptions) => Promise<StorePurchaseResult>;
341
+ /** Active entitlements (non-consumables + subscriptions). Loaded on mount. */
342
+ entitlements: StoreEntitlement[];
343
+ /** Check if the user has an active entitlement for a product. */
344
+ hasEntitlement: (productIdentifier: string) => boolean;
345
+ /** Get past purchase history (all types including consumables). */
346
+ getPurchaseHistory: () => Promise<StorePurchase[]>;
347
+ /** Re-sync entitlements from platform (like Apple's "Restore Purchases"). */
348
+ restorePurchases: () => Promise<StoreEntitlement[]>;
349
+ /** Whether the store data is still loading. */
350
+ isLoading: boolean;
351
+ }
267
352
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fias/arche-sdk",
3
- "version": "1.5.2",
3
+ "version": "1.6.0",
4
4
  "description": "SDK for building FIAS platform plugin arches",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -2,7 +2,7 @@
2
2
 
3
3
  This project is a FIAS platform plugin — a React application that runs in a sandboxed iframe within the FIAS marketplace. This file provides the context AI coding assistants need to build, test, and submit plugins effectively.
4
4
 
5
- For other AI tool instruction files, see `CLAUDE.md` (identical content).
5
+ For other AI tool instruction files, see `AGENTS.md` (identical content).
6
6
 
7
7
  ## Project Structure
8
8
 
@@ -95,6 +95,73 @@ const files = await listFiles('data/'); // string[]
95
95
  await deleteFile('data/old.json');
96
96
  ```
97
97
 
98
+ **Error handling:** Storage calls can reject on infrastructure errors. Always use `.catch()` or `try/catch` -- an unhandled rejection will crash the plugin to a white screen.
99
+
100
+ ### `useFiasDataStore()` — Document database
101
+
102
+ **Permission:** `data:store`
103
+ **Returns:** `FiasDataStoreApi`
104
+
105
+ A document database with collections, queries, and filtering. Data persists across sessions in live mode. Each collection can be `user`-scoped (private to each user) or `shared` (visible to all users of the plugin).
106
+
107
+ ```tsx
108
+ import { useFiasDataStore } from '@fias/arche-sdk';
109
+
110
+ function MyComponent() {
111
+ const dataStore = useFiasDataStore();
112
+
113
+ // Collection management
114
+ await dataStore.createCollection('scores', { userScope: 'user' }); // or 'shared'
115
+ const collections = await dataStore.listCollections();
116
+ await dataStore.deleteCollection('scores');
117
+
118
+ // Document CRUD
119
+ await dataStore.put<MyType>('scores', 'doc-key', { score: 100, name: 'Alice' });
120
+ const doc = await dataStore.get<MyType>('scores', 'doc-key'); // MyType | null
121
+ await dataStore.delete('scores', 'doc-key');
122
+
123
+ // Query with filters, sorting, pagination
124
+ const results = await dataStore.query<MyType>('scores', {
125
+ filters: [
126
+ { field: 'score', op: 'gte', value: 50 },
127
+ { field: 'name', op: 'eq', value: 'Alice' },
128
+ ],
129
+ orderBy: { field: 'score', direction: 'desc' },
130
+ limit: 20,
131
+ cursor: nextCursor, // for pagination
132
+ });
133
+ // results = { documents: [{ key, data, updatedAt }], nextCursor: string | null }
134
+ }
135
+ ```
136
+
137
+ Also available as an imperative API outside React components:
138
+
139
+ ```tsx
140
+ import { fias } from '@fias/arche-sdk';
141
+
142
+ await fias.dataStore.put('scores', 'key', { score: 100 });
143
+ const doc = await fias.dataStore.get('scores', 'key');
144
+ ```
145
+
146
+ **Collection scopes:**
147
+
148
+ - `user` (default): Each user sees only their own documents
149
+ - `shared`: All users of the plugin see and share the same documents
150
+
151
+ **Filter operators:** `eq`, `neq`, `gt`, `gte`, `lt`, `lte`, `contains` (JSONB containment), `exists`
152
+
153
+ **Limits:**
154
+
155
+ - 50 collections per plugin
156
+ - 10,000 documents per collection
157
+ - 100 KB per document
158
+ - 100 MB total storage per plugin
159
+ - Max 100 results per query, max 10 filters, max field path depth 5
160
+
161
+ **Rate limits (per minute):** `put` 120, `get` 300, `query` 60, `delete` 60, `createCollection` 10
162
+
163
+ **Error handling:** Data store calls can reject on infrastructure errors or limit violations. Always use `try/catch`. Common error codes: `COLLECTION_NOT_FOUND`, `DOCUMENT_TOO_LARGE`, `STORAGE_LIMIT_REACHED`, `RATE_LIMIT`.
164
+
98
165
  ### `useEntityInvocation()` — Invoke AI models
99
166
 
100
167
  **Permission:** `entities:invoke`
@@ -242,7 +309,7 @@ fias.showToast('Saved!', 'success'); // Toast: 'info' | 'success' | 'warning' |
242
309
  | `sdk` | Yes | SDK version range |
243
310
  | `dependencies` | No | npm packages with **exact** versions (max 20) |
244
311
 
245
- **Permissions:** `theme:read`, `user:profile:read`, `storage:sandbox`, `entities:invoke`, `entities:image_generate`
312
+ **Permissions:** `theme:read`, `user:profile:read`, `storage:sandbox`, `data:store`, `entities:invoke`, `entities:image_generate`
246
313
 
247
314
  **Using AI:** Add `"entities:invoke"` to permissions, then use `useEntityInvocation()` with a model entity ID and your own `systemPrompt`. Browse available models with `npx fias-dev entities`.
248
315
 
@@ -95,6 +95,73 @@ const files = await listFiles('data/'); // string[]
95
95
  await deleteFile('data/old.json');
96
96
  ```
97
97
 
98
+ **Error handling:** Storage calls can reject on infrastructure errors. Always use `.catch()` or `try/catch` -- an unhandled rejection will crash the plugin to a white screen.
99
+
100
+ ### `useFiasDataStore()` — Document database
101
+
102
+ **Permission:** `data:store`
103
+ **Returns:** `FiasDataStoreApi`
104
+
105
+ A document database with collections, queries, and filtering. Data persists across sessions in live mode. Each collection can be `user`-scoped (private to each user) or `shared` (visible to all users of the plugin).
106
+
107
+ ```tsx
108
+ import { useFiasDataStore } from '@fias/arche-sdk';
109
+
110
+ function MyComponent() {
111
+ const dataStore = useFiasDataStore();
112
+
113
+ // Collection management
114
+ await dataStore.createCollection('scores', { userScope: 'user' }); // or 'shared'
115
+ const collections = await dataStore.listCollections();
116
+ await dataStore.deleteCollection('scores');
117
+
118
+ // Document CRUD
119
+ await dataStore.put<MyType>('scores', 'doc-key', { score: 100, name: 'Alice' });
120
+ const doc = await dataStore.get<MyType>('scores', 'doc-key'); // MyType | null
121
+ await dataStore.delete('scores', 'doc-key');
122
+
123
+ // Query with filters, sorting, pagination
124
+ const results = await dataStore.query<MyType>('scores', {
125
+ filters: [
126
+ { field: 'score', op: 'gte', value: 50 },
127
+ { field: 'name', op: 'eq', value: 'Alice' },
128
+ ],
129
+ orderBy: { field: 'score', direction: 'desc' },
130
+ limit: 20,
131
+ cursor: nextCursor, // for pagination
132
+ });
133
+ // results = { documents: [{ key, data, updatedAt }], nextCursor: string | null }
134
+ }
135
+ ```
136
+
137
+ Also available as an imperative API outside React components:
138
+
139
+ ```tsx
140
+ import { fias } from '@fias/arche-sdk';
141
+
142
+ await fias.dataStore.put('scores', 'key', { score: 100 });
143
+ const doc = await fias.dataStore.get('scores', 'key');
144
+ ```
145
+
146
+ **Collection scopes:**
147
+
148
+ - `user` (default): Each user sees only their own documents
149
+ - `shared`: All users of the plugin see and share the same documents
150
+
151
+ **Filter operators:** `eq`, `neq`, `gt`, `gte`, `lt`, `lte`, `contains` (JSONB containment), `exists`
152
+
153
+ **Limits:**
154
+
155
+ - 50 collections per plugin
156
+ - 10,000 documents per collection
157
+ - 100 KB per document
158
+ - 100 MB total storage per plugin
159
+ - Max 100 results per query, max 10 filters, max field path depth 5
160
+
161
+ **Rate limits (per minute):** `put` 120, `get` 300, `query` 60, `delete` 60, `createCollection` 10
162
+
163
+ **Error handling:** Data store calls can reject on infrastructure errors or limit violations. Always use `try/catch`. Common error codes: `COLLECTION_NOT_FOUND`, `DOCUMENT_TOO_LARGE`, `STORAGE_LIMIT_REACHED`, `RATE_LIMIT`.
164
+
98
165
  ### `useEntityInvocation()` — Invoke AI models
99
166
 
100
167
  **Permission:** `entities:invoke`
@@ -242,7 +309,7 @@ fias.showToast('Saved!', 'success'); // Toast: 'info' | 'success' | 'warning' |
242
309
  | `sdk` | Yes | SDK version range |
243
310
  | `dependencies` | No | npm packages with **exact** versions (max 20) |
244
311
 
245
- **Permissions:** `theme:read`, `user:profile:read`, `storage:sandbox`, `entities:invoke`, `entities:image_generate`
312
+ **Permissions:** `theme:read`, `user:profile:read`, `storage:sandbox`, `data:store`, `entities:invoke`, `entities:image_generate`
246
313
 
247
314
  **Using AI:** Add `"entities:invoke"` to permissions, then use `useEntityInvocation()` with a model entity ID and your own `systemPrompt`. Browse available models with `npx fias-dev entities`.
248
315