@plyaz/api 1.4.1 → 1.5.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.
Files changed (55) hide show
  1. package/dist/api/endpoints/featureFlags.d.ts +51 -0
  2. package/dist/api/endpoints/featureFlags.d.ts.map +1 -0
  3. package/dist/api/endpoints/index.d.ts +45 -0
  4. package/dist/api/endpoints/index.d.ts.map +1 -1
  5. package/dist/api/services/featureFlags/DELETE/deleteFeatureFlag.d.ts +22 -0
  6. package/dist/api/services/featureFlags/DELETE/deleteFeatureFlag.d.ts.map +1 -0
  7. package/dist/api/services/featureFlags/DELETE/index.d.ts +9 -0
  8. package/dist/api/services/featureFlags/DELETE/index.d.ts.map +1 -0
  9. package/dist/api/services/featureFlags/DELETE/removeFeatureFlagOverride.d.ts +23 -0
  10. package/dist/api/services/featureFlags/DELETE/removeFeatureFlagOverride.d.ts.map +1 -0
  11. package/dist/api/services/featureFlags/DELETE/useDeleteFeatureFlag.d.ts +11 -0
  12. package/dist/api/services/featureFlags/DELETE/useDeleteFeatureFlag.d.ts.map +1 -0
  13. package/dist/api/services/featureFlags/DELETE/useRemoveFeatureFlagOverride.d.ts +11 -0
  14. package/dist/api/services/featureFlags/DELETE/useRemoveFeatureFlagOverride.d.ts.map +1 -0
  15. package/dist/api/services/featureFlags/GET/fetchFeatureFlagHealth.d.ts +24 -0
  16. package/dist/api/services/featureFlags/GET/fetchFeatureFlagHealth.d.ts.map +1 -0
  17. package/dist/api/services/featureFlags/GET/fetchFeatureFlagRules.d.ts +23 -0
  18. package/dist/api/services/featureFlags/GET/fetchFeatureFlagRules.d.ts.map +1 -0
  19. package/dist/api/services/featureFlags/GET/index.d.ts +7 -0
  20. package/dist/api/services/featureFlags/GET/index.d.ts.map +1 -0
  21. package/dist/api/services/featureFlags/POST/checkFeatureFlagEnabled.d.ts +40 -0
  22. package/dist/api/services/featureFlags/POST/checkFeatureFlagEnabled.d.ts.map +1 -0
  23. package/dist/api/services/featureFlags/POST/createFeatureFlag.d.ts +29 -0
  24. package/dist/api/services/featureFlags/POST/createFeatureFlag.d.ts.map +1 -0
  25. package/dist/api/services/featureFlags/POST/evaluateAllFeatureFlags.d.ts +42 -0
  26. package/dist/api/services/featureFlags/POST/evaluateAllFeatureFlags.d.ts.map +1 -0
  27. package/dist/api/services/featureFlags/POST/evaluateFeatureFlag.d.ts +39 -0
  28. package/dist/api/services/featureFlags/POST/evaluateFeatureFlag.d.ts.map +1 -0
  29. package/dist/api/services/featureFlags/POST/index.d.ts +14 -0
  30. package/dist/api/services/featureFlags/POST/index.d.ts.map +1 -0
  31. package/dist/api/services/featureFlags/POST/refreshFeatureFlagCache.d.ts +22 -0
  32. package/dist/api/services/featureFlags/POST/refreshFeatureFlagCache.d.ts.map +1 -0
  33. package/dist/api/services/featureFlags/POST/setFeatureFlagOverride.d.ts +34 -0
  34. package/dist/api/services/featureFlags/POST/setFeatureFlagOverride.d.ts.map +1 -0
  35. package/dist/api/services/featureFlags/POST/useCheckFeatureFlagEnabled.d.ts +42 -0
  36. package/dist/api/services/featureFlags/POST/useCheckFeatureFlagEnabled.d.ts.map +1 -0
  37. package/dist/api/services/featureFlags/POST/useCreateFeatureFlag.d.ts +22 -0
  38. package/dist/api/services/featureFlags/POST/useCreateFeatureFlag.d.ts.map +1 -0
  39. package/dist/api/services/featureFlags/POST/useEvaluateAllFeatureFlags.d.ts +33 -0
  40. package/dist/api/services/featureFlags/POST/useEvaluateAllFeatureFlags.d.ts.map +1 -0
  41. package/dist/api/services/featureFlags/PUT/index.d.ts +7 -0
  42. package/dist/api/services/featureFlags/PUT/index.d.ts.map +1 -0
  43. package/dist/api/services/featureFlags/PUT/updateFeatureFlag.d.ts +35 -0
  44. package/dist/api/services/featureFlags/PUT/updateFeatureFlag.d.ts.map +1 -0
  45. package/dist/api/services/featureFlags/PUT/useUpdateFeatureFlag.d.ts +12 -0
  46. package/dist/api/services/featureFlags/PUT/useUpdateFeatureFlag.d.ts.map +1 -0
  47. package/dist/api/services/featureFlags/index.d.ts +9 -0
  48. package/dist/api/services/featureFlags/index.d.ts.map +1 -0
  49. package/dist/api/services/index.d.ts +1 -0
  50. package/dist/api/services/index.d.ts.map +1 -1
  51. package/dist/index.cjs +365 -0
  52. package/dist/index.cjs.map +1 -1
  53. package/dist/index.mjs +348 -1
  54. package/dist/index.mjs.map +1 -1
  55. package/package.json +4 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCreateFeatureFlag.d.ts","sourceRoot":"","sources":["../../../../../src/api/services/featureFlags/POST/useCreateFeatureFlag.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,UAAU,GAAG,aAAa,EAC3F,cAAc,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,EAC3C,eAAe,CAAC,EAAE,UAAU,CAC1B,UAAU,CACR,OAAO,iBAAiB,CACtB,kBAAkB,CAAC,IAAI,CAAC,EACxB,wBAAwB,EACxB,iBAAiB,CAAC,IAAI,CAAC,EACvB,OAAO,EACP,UAAU,CACX,CACF,CACF,CAAC,CAAC,CAAC,GACH,UAAU,CACX,UAAU,CACR,OAAO,iBAAiB,CACtB,kBAAkB,CAAC,IAAI,CAAC,EACxB,wBAAwB,EACxB,iBAAiB,CAAC,IAAI,CAAC,EACvB,OAAO,EACP,UAAU,CACX,CACF,CACF,CAeA"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * React Query Mutation Hook for Evaluating All Feature Flags
3
+ * Gets all feature flag values at once for the given context
4
+ */
5
+ import { createApiMutation } from '../../../hooks/factories';
6
+ import { type EvaluateAllFeatureFlagsPayload } from './evaluateAllFeatureFlags';
7
+ import type { EvaluateAllFlagsResponse, ServiceOptions, FeatureFlagErrorResponse } from '@plyaz/types/api';
8
+ import type { EndpointsList } from '@/api/endpoints';
9
+ /**
10
+ * Hook for evaluating all feature flags at once
11
+ *
12
+ * @param serviceOptions - Service options
13
+ * @param mutationOptions - React Query mutation options
14
+ * @returns React Query mutation result
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * // Basic usage - load all flags on app init
19
+ * const { mutateAsync, data } = useEvaluateAllFeatureFlags();
20
+ *
21
+ * useEffect(() => {
22
+ * mutateAsync({ context: userContext })
23
+ * .then(flags => setFeatureFlags(flags.data));
24
+ * }, []);
25
+ *
26
+ * // Access specific flag
27
+ * if (data?.data?.['new-dashboard']?.isEnabled) {
28
+ * // Show new dashboard
29
+ * }
30
+ * ```
31
+ */
32
+ export declare function useEvaluateAllFeatureFlags<TKey extends string = string, TEndpoints = EndpointsList>(serviceOptions?: ServiceOptions<TEndpoints>, mutationOptions?: Parameters<ReturnType<typeof createApiMutation<EvaluateAllFlagsResponse<TKey>, FeatureFlagErrorResponse, EvaluateAllFeatureFlagsPayload, unknown, TEndpoints>>>[1]): ReturnType<ReturnType<typeof createApiMutation<EvaluateAllFlagsResponse<TKey>, FeatureFlagErrorResponse, EvaluateAllFeatureFlagsPayload, unknown, TEndpoints>>>;
33
+ //# sourceMappingURL=useEvaluateAllFeatureFlags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useEvaluateAllFeatureFlags.d.ts","sourceRoot":"","sources":["../../../../../src/api/services/featureFlags/POST/useEvaluateAllFeatureFlags.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,wBAAwB,EACxB,cAAc,EACd,wBAAwB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,UAAU,GAAG,aAAa,EAE1B,cAAc,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,EAC3C,eAAe,CAAC,EAAE,UAAU,CAC1B,UAAU,CACR,OAAO,iBAAiB,CACtB,wBAAwB,CAAC,IAAI,CAAC,EAC9B,wBAAwB,EACxB,8BAA8B,EAC9B,OAAO,EACP,UAAU,CACX,CACF,CACF,CAAC,CAAC,CAAC,GACH,UAAU,CACX,UAAU,CACR,OAAO,iBAAiB,CACtB,wBAAwB,CAAC,IAAI,CAAC,EAC9B,wBAAwB,EACxB,8BAA8B,EAC9B,OAAO,EACP,UAAU,CACX,CACF,CACF,CAQA"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Feature Flag PUT Operations
3
+ * Exports all PUT services and hooks for feature flags
4
+ */
5
+ export { updateFeatureFlag, type UpdateFeatureFlagPayload } from './updateFeatureFlag';
6
+ export { useUpdateFeatureFlag } from './useUpdateFeatureFlag';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/api/services/featureFlags/PUT/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,iBAAiB,EAAE,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAGvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Update Feature Flag Service
3
+ * Updates an existing feature flag
4
+ */
5
+ import { type ServiceOptions, type UpdateFlagRequest, type UpdateFlagResponse } from '@plyaz/types/api';
6
+ import type { EndpointsList } from '@/api/endpoints';
7
+ import type { FetchResponse } from 'fetchff';
8
+ /**
9
+ * Request payload for updateFeatureFlag
10
+ */
11
+ export interface UpdateFeatureFlagPayload<TKey extends string = string> {
12
+ key: TKey;
13
+ data: UpdateFlagRequest;
14
+ }
15
+ /**
16
+ * Update an existing feature flag
17
+ * Uses endpoint: PUT /feature-flags/:key
18
+ *
19
+ * @param payload - Flag key and update data
20
+ * @param options - Optional service options
21
+ * @returns Promise<UpdateFlagResponse>
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * await updateFeatureFlag({
26
+ * key: 'new-dashboard',
27
+ * data: {
28
+ * name: 'Updated Dashboard',
29
+ * isEnabled: false
30
+ * }
31
+ * });
32
+ * ```
33
+ */
34
+ export declare function updateFeatureFlag<TKey extends string = string, TEndpoints = EndpointsList>(payload: UpdateFeatureFlagPayload<TKey>, options?: ServiceOptions<TEndpoints>): Promise<FetchResponse<UpdateFlagResponse<TKey>>>;
35
+ //# sourceMappingURL=updateFeatureFlag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateFeatureFlag.d.ts","sourceRoot":"","sources":["../../../../../src/api/services/featureFlags/PUT/updateFeatureFlag.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,wBAAwB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IACpE,GAAG,EAAE,IAAI,CAAC;IACV,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,UAAU,GAAG,aAAa,EAC9F,OAAO,EAAE,wBAAwB,CAAC,IAAI,CAAC,EACvC,OAAO,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,GACnC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CA2BlD"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * React Query Mutation Hook for Updating Feature Flags
3
+ */
4
+ import { createApiMutation } from '../../../hooks/factories';
5
+ import { type UpdateFeatureFlagPayload } from './updateFeatureFlag';
6
+ import type { UpdateFlagResponse, ServiceOptions, FeatureFlagErrorResponse } from '@plyaz/types/api';
7
+ import type { EndpointsList } from '@/api/endpoints';
8
+ /**
9
+ * Hook for updating feature flags
10
+ */
11
+ export declare function useUpdateFeatureFlag<TKey extends string = string, TEndpoints = EndpointsList>(serviceOptions?: ServiceOptions<TEndpoints>, mutationOptions?: Parameters<ReturnType<typeof createApiMutation<UpdateFlagResponse<TKey>, FeatureFlagErrorResponse, UpdateFeatureFlagPayload<TKey>, unknown, TEndpoints>>>[1]): ReturnType<ReturnType<typeof createApiMutation<UpdateFlagResponse<TKey>, FeatureFlagErrorResponse, UpdateFeatureFlagPayload<TKey>, unknown, TEndpoints>>>;
12
+ //# sourceMappingURL=useUpdateFeatureFlag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUpdateFeatureFlag.d.ts","sourceRoot":"","sources":["../../../../../src/api/services/featureFlags/PUT/useUpdateFeatureFlag.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAqB,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,UAAU,GAAG,aAAa,EAC3F,cAAc,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,EAC3C,eAAe,CAAC,EAAE,UAAU,CAC1B,UAAU,CACR,OAAO,iBAAiB,CACtB,kBAAkB,CAAC,IAAI,CAAC,EACxB,wBAAwB,EACxB,wBAAwB,CAAC,IAAI,CAAC,EAC9B,OAAO,EACP,UAAU,CACX,CACF,CACF,CAAC,CAAC,CAAC,GACH,UAAU,CACX,UAAU,CACR,OAAO,iBAAiB,CACtB,kBAAkB,CAAC,IAAI,CAAC,EACxB,wBAAwB,EACxB,wBAAwB,CAAC,IAAI,CAAC,EAC9B,OAAO,EACP,UAAU,CACX,CACF,CACF,CAgBA"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Feature Flag Services and Hooks
3
+ * API operations for feature flag management and evaluation
4
+ */
5
+ export * from './GET';
6
+ export * from './POST';
7
+ export * from './PUT';
8
+ export * from './DELETE';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/services/featureFlags/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,OAAO,CAAC;AAGtB,cAAc,QAAQ,CAAC;AAGvB,cAAc,OAAO,CAAC;AAGtB,cAAc,UAAU,CAAC"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  export { setDefaultApiClient, getDefaultApiClient } from './clients';
6
6
  export * from './campaigns';
7
+ export * from './featureFlags';
7
8
  export * from './infobip';
8
9
  export * from './virustotal';
9
10
  export * from './cdn';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGrE,cAAc,aAAa,CAAC;AAG5B,cAAc,WAAW,CAAC;AAG1B,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGrE,cAAc,aAAa,CAAC;AAG5B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,WAAW,CAAC;AAG1B,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC"}
package/dist/index.cjs CHANGED
@@ -13871,6 +13871,58 @@ var campaignEndpoints = {
13871
13871
  }
13872
13872
  };
13873
13873
 
13874
+ // src/api/endpoints/featureFlags.ts
13875
+ var featureFlagEndpoints = {
13876
+ // ========== Evaluation Endpoints (most used by frontend) ==========
13877
+ evaluateFeatureFlag: {
13878
+ url: "/feature-flags/:key/evaluate",
13879
+ method: "POST"
13880
+ },
13881
+ checkFeatureFlagEnabled: {
13882
+ url: "/feature-flags/:key/enabled",
13883
+ method: "POST"
13884
+ },
13885
+ evaluateAllFeatureFlags: {
13886
+ url: "/feature-flags/evaluate-all",
13887
+ method: "POST"
13888
+ },
13889
+ // ========== Admin Endpoints (backoffice) ==========
13890
+ createFeatureFlag: {
13891
+ url: "/feature-flags",
13892
+ method: "POST"
13893
+ },
13894
+ updateFeatureFlag: {
13895
+ url: "/feature-flags/:key",
13896
+ method: "PUT"
13897
+ },
13898
+ deleteFeatureFlag: {
13899
+ url: "/feature-flags/:key",
13900
+ method: "DELETE"
13901
+ },
13902
+ // ========== Override Endpoints ==========
13903
+ setFeatureFlagOverride: {
13904
+ url: "/feature-flags/:key/override",
13905
+ method: "POST"
13906
+ },
13907
+ removeFeatureFlagOverride: {
13908
+ url: "/feature-flags/:key/override",
13909
+ method: "DELETE"
13910
+ },
13911
+ // ========== Rules & System Endpoints ==========
13912
+ getFeatureFlagRules: {
13913
+ url: "/feature-flags/:key/rules",
13914
+ method: "GET"
13915
+ },
13916
+ refreshFeatureFlagCache: {
13917
+ url: "/feature-flags/refresh",
13918
+ method: "POST"
13919
+ },
13920
+ getFeatureFlagHealth: {
13921
+ url: "/feature-flags/health",
13922
+ method: "GET"
13923
+ }
13924
+ };
13925
+
13874
13926
  // src/api/endpoints/polling.ts
13875
13927
  var pollingEndpoints = {
13876
13928
  // Job monitoring - use with 'jobStatus' polling strategy
@@ -14311,6 +14363,8 @@ __name(validatePathParams, "validatePathParams");
14311
14363
  // src/api/endpoints/index.ts
14312
14364
  var endpoints = {
14313
14365
  ...campaignEndpoints,
14366
+ // Feature flag endpoints (evaluation, management)
14367
+ ...featureFlagEndpoints,
14314
14368
  // These are only examples for the polling, none of these endpoints doesnt exist yet
14315
14369
  ...pollingEndpoints,
14316
14370
  // Infobip third-party provider endpoints (Email, SMS, WhatsApp)
@@ -25212,6 +25266,299 @@ function useDeleteCampaign(serviceOptions, mutationOptions) {
25212
25266
  })(serviceOptions, mutationOptions);
25213
25267
  }
25214
25268
  __name(useDeleteCampaign, "useDeleteCampaign");
25269
+ async function fetchFeatureFlagRules(key, options) {
25270
+ const client = options?.apiClient ?? getDefaultApiClient();
25271
+ const pathParams = { key };
25272
+ if (!validatePathParams("getFeatureFlagRules", pathParams)) {
25273
+ throw new ApiPackageError(
25274
+ "Missing required path parameter: key",
25275
+ void 0,
25276
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25277
+ );
25278
+ }
25279
+ const serviceDefaults = { unifiedStrategy: "background" };
25280
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25281
+ const updateOptions = {
25282
+ strategy: "temporary",
25283
+ ...options?.updateConfigOptions
25284
+ };
25285
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25286
+ client.updateConfig(mergedConfig, updateOptions);
25287
+ }
25288
+ return client.getFeatureFlagRules({
25289
+ urlPathParams: pathParams
25290
+ });
25291
+ }
25292
+ __name(fetchFeatureFlagRules, "fetchFeatureFlagRules");
25293
+
25294
+ // src/api/services/featureFlags/GET/fetchFeatureFlagHealth.ts
25295
+ async function fetchFeatureFlagHealth(options) {
25296
+ const client = options?.apiClient ?? getDefaultApiClient();
25297
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25298
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25299
+ const updateOptions = {
25300
+ strategy: "temporary",
25301
+ ...options?.updateConfigOptions
25302
+ };
25303
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25304
+ client.updateConfig(mergedConfig, updateOptions);
25305
+ }
25306
+ return client.getFeatureFlagHealth({});
25307
+ }
25308
+ __name(fetchFeatureFlagHealth, "fetchFeatureFlagHealth");
25309
+ async function checkFeatureFlagEnabled(payload, options) {
25310
+ const client = options?.apiClient ?? getDefaultApiClient();
25311
+ const pathParams = { key: payload.key };
25312
+ if (!validatePathParams("checkFeatureFlagEnabled", pathParams)) {
25313
+ throw new ApiPackageError(
25314
+ "Missing required path parameter: key",
25315
+ void 0,
25316
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25317
+ );
25318
+ }
25319
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25320
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25321
+ const updateOptions = {
25322
+ strategy: "temporary",
25323
+ ...options?.updateConfigOptions
25324
+ };
25325
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25326
+ client.updateConfig(mergedConfig, updateOptions);
25327
+ }
25328
+ return client.checkFeatureFlagEnabled({
25329
+ urlPathParams: pathParams,
25330
+ body: { context: payload.context }
25331
+ });
25332
+ }
25333
+ __name(checkFeatureFlagEnabled, "checkFeatureFlagEnabled");
25334
+ async function evaluateFeatureFlag(payload, options) {
25335
+ const client = options?.apiClient ?? getDefaultApiClient();
25336
+ const pathParams = { key: payload.key };
25337
+ if (!validatePathParams("evaluateFeatureFlag", pathParams)) {
25338
+ throw new ApiPackageError(
25339
+ "Missing required path parameter: key",
25340
+ void 0,
25341
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25342
+ );
25343
+ }
25344
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25345
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25346
+ const updateOptions = {
25347
+ strategy: "temporary",
25348
+ ...options?.updateConfigOptions
25349
+ };
25350
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25351
+ client.updateConfig(mergedConfig, updateOptions);
25352
+ }
25353
+ return client.evaluateFeatureFlag({
25354
+ urlPathParams: pathParams,
25355
+ body: { context: payload.context }
25356
+ });
25357
+ }
25358
+ __name(evaluateFeatureFlag, "evaluateFeatureFlag");
25359
+
25360
+ // src/api/services/featureFlags/POST/evaluateAllFeatureFlags.ts
25361
+ async function evaluateAllFeatureFlags(payload = {}, options) {
25362
+ const client = options?.apiClient ?? getDefaultApiClient();
25363
+ const serviceDefaults = { unifiedStrategy: "background" };
25364
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25365
+ const updateOptions = {
25366
+ strategy: "temporary",
25367
+ ...options?.updateConfigOptions
25368
+ };
25369
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25370
+ client.updateConfig(mergedConfig, updateOptions);
25371
+ }
25372
+ return client.evaluateAllFeatureFlags({
25373
+ body: { context: payload.context }
25374
+ });
25375
+ }
25376
+ __name(evaluateAllFeatureFlags, "evaluateAllFeatureFlags");
25377
+
25378
+ // src/api/services/featureFlags/POST/createFeatureFlag.ts
25379
+ async function createFeatureFlag(data, options) {
25380
+ const client = options?.apiClient ?? getDefaultApiClient();
25381
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25382
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25383
+ const updateOptions = {
25384
+ strategy: "temporary",
25385
+ ...options?.updateConfigOptions
25386
+ };
25387
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25388
+ client.updateConfig(mergedConfig, updateOptions);
25389
+ }
25390
+ return client.createFeatureFlag({
25391
+ body: data
25392
+ });
25393
+ }
25394
+ __name(createFeatureFlag, "createFeatureFlag");
25395
+ async function setFeatureFlagOverride(payload, options) {
25396
+ const client = options?.apiClient ?? getDefaultApiClient();
25397
+ const pathParams = { key: payload.key };
25398
+ if (!validatePathParams("setFeatureFlagOverride", pathParams)) {
25399
+ throw new ApiPackageError(
25400
+ "Missing required path parameter: key",
25401
+ void 0,
25402
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25403
+ );
25404
+ }
25405
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25406
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25407
+ const updateOptions = {
25408
+ strategy: "temporary",
25409
+ ...options?.updateConfigOptions
25410
+ };
25411
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25412
+ client.updateConfig(mergedConfig, updateOptions);
25413
+ }
25414
+ return client.setFeatureFlagOverride({
25415
+ urlPathParams: pathParams,
25416
+ body: { value: payload.value }
25417
+ });
25418
+ }
25419
+ __name(setFeatureFlagOverride, "setFeatureFlagOverride");
25420
+
25421
+ // src/api/services/featureFlags/POST/refreshFeatureFlagCache.ts
25422
+ async function refreshFeatureFlagCache(options) {
25423
+ const client = options?.apiClient ?? getDefaultApiClient();
25424
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25425
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25426
+ const updateOptions = {
25427
+ strategy: "temporary",
25428
+ ...options?.updateConfigOptions
25429
+ };
25430
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25431
+ client.updateConfig(mergedConfig, updateOptions);
25432
+ }
25433
+ return client.refreshFeatureFlagCache({});
25434
+ }
25435
+ __name(refreshFeatureFlagCache, "refreshFeatureFlagCache");
25436
+
25437
+ // src/api/services/featureFlags/POST/useCheckFeatureFlagEnabled.ts
25438
+ function useCheckFeatureFlagEnabled(serviceOptions, mutationOptions) {
25439
+ return createApiMutation(checkFeatureFlagEnabled, mutationOptions)(serviceOptions, mutationOptions);
25440
+ }
25441
+ __name(useCheckFeatureFlagEnabled, "useCheckFeatureFlagEnabled");
25442
+
25443
+ // src/api/services/featureFlags/POST/useEvaluateAllFeatureFlags.ts
25444
+ function useEvaluateAllFeatureFlags(serviceOptions, mutationOptions) {
25445
+ return createApiMutation(evaluateAllFeatureFlags, mutationOptions)(serviceOptions, mutationOptions);
25446
+ }
25447
+ __name(useEvaluateAllFeatureFlags, "useEvaluateAllFeatureFlags");
25448
+ function useCreateFeatureFlag(serviceOptions, mutationOptions) {
25449
+ const queryClient = reactQuery.useQueryClient();
25450
+ return createApiMutation(createFeatureFlag, {
25451
+ onSuccess: /* @__PURE__ */ __name(() => {
25452
+ void queryClient.invalidateQueries({ queryKey: ["featureFlags"] });
25453
+ }, "onSuccess"),
25454
+ ...mutationOptions
25455
+ })(serviceOptions, mutationOptions);
25456
+ }
25457
+ __name(useCreateFeatureFlag, "useCreateFeatureFlag");
25458
+ async function updateFeatureFlag(payload, options) {
25459
+ const client = options?.apiClient ?? getDefaultApiClient();
25460
+ const pathParams = { key: payload.key };
25461
+ if (!validatePathParams("updateFeatureFlag", pathParams)) {
25462
+ throw new ApiPackageError(
25463
+ "Missing required path parameter: key",
25464
+ void 0,
25465
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25466
+ );
25467
+ }
25468
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25469
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25470
+ const updateOptions = {
25471
+ strategy: "temporary",
25472
+ ...options?.updateConfigOptions
25473
+ };
25474
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25475
+ client.updateConfig(mergedConfig, updateOptions);
25476
+ }
25477
+ return client.updateFeatureFlag({
25478
+ urlPathParams: pathParams,
25479
+ body: payload.data
25480
+ });
25481
+ }
25482
+ __name(updateFeatureFlag, "updateFeatureFlag");
25483
+ function useUpdateFeatureFlag(serviceOptions, mutationOptions) {
25484
+ const queryClient = reactQuery.useQueryClient();
25485
+ return createApiMutation(updateFeatureFlag, {
25486
+ onSuccess: /* @__PURE__ */ __name((_, variables) => {
25487
+ void queryClient.invalidateQueries({ queryKey: ["featureFlags"] });
25488
+ void queryClient.invalidateQueries({ queryKey: ["featureFlag", variables.key] });
25489
+ }, "onSuccess"),
25490
+ ...mutationOptions
25491
+ })(serviceOptions, mutationOptions);
25492
+ }
25493
+ __name(useUpdateFeatureFlag, "useUpdateFeatureFlag");
25494
+ async function deleteFeatureFlag(key, options) {
25495
+ const client = options?.apiClient ?? getDefaultApiClient();
25496
+ const pathParams = { key };
25497
+ if (!validatePathParams("deleteFeatureFlag", pathParams)) {
25498
+ throw new ApiPackageError(
25499
+ "Missing required path parameter: key",
25500
+ void 0,
25501
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25502
+ );
25503
+ }
25504
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25505
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25506
+ const updateOptions = {
25507
+ strategy: "temporary",
25508
+ ...options?.updateConfigOptions
25509
+ };
25510
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25511
+ client.updateConfig(mergedConfig, updateOptions);
25512
+ }
25513
+ return client.deleteFeatureFlag({
25514
+ urlPathParams: pathParams
25515
+ });
25516
+ }
25517
+ __name(deleteFeatureFlag, "deleteFeatureFlag");
25518
+ async function removeFeatureFlagOverride(key, options) {
25519
+ const client = options?.apiClient ?? getDefaultApiClient();
25520
+ const pathParams = { key };
25521
+ if (!validatePathParams("removeFeatureFlagOverride", pathParams)) {
25522
+ throw new ApiPackageError(
25523
+ "Missing required path parameter: key",
25524
+ void 0,
25525
+ api.API_ERROR_CODES.REQUIRED_FIELD_MISSING
25526
+ );
25527
+ }
25528
+ const serviceDefaults = { unifiedStrategy: "realtime" };
25529
+ const mergedConfig = mergeConfigs(serviceDefaults, options?.apiConfig ?? {});
25530
+ const updateOptions = {
25531
+ strategy: "temporary",
25532
+ ...options?.updateConfigOptions
25533
+ };
25534
+ if (shouldApplyConfig(mergedConfig, updateOptions)) {
25535
+ client.updateConfig(mergedConfig, updateOptions);
25536
+ }
25537
+ return client.removeFeatureFlagOverride({
25538
+ urlPathParams: pathParams
25539
+ });
25540
+ }
25541
+ __name(removeFeatureFlagOverride, "removeFeatureFlagOverride");
25542
+ function useDeleteFeatureFlag(serviceOptions, mutationOptions) {
25543
+ const queryClient = reactQuery.useQueryClient();
25544
+ return createApiMutation(
25545
+ deleteFeatureFlag,
25546
+ {
25547
+ onSuccess: /* @__PURE__ */ __name((_, key) => {
25548
+ void queryClient.invalidateQueries({ queryKey: ["featureFlags"] });
25549
+ void queryClient.removeQueries({ queryKey: ["featureFlag", key] });
25550
+ }, "onSuccess"),
25551
+ ...mutationOptions
25552
+ }
25553
+ )(serviceOptions, mutationOptions);
25554
+ }
25555
+ __name(useDeleteFeatureFlag, "useDeleteFeatureFlag");
25556
+
25557
+ // src/api/services/featureFlags/DELETE/useRemoveFeatureFlagOverride.ts
25558
+ function useRemoveFeatureFlagOverride(serviceOptions, mutationOptions) {
25559
+ return createApiMutation(removeFeatureFlagOverride, mutationOptions)(serviceOptions, mutationOptions);
25560
+ }
25561
+ __name(useRemoveFeatureFlagOverride, "useRemoveFeatureFlagOverride");
25215
25562
  async function sendInfobipEmail(payload, options) {
25216
25563
  const client = options?.apiClient ?? getDefaultApiClient();
25217
25564
  if (!payload.from) {
@@ -26236,6 +26583,7 @@ exports.calculateRequestMetrics = calculateRequestMetrics;
26236
26583
  exports.campaignEndpoints = campaignEndpoints;
26237
26584
  exports.canPerformHeavyOperation = canPerformHeavyOperation;
26238
26585
  exports.cdnEndpoints = cdnEndpoints;
26586
+ exports.checkFeatureFlagEnabled = checkFeatureFlagEnabled;
26239
26587
  exports.checkOverrideTriggers = checkOverrideTriggers;
26240
26588
  exports.clamp = clamp;
26241
26589
  exports.clampedPercentage = clampedPercentage;
@@ -26275,6 +26623,7 @@ exports.createDelay = createDelay;
26275
26623
  exports.createEncryptionInterceptor = createEncryptionInterceptor;
26276
26624
  exports.createEncryptionInterceptors = createEncryptionInterceptors;
26277
26625
  exports.createEventEmitter = createEventEmitter;
26626
+ exports.createFeatureFlag = createFeatureFlag;
26278
26627
  exports.createHistoryEntry = createHistoryEntry;
26279
26628
  exports.createHistorySummary = createHistorySummary;
26280
26629
  exports.createLimitedInterval = createLimitedInterval;
@@ -26302,6 +26651,7 @@ exports.decrypt = decrypt;
26302
26651
  exports.deepMerge = deepMerge;
26303
26652
  exports.deleteCache = deleteCache;
26304
26653
  exports.deleteCampaign = deleteCampaign;
26654
+ exports.deleteFeatureFlag = deleteFeatureFlag;
26305
26655
  exports.detectConfigConflicts = detectConfigConflicts;
26306
26656
  exports.detectConflicts = detectConflicts;
26307
26657
  exports.detectPlatform = detectPlatform;
@@ -26314,6 +26664,8 @@ exports.endpointCacheKey = endpointCacheKey;
26314
26664
  exports.endpointCachePattern = endpointCachePattern;
26315
26665
  exports.endpointCachePatterns = endpointCachePatterns;
26316
26666
  exports.endpoints = endpoints;
26667
+ exports.evaluateAllFeatureFlags = evaluateAllFeatureFlags;
26668
+ exports.evaluateFeatureFlag = evaluateFeatureFlag;
26317
26669
  exports.eventManager = eventManager;
26318
26670
  exports.exportKeyToBase64 = exportKeyToBase64;
26319
26671
  exports.extendRevalidationPresets = extendPresets;
@@ -26321,10 +26673,13 @@ exports.extractFields = extractFields;
26321
26673
  exports.extractUrlParams = extractUrlParams;
26322
26674
  exports.fastlyEndpoints = fastlyEndpoints;
26323
26675
  exports.fastlyPurgeUrl = fastlyPurgeUrl;
26676
+ exports.featureFlagEndpoints = featureFlagEndpoints;
26324
26677
  exports.fetchCampaign = fetchCampaign;
26325
26678
  exports.fetchCampaignParticipants = fetchCampaignParticipants;
26326
26679
  exports.fetchCampaignStats = fetchCampaignStats;
26327
26680
  exports.fetchCampaigns = fetchCampaigns;
26681
+ exports.fetchFeatureFlagHealth = fetchFeatureFlagHealth;
26682
+ exports.fetchFeatureFlagRules = fetchFeatureFlagRules;
26328
26683
  exports.fetchInfobipEmailLogs = fetchInfobipEmailLogs;
26329
26684
  exports.fetchInfobipEmailReports = fetchInfobipEmailReports;
26330
26685
  exports.fetchInfobipScheduledEmailStatuses = fetchInfobipScheduledEmailStatuses;
@@ -26601,10 +26956,12 @@ exports.processHeaders = processHeaders2;
26601
26956
  exports.raceRequests = raceRequests;
26602
26957
  exports.randomBetween = randomBetween;
26603
26958
  exports.randomInt = randomInt;
26959
+ exports.refreshFeatureFlagCache = refreshFeatureFlagCache;
26604
26960
  exports.registerErrorHandler = registerErrorHandler;
26605
26961
  exports.registerErrorHandlers = registerErrorHandlers;
26606
26962
  exports.removeCircularReferences = removeCircularReferences;
26607
26963
  exports.removeEmpty = removeEmpty;
26964
+ exports.removeFeatureFlagOverride = removeFeatureFlagOverride;
26608
26965
  exports.removeNullish = removeNullish;
26609
26966
  exports.removeSensitiveHeaders = removeSensitiveHeaders;
26610
26967
  exports.removeUndefined = removeUndefined;
@@ -26632,6 +26989,7 @@ exports.setCache = setCache;
26632
26989
  exports.setConfigWarnings = setConfigWarnings;
26633
26990
  exports.setDefaultApiClient = setDefaultApiClient;
26634
26991
  exports.setErrorHandlers = setErrorHandlers;
26992
+ exports.setFeatureFlagOverride = setFeatureFlagOverride;
26635
26993
  exports.setFieldValue = setFieldValue;
26636
26994
  exports.setGlobalConfig = setGlobalConfig;
26637
26995
  exports.setupClientEvents = setupClientEvents;
@@ -26679,6 +27037,7 @@ exports.truncateJSON = truncateJSON;
26679
27037
  exports.unifiedStrategies = unifiedStrategies;
26680
27038
  exports.unregisterErrorHandlers = unregisterErrorHandlers;
26681
27039
  exports.updateCampaign = updateCampaign;
27040
+ exports.updateFeatureFlag = updateFeatureFlag;
26682
27041
  exports.updateGlobalConfig = updateGlobalConfig;
26683
27042
  exports.updateInfobipScheduledEmailStatuses = updateInfobipScheduledEmailStatuses;
26684
27043
  exports.uploadFileForScanning = uploadFileForScanning;
@@ -26691,21 +27050,27 @@ exports.useCampaign = useCampaign;
26691
27050
  exports.useCampaignParticipants = useCampaignParticipants;
26692
27051
  exports.useCampaignStats = useCampaignStats;
26693
27052
  exports.useCampaigns = useCampaigns;
27053
+ exports.useCheckFeatureFlagEnabled = useCheckFeatureFlagEnabled;
26694
27054
  exports.useConditionalSubscription = useConditionalSubscription;
26695
27055
  exports.useCreateCampaign = useCreateCampaign;
27056
+ exports.useCreateFeatureFlag = useCreateFeatureFlag;
26696
27057
  exports.useDebouncedSubscription = useDebouncedSubscription;
26697
27058
  exports.useDeleteCampaign = useDeleteCampaign;
27059
+ exports.useDeleteFeatureFlag = useDeleteFeatureFlag;
27060
+ exports.useEvaluateAllFeatureFlags = useEvaluateAllFeatureFlags;
26698
27061
  exports.useJoinCampaign = useJoinCampaign;
26699
27062
  exports.useLeaveCampaign = useLeaveCampaign;
26700
27063
  exports.useMultipleSubscriptions = useMultipleSubscriptions;
26701
27064
  exports.useOptimisticUpdate = useOptimisticUpdate;
26702
27065
  exports.useRealTimeData = useRealTimeData;
27066
+ exports.useRemoveFeatureFlagOverride = useRemoveFeatureFlagOverride;
26703
27067
  exports.useRequestCleanup = useRequestCleanup;
26704
27068
  exports.useRequestGroup = useRequestGroup;
26705
27069
  exports.useRouteAwareRequest = useRouteAwareRequest;
26706
27070
  exports.useSubscription = useSubscription;
26707
27071
  exports.useSubscriptionState = useSubscriptionState;
26708
27072
  exports.useUpdateCampaign = useUpdateCampaign;
27073
+ exports.useUpdateFeatureFlag = useUpdateFeatureFlag;
26709
27074
  exports.validateConfigUpdate = validateConfigUpdate;
26710
27075
  exports.validateEncryptionConfig = validateEncryptionConfig;
26711
27076
  exports.validateHeaders = validateHeaders2;