{"version":3,"sources":["../../src/analytics-semantic-model-v3-semantic-model-analytics-semantic-model.universal.ts","../../src/analytics-semantic-model-v3-semantic-model-analytics-semantic-model.http.ts","../../src/analytics-semantic-model-v3-semantic-model-analytics-semantic-model.public.ts","../../src/analytics-semantic-model-v3-semantic-model-analytics-semantic-model.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixAnalyticsSemanticModelV3SemanticModel from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.http.js';\n\n/** A semantic model defining the measures, dimensions, and parameters available for querying site performance data, such as traffic, revenue, and engagement metrics. */\nexport interface SemanticModel {\n  /**\n   * Semantic model ID.\n   * @format GUID\n   * @readonly\n   */\n  _id?: string;\n  /**\n   * URL-friendly identifier for the semantic model.\n   * @maxLength 5120\n   */\n  slug?: string;\n  /**\n   * Quantitative fields available for aggregation, such as revenue, page views, or order count.\n   * @maxSize 1000\n   */\n  measures?: Field[];\n  /**\n   * Categorical fields available for grouping data, such as traffic source, country, or product name.\n   * @maxSize 1000\n   */\n  dimensions?: Field[];\n  /**\n   * Optional inputs that customize query behavior, such as currency or date granularity.\n   * @maxSize 1000\n   */\n  parameters?: Field[];\n  /**\n   * Human-readable description of the semantic model.\n   * @maxLength 5120\n   */\n  description?: string | null;\n  /**\n   * Keywords associated with the semantic model for search and discovery.\n   * @maxSize 100\n   * @maxLength 5120\n   */\n  keywords?: string[] | null;\n}\n\n/** Modifier applied to a filter condition. Combine with `FilterConditionEnum` to create expressions such as \"is equal\" or \"is not equal\". */\nexport enum FilterPrefixEnum {\n  /** Positive match. For example, `IS` + `EQUAL` means \"is equal to\". */\n  IS = 'IS',\n  /** Negated match. For example, `NOT` + `EQUAL` means \"is not equal to\". */\n  NOT = 'NOT',\n}\n\n/** @enumType */\nexport type FilterPrefixEnumWithLiterals = FilterPrefixEnum | 'IS' | 'NOT';\n\n/** Comparison condition for a filter. Used together with `FilterPrefixEnum` to build filter expressions. */\nexport enum FilterConditionEnum {\n  /** Value equals the filter value. */\n  EQUAL = 'EQUAL',\n  /** Value is greater than the filter value. */\n  GREATER_THAN = 'GREATER_THAN',\n  /** Value is greater than or equal to the filter value. */\n  GREATER_THAN_OR_EQUAL = 'GREATER_THAN_OR_EQUAL',\n  /** Value is less than the filter value. */\n  LESS_THAN = 'LESS_THAN',\n  /** Value is less than or equal to the filter value. */\n  LESS_THAN_OR_EQUAL = 'LESS_THAN_OR_EQUAL',\n  /** Value is null. */\n  NULL = 'NULL',\n  /** Value is an empty string. */\n  EMPTY = 'EMPTY',\n  /** String value starts with the filter value. */\n  START_WITH = 'START_WITH',\n  /** String value ends with the filter value. */\n  END_WITH = 'END_WITH',\n  /** For strings, matches if any of the filter values appear as a substring. For arrays, matches if any of the filter values are present in the array. */\n  CONTAINS_ANY = 'CONTAINS_ANY',\n  /** Inclusive start, inclusive end range. The value must fall within `[a, b]`. */\n  RANGE_II = 'RANGE_II',\n  /** Inclusive start, exclusive end range. The value must fall within `[a, b)`. */\n  RANGE_IE = 'RANGE_IE',\n  /** Exclusive start, inclusive end range. The value must fall within `(a, b]`. */\n  RANGE_EI = 'RANGE_EI',\n  /** Exclusive start, exclusive end range. The value must fall within `(a, b)`. */\n  RANGE_EE = 'RANGE_EE',\n  /** For strings, matches if all filter values appear as substrings. For arrays, matches if all filter values are present in the array. */\n  CONTAINS_ALL = 'CONTAINS_ALL',\n}\n\n/** @enumType */\nexport type FilterConditionEnumWithLiterals =\n  | FilterConditionEnum\n  | 'EQUAL'\n  | 'GREATER_THAN'\n  | 'GREATER_THAN_OR_EQUAL'\n  | 'LESS_THAN'\n  | 'LESS_THAN_OR_EQUAL'\n  | 'NULL'\n  | 'EMPTY'\n  | 'START_WITH'\n  | 'END_WITH'\n  | 'CONTAINS_ANY'\n  | 'RANGE_II'\n  | 'RANGE_IE'\n  | 'RANGE_EI'\n  | 'RANGE_EE'\n  | 'CONTAINS_ALL';\n\n/** Value of a single field in a data row. Contains both the raw typed value and an optional formatted string representation. */\nexport interface FieldValue extends FieldValueValueOneOf {\n  /** Numeric value. */\n  numericValue?: number | null;\n  /** Date and time value. */\n  timestampValue?: Date | null;\n  /** Boolean value. */\n  booleanValue?: boolean | null;\n  /**\n   * String value.\n   * @maxLength 5120\n   */\n  stringValue?: string | null;\n  /** Array value. */\n  arrayValue?: any[] | null;\n  /** Object value with key-value pairs. */\n  objectValue?: Record<string, any> | null;\n  /**\n   * Human-readable string representation of the value. Populated when `formattingEnabled` is `true` in the request.\n   * @maxLength 5120\n   */\n  formattedValue?: string | null;\n}\n\n/** @oneof */\nexport interface FieldValueValueOneOf {\n  /** Numeric value. */\n  numericValue?: number | null;\n  /** Date and time value. */\n  timestampValue?: Date | null;\n  /** Boolean value. */\n  booleanValue?: boolean | null;\n  /**\n   * String value.\n   * @maxLength 5120\n   */\n  stringValue?: string | null;\n  /** Array value. */\n  arrayValue?: any[] | null;\n  /** Object value with key-value pairs. */\n  objectValue?: Record<string, any> | null;\n}\n\n/** Data type of a semantic model field. */\nexport enum FieldTypeEnum {\n  /** Unknown field type. */\n  UNKNOWN = 'UNKNOWN',\n  /** String. */\n  STRING = 'STRING',\n  /** Number. */\n  NUMBER = 'NUMBER',\n  /** Boolean. */\n  BOOLEAN = 'BOOLEAN',\n  /** Date without time. */\n  DATE = 'DATE',\n  /** Date and time. */\n  DATE_TIME = 'DATE_TIME',\n  /** Structured object with key-value pairs. */\n  OBJECT = 'OBJECT',\n  /** Array of values. */\n  ARRAY = 'ARRAY',\n}\n\n/** @enumType */\nexport type FieldTypeEnumWithLiterals =\n  | FieldTypeEnum\n  | 'UNKNOWN'\n  | 'STRING'\n  | 'NUMBER'\n  | 'BOOLEAN'\n  | 'DATE'\n  | 'DATE_TIME'\n  | 'OBJECT'\n  | 'ARRAY';\n\n/** Supported filter operations for a semantic model field. */\nexport interface FieldFilters {\n  /**\n   * Supported prefix modifiers for this field.\n   * @maxSize 100\n   */\n  prefixes?: FilterPrefixEnumWithLiterals[];\n  /**\n   * Supported comparison conditions for this field.\n   * @maxSize 100\n   */\n  conditions?: FilterConditionEnumWithLiterals[];\n}\n\n/** Definition of a single field in a semantic model, including its type, supported filters, and formatting options. */\nexport interface Field {\n  /**\n   * Field name. Use this value in the `fields` array of a query request to retrieve this field's data.\n   * @maxLength 5120\n   */\n  name?: string;\n  /** Data type of the field. */\n  type?: FieldTypeEnumWithLiterals;\n  /** Supported filter operations for this field. */\n  filters?: FieldFilters;\n  /** Whether this field supports sorting. */\n  sortable?: boolean | null;\n  /**\n   * Allowed values for this field, if the field is an enumerated type.\n   * @maxSize 100\n   * @maxLength 5120\n   */\n  enumerations?: string[] | null;\n  /**\n   * Grouping identifier. Fields with the same `groupSlug` are logically related.\n   * @maxLength 5120\n   */\n  groupSlug?: string | null;\n  /**\n   * Human-readable description of what this field represents.\n   * @maxLength 5120\n   */\n  description?: string | null;\n  /**\n   * Other fields this field depends on. The field returns data only if at least one of these fields is also included in the query; otherwise it's silently omitted from results.\n   * @maxSize 100\n   * @maxLength 5120\n   */\n  dependencies?: string[] | null;\n}\n\n/** Request for querying data from a semantic model. */\nexport interface QuerySemanticModelDataRequest {\n  /**\n   * ID of the semantic model to query.\n   * @maxLength 5120\n   */\n  semanticModelId: string;\n  /** Time interval for the data query. */\n  interval: DateTimeInterval;\n  /**\n   * List of field names to retrieve from the semantic model. Call `Get Semantic Model` to retrieve the semantic model's available fields. Fields with unmet dependencies (see the `dependencies` property in the semantic model schema) are silently omitted from results.\n   * @maxSize 60\n   * @maxLength 5120\n   */\n  fields: string[] | null;\n  /** Sort order for the results. Supports sorting by a single field only. */\n  sort?: Sorting;\n  /**\n   * Filters to apply to the data query. Supported conditions: `EQUAL`, `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL`, `NULL`, `EMPTY`, `START_WITH`, `END_WITH`, `CONTAINS_ANY`, `CONTAINS_ALL`, `RANGE_II` (inclusive start, inclusive end), `RANGE_IE` (inclusive start, exclusive end), `RANGE_EI` (exclusive start, inclusive end), and `RANGE_EE` (exclusive start, exclusive end).\n   * @maxSize 60\n   */\n  filters?: FieldFilter[];\n  /** Pagination options. */\n  paging?: Paging;\n  /**\n   * Whether to format numeric values as human-readable strings. For example, `1500` displays as `$1,500.00` or `1.5K` when enabled.\n   *\n   * Default: `false`\n   */\n  formattingEnabled?: boolean | null;\n  /**\n   * Whether to include a totals row in the response. When `true`, the `totals` field contains the sum of all numeric fields across the full (unpaginated) result set.\n   *\n   * Default: `false`\n   */\n  totalsIncluded?: boolean | null;\n}\n\n/** Date time interval */\nexport interface DateTimeInterval {\n  /**\n   * Period start as an absolute instant. The query timezone determines its\n   * wall-clock representation when querying Snowflake and formatting results.\n   */\n  start?: Date | null;\n  /**\n   * Period end as an absolute instant. The query timezone determines its\n   * wall-clock representation when querying Snowflake and formatting results.\n   */\n  end?: Date | null;\n  /**\n   * Timezone used to interpret and format the instant boundaries for the query.\n   * @maxLength 1024\n   */\n  timezone?: string | null;\n}\n\n/** Sorting options. */\nexport interface Sorting {\n  /**\n   * Name of the field to sort the results by.\n   * @maxLength 5120\n   */\n  fieldName?: string;\n  /**\n   * Sort direction.\n   *\n   * Default: `ASC`\n   */\n  order?: SortOrderWithLiterals;\n  /**\n   * Whether to place null values last in the result set. Applies to descending order.\n   *\n   * Default: `false`\n   */\n  nullsLast?: boolean | null;\n}\n\n/** Order direction. */\nexport enum SortOrder {\n  /** Ascending order. */\n  ASC = 'ASC',\n  /** Descending order. */\n  DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\n/** Filter to apply to a specific field when querying semantic model data. */\nexport interface FieldFilter {\n  /**\n   * Name of the field to filter by. Must match a field name from the semantic model's measures or dimensions.\n   * @maxLength 5120\n   */\n  field?: string;\n  /**\n   * Values to compare against. For range conditions, provide exactly 2 values representing the start and end of the range.\n   * @maxLength 5120\n   * @maxSize 100\n   */\n  values?: string[];\n  /**\n   * Whether to match or negate the condition.\n   *\n   * Default: `IS`\n   */\n  prefix?: FilterPrefixEnumWithLiterals;\n  /**\n   * Comparison condition to apply.\n   *\n   * Default: `EQUAL`\n   */\n  condition?: FilterConditionEnumWithLiterals;\n}\n\n/** Paging */\nexport interface Paging {\n  /**\n   * Number of items to load.\n   * @max 5000\n   */\n  limit?: number | null;\n  /** Number of items to skip in the current sort order. */\n  offset?: number | null;\n}\n\n/** Response for querying data from a semantic model. */\nexport interface QuerySemanticModelDataResponse {\n  /**\n   * Retrieved data rows.\n   * @readonly\n   * @maxSize 1000\n   */\n  results?: DataRow[];\n  /**\n   * Pagination metadata.\n   * @readonly\n   */\n  pagingMetadata?: PagingMetadata;\n  /**\n   * Totals row with the sum of all numeric fields across the full result set.\n   *\n   * Returned only when `totalsIncluded` is `true`.\n   * @readonly\n   */\n  totals?: DataRow;\n}\n\n/** Single row of query results. Each entry maps a field name to its value. */\nexport interface DataRow {\n  /**\n   * Map of field name to its value for this row.\n   * @maxSize 100\n   */\n  fields?: Record<string, FieldValue>;\n}\n\n/** PagingMetadata */\nexport interface PagingMetadata {\n  /** Number of items returned in the response. */\n  count?: number | null;\n  /** Offset that was requested. */\n  offset?: number | null;\n}\n\n/** Request for retrieving a semantic model by ID. */\nexport interface GetSemanticModelRequest {\n  /**\n   * ID of the semantic model to retrieve.\n   * @maxLength 5120\n   */\n  semanticModelId: string;\n}\n\n/** Response for retrieving a semantic model. */\nexport interface GetSemanticModelResponse {\n  /** Retrieved semantic model. */\n  semanticModel?: SemanticModel;\n}\n\n/** Request for listing all available semantic models. */\nexport interface ListSemanticModelsRequest {}\n\n/** Response for listing all available semantic models. */\nexport interface ListSemanticModelsResponse {\n  /**\n   * Available semantic models.\n   * @maxSize 100\n   */\n  semanticModels?: SemanticModel[];\n}\n\n/** @docsIgnore */\nexport type QuerySemanticModelDataApplicationErrors = {\n  code?: 'NO_ACCOUNT_IDENTITY';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type GetSemanticModelApplicationErrors =\n  | {\n      code?: 'NO_ACCOUNT_IDENTITY';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SEMANTIC_MODEL_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type ListSemanticModelsApplicationErrors = {\n  code?: 'NO_ACCOUNT_IDENTITY';\n  description?: string;\n  data?: Record<string, any>;\n};\n\n/**\n * Retrieves data from a semantic model for the specified fields, filters, sorting, and paging.\n *\n *\n * Query Semantic Model Data runs with these defaults, which you can override:\n *\n * - `paging.limit` is `50`\n * - `paging.offset` is `0`\n *\n * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n * @param semanticModelId - ID of the semantic model to query.\n * @public\n * @requiredField options.fields\n * @requiredField options.interval\n * @requiredField semanticModelId\n * @permissionId analytics:semantic_model:v3:semantic_model:query_semantic_model_data\n * @applicableIdentity APP\n * @returns Response for querying data from a semantic model.\n * @fqn wix.analytics.semantic_model.v3.SemanticModelsService.QuerySemanticModelData\n */\nexport async function querySemanticModelData(\n  semanticModelId: string,\n  options?: NonNullablePaths<\n    QuerySemanticModelDataOptions,\n    `fields` | `interval`,\n    0\n  >\n): Promise<\n  NonNullablePaths<QuerySemanticModelDataResponse, `results`, 0> & {\n    __applicationErrorsType?: QuerySemanticModelDataApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    semanticModelId: semanticModelId,\n    interval: options?.interval,\n    fields: options?.fields,\n    sort: options?.sort,\n    filters: options?.filters,\n    paging: options?.paging,\n    formattingEnabled: options?.formattingEnabled,\n    totalsIncluded: options?.totalsIncluded,\n  });\n\n  const reqOpts =\n    ambassadorWixAnalyticsSemanticModelV3SemanticModel.querySemanticModelData(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          semanticModelId: '$[0]',\n          interval: '$[1].interval',\n          fields: '$[1].fields',\n          sort: '$[1].sort',\n          filters: '$[1].filters',\n          paging: '$[1].paging',\n          formattingEnabled: '$[1].formattingEnabled',\n          totalsIncluded: '$[1].totalsIncluded',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['semanticModelId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface QuerySemanticModelDataOptions {\n  /** Time interval for the data query. */\n  interval: DateTimeInterval;\n  /**\n   * List of field names to retrieve from the semantic model. Call `Get Semantic Model` to retrieve the semantic model's available fields. Fields with unmet dependencies (see the `dependencies` property in the semantic model schema) are silently omitted from results.\n   * @maxSize 60\n   * @maxLength 5120\n   */\n  fields: string[] | null;\n  /** Sort order for the results. Supports sorting by a single field only. */\n  sort?: Sorting;\n  /**\n   * Filters to apply to the data query. Supported conditions: `EQUAL`, `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL`, `NULL`, `EMPTY`, `START_WITH`, `END_WITH`, `CONTAINS_ANY`, `CONTAINS_ALL`, `RANGE_II` (inclusive start, inclusive end), `RANGE_IE` (inclusive start, exclusive end), `RANGE_EI` (exclusive start, inclusive end), and `RANGE_EE` (exclusive start, exclusive end).\n   * @maxSize 60\n   */\n  filters?: FieldFilter[];\n  /** Pagination options. */\n  paging?: Paging;\n  /**\n   * Whether to format numeric values as human-readable strings. For example, `1500` displays as `$1,500.00` or `1.5K` when enabled.\n   *\n   * Default: `false`\n   */\n  formattingEnabled?: boolean | null;\n  /**\n   * Whether to include a totals row in the response. When `true`, the `totals` field contains the sum of all numeric fields across the full (unpaginated) result set.\n   *\n   * Default: `false`\n   */\n  totalsIncluded?: boolean | null;\n}\n\n/**\n * Retrieves a semantic model by ID.\n * @param semanticModelId - ID of the semantic model to retrieve.\n * @public\n * @requiredField semanticModelId\n * @permissionId analytics:semantic_model:v3:semantic_model:get_semantic_model\n * @applicableIdentity APP\n * @returns Retrieved semantic model.\n * @fqn wix.analytics.semantic_model.v3.SemanticModelsService.GetSemanticModel\n */\nexport async function getSemanticModel(semanticModelId: string): Promise<\n  NonNullablePaths<\n    SemanticModel,\n    | `_id`\n    | `slug`\n    | `measures`\n    | `measures.${number}.name`\n    | `measures.${number}.type`\n    | `dimensions`\n    | `parameters`\n    | `keywords`,\n    2\n  > & {\n    __applicationErrorsType?: GetSemanticModelApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    semanticModelId: semanticModelId,\n  });\n\n  const reqOpts =\n    ambassadorWixAnalyticsSemanticModelV3SemanticModel.getSemanticModel(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)?.semanticModel!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { semanticModelId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['semanticModelId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves a list of all available semantic models.\n * @public\n * @permissionId analytics:semantic_model:v3:semantic_model:list_semantic_models\n * @applicableIdentity APP\n * @returns Response for listing all available semantic models.\n * @fqn wix.analytics.semantic_model.v3.SemanticModelsService.ListSemanticModels\n */\nexport async function listSemanticModels(): Promise<\n  NonNullablePaths<\n    ListSemanticModelsResponse,\n    | `semanticModels`\n    | `semanticModels.${number}._id`\n    | `semanticModels.${number}.slug`,\n    2\n  > & {\n    __applicationErrorsType?: ListSemanticModelsApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[0] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({});\n\n  const reqOpts =\n    ambassadorWixAnalyticsSemanticModelV3SemanticModel.listSemanticModels(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {},\n        singleArgumentUnchanged: false,\n      },\n      []\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixAnalyticsSemanticModelV3SemanticModelsServiceUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/analytics/semantic-model/v3/semantic-models',\n        destPath: '/v3/semantic-models',\n      },\n    ],\n    _: [\n      {\n        srcPath: '/analytics/semantic-model/v3/semantic-models',\n        destPath: '/v3/semantic-models',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/analytics/semantic-model/v3/semantic-models',\n        destPath: '/v3/semantic-models',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME =\n  '@wix/auto_sdk_analytics-semantic-model_analytics-semantic-model';\n\n/**\n * Retrieves data from a semantic model for the specified fields, filters, sorting, and paging.\n *\n *\n * Query Semantic Model Data runs with these defaults, which you can override:\n *\n * - `paging.limit` is `50`\n * - `paging.offset` is `0`\n *\n * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n */\nexport function querySemanticModelData(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __querySemanticModelData({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [{ path: 'interval.start' }, { path: 'interval.end' }],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.analytics.semantic_model.v3.semantic_model',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.analytics.semantic_model.v3.SemanticModelsService.QuerySemanticModelData',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixAnalyticsSemanticModelV3SemanticModelsServiceUrl({\n        protoPath: '/v3/semantic-models/query-data',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'results.fields.*.numericValue' },\n              { path: 'totals.fields.*.numericValue' },\n            ],\n          },\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.fields.*.timestampValue' },\n              { path: 'totals.fields.*.timestampValue' },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __querySemanticModelData;\n}\n\n/** Retrieves a semantic model by ID. */\nexport function getSemanticModel(payload: object): RequestOptionsFactory<any> {\n  function __getSemanticModel({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.analytics.semantic_model.v3.semantic_model',\n      method: 'GET' as any,\n      methodFqn:\n        'wix.analytics.semantic_model.v3.SemanticModelsService.GetSemanticModel',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixAnalyticsSemanticModelV3SemanticModelsServiceUrl({\n        protoPath: '/v3/semantic-models/{semanticModelId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __getSemanticModel;\n}\n\n/** Retrieves a list of all available semantic models. */\nexport function listSemanticModels(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __listSemanticModels({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.analytics.semantic_model.v3.semantic_model',\n      method: 'GET' as any,\n      methodFqn:\n        'wix.analytics.semantic_model.v3.SemanticModelsService.ListSemanticModels',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixAnalyticsSemanticModelV3SemanticModelsServiceUrl({\n        protoPath: '/v3/semantic-models',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __listSemanticModels;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n  GetSemanticModelApplicationErrors,\n  ListSemanticModelsApplicationErrors,\n  ListSemanticModelsResponse,\n  QuerySemanticModelDataApplicationErrors,\n  QuerySemanticModelDataOptions,\n  QuerySemanticModelDataResponse,\n  SemanticModel,\n  getSemanticModel as universalGetSemanticModel,\n  listSemanticModels as universalListSemanticModels,\n  querySemanticModelData as universalQuerySemanticModelData,\n} from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/analytics-semantic-model' };\n\nexport function querySemanticModelData(\n  httpClient: HttpClient\n): QuerySemanticModelDataSignature {\n  return (\n    semanticModelId: string,\n    options?: NonNullablePaths<\n      QuerySemanticModelDataOptions,\n      `fields` | `interval`,\n      0\n    >\n  ) =>\n    universalQuerySemanticModelData(\n      semanticModelId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QuerySemanticModelDataSignature {\n  /**\n   * Retrieves data from a semantic model for the specified fields, filters, sorting, and paging.\n   *\n   *\n   * Query Semantic Model Data runs with these defaults, which you can override:\n   *\n   * - `paging.limit` is `50`\n   * - `paging.offset` is `0`\n   *\n   * To learn about working with Query methods, see [API Query Language](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-the-wix-api-query-language), [Sorting and Paging](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-sorting-and-paging), and [Field Projection](https://dev.wix.com/docs/api-reference/articles/work-with-wix-apis/data-retrieval/about-field-projection).\n   * @param - ID of the semantic model to query.\n   * @returns Response for querying data from a semantic model.\n   */\n  (\n    semanticModelId: string,\n    options?: NonNullablePaths<\n      QuerySemanticModelDataOptions,\n      `fields` | `interval`,\n      0\n    >\n  ): Promise<\n    NonNullablePaths<QuerySemanticModelDataResponse, `results`, 0> & {\n      __applicationErrorsType?: QuerySemanticModelDataApplicationErrors;\n    }\n  >;\n}\n\nexport function getSemanticModel(\n  httpClient: HttpClient\n): GetSemanticModelSignature {\n  return (semanticModelId: string) =>\n    universalGetSemanticModel(\n      semanticModelId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetSemanticModelSignature {\n  /**\n   * Retrieves a semantic model by ID.\n   * @param - ID of the semantic model to retrieve.\n   * @returns Retrieved semantic model.\n   */\n  (semanticModelId: string): Promise<\n    NonNullablePaths<\n      SemanticModel,\n      | `_id`\n      | `slug`\n      | `measures`\n      | `measures.${number}.name`\n      | `measures.${number}.type`\n      | `dimensions`\n      | `parameters`\n      | `keywords`,\n      2\n    > & {\n      __applicationErrorsType?: GetSemanticModelApplicationErrors;\n    }\n  >;\n}\n\nexport function listSemanticModels(\n  httpClient: HttpClient\n): ListSemanticModelsSignature {\n  return () =>\n    universalListSemanticModels(\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface ListSemanticModelsSignature {\n  /**\n   * Retrieves a list of all available semantic models.\n   * @returns Response for listing all available semantic models.\n   */\n  (): Promise<\n    NonNullablePaths<\n      ListSemanticModelsResponse,\n      | `semanticModels`\n      | `semanticModels.${number}._id`\n      | `semanticModels.${number}.slug`,\n      2\n    > & {\n      __applicationErrorsType?: ListSemanticModelsApplicationErrors;\n    }\n  >;\n}\n\nexport {\n  DataRow,\n  DateTimeInterval,\n  Field,\n  FieldFilter,\n  FieldFilters,\n  FieldTypeEnum,\n  FieldValue,\n  FieldValueValueOneOf,\n  FilterConditionEnum,\n  FilterPrefixEnum,\n  GetSemanticModelRequest,\n  GetSemanticModelResponse,\n  ListSemanticModelsRequest,\n  ListSemanticModelsResponse,\n  Paging,\n  PagingMetadata,\n  QuerySemanticModelDataOptions,\n  QuerySemanticModelDataRequest,\n  QuerySemanticModelDataResponse,\n  SemanticModel,\n  SortOrder,\n  Sorting,\n} from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.universal.js';\n","import {\n  querySemanticModelData as publicQuerySemanticModelData,\n  getSemanticModel as publicGetSemanticModel,\n  listSemanticModels as publicListSemanticModels,\n} from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const querySemanticModelData: MaybeContext<\n  BuildRESTFunction<typeof publicQuerySemanticModelData> &\n    typeof publicQuerySemanticModelData\n> = /*#__PURE__*/ createRESTModule(publicQuerySemanticModelData);\nexport const getSemanticModel: MaybeContext<\n  BuildRESTFunction<typeof publicGetSemanticModel> &\n    typeof publicGetSemanticModel\n> = /*#__PURE__*/ createRESTModule(publicGetSemanticModel);\nexport const listSemanticModels: MaybeContext<\n  BuildRESTFunction<typeof publicListSemanticModels> &\n    typeof publicListSemanticModels\n> = /*#__PURE__*/ createRESTModule(publicListSemanticModels);\n\nexport {\n  FilterPrefixEnum,\n  FilterConditionEnum,\n  FieldTypeEnum,\n  SortOrder,\n} from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.universal.js';\nexport {\n  SemanticModel,\n  FieldValue,\n  FieldValueValueOneOf,\n  FieldFilters,\n  Field,\n  QuerySemanticModelDataRequest,\n  DateTimeInterval,\n  Sorting,\n  FieldFilter,\n  Paging,\n  QuerySemanticModelDataResponse,\n  DataRow,\n  PagingMetadata,\n  GetSemanticModelRequest,\n  GetSemanticModelResponse,\n  ListSemanticModelsRequest,\n  ListSemanticModelsResponse,\n  QuerySemanticModelDataOptions,\n} from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.universal.js';\nexport {\n  FilterPrefixEnumWithLiterals,\n  FilterConditionEnumWithLiterals,\n  FieldTypeEnumWithLiterals,\n  SortOrderWithLiterals,\n  QuerySemanticModelDataApplicationErrors,\n  GetSemanticModelApplicationErrors,\n  ListSemanticModelsApplicationErrors,\n} from './analytics-semantic-model-v3-semantic-model-analytics-semantic-model.universal.js';\n"],"mappings":"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","names":["payload","FilterPrefixEnum","FilterConditionEnum","FieldTypeEnum","SortOrder","querySemanticModelData","getSemanticModel","listSemanticModels","querySemanticModelData","getSemanticModel","listSemanticModels","querySemanticModelData","getSemanticModel","listSemanticModels"]}