@fragmentsx/client-core 0.4.0 → 0.4.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.
@@ -1,10 +1,12 @@
1
1
  import { Plugin } from '@graph-state/core';
2
+ import { FilterOverrides } from './plugins/filters';
2
3
  declare module "@graph-state/core" {
3
4
  interface GraphState {
4
5
  env: {
5
6
  apiToken: string;
6
7
  backendEndpoint: string;
7
8
  referer?: string;
9
+ filterOverrides?: FilterOverrides;
8
10
  };
9
11
  }
10
12
  }
@@ -13,6 +15,7 @@ interface Options {
13
15
  referer?: string;
14
16
  backendEndpoint?: string;
15
17
  fragmentPlugins?: Plugin[];
18
+ plugins?: Plugin[];
16
19
  }
17
20
  export declare const PLUGIN_TYPES: {
18
21
  FragmentsPlugin: "FragmentsPlugin";
@@ -1 +1 @@
1
- {"version":3,"file":"fragmentsClient.d.ts","sourceRoot":"","sources":["../src/fragmentsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAaxD,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,UAAU;QAClB,GAAG,EAAE;YACH,QAAQ,EAAE,MAAM,CAAC;YACjB,eAAe,EAAE,MAAM,CAAC;YACxB,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACH;CACF;AAED,UAAU,OAAO;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAEF,eAAO,MAAM,qBAAqB,YAAa,OAAO,sGAgCrD,CAAC"}
1
+ {"version":3,"file":"fragmentsClient.d.ts","sourceRoot":"","sources":["../src/fragmentsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAYxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,UAAU;QAClB,GAAG,EAAE;YACH,QAAQ,EAAE,MAAM,CAAC;YACjB,eAAe,EAAE,MAAM,CAAC;YACxB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,eAAe,CAAC,EAAE,eAAe,CAAC;SACnC,CAAC;KACH;CACF;AAED,UAAU,OAAO;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAEF,eAAO,MAAM,qBAAqB,YAAa,OAAO,sGAiCrD,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -1905,16 +1905,29 @@ const fetchBeacon = (baseUrl) => {
1905
1905
  };
1906
1906
  };
1907
1907
  const fetchPlugin = (state) => {
1908
- var _a, _b, _c;
1908
+ var _a, _b, _c, _d;
1909
1909
  const url = (_a = state == null ? void 0 : state.env) == null ? void 0 : _a.backendEndpoint;
1910
1910
  const apiToken = (_b = state == null ? void 0 : state.env) == null ? void 0 : _b.apiToken;
1911
1911
  const referer = (_c = state == null ? void 0 : state.env) == null ? void 0 : _c.referer;
1912
+ const filterOverrides = (_d = state == null ? void 0 : state.env) == null ? void 0 : _d.filterOverrides;
1912
1913
  let headers = {
1913
1914
  "X-Api-Key": apiToken
1914
1915
  };
1915
1916
  if (referer) {
1916
1917
  headers.Referer = referer;
1917
1918
  }
1919
+ if (filterOverrides == null ? void 0 : filterOverrides.deviceType) {
1920
+ headers["X-Filter-Device-Type"] = filterOverrides.deviceType;
1921
+ }
1922
+ if (filterOverrides == null ? void 0 : filterOverrides.osType) {
1923
+ headers["X-Filter-OS-Type"] = filterOverrides.osType;
1924
+ }
1925
+ if (filterOverrides == null ? void 0 : filterOverrides.page) {
1926
+ headers["X-Filter-Page"] = filterOverrides.page;
1927
+ }
1928
+ if (filterOverrides == null ? void 0 : filterOverrides.ip) {
1929
+ headers["X-Filter-IP"] = filterOverrides.ip;
1930
+ }
1918
1931
  const restFetcher = createRestFetcher(url, headers);
1919
1932
  const beaconFetcher = fetchBeacon();
1920
1933
  const registerFragmentDocument = (fragmentId, fragment) => {
@@ -1927,14 +1940,14 @@ const fetchPlugin = (state) => {
1927
1940
  if (fragment.linkedFragments !== void 0) {
1928
1941
  fragment.linkedFragments.forEach((linked) => {
1929
1942
  if ((linked == null ? void 0 : linked.id) && (linked == null ? void 0 : linked.document)) {
1930
- state.$fetch.cacheDocuments.set(linked.id, linked.document);
1943
+ registerFragmentDocument(linked.id, linked);
1931
1944
  }
1932
1945
  });
1933
1946
  }
1934
- if (Array.isArray(fragment.fragmentCssChunks)) {
1935
- fragment.fragmentCssChunks.forEach(({ cssChunk }) => {
1936
- if (cssChunk) {
1937
- state.$fetch.cacheCssChunks.set(cssChunk.id, cssChunk.content);
1947
+ if (Array.isArray(fragment.linkedCssChunk)) {
1948
+ fragment.linkedCssChunk.forEach(({ id, content }) => {
1949
+ if (id != null && content != null) {
1950
+ state.$fetch.cacheCssChunks.set(id, content);
1938
1951
  }
1939
1952
  });
1940
1953
  }
@@ -1948,9 +1961,12 @@ const fetchPlugin = (state) => {
1948
1961
  if (nonLoadedCodes.length > 0) {
1949
1962
  await Promise.all(
1950
1963
  nonLoadedCodes.map(async (code) => {
1951
- var _a2, _b2, _c2, _d;
1964
+ var _a2, _b2, _c2, _d2;
1952
1965
  const dto = await restFetcher.get(`/api/area/${code}`);
1953
- if (!dto) return;
1966
+ if (!dto) {
1967
+ state.$fetch.cacheAreaDocuments.set(code, null);
1968
+ return;
1969
+ }
1954
1970
  const fragment = (_a2 = dto.variant) == null ? void 0 : _a2.fragment;
1955
1971
  if (fragment) {
1956
1972
  registerFragmentDocument(fragment.id, fragment);
@@ -1964,8 +1980,13 @@ const fetchPlugin = (state) => {
1964
1980
  font: dto.font,
1965
1981
  areaId: dto.areaId,
1966
1982
  campaignId: dto.campaignId,
1967
- variantId: (_d = dto.variant) == null ? void 0 : _d.id
1983
+ variantId: (_d2 = dto.variant) == null ? void 0 : _d2.id,
1984
+ areaProperties: dto.areaProperties ?? null,
1985
+ projectProperties: dto.projectProperties ?? null
1968
1986
  };
1987
+ if ("$properties" in state && Array.isArray(dto.projectProperties) && dto.projectProperties.length > 0) {
1988
+ state.$properties.hydrate(dto.projectProperties);
1989
+ }
1969
1990
  state.$fetch.cacheAreaDocuments.set(code, entity);
1970
1991
  })
1971
1992
  );
@@ -2202,22 +2223,12 @@ const fragmentStylesheetPlugin = (globalState) => (state) => {
2202
2223
  }
2203
2224
  return noop;
2204
2225
  };
2205
- const destroyStyles = () => {
2206
- state.mutate(
2207
- KEY,
2208
- {
2209
- styles: {}
2210
- },
2211
- { replace: true }
2212
- );
2213
- fragmentStyleInjector.unmount();
2214
- };
2215
2226
  state.$styleSheet = {
2216
2227
  key: KEY,
2217
2228
  addStyle,
2218
2229
  addCssChunk,
2219
2230
  mount: fragmentStyleInjector.mount,
2220
- unmount: destroyStyles,
2231
+ unmount: fragmentStyleInjector.unmount,
2221
2232
  extract: (withTag) => {
2222
2233
  var _a;
2223
2234
  const graph = state.resolve(KEY);
@@ -2659,6 +2670,7 @@ const createFragmentsClient = (options) => {
2659
2670
  referer: options == null ? void 0 : options.referer
2660
2671
  };
2661
2672
  },
2673
+ ...(options == null ? void 0 : options.plugins) ?? [],
2662
2674
  fetchPlugin,
2663
2675
  fontsPlugin,
2664
2676
  propertiesPlugin,
@@ -2749,6 +2761,19 @@ const ssrPlugin = (state) => {
2749
2761
  };
2750
2762
  return state;
2751
2763
  };
2764
+ const VALID_DEVICE_TYPES = ["mobile", "tablet", "desktop"];
2765
+ const VALID_OS_TYPES = ["android", "ios", "windows", "macos", "linux"];
2766
+ const filtersPlugin = (overrides) => (state) => {
2767
+ if (overrides.deviceType && !VALID_DEVICE_TYPES.includes(overrides.deviceType)) {
2768
+ console.warn(
2769
+ `[filtersPlugin] Unknown deviceType: "${overrides.deviceType}"`
2770
+ );
2771
+ }
2772
+ if (overrides.osType && !VALID_OS_TYPES.includes(overrides.osType)) {
2773
+ console.warn(`[filtersPlugin] Unknown osType: "${overrides.osType}"`);
2774
+ }
2775
+ state.env.filterOverrides = overrides;
2776
+ };
2752
2777
  function createTestFragmentsClient(options) {
2753
2778
  const client = createFragmentsClient({
2754
2779
  apiToken: (options == null ? void 0 : options.apiToken) ?? "test-token"
@@ -2768,5 +2793,6 @@ function createTestFragmentsClient(options) {
2768
2793
  exports.createAreaManager = createAreaManager;
2769
2794
  exports.createFragmentsClient = createFragmentsClient;
2770
2795
  exports.createTestFragmentsClient = createTestFragmentsClient;
2796
+ exports.filtersPlugin = filtersPlugin;
2771
2797
  exports.propertiesPlugin = propertiesPlugin;
2772
2798
  exports.ssrPlugin = ssrPlugin;
package/dist/index.d.ts CHANGED
@@ -2,5 +2,6 @@ export { createFragmentsClient } from './fragmentsClient';
2
2
  export { createAreaManager } from './createAreaManager';
3
3
  export { ssrPlugin } from './plugins/ssr';
4
4
  export { propertiesPlugin } from './plugins/properties';
5
+ export { filtersPlugin, type FilterOverrides } from './plugins/filters';
5
6
  export { createTestFragmentsClient, type TestFragmentsClientOptions, type FragmentDocument, type AreaCacheEntity, } from './testing/createTestFragmentsClient';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,qCAAqC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,qCAAqC,CAAC"}
package/dist/index.es.js CHANGED
@@ -1903,16 +1903,29 @@ const fetchBeacon = (baseUrl) => {
1903
1903
  };
1904
1904
  };
1905
1905
  const fetchPlugin = (state) => {
1906
- var _a, _b, _c;
1906
+ var _a, _b, _c, _d;
1907
1907
  const url = (_a = state == null ? void 0 : state.env) == null ? void 0 : _a.backendEndpoint;
1908
1908
  const apiToken = (_b = state == null ? void 0 : state.env) == null ? void 0 : _b.apiToken;
1909
1909
  const referer = (_c = state == null ? void 0 : state.env) == null ? void 0 : _c.referer;
1910
+ const filterOverrides = (_d = state == null ? void 0 : state.env) == null ? void 0 : _d.filterOverrides;
1910
1911
  let headers = {
1911
1912
  "X-Api-Key": apiToken
1912
1913
  };
1913
1914
  if (referer) {
1914
1915
  headers.Referer = referer;
1915
1916
  }
1917
+ if (filterOverrides == null ? void 0 : filterOverrides.deviceType) {
1918
+ headers["X-Filter-Device-Type"] = filterOverrides.deviceType;
1919
+ }
1920
+ if (filterOverrides == null ? void 0 : filterOverrides.osType) {
1921
+ headers["X-Filter-OS-Type"] = filterOverrides.osType;
1922
+ }
1923
+ if (filterOverrides == null ? void 0 : filterOverrides.page) {
1924
+ headers["X-Filter-Page"] = filterOverrides.page;
1925
+ }
1926
+ if (filterOverrides == null ? void 0 : filterOverrides.ip) {
1927
+ headers["X-Filter-IP"] = filterOverrides.ip;
1928
+ }
1916
1929
  const restFetcher = createRestFetcher(url, headers);
1917
1930
  const beaconFetcher = fetchBeacon();
1918
1931
  const registerFragmentDocument = (fragmentId, fragment) => {
@@ -1925,14 +1938,14 @@ const fetchPlugin = (state) => {
1925
1938
  if (fragment.linkedFragments !== void 0) {
1926
1939
  fragment.linkedFragments.forEach((linked) => {
1927
1940
  if ((linked == null ? void 0 : linked.id) && (linked == null ? void 0 : linked.document)) {
1928
- state.$fetch.cacheDocuments.set(linked.id, linked.document);
1941
+ registerFragmentDocument(linked.id, linked);
1929
1942
  }
1930
1943
  });
1931
1944
  }
1932
- if (Array.isArray(fragment.fragmentCssChunks)) {
1933
- fragment.fragmentCssChunks.forEach(({ cssChunk }) => {
1934
- if (cssChunk) {
1935
- state.$fetch.cacheCssChunks.set(cssChunk.id, cssChunk.content);
1945
+ if (Array.isArray(fragment.linkedCssChunk)) {
1946
+ fragment.linkedCssChunk.forEach(({ id, content }) => {
1947
+ if (id != null && content != null) {
1948
+ state.$fetch.cacheCssChunks.set(id, content);
1936
1949
  }
1937
1950
  });
1938
1951
  }
@@ -1946,9 +1959,12 @@ const fetchPlugin = (state) => {
1946
1959
  if (nonLoadedCodes.length > 0) {
1947
1960
  await Promise.all(
1948
1961
  nonLoadedCodes.map(async (code) => {
1949
- var _a2, _b2, _c2, _d;
1962
+ var _a2, _b2, _c2, _d2;
1950
1963
  const dto = await restFetcher.get(`/api/area/${code}`);
1951
- if (!dto) return;
1964
+ if (!dto) {
1965
+ state.$fetch.cacheAreaDocuments.set(code, null);
1966
+ return;
1967
+ }
1952
1968
  const fragment = (_a2 = dto.variant) == null ? void 0 : _a2.fragment;
1953
1969
  if (fragment) {
1954
1970
  registerFragmentDocument(fragment.id, fragment);
@@ -1962,8 +1978,13 @@ const fetchPlugin = (state) => {
1962
1978
  font: dto.font,
1963
1979
  areaId: dto.areaId,
1964
1980
  campaignId: dto.campaignId,
1965
- variantId: (_d = dto.variant) == null ? void 0 : _d.id
1981
+ variantId: (_d2 = dto.variant) == null ? void 0 : _d2.id,
1982
+ areaProperties: dto.areaProperties ?? null,
1983
+ projectProperties: dto.projectProperties ?? null
1966
1984
  };
1985
+ if ("$properties" in state && Array.isArray(dto.projectProperties) && dto.projectProperties.length > 0) {
1986
+ state.$properties.hydrate(dto.projectProperties);
1987
+ }
1967
1988
  state.$fetch.cacheAreaDocuments.set(code, entity);
1968
1989
  })
1969
1990
  );
@@ -2200,22 +2221,12 @@ const fragmentStylesheetPlugin = (globalState) => (state) => {
2200
2221
  }
2201
2222
  return noop;
2202
2223
  };
2203
- const destroyStyles = () => {
2204
- state.mutate(
2205
- KEY,
2206
- {
2207
- styles: {}
2208
- },
2209
- { replace: true }
2210
- );
2211
- fragmentStyleInjector.unmount();
2212
- };
2213
2224
  state.$styleSheet = {
2214
2225
  key: KEY,
2215
2226
  addStyle,
2216
2227
  addCssChunk,
2217
2228
  mount: fragmentStyleInjector.mount,
2218
- unmount: destroyStyles,
2229
+ unmount: fragmentStyleInjector.unmount,
2219
2230
  extract: (withTag) => {
2220
2231
  var _a;
2221
2232
  const graph = state.resolve(KEY);
@@ -2657,6 +2668,7 @@ const createFragmentsClient = (options) => {
2657
2668
  referer: options == null ? void 0 : options.referer
2658
2669
  };
2659
2670
  },
2671
+ ...(options == null ? void 0 : options.plugins) ?? [],
2660
2672
  fetchPlugin,
2661
2673
  fontsPlugin,
2662
2674
  propertiesPlugin,
@@ -2747,6 +2759,19 @@ const ssrPlugin = (state) => {
2747
2759
  };
2748
2760
  return state;
2749
2761
  };
2762
+ const VALID_DEVICE_TYPES = ["mobile", "tablet", "desktop"];
2763
+ const VALID_OS_TYPES = ["android", "ios", "windows", "macos", "linux"];
2764
+ const filtersPlugin = (overrides) => (state) => {
2765
+ if (overrides.deviceType && !VALID_DEVICE_TYPES.includes(overrides.deviceType)) {
2766
+ console.warn(
2767
+ `[filtersPlugin] Unknown deviceType: "${overrides.deviceType}"`
2768
+ );
2769
+ }
2770
+ if (overrides.osType && !VALID_OS_TYPES.includes(overrides.osType)) {
2771
+ console.warn(`[filtersPlugin] Unknown osType: "${overrides.osType}"`);
2772
+ }
2773
+ state.env.filterOverrides = overrides;
2774
+ };
2750
2775
  function createTestFragmentsClient(options) {
2751
2776
  const client = createFragmentsClient({
2752
2777
  apiToken: (options == null ? void 0 : options.apiToken) ?? "test-token"
@@ -2767,6 +2792,7 @@ export {
2767
2792
  createAreaManager,
2768
2793
  createFragmentsClient,
2769
2794
  createTestFragmentsClient,
2795
+ filtersPlugin,
2770
2796
  propertiesPlugin,
2771
2797
  ssrPlugin
2772
2798
  };
@@ -7,6 +7,8 @@ interface AreaCacheEntity {
7
7
  areaId: number;
8
8
  campaignId: number;
9
9
  variantId: number;
10
+ areaProperties: any[] | null;
11
+ projectProperties: any[] | null;
10
12
  }
11
13
  declare module "@graph-state/core" {
12
14
  interface GraphState {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/fetch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,UAAU,eAAe;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,UAAU;QAClB,MAAM,EAAE;YACN;;eAEG;YACH,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACrC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACpC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACjD,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;YAC5C,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC;YACrD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,eAAe,GAAG,IAAI,CAAC;YACvD,wBAAwB,EAAE,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,OAAO,KACd,OAAO,CAAC;YACb,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;YACjE,aAAa,EAAE,CACb,SAAS,EAAE,MAAM,EAAE,KAChB,OAAO,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,UAAU,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YACzD,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;SACtC,CAAC;KACH;CACF;AAED,eAAO,MAAM,WAAW,EAAE,MA6GzB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/fetch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,UAAU,eAAe;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC7B,iBAAiB,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CACjC;AAED,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,UAAU;QAClB,MAAM,EAAE;YACN;;eAEG;YACH,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACrC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACpC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACjD,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;YAC5C,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC;YACrD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,eAAe,GAAG,IAAI,CAAC;YACvD,wBAAwB,EAAE,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,OAAO,KACd,OAAO,CAAC;YACb,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;YACjE,aAAa,EAAE,CACb,SAAS,EAAE,MAAM,EAAE,KAChB,OAAO,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,UAAU,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;YACzD,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;SACtC,CAAC;KACH;CACF;AAED,eAAO,MAAM,WAAW,EAAE,MAyIzB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=filtersPlugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filtersPlugin.test.d.ts","sourceRoot":"","sources":["../../../../src/plugins/filters/__tests__/filtersPlugin.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { Plugin } from '@graph-state/core';
2
+ export interface FilterOverrides {
3
+ deviceType?: "mobile" | "tablet" | "desktop";
4
+ osType?: "android" | "ios" | "windows" | "macos" | "linux";
5
+ page?: string;
6
+ ip?: string;
7
+ }
8
+ export declare const filtersPlugin: (overrides: FilterOverrides) => Plugin;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/filters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC7C,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAKD,eAAO,MAAM,aAAa,cACZ,eAAe,KAAG,MAe7B,CAAC"}
@@ -6,9 +6,13 @@ declare module "@graph-state/core" {
6
6
  loadArea: (areaCode: string) => {
7
7
  fragmentId: number;
8
8
  props: unknown;
9
+ areaProperties?: any[] | null;
10
+ projectProperties?: any[] | null;
9
11
  } | Promise<{
10
12
  fragmentId: number;
11
13
  props: unknown;
14
+ areaProperties?: any[] | null;
15
+ projectProperties?: any[] | null;
12
16
  }>;
13
17
  };
14
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/load/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,UAAU;QAClB,KAAK,EAAE;YACL,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,UAAU,GAAG,IAAI,CAAC;YACxD,QAAQ,EAAE,CACR,QAAQ,EAAE,MAAM,KAEd;gBAAE,UAAU,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,OAAO,CAAA;aAAE,GACtC,OAAO,CAAC;gBAAE,UAAU,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;SACrD,CAAC;KACH;CACF;AAED,eAAO,MAAM,UAAU,EAAE,MAsCxB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/load/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,UAAU;QAClB,KAAK,EAAE;YACL,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,UAAU,GAAG,IAAI,CAAC;YACxD,QAAQ,EAAE,CACR,QAAQ,EAAE,MAAM,KAEd;gBACE,UAAU,EAAE,MAAM,CAAC;gBACnB,KAAK,EAAE,OAAO,CAAC;gBACf,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;gBAC9B,iBAAiB,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;aAClC,GACD,OAAO,CAAC;gBACN,UAAU,EAAE,MAAM,CAAC;gBACnB,KAAK,EAAE,OAAO,CAAC;gBACf,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;gBAC9B,iBAAiB,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;aAClC,CAAC,CAAC;SACR,CAAC;KACH;CACF;AAED,eAAO,MAAM,UAAU,EAAE,MAsCxB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"autoInjector.d.ts","sourceRoot":"","sources":["../../../../src/plugins/styleSheet/utils/autoInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI/D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,eAAO,MAAM,YAAY,QAClB,MAAM,SACJ,UAAU,YACP,OAAO,oBACC,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,EAAE,KAC3C,oBA+EF,CAAC"}
1
+ {"version":3,"file":"autoInjector.d.ts","sourceRoot":"","sources":["../../../../src/plugins/styleSheet/utils/autoInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI/D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,eAAO,MAAM,YAAY,QAClB,MAAM,SACJ,UAAU,YACP,OAAO,oBACC,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,EAAE,KAC3C,oBAgFF,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fragmentsx/client-core",
3
3
  "private": false,
4
- "version": "0.4.0",
4
+ "version": "0.4.2",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist"