@azure/ai-projects 1.0.0-beta.9 → 1.0.1-alpha.20250924.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -136
- package/dist/browser/aiProjectClient.d.ts +10 -15
- package/dist/browser/aiProjectClient.d.ts.map +1 -1
- package/dist/browser/aiProjectClient.js +48 -18
- package/dist/browser/aiProjectClient.js.map +1 -1
- package/dist/browser/api/aiProjectContext.js +20 -12
- package/dist/browser/api/aiProjectContext.js.map +1 -1
- package/dist/browser/api/connections/operations.js +41 -37
- package/dist/browser/api/connections/operations.js.map +1 -1
- package/dist/browser/api/datasets/operations.d.ts +4 -4
- package/dist/browser/api/datasets/operations.d.ts.map +1 -1
- package/dist/browser/api/datasets/operations.js +72 -34
- package/dist/browser/api/datasets/operations.js.map +1 -1
- package/dist/browser/api/deployments/operations.js +25 -13
- package/dist/browser/api/deployments/operations.js.map +1 -1
- package/dist/browser/api/indexes/operations.d.ts +2 -2
- package/dist/browser/api/indexes/operations.d.ts.map +1 -1
- package/dist/browser/api/indexes/operations.js +45 -18
- package/dist/browser/api/indexes/operations.js.map +1 -1
- package/dist/browser/api/inference/operations.d.ts +0 -40
- package/dist/browser/api/inference/operations.d.ts.map +1 -1
- package/dist/browser/api/inference/operations.js +6 -87
- package/dist/browser/api/inference/operations.js.map +1 -1
- package/dist/browser/api/inference/options.d.ts +4 -1
- package/dist/browser/api/inference/options.d.ts.map +1 -1
- package/dist/browser/api/inference/options.js.map +1 -1
- package/dist/browser/api/telemetry/operations.d.ts +1 -1
- package/dist/browser/api/telemetry/operations.d.ts.map +1 -1
- package/dist/browser/api/telemetry/operations.js +8 -23
- package/dist/browser/api/telemetry/operations.js.map +1 -1
- package/dist/browser/classic/connections/index.js +3 -1
- package/dist/browser/classic/connections/index.js.map +1 -1
- package/dist/browser/classic/datasets/index.d.ts +2 -2
- package/dist/browser/classic/datasets/index.d.ts.map +1 -1
- package/dist/browser/classic/datasets/index.js +7 -5
- package/dist/browser/classic/datasets/index.js.map +1 -1
- package/dist/browser/classic/deployments/index.js +3 -1
- package/dist/browser/classic/deployments/index.js.map +1 -1
- package/dist/browser/classic/index.d.ts +0 -2
- package/dist/browser/classic/index.d.ts.map +1 -1
- package/dist/browser/classic/index.js.map +1 -1
- package/dist/browser/classic/indexes/index.d.ts +1 -1
- package/dist/browser/classic/indexes/index.d.ts.map +1 -1
- package/dist/browser/classic/indexes/index.js +4 -2
- package/dist/browser/classic/indexes/index.js.map +1 -1
- package/dist/browser/classic/inference/index.d.ts +0 -7
- package/dist/browser/classic/inference/index.d.ts.map +1 -1
- package/dist/browser/classic/inference/index.js +4 -5
- package/dist/browser/classic/inference/index.js.map +1 -1
- package/dist/browser/classic/telemetry/index.d.ts +1 -4
- package/dist/browser/classic/telemetry/index.d.ts.map +1 -1
- package/dist/browser/classic/telemetry/index.js +1 -2
- package/dist/browser/classic/telemetry/index.js.map +1 -1
- package/dist/browser/constants.d.ts +1 -1
- package/dist/browser/constants.d.ts.map +1 -1
- package/dist/browser/constants.js +1 -1
- package/dist/browser/constants.js.map +1 -1
- package/dist/browser/index.d.ts +5 -5
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +1 -1
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/models/index.d.ts +1 -2
- package/dist/browser/models/index.d.ts.map +1 -1
- package/dist/browser/models/index.js +0 -1
- package/dist/browser/models/index.js.map +1 -1
- package/dist/browser/models/models.d.ts +3 -203
- package/dist/browser/models/models.d.ts.map +1 -1
- package/dist/browser/models/models.js +2 -249
- package/dist/browser/models/models.js.map +1 -1
- package/dist/browser/static-helpers/pagingHelpers.js +31 -50
- package/dist/browser/static-helpers/pagingHelpers.js.map +1 -1
- package/dist/browser/static-helpers/urlTemplate.js +2 -2
- package/dist/browser/static-helpers/urlTemplate.js.map +1 -1
- package/dist/commonjs/aiProjectClient.d.ts +10 -15
- package/dist/commonjs/aiProjectClient.d.ts.map +1 -1
- package/dist/commonjs/aiProjectClient.js +58 -28
- package/dist/commonjs/aiProjectClient.js.map +1 -1
- package/dist/commonjs/api/aiProjectContext.js +20 -12
- package/dist/commonjs/api/aiProjectContext.js.map +1 -1
- package/dist/commonjs/api/connections/operations.js +41 -37
- package/dist/commonjs/api/connections/operations.js.map +1 -1
- package/dist/commonjs/api/datasets/operations.d.ts +4 -4
- package/dist/commonjs/api/datasets/operations.d.ts.map +1 -1
- package/dist/commonjs/api/datasets/operations.js +82 -44
- package/dist/commonjs/api/datasets/operations.js.map +1 -1
- package/dist/commonjs/api/deployments/operations.js +25 -13
- package/dist/commonjs/api/deployments/operations.js.map +1 -1
- package/dist/commonjs/api/indexes/operations.d.ts +2 -2
- package/dist/commonjs/api/indexes/operations.d.ts.map +1 -1
- package/dist/commonjs/api/indexes/operations.js +45 -18
- package/dist/commonjs/api/indexes/operations.js.map +1 -1
- package/dist/commonjs/api/inference/operations.d.ts +0 -40
- package/dist/commonjs/api/inference/operations.d.ts.map +1 -1
- package/dist/commonjs/api/inference/operations.js +6 -93
- package/dist/commonjs/api/inference/operations.js.map +1 -1
- package/dist/commonjs/api/inference/options.d.ts +4 -1
- package/dist/commonjs/api/inference/options.d.ts.map +1 -1
- package/dist/commonjs/api/inference/options.js.map +1 -1
- package/dist/commonjs/api/telemetry/operations.d.ts +1 -1
- package/dist/commonjs/api/telemetry/operations.d.ts.map +1 -1
- package/dist/commonjs/api/telemetry/operations.js +8 -23
- package/dist/commonjs/api/telemetry/operations.js.map +1 -1
- package/dist/commonjs/classic/connections/index.js +3 -1
- package/dist/commonjs/classic/connections/index.js.map +1 -1
- package/dist/commonjs/classic/datasets/index.d.ts +2 -2
- package/dist/commonjs/classic/datasets/index.d.ts.map +1 -1
- package/dist/commonjs/classic/datasets/index.js +7 -5
- package/dist/commonjs/classic/datasets/index.js.map +1 -1
- package/dist/commonjs/classic/deployments/index.js +3 -1
- package/dist/commonjs/classic/deployments/index.js.map +1 -1
- package/dist/commonjs/classic/index.d.ts +0 -2
- package/dist/commonjs/classic/index.d.ts.map +1 -1
- package/dist/commonjs/classic/index.js.map +1 -1
- package/dist/commonjs/classic/indexes/index.d.ts +1 -1
- package/dist/commonjs/classic/indexes/index.d.ts.map +1 -1
- package/dist/commonjs/classic/indexes/index.js +4 -2
- package/dist/commonjs/classic/indexes/index.js.map +1 -1
- package/dist/commonjs/classic/inference/index.d.ts +0 -7
- package/dist/commonjs/classic/inference/index.d.ts.map +1 -1
- package/dist/commonjs/classic/inference/index.js +3 -4
- package/dist/commonjs/classic/inference/index.js.map +1 -1
- package/dist/commonjs/classic/telemetry/index.d.ts +1 -4
- package/dist/commonjs/classic/telemetry/index.d.ts.map +1 -1
- package/dist/commonjs/classic/telemetry/index.js +1 -4
- package/dist/commonjs/classic/telemetry/index.js.map +1 -1
- package/dist/commonjs/constants.d.ts +1 -1
- package/dist/commonjs/constants.d.ts.map +1 -1
- package/dist/commonjs/constants.js +1 -1
- package/dist/commonjs/constants.js.map +1 -1
- package/dist/commonjs/index.d.ts +5 -5
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +1 -2
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/models/index.d.ts +1 -2
- package/dist/commonjs/models/index.d.ts.map +1 -1
- package/dist/commonjs/models/index.js +1 -3
- package/dist/commonjs/models/index.js.map +1 -1
- package/dist/commonjs/models/models.d.ts +3 -203
- package/dist/commonjs/models/models.d.ts.map +1 -1
- package/dist/commonjs/models/models.js +2 -281
- package/dist/commonjs/models/models.js.map +1 -1
- package/dist/commonjs/static-helpers/pagingHelpers.js +31 -50
- package/dist/commonjs/static-helpers/pagingHelpers.js.map +1 -1
- package/dist/commonjs/static-helpers/urlTemplate.js +2 -2
- package/dist/commonjs/static-helpers/urlTemplate.js.map +1 -1
- package/dist/commonjs/tsdoc-metadata.json +11 -11
- package/dist/esm/aiProjectClient.d.ts +10 -15
- package/dist/esm/aiProjectClient.d.ts.map +1 -1
- package/dist/esm/aiProjectClient.js +48 -18
- package/dist/esm/aiProjectClient.js.map +1 -1
- package/dist/esm/api/aiProjectContext.js +20 -12
- package/dist/esm/api/aiProjectContext.js.map +1 -1
- package/dist/esm/api/connections/operations.js +41 -37
- package/dist/esm/api/connections/operations.js.map +1 -1
- package/dist/esm/api/datasets/operations.d.ts +4 -4
- package/dist/esm/api/datasets/operations.d.ts.map +1 -1
- package/dist/esm/api/datasets/operations.js +72 -34
- package/dist/esm/api/datasets/operations.js.map +1 -1
- package/dist/esm/api/deployments/operations.js +25 -13
- package/dist/esm/api/deployments/operations.js.map +1 -1
- package/dist/esm/api/indexes/operations.d.ts +2 -2
- package/dist/esm/api/indexes/operations.d.ts.map +1 -1
- package/dist/esm/api/indexes/operations.js +45 -18
- package/dist/esm/api/indexes/operations.js.map +1 -1
- package/dist/esm/api/inference/operations.d.ts +0 -40
- package/dist/esm/api/inference/operations.d.ts.map +1 -1
- package/dist/esm/api/inference/operations.js +6 -87
- package/dist/esm/api/inference/operations.js.map +1 -1
- package/dist/esm/api/inference/options.d.ts +4 -1
- package/dist/esm/api/inference/options.d.ts.map +1 -1
- package/dist/esm/api/inference/options.js.map +1 -1
- package/dist/esm/api/telemetry/operations.d.ts +1 -1
- package/dist/esm/api/telemetry/operations.d.ts.map +1 -1
- package/dist/esm/api/telemetry/operations.js +8 -23
- package/dist/esm/api/telemetry/operations.js.map +1 -1
- package/dist/esm/classic/connections/index.js +3 -1
- package/dist/esm/classic/connections/index.js.map +1 -1
- package/dist/esm/classic/datasets/index.d.ts +2 -2
- package/dist/esm/classic/datasets/index.d.ts.map +1 -1
- package/dist/esm/classic/datasets/index.js +7 -5
- package/dist/esm/classic/datasets/index.js.map +1 -1
- package/dist/esm/classic/deployments/index.js +3 -1
- package/dist/esm/classic/deployments/index.js.map +1 -1
- package/dist/esm/classic/index.d.ts +0 -2
- package/dist/esm/classic/index.d.ts.map +1 -1
- package/dist/esm/classic/index.js.map +1 -1
- package/dist/esm/classic/indexes/index.d.ts +1 -1
- package/dist/esm/classic/indexes/index.d.ts.map +1 -1
- package/dist/esm/classic/indexes/index.js +4 -2
- package/dist/esm/classic/indexes/index.js.map +1 -1
- package/dist/esm/classic/inference/index.d.ts +0 -7
- package/dist/esm/classic/inference/index.d.ts.map +1 -1
- package/dist/esm/classic/inference/index.js +4 -5
- package/dist/esm/classic/inference/index.js.map +1 -1
- package/dist/esm/classic/telemetry/index.d.ts +1 -4
- package/dist/esm/classic/telemetry/index.d.ts.map +1 -1
- package/dist/esm/classic/telemetry/index.js +1 -2
- package/dist/esm/classic/telemetry/index.js.map +1 -1
- package/dist/esm/constants.d.ts +1 -1
- package/dist/esm/constants.d.ts.map +1 -1
- package/dist/esm/constants.js +1 -1
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/index.d.ts +5 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/index.d.ts +1 -2
- package/dist/esm/models/index.d.ts.map +1 -1
- package/dist/esm/models/index.js +0 -1
- package/dist/esm/models/index.js.map +1 -1
- package/dist/esm/models/models.d.ts +3 -203
- package/dist/esm/models/models.d.ts.map +1 -1
- package/dist/esm/models/models.js +2 -249
- package/dist/esm/models/models.js.map +1 -1
- package/dist/esm/static-helpers/pagingHelpers.js +31 -50
- package/dist/esm/static-helpers/pagingHelpers.js.map +1 -1
- package/dist/esm/static-helpers/urlTemplate.js +2 -2
- package/dist/esm/static-helpers/urlTemplate.js.map +1 -1
- package/dist/react-native/aiProjectClient.d.ts +10 -15
- package/dist/react-native/aiProjectClient.d.ts.map +1 -1
- package/dist/react-native/aiProjectClient.js +48 -18
- package/dist/react-native/aiProjectClient.js.map +1 -1
- package/dist/react-native/api/aiProjectContext.js +20 -12
- package/dist/react-native/api/aiProjectContext.js.map +1 -1
- package/dist/react-native/api/connections/operations.js +41 -37
- package/dist/react-native/api/connections/operations.js.map +1 -1
- package/dist/react-native/api/datasets/operations.d.ts +4 -4
- package/dist/react-native/api/datasets/operations.d.ts.map +1 -1
- package/dist/react-native/api/datasets/operations.js +72 -34
- package/dist/react-native/api/datasets/operations.js.map +1 -1
- package/dist/react-native/api/deployments/operations.js +25 -13
- package/dist/react-native/api/deployments/operations.js.map +1 -1
- package/dist/react-native/api/indexes/operations.d.ts +2 -2
- package/dist/react-native/api/indexes/operations.d.ts.map +1 -1
- package/dist/react-native/api/indexes/operations.js +45 -18
- package/dist/react-native/api/indexes/operations.js.map +1 -1
- package/dist/react-native/api/inference/operations.d.ts +0 -40
- package/dist/react-native/api/inference/operations.d.ts.map +1 -1
- package/dist/react-native/api/inference/operations.js +6 -87
- package/dist/react-native/api/inference/operations.js.map +1 -1
- package/dist/react-native/api/inference/options.d.ts +4 -1
- package/dist/react-native/api/inference/options.d.ts.map +1 -1
- package/dist/react-native/api/inference/options.js.map +1 -1
- package/dist/react-native/api/telemetry/operations.d.ts +1 -1
- package/dist/react-native/api/telemetry/operations.d.ts.map +1 -1
- package/dist/react-native/api/telemetry/operations.js +8 -23
- package/dist/react-native/api/telemetry/operations.js.map +1 -1
- package/dist/react-native/classic/connections/index.js +3 -1
- package/dist/react-native/classic/connections/index.js.map +1 -1
- package/dist/react-native/classic/datasets/index.d.ts +2 -2
- package/dist/react-native/classic/datasets/index.d.ts.map +1 -1
- package/dist/react-native/classic/datasets/index.js +7 -5
- package/dist/react-native/classic/datasets/index.js.map +1 -1
- package/dist/react-native/classic/deployments/index.js +3 -1
- package/dist/react-native/classic/deployments/index.js.map +1 -1
- package/dist/react-native/classic/index.d.ts +0 -2
- package/dist/react-native/classic/index.d.ts.map +1 -1
- package/dist/react-native/classic/index.js.map +1 -1
- package/dist/react-native/classic/indexes/index.d.ts +1 -1
- package/dist/react-native/classic/indexes/index.d.ts.map +1 -1
- package/dist/react-native/classic/indexes/index.js +4 -2
- package/dist/react-native/classic/indexes/index.js.map +1 -1
- package/dist/react-native/classic/inference/index.d.ts +0 -7
- package/dist/react-native/classic/inference/index.d.ts.map +1 -1
- package/dist/react-native/classic/inference/index.js +4 -5
- package/dist/react-native/classic/inference/index.js.map +1 -1
- package/dist/react-native/classic/telemetry/index.d.ts +1 -4
- package/dist/react-native/classic/telemetry/index.d.ts.map +1 -1
- package/dist/react-native/classic/telemetry/index.js +1 -2
- package/dist/react-native/classic/telemetry/index.js.map +1 -1
- package/dist/react-native/constants.d.ts +1 -1
- package/dist/react-native/constants.d.ts.map +1 -1
- package/dist/react-native/constants.js +1 -1
- package/dist/react-native/constants.js.map +1 -1
- package/dist/react-native/index.d.ts +5 -5
- package/dist/react-native/index.d.ts.map +1 -1
- package/dist/react-native/index.js +1 -1
- package/dist/react-native/index.js.map +1 -1
- package/dist/react-native/models/index.d.ts +1 -2
- package/dist/react-native/models/index.d.ts.map +1 -1
- package/dist/react-native/models/index.js +0 -1
- package/dist/react-native/models/index.js.map +1 -1
- package/dist/react-native/models/models.d.ts +3 -203
- package/dist/react-native/models/models.d.ts.map +1 -1
- package/dist/react-native/models/models.js +2 -249
- package/dist/react-native/models/models.js.map +1 -1
- package/dist/react-native/static-helpers/pagingHelpers.js +31 -50
- package/dist/react-native/static-helpers/pagingHelpers.js.map +1 -1
- package/dist/react-native/static-helpers/urlTemplate.js +2 -2
- package/dist/react-native/static-helpers/urlTemplate.js.map +1 -1
- package/package.json +46 -72
- package/dist/browser/api/evaluations/index.d.ts +0 -3
- package/dist/browser/api/evaluations/index.d.ts.map +0 -1
- package/dist/browser/api/evaluations/index.js +0 -4
- package/dist/browser/api/evaluations/index.js.map +0 -1
- package/dist/browser/api/evaluations/operations.d.ts +0 -22
- package/dist/browser/api/evaluations/operations.d.ts.map +0 -1
- package/dist/browser/api/evaluations/operations.js +0 -99
- package/dist/browser/api/evaluations/operations.js.map +0 -1
- package/dist/browser/api/evaluations/options.d.ts +0 -18
- package/dist/browser/api/evaluations/options.d.ts.map +0 -1
- package/dist/browser/api/evaluations/options.js +0 -4
- package/dist/browser/api/evaluations/options.js.map +0 -1
- package/dist/browser/api/inference/enableTelemetry.d.ts +0 -21
- package/dist/browser/api/inference/enableTelemetry.d.ts.map +0 -1
- package/dist/browser/api/inference/enableTelemetry.js +0 -185
- package/dist/browser/api/inference/enableTelemetry.js.map +0 -1
- package/dist/browser/api/inference/index.d.ts +0 -5
- package/dist/browser/api/inference/index.d.ts.map +0 -1
- package/dist/browser/api/inference/index.js +0 -7
- package/dist/browser/api/inference/index.js.map +0 -1
- package/dist/browser/api/redTeams/index.d.ts +0 -3
- package/dist/browser/api/redTeams/index.d.ts.map +0 -1
- package/dist/browser/api/redTeams/index.js +0 -4
- package/dist/browser/api/redTeams/index.js.map +0 -1
- package/dist/browser/api/redTeams/operations.d.ts +0 -18
- package/dist/browser/api/redTeams/operations.d.ts.map +0 -1
- package/dist/browser/api/redTeams/operations.js +0 -74
- package/dist/browser/api/redTeams/operations.js.map +0 -1
- package/dist/browser/api/redTeams/options.d.ts +0 -15
- package/dist/browser/api/redTeams/options.d.ts.map +0 -1
- package/dist/browser/api/redTeams/options.js +0 -4
- package/dist/browser/api/redTeams/options.js.map +0 -1
- package/dist/browser/classic/evaluations/index.d.ts +0 -17
- package/dist/browser/classic/evaluations/index.d.ts.map +0 -1
- package/dist/browser/classic/evaluations/index.js +0 -15
- package/dist/browser/classic/evaluations/index.js.map +0 -1
- package/dist/browser/classic/redTeams/index.d.ts +0 -15
- package/dist/browser/classic/redTeams/index.d.ts.map +0 -1
- package/dist/browser/classic/redTeams/index.js +0 -14
- package/dist/browser/classic/redTeams/index.js.map +0 -1
- package/dist/browser/models/evaluations.d.ts +0 -55
- package/dist/browser/models/evaluations.d.ts.map +0 -1
- package/dist/browser/models/evaluations.js +0 -56
- package/dist/browser/models/evaluations.js.map +0 -1
- package/dist/commonjs/api/evaluations/index.d.ts +0 -3
- package/dist/commonjs/api/evaluations/index.d.ts.map +0 -1
- package/dist/commonjs/api/evaluations/index.js +0 -11
- package/dist/commonjs/api/evaluations/index.js.map +0 -1
- package/dist/commonjs/api/evaluations/operations.d.ts +0 -22
- package/dist/commonjs/api/evaluations/operations.d.ts.map +0 -1
- package/dist/commonjs/api/evaluations/operations.js +0 -113
- package/dist/commonjs/api/evaluations/operations.js.map +0 -1
- package/dist/commonjs/api/evaluations/options.d.ts +0 -18
- package/dist/commonjs/api/evaluations/options.d.ts.map +0 -1
- package/dist/commonjs/api/evaluations/options.js +0 -5
- package/dist/commonjs/api/evaluations/options.js.map +0 -1
- package/dist/commonjs/api/inference/enableTelemetry.d.ts +0 -21
- package/dist/commonjs/api/inference/enableTelemetry.d.ts.map +0 -1
- package/dist/commonjs/api/inference/enableTelemetry.js +0 -189
- package/dist/commonjs/api/inference/enableTelemetry.js.map +0 -1
- package/dist/commonjs/api/inference/index.d.ts +0 -5
- package/dist/commonjs/api/inference/index.d.ts.map +0 -1
- package/dist/commonjs/api/inference/index.js +0 -11
- package/dist/commonjs/api/inference/index.js.map +0 -1
- package/dist/commonjs/api/redTeams/index.d.ts +0 -3
- package/dist/commonjs/api/redTeams/index.d.ts.map +0 -1
- package/dist/commonjs/api/redTeams/index.js +0 -10
- package/dist/commonjs/api/redTeams/index.js.map +0 -1
- package/dist/commonjs/api/redTeams/operations.d.ts +0 -18
- package/dist/commonjs/api/redTeams/operations.d.ts.map +0 -1
- package/dist/commonjs/api/redTeams/operations.js +0 -85
- package/dist/commonjs/api/redTeams/operations.js.map +0 -1
- package/dist/commonjs/api/redTeams/options.d.ts +0 -15
- package/dist/commonjs/api/redTeams/options.d.ts.map +0 -1
- package/dist/commonjs/api/redTeams/options.js +0 -5
- package/dist/commonjs/api/redTeams/options.js.map +0 -1
- package/dist/commonjs/classic/evaluations/index.d.ts +0 -17
- package/dist/commonjs/classic/evaluations/index.d.ts.map +0 -1
- package/dist/commonjs/classic/evaluations/index.js +0 -18
- package/dist/commonjs/classic/evaluations/index.js.map +0 -1
- package/dist/commonjs/classic/redTeams/index.d.ts +0 -15
- package/dist/commonjs/classic/redTeams/index.d.ts.map +0 -1
- package/dist/commonjs/classic/redTeams/index.js +0 -17
- package/dist/commonjs/classic/redTeams/index.js.map +0 -1
- package/dist/commonjs/models/evaluations.d.ts +0 -55
- package/dist/commonjs/models/evaluations.d.ts.map +0 -1
- package/dist/commonjs/models/evaluations.js +0 -59
- package/dist/commonjs/models/evaluations.js.map +0 -1
- package/dist/esm/api/evaluations/index.d.ts +0 -3
- package/dist/esm/api/evaluations/index.d.ts.map +0 -1
- package/dist/esm/api/evaluations/index.js +0 -4
- package/dist/esm/api/evaluations/index.js.map +0 -1
- package/dist/esm/api/evaluations/operations.d.ts +0 -22
- package/dist/esm/api/evaluations/operations.d.ts.map +0 -1
- package/dist/esm/api/evaluations/operations.js +0 -99
- package/dist/esm/api/evaluations/operations.js.map +0 -1
- package/dist/esm/api/evaluations/options.d.ts +0 -18
- package/dist/esm/api/evaluations/options.d.ts.map +0 -1
- package/dist/esm/api/evaluations/options.js +0 -4
- package/dist/esm/api/evaluations/options.js.map +0 -1
- package/dist/esm/api/inference/enableTelemetry.d.ts +0 -21
- package/dist/esm/api/inference/enableTelemetry.d.ts.map +0 -1
- package/dist/esm/api/inference/enableTelemetry.js +0 -185
- package/dist/esm/api/inference/enableTelemetry.js.map +0 -1
- package/dist/esm/api/inference/index.d.ts +0 -5
- package/dist/esm/api/inference/index.d.ts.map +0 -1
- package/dist/esm/api/inference/index.js +0 -7
- package/dist/esm/api/inference/index.js.map +0 -1
- package/dist/esm/api/redTeams/index.d.ts +0 -3
- package/dist/esm/api/redTeams/index.d.ts.map +0 -1
- package/dist/esm/api/redTeams/index.js +0 -4
- package/dist/esm/api/redTeams/index.js.map +0 -1
- package/dist/esm/api/redTeams/operations.d.ts +0 -18
- package/dist/esm/api/redTeams/operations.d.ts.map +0 -1
- package/dist/esm/api/redTeams/operations.js +0 -74
- package/dist/esm/api/redTeams/operations.js.map +0 -1
- package/dist/esm/api/redTeams/options.d.ts +0 -15
- package/dist/esm/api/redTeams/options.d.ts.map +0 -1
- package/dist/esm/api/redTeams/options.js +0 -4
- package/dist/esm/api/redTeams/options.js.map +0 -1
- package/dist/esm/classic/evaluations/index.d.ts +0 -17
- package/dist/esm/classic/evaluations/index.d.ts.map +0 -1
- package/dist/esm/classic/evaluations/index.js +0 -15
- package/dist/esm/classic/evaluations/index.js.map +0 -1
- package/dist/esm/classic/redTeams/index.d.ts +0 -15
- package/dist/esm/classic/redTeams/index.d.ts.map +0 -1
- package/dist/esm/classic/redTeams/index.js +0 -14
- package/dist/esm/classic/redTeams/index.js.map +0 -1
- package/dist/esm/models/evaluations.d.ts +0 -55
- package/dist/esm/models/evaluations.d.ts.map +0 -1
- package/dist/esm/models/evaluations.js +0 -56
- package/dist/esm/models/evaluations.js.map +0 -1
- package/dist/react-native/api/evaluations/index.d.ts +0 -3
- package/dist/react-native/api/evaluations/index.d.ts.map +0 -1
- package/dist/react-native/api/evaluations/index.js +0 -4
- package/dist/react-native/api/evaluations/index.js.map +0 -1
- package/dist/react-native/api/evaluations/operations.d.ts +0 -22
- package/dist/react-native/api/evaluations/operations.d.ts.map +0 -1
- package/dist/react-native/api/evaluations/operations.js +0 -99
- package/dist/react-native/api/evaluations/operations.js.map +0 -1
- package/dist/react-native/api/evaluations/options.d.ts +0 -18
- package/dist/react-native/api/evaluations/options.d.ts.map +0 -1
- package/dist/react-native/api/evaluations/options.js +0 -4
- package/dist/react-native/api/evaluations/options.js.map +0 -1
- package/dist/react-native/api/inference/enableTelemetry.d.ts +0 -21
- package/dist/react-native/api/inference/enableTelemetry.d.ts.map +0 -1
- package/dist/react-native/api/inference/enableTelemetry.js +0 -185
- package/dist/react-native/api/inference/enableTelemetry.js.map +0 -1
- package/dist/react-native/api/inference/index.d.ts +0 -5
- package/dist/react-native/api/inference/index.d.ts.map +0 -1
- package/dist/react-native/api/inference/index.js +0 -7
- package/dist/react-native/api/inference/index.js.map +0 -1
- package/dist/react-native/api/redTeams/index.d.ts +0 -3
- package/dist/react-native/api/redTeams/index.d.ts.map +0 -1
- package/dist/react-native/api/redTeams/index.js +0 -4
- package/dist/react-native/api/redTeams/index.js.map +0 -1
- package/dist/react-native/api/redTeams/operations.d.ts +0 -18
- package/dist/react-native/api/redTeams/operations.d.ts.map +0 -1
- package/dist/react-native/api/redTeams/operations.js +0 -74
- package/dist/react-native/api/redTeams/operations.js.map +0 -1
- package/dist/react-native/api/redTeams/options.d.ts +0 -15
- package/dist/react-native/api/redTeams/options.d.ts.map +0 -1
- package/dist/react-native/api/redTeams/options.js +0 -4
- package/dist/react-native/api/redTeams/options.js.map +0 -1
- package/dist/react-native/classic/evaluations/index.d.ts +0 -17
- package/dist/react-native/classic/evaluations/index.d.ts.map +0 -1
- package/dist/react-native/classic/evaluations/index.js +0 -15
- package/dist/react-native/classic/evaluations/index.js.map +0 -1
- package/dist/react-native/classic/redTeams/index.d.ts +0 -15
- package/dist/react-native/classic/redTeams/index.d.ts.map +0 -1
- package/dist/react-native/classic/redTeams/index.js +0 -14
- package/dist/react-native/classic/redTeams/index.js.map +0 -1
- package/dist/react-native/models/evaluations.d.ts +0 -55
- package/dist/react-native/models/evaluations.d.ts.map +0 -1
- package/dist/react-native/models/evaluations.js +0 -56
- package/dist/react-native/models/evaluations.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/models/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable @typescript-eslint/naming-convention */\n\n/** Response from the list and get connections operations */\nexport interface Connection {\n /** The friendly name of the connection, provided by the user. */\n readonly name: string;\n /** A unique identifier for the connection, generated by the service */\n readonly id: string;\n /** Category of the connection */\n readonly type: ConnectionType;\n /** The connection URL to be used for this service */\n readonly target: string;\n /** Whether the connection is tagged as the default connection of its type */\n readonly isDefault: boolean;\n /** The credentials used by the connection */\n readonly credentials: BaseCredentialsUnion;\n /** Metadata of the connection */\n readonly metadata: Record<string, string>;\n}\n\n/** The Type (or category) of the connection */\nexport type ConnectionType =\n | \"AzureOpenAI\"\n | \"AzureBlob\"\n | \"AzureStorageAccount\"\n | \"CognitiveSearch\"\n | \"CosmosDB\"\n | \"ApiKey\"\n | \"AppConfig\"\n | \"AppInsights\"\n | \"CustomKeys\";\n\n/** A base class for connection credentials */\nexport interface BaseCredentials {\n /** The type of credential used by the connection */\n /** The discriminator possible values: ApiKey, AAD, CustomKeys, SAS, None */\n readonly type: CredentialType;\n}\n\nexport function connectionDeserializer(item: any): Connection {\n return {\n name: item[\"name\"],\n id: item[\"id\"],\n type: item[\"type\"],\n target: item[\"target\"],\n metadata: item[\"metadata\"],\n isDefault: item[\"isDefault\"],\n credentials: item[\"credentials\"]\n ? baseCredentialsUnionDeserializer(item[\"credentials\"])\n : { type: \"None\" },\n };\n}\n\nexport function baseCredentialsDeserializer(item: any): BaseCredentials {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Alias for BaseCredentialsUnion */\nexport type BaseCredentialsUnion =\n | ApiKeyCredentials\n | EntraIDCredentials\n | CustomCredential\n | SASCredentials\n | NoAuthenticationCredentials\n | BaseCredentials;\n\nexport function baseCredentialsUnionDeserializer(item: any): BaseCredentialsUnion {\n switch (item.type) {\n case \"ApiKey\":\n return apiKeyCredentialsDeserializer(item as ApiKeyCredentials);\n\n case \"AAD\":\n return entraIDCredentialsDeserializer(item as EntraIDCredentials);\n\n case \"CustomKeys\":\n return customCredentialDeserializer(item as CustomCredential);\n\n case \"SAS\":\n return sasCredentialsDeserializer(item as SASCredentials);\n\n case \"None\":\n return noAuthenticationCredentialsDeserializer(item as NoAuthenticationCredentials);\n\n default:\n return baseCredentialsDeserializer(item);\n }\n}\n\n/** The credential type used by the connection */\nexport type CredentialType = \"ApiKey\" | \"AAD\" | \"SAS\" | \"CustomKeys\" | \"None\";\n\n/** API Key Credential definition */\nexport interface ApiKeyCredentials extends BaseCredentials {\n /** The credentail type */\n readonly type: \"ApiKey\";\n /** API Key */\n readonly apiKey?: string;\n}\n\nexport function apiKeyCredentialsDeserializer(item: any): ApiKeyCredentials {\n return {\n type: item[\"type\"],\n apiKey: item[\"key\"],\n };\n}\n\n/** Entra ID credential definition */\nexport interface EntraIDCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"AAD\";\n}\n\nexport function entraIDCredentialsDeserializer(item: any): EntraIDCredentials {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Custom credential definition */\nexport interface CustomCredential extends BaseCredentials {\n /** The credential type */\n readonly type: \"CustomKeys\";\n /** The credential type */\n readonly keys: Record<string, string>;\n}\n\nexport function customCredentialDeserializer(item: any): CustomCredential {\n return {\n type: item[\"type\"],\n keys: item[\"keys\"],\n };\n}\n\n/** Shared Access Signature (SAS) credential definition */\nexport interface SASCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"SAS\";\n /** SAS token */\n readonly sasToken?: string;\n}\n\nexport function sasCredentialsDeserializer(item: any): SASCredentials {\n return {\n type: item[\"type\"],\n sasToken: item[\"SAS\"],\n };\n}\n\n/** Credentials that do not require authentication */\nexport interface NoAuthenticationCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"None\";\n}\n\nexport function noAuthenticationCredentialsDeserializer(item: any): NoAuthenticationCredentials {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Paged collection of Connection items */\nexport interface _PagedConnection {\n /** The Connection items on this page */\n value: Connection[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedConnectionDeserializer(item: any): _PagedConnection {\n return {\n value: connectionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function connectionArrayDeserializer(result: Array<Connection>): any[] {\n return result.map((item) => {\n return connectionDeserializer(item);\n });\n}\n\n/** Evaluation Definition */\nexport interface Evaluation {\n /** Identifier of the evaluation. */\n readonly name: string;\n /** Data for evaluation. */\n data: InputDataUnion;\n /** Display Name for evaluation. It helps to find the evaluation easily in AI Foundry. It does not need to be unique. */\n displayName?: string;\n /** Description of the evaluation. It can be used to store additional information about the evaluation and is mutable. */\n description?: string;\n /** Status of the evaluation. It is set by service and is read-only. */\n readonly status?: string;\n /** Evaluation's tags. Unlike properties, tags are fully mutable. */\n tags?: Record<string, string>;\n /** Evaluation's properties. Unlike tags, properties are add-only. Once added, a property cannot be removed. */\n properties?: Record<string, string>;\n /** Evaluators to be used for the evaluation. */\n evaluators: Record<string, EvaluatorConfiguration>;\n}\n\n/** optional id property for Evaluation, which shouldbe used for create operation */\nexport type EvaluationWithOptionalName = Omit<Evaluation, \"name\"> & { name?: string };\n\n// optional name property\nexport function evaluationSerializer(item: EvaluationWithOptionalName): any {\n return {\n data: inputDataUnionSerializer(item[\"data\"]),\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n properties: item[\"properties\"],\n evaluators: evaluatorConfigurationRecordSerializer(item[\"evaluators\"]),\n };\n}\n\nexport function evaluationDeserializer(item: any): Evaluation {\n return {\n name: item[\"id\"],\n data: inputDataUnionDeserializer(item[\"data\"]),\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n status: item[\"status\"],\n tags: item[\"tags\"],\n properties: item[\"properties\"],\n evaluators: evaluatorConfigurationRecordDeserializer(item[\"evaluators\"]),\n };\n}\n\n/** Abstract data class. */\nexport interface InputData {\n /** Type of the data */\n /** The discriminator possible values: dataset */\n type: string;\n}\n\nexport function inputDataSerializer(item: InputData): any {\n return { type: item[\"type\"] };\n}\n\nexport function inputDataDeserializer(item: any): InputData {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Alias for InputDataUnion */\nexport type InputDataUnion = InputDataset | InputData;\n\nexport function inputDataUnionSerializer(item: InputDataUnion): any {\n switch (item.type) {\n case \"dataset\":\n return inputDatasetSerializer(item as InputDataset);\n\n default:\n return inputDataSerializer(item);\n }\n}\n\nexport function inputDataUnionDeserializer(_item: any): InputDataUnion {\n const item = _item || {};\n\n switch (item.type) {\n case \"dataset\":\n return inputDatasetDeserializer(item as InputDataset);\n\n default:\n return inputDataDeserializer(item);\n }\n}\n\n/** Dataset as source for evaluation. */\nexport interface InputDataset extends InputData {\n /** Type of the data */\n type: \"dataset\";\n /** Evaluation input data */\n id: string;\n}\n\nexport function inputDatasetSerializer(item: InputDataset): any {\n return { type: item[\"type\"], id: item[\"id\"] };\n}\n\nexport function inputDatasetDeserializer(item: any): InputDataset {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n };\n}\n\nexport function evaluatorConfigurationRecordSerializer(\n item: Record<string, EvaluatorConfiguration>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : evaluatorConfigurationSerializer(item[key]);\n });\n return result;\n}\n\nexport function evaluatorConfigurationRecordDeserializer(\n item: Record<string, any>,\n): Record<string, EvaluatorConfiguration> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : evaluatorConfigurationDeserializer(item[key]);\n });\n return result;\n}\n\n/** Evaluator Configuration */\nexport interface EvaluatorConfiguration {\n /** Identifier of the evaluator. */\n id: string;\n /** Initialization parameters of the evaluator. */\n initParams?: Record<string, any>;\n /** Data parameters of the evaluator. */\n dataMapping?: Record<string, string>;\n}\n\nexport function evaluatorConfigurationSerializer(item: EvaluatorConfiguration): any {\n return {\n id: item[\"id\"],\n initParams: item[\"initParams\"],\n dataMapping: item[\"dataMapping\"],\n };\n}\n\nexport function evaluatorConfigurationDeserializer(item: any): EvaluatorConfiguration {\n return {\n id: item[\"id\"],\n initParams: item[\"initParams\"],\n dataMapping: item[\"dataMapping\"],\n };\n}\n\n/** Paged collection of Evaluation items */\nexport interface _PagedEvaluation {\n /** The Evaluation items on this page */\n value: Evaluation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedEvaluationDeserializer(item: any): _PagedEvaluation {\n return {\n value: evaluationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function evaluationArraySerializer(result: Array<Evaluation>): any[] {\n return result.map((item) => {\n return evaluationSerializer(item);\n });\n}\n\nexport function evaluationArrayDeserializer(result: Array<Evaluation>): any[] {\n return result.map((item) => {\n return evaluationDeserializer(item);\n });\n}\n\n/** Evaluation request for agent run. */\nexport interface AgentEvaluationRequest {\n /** Identifier of the agent run. */\n runId: string;\n /** Identifier of the agent thread. This field is mandatory currently, but it will be optional in the future. */\n threadId?: string;\n /** Evaluators to be used for the evaluation. */\n evaluators: Record<string, EvaluatorConfiguration>;\n /** Sampling configuration for the evaluation. */\n samplingConfiguration?: AgentEvaluationSamplingConfiguration;\n /** Redaction configuration for the evaluation. */\n redactionConfiguration?: AgentEvaluationRedactionConfiguration;\n /** Pass the AppInsights connection string to the agent evaluation for the evaluation results and the errors logs. */\n appInsightsConnectionString: string;\n}\n\nexport function agentEvaluationRequestSerializer(item: AgentEvaluationRequest): any {\n return {\n runId: item[\"runId\"],\n threadId: item[\"threadId\"],\n evaluators: evaluatorConfigurationRecordSerializer(item[\"evaluators\"]),\n samplingConfiguration: !item[\"samplingConfiguration\"]\n ? item[\"samplingConfiguration\"]\n : agentEvaluationSamplingConfigurationSerializer(item[\"samplingConfiguration\"]),\n redactionConfiguration: !item[\"redactionConfiguration\"]\n ? item[\"redactionConfiguration\"]\n : agentEvaluationRedactionConfigurationSerializer(item[\"redactionConfiguration\"]),\n appInsightsConnectionString: item[\"appInsightsConnectionString\"],\n };\n}\n\n/** Definition for sampling strategy. */\nexport interface AgentEvaluationSamplingConfiguration {\n /** Name of the sampling strategy. */\n name: string;\n /** Percentage of sampling per hour (0-100). */\n samplingPercent: number;\n /** Maximum request rate per hour (0 to 1000). */\n maxRequestRate: number;\n}\n\nexport function agentEvaluationSamplingConfigurationSerializer(\n item: AgentEvaluationSamplingConfiguration,\n): any {\n return {\n name: item[\"name\"],\n samplingPercent: item[\"samplingPercent\"],\n maxRequestRate: item[\"maxRequestRate\"],\n };\n}\n\n/** The redaction configuration will allow the user to control what is redacted. */\nexport interface AgentEvaluationRedactionConfiguration {\n /** Redact score properties. If not specified, the default is to redact in production. */\n redactScoreProperties?: boolean;\n}\n\nexport function agentEvaluationRedactionConfigurationSerializer(\n item: AgentEvaluationRedactionConfiguration,\n): any {\n return { redactScoreProperties: item[\"redactScoreProperties\"] };\n}\n\n/** Evaluation response for agent evaluation run. */\nexport interface AgentEvaluation {\n /** Identifier of the agent evaluation run. */\n id: string;\n /** Status of the agent evaluation. Options: Running, Completed, Failed. */\n status: string;\n /** The reason of the request failure for the long running process, if applicable. */\n error?: string;\n /** The agent evaluation result. */\n result?: AgentEvaluationResult[];\n}\n\nexport function agentEvaluationDeserializer(item: any): AgentEvaluation {\n return {\n id: item[\"id\"],\n status: item[\"status\"],\n error: item[\"error\"],\n result: !item[\"result\"]\n ? item[\"result\"]\n : agentEvaluationResultArrayDeserializer(item[\"result\"]),\n };\n}\n\nexport function agentEvaluationResultArrayDeserializer(\n result: Array<AgentEvaluationResult>,\n): any[] {\n return result.map((item) => {\n return agentEvaluationResultDeserializer(item);\n });\n}\n\n/** Result for the agent evaluation evaluator run. */\nexport interface AgentEvaluationResult {\n /** Evaluator's name. This is the name of the evaluator that was used to evaluate the agent's completion. */\n evaluator: string;\n /** Identifier of the evaluator. */\n evaluatorId: string;\n /** Score of the given evaluator. No restriction on range. */\n score: number;\n /** Status of the evaluator result. Options: Running, Completed, Failed, NotApplicable. */\n status: string;\n /** Reasoning for the evaluation result. */\n reason?: string;\n /** Version of the evaluator that was used to evaluate the agent's completion. */\n version?: string;\n /** The unique identifier of the thread. */\n threadId?: string;\n /** The unique identifier of the run. */\n runId: string;\n /** A string explaining why there was an error, if applicable. */\n error?: string;\n /** Additional properties relevant to the evaluator. These will differ between evaluators. */\n additionalDetails?: Record<string, string>;\n}\n\nexport function agentEvaluationResultDeserializer(item: any): AgentEvaluationResult {\n return {\n evaluator: item[\"evaluator\"],\n evaluatorId: item[\"evaluatorId\"],\n score: item[\"score\"],\n status: item[\"status\"],\n reason: item[\"reason\"],\n version: item[\"version\"],\n threadId: item[\"threadId\"],\n runId: item[\"runId\"],\n error: item[\"error\"],\n additionalDetails: item[\"additionalDetails\"],\n };\n}\n\n/** Paged collection of DatasetVersion items */\nexport interface _PagedDatasetVersion {\n /** The DatasetVersion items on this page */\n value: DatasetVersionUnion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedDatasetVersionDeserializer(item: any): _PagedDatasetVersion {\n return {\n value: datasetVersionUnionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function datasetVersionUnionArraySerializer(result: Array<DatasetVersionUnion>): any[] {\n return result.map((item) => {\n return datasetVersionUnionSerializer(item);\n });\n}\n\nexport function datasetVersionUnionArrayDeserializer(result: Array<DatasetVersionUnion>): any[] {\n return result.map((item) => {\n return datasetVersionUnionDeserializer(item);\n });\n}\n\n/** DatasetVersion Definition */\nexport interface DatasetVersion {\n /** URI of the data. Example: https://go.microsoft.com/fwlink/?linkid=2202330 */\n dataUri: string;\n /** Dataset type */\n /** The discriminator possible values: uri_file, uri_folder */\n type: DatasetType;\n /** Indicates if the dataset holds a reference to the storage, or the dataset manages storage itself. If true, the underlying data will not be deleted when the dataset version is deleted */\n readonly isReference?: boolean;\n /** The Azure Storage Account connection name. Required if startPendingUploadVersion was not called before creating the Dataset */\n connectionName?: string;\n /** Asset ID, a unique identifier for the asset */\n readonly id?: string;\n /** The name of the resource */\n readonly name: string;\n /** The version of the resource */\n readonly version: string;\n /** The asset description text. */\n description?: string;\n /** Tag dictionary. Tags can be added, removed, and updated. */\n tags?: Record<string, string>;\n}\n\nexport function datasetVersionSerializer(item: DatasetVersion): any {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n connectionName: item[\"connectionName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function datasetVersionDeserializer(item: any): DatasetVersion {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n isReference: item[\"isReference\"],\n connectionName: item[\"connectionName\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Alias for DatasetVersionUnion */\nexport type DatasetVersionUnion = FileDatasetVersion | FolderDatasetVersion | DatasetVersion;\n\nexport function datasetVersionUnionSerializer(item: DatasetVersionUnion): any {\n switch (item.type) {\n case \"uri_file\":\n return fileDatasetVersionSerializer(item as FileDatasetVersion);\n\n case \"uri_folder\":\n return folderDatasetVersionSerializer(item as FolderDatasetVersion);\n\n default:\n return datasetVersionSerializer(item);\n }\n}\n\nexport function datasetVersionUnionDeserializer(item: any): DatasetVersionUnion {\n switch (item.type) {\n case \"uri_file\":\n return fileDatasetVersionDeserializer(item as FileDatasetVersion);\n\n case \"uri_folder\":\n return folderDatasetVersionDeserializer(item as FolderDatasetVersion);\n\n default:\n return datasetVersionDeserializer(item);\n }\n}\n\n/** Enum to determine the type of data. */\nexport type DatasetType = \"uri_file\" | \"uri_folder\";\n\n/** FileDatasetVersion Definition */\nexport interface FileDatasetVersion extends DatasetVersion {\n /** Dataset type */\n type: \"uri_file\";\n}\n\nexport function fileDatasetVersionSerializer(item: FileDatasetVersion): any {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n connectionName: item[\"connectionName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function fileDatasetVersionDeserializer(item: any): FileDatasetVersion {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n isReference: item[\"isReference\"],\n connectionName: item[\"connectionName\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** FileDatasetVersion Definition */\nexport interface FolderDatasetVersion extends DatasetVersion {\n /** Dataset type */\n type: \"uri_folder\";\n}\n\nexport function folderDatasetVersionSerializer(item: FolderDatasetVersion): any {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n connectionName: item[\"connectionName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function folderDatasetVersionDeserializer(item: any): FolderDatasetVersion {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n isReference: item[\"isReference\"],\n connectionName: item[\"connectionName\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Represents a request for a pending upload. */\nexport interface PendingUploadRequest {\n /** If PendingUploadId is not provided, a random GUID will be used. */\n pendingUploadId?: string;\n /** Azure Storage Account connection name to use for generating temporary SAS token */\n connectionName?: string;\n /** BlobReference is the only supported type. */\n pendingUploadType: \"BlobReference\";\n}\n\nexport function pendingUploadRequestSerializer(item: PendingUploadRequest): any {\n return {\n pendingUploadId: item[\"pendingUploadId\"],\n connectionName: item[\"connectionName\"],\n pendingUploadType: item[\"pendingUploadType\"],\n };\n}\n\n/** Represents the response for a pending upload request */\nexport interface PendingUploadResponse {\n /** Container-level read, write, list SAS. */\n blobReference: BlobReference;\n /** ID for this upload request. */\n pendingUploadId: string;\n /** Version of asset to be created if user did not specify version when initially creating upload */\n version?: string;\n /** BlobReference is the only supported type */\n pendingUploadType: \"BlobReference\";\n}\n\nexport function pendingUploadResponseDeserializer(item: any): PendingUploadResponse {\n return {\n blobReference: blobReferenceDeserializer(item[\"blobReference\"]),\n pendingUploadId: item[\"pendingUploadId\"],\n version: item[\"version\"],\n pendingUploadType: item[\"pendingUploadType\"],\n };\n}\n\n/** Blob reference details. */\nexport interface BlobReference {\n /** Blob URI path for client to upload data. Example: https://blob.windows.core.net/Container/Path */\n blobUri: string;\n /** ARM ID of the storage account to use. */\n storageAccountArmId: string;\n /** Credential info to access the storage account. */\n credential: SasCredential;\n}\n\nexport function blobReferenceDeserializer(item: any): BlobReference {\n return {\n blobUri: item[\"blobUri\"],\n storageAccountArmId: item[\"storageAccountArmId\"],\n credential: sasCredentialDeserializer(item[\"credential\"]),\n };\n}\n\n/** SAS Credential definition */\nexport interface SasCredential {\n /** SAS uri */\n readonly sasUri: string;\n /** Type of credential */\n readonly type: \"SAS\";\n}\n\nexport function sasCredentialDeserializer(item: any): SasCredential {\n return {\n sasUri: item[\"sasUri\"],\n type: item[\"type\"],\n };\n}\n\n/** Represents a reference to a blob for consumption */\nexport interface AssetCredentialResponse {\n /** Credential info to access the storage account. */\n blobReference: BlobReference;\n}\n\nexport function assetCredentialResponseDeserializer(item: any): AssetCredentialResponse {\n return {\n blobReference: blobReferenceDeserializer(item[\"blobReference\"]),\n };\n}\n\n/** Paged collection of Index items */\nexport interface _PagedIndex {\n /** The Index items on this page */\n value: IndexUnion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedIndexDeserializer(item: any): _PagedIndex {\n return {\n value: indexUnionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function indexUnionArraySerializer(result: Array<IndexUnion>): any[] {\n return result.map((item) => {\n return indexUnionSerializer(item);\n });\n}\n\nexport function indexUnionArrayDeserializer(result: Array<IndexUnion>): any[] {\n return result.map((item) => {\n return indexUnionDeserializer(item);\n });\n}\n\n/** Index resource Definition */\nexport interface Index {\n /** Type of index */\n /** The discriminator possible values: AzureSearch, ManagedAzureSearch, CosmosDBNoSqlVectorStore */\n type: IndexType;\n /** Asset ID, a unique identifier for the asset */\n readonly id?: string;\n /** The name of the resource */\n readonly name: string;\n /** The version of the resource */\n readonly version: string;\n /** The asset description text. */\n description?: string;\n /** Tag dictionary. Tags can be added, removed, and updated. */\n tags?: Record<string, string>;\n}\n\nexport function indexSerializer(item: Index): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function indexDeserializer(item: any): Index {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Alias for IndexUnion */\nexport type IndexUnion = AzureAISearchIndex | ManagedAzureAISearchIndex | CosmosDBIndex | Index;\n\nexport function indexUnionSerializer(item: IndexUnion): any {\n switch (item.type) {\n case \"AzureSearch\":\n return azureAISearchIndexSerializer(item as AzureAISearchIndex);\n\n case \"ManagedAzureSearch\":\n return managedAzureAISearchIndexSerializer(item as ManagedAzureAISearchIndex);\n\n case \"CosmosDBNoSqlVectorStore\":\n return cosmosDBIndexSerializer(item as CosmosDBIndex);\n\n default:\n return indexSerializer(item);\n }\n}\n\nexport function indexUnionDeserializer(item: any): IndexUnion {\n switch (item.type) {\n case \"AzureSearch\":\n return azureAISearchIndexDeserializer(item as AzureAISearchIndex);\n\n case \"ManagedAzureSearch\":\n return managedAzureAISearchIndexDeserializer(item as ManagedAzureAISearchIndex);\n\n case \"CosmosDBNoSqlVectorStore\":\n return cosmosDBIndexDeserializer(item as CosmosDBIndex);\n\n default:\n return indexDeserializer(item);\n }\n}\n\n/** Type of IndexType */\nexport type IndexType = \"AzureSearch\" | \"CosmosDBNoSqlVectorStore\" | \"ManagedAzureSearch\";\n\n/** Azure AI Search Index Definition */\nexport interface AzureAISearchIndex extends Index {\n /** Type of index */\n type: \"AzureSearch\";\n /** Name of connection to Azure AI Search */\n connectionName: string;\n /** Name of index in Azure AI Search resource to attach */\n indexName: string;\n /** Field mapping configuration */\n fieldMapping?: FieldMapping;\n}\n\nexport function azureAISearchIndexSerializer(item: AzureAISearchIndex): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n indexName: item[\"indexName\"],\n fieldMapping: !item[\"fieldMapping\"]\n ? item[\"fieldMapping\"]\n : fieldMappingSerializer(item[\"fieldMapping\"]),\n };\n}\n\nexport function azureAISearchIndexDeserializer(item: any): AzureAISearchIndex {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n indexName: item[\"indexName\"],\n fieldMapping: !item[\"fieldMapping\"]\n ? item[\"fieldMapping\"]\n : fieldMappingDeserializer(item[\"fieldMapping\"]),\n };\n}\n\n/** Field mapping configuration class */\nexport interface FieldMapping {\n /** List of fields with text content */\n contentFields: string[];\n /** Path of file to be used as a source of text content */\n filepathField?: string;\n /** Field containing the title of the document */\n titleField?: string;\n /** Field containing the url of the document */\n urlField?: string;\n /** List of fields with vector content */\n vectorFields?: string[];\n /** List of fields with metadata content */\n metadataFields?: string[];\n}\n\nexport function fieldMappingSerializer(item: FieldMapping): any {\n return {\n contentFields: item[\"contentFields\"].map((p: any) => {\n return p;\n }),\n filepathField: item[\"filepathField\"],\n titleField: item[\"titleField\"],\n urlField: item[\"urlField\"],\n vectorFields: !item[\"vectorFields\"]\n ? item[\"vectorFields\"]\n : item[\"vectorFields\"].map((p: any) => {\n return p;\n }),\n metadataFields: !item[\"metadataFields\"]\n ? item[\"metadataFields\"]\n : item[\"metadataFields\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function fieldMappingDeserializer(item: any): FieldMapping {\n return {\n contentFields: item[\"contentFields\"].map((p: any) => {\n return p;\n }),\n filepathField: item[\"filepathField\"],\n titleField: item[\"titleField\"],\n urlField: item[\"urlField\"],\n vectorFields: !item[\"vectorFields\"]\n ? item[\"vectorFields\"]\n : item[\"vectorFields\"].map((p: any) => {\n return p;\n }),\n metadataFields: !item[\"metadataFields\"]\n ? item[\"metadataFields\"]\n : item[\"metadataFields\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Managed Azure AI Search Index Definition */\nexport interface ManagedAzureAISearchIndex extends Index {\n /** Type of index */\n type: \"ManagedAzureSearch\";\n /** Vector store id of managed index */\n vectorStoreId: string;\n}\n\nexport function managedAzureAISearchIndexSerializer(item: ManagedAzureAISearchIndex): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n vectorStoreId: item[\"vectorStoreId\"],\n };\n}\n\nexport function managedAzureAISearchIndexDeserializer(item: any): ManagedAzureAISearchIndex {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n vectorStoreId: item[\"vectorStoreId\"],\n };\n}\n\n/** CosmosDB Vector Store Index Definition */\nexport interface CosmosDBIndex extends Index {\n /** Type of index */\n type: \"CosmosDBNoSqlVectorStore\";\n /** Name of connection to CosmosDB */\n connectionName: string;\n /** Name of the CosmosDB Database */\n databaseName: string;\n /** Name of CosmosDB Container */\n containerName: string;\n /** Embedding model configuration */\n embeddingConfiguration: EmbeddingConfiguration;\n /** Field mapping configuration */\n fieldMapping: FieldMapping;\n}\n\nexport function cosmosDBIndexSerializer(item: CosmosDBIndex): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n databaseName: item[\"databaseName\"],\n containerName: item[\"containerName\"],\n embeddingConfiguration: embeddingConfigurationSerializer(item[\"embeddingConfiguration\"]),\n fieldMapping: fieldMappingSerializer(item[\"fieldMapping\"]),\n };\n}\n\nexport function cosmosDBIndexDeserializer(item: any): CosmosDBIndex {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n databaseName: item[\"databaseName\"],\n containerName: item[\"containerName\"],\n embeddingConfiguration: embeddingConfigurationDeserializer(item[\"embeddingConfiguration\"]),\n fieldMapping: fieldMappingDeserializer(item[\"fieldMapping\"]),\n };\n}\n\n/** Embedding configuration class */\nexport interface EmbeddingConfiguration {\n /** Deployment name of embedding model. It can point to a model deployment either in the parent AIServices or a connection. */\n modelDeploymentName: string;\n /** Embedding field */\n embeddingField: string;\n}\n\nexport function embeddingConfigurationSerializer(item: EmbeddingConfiguration): any {\n return {\n modelDeploymentName: item[\"modelDeploymentName\"],\n embeddingField: item[\"embeddingField\"],\n };\n}\n\nexport function embeddingConfigurationDeserializer(item: any): EmbeddingConfiguration {\n return {\n modelDeploymentName: item[\"modelDeploymentName\"],\n embeddingField: item[\"embeddingField\"],\n };\n}\n\n/** Model Deployment Definition */\nexport interface Deployment {\n /** The type of the deployment */\n /** The discriminator possible values: ModelDeployment */\n type: DeploymentType;\n /** Name of the deployment */\n readonly name: string;\n}\n\nexport function deploymentDeserializer(item: any): Deployment {\n return {\n type: item[\"type\"],\n name: item[\"name\"],\n };\n}\n\n/** Alias for DeploymentUnion */\nexport type DeploymentUnion = ModelDeployment | Deployment;\n\nexport function deploymentUnionDeserializer(item: any): DeploymentUnion {\n switch (item.type) {\n case \"ModelDeployment\":\n return modelDeploymentDeserializer(item as ModelDeployment);\n\n default:\n return deploymentDeserializer(item);\n }\n}\n\n/** Type of DeploymentType */\nexport type DeploymentType = \"ModelDeployment\";\n\n/** Model Deployment Definition */\nexport interface ModelDeployment extends Deployment {\n /** The type of the deployment */\n type: \"ModelDeployment\";\n /** Publisher-specific name of the deployed model */\n readonly modelName: string;\n /** Publisher-specific version of the deployed model */\n readonly modelVersion: string;\n /** Name of the deployed model's publisher */\n readonly modelPublisher: string;\n /** Capabilities of deployed model */\n readonly capabilities: Record<string, string>;\n /** Sku of the model deployment */\n readonly sku: Sku;\n /** Name of the connection the deployment comes from */\n readonly connectionName?: string;\n}\n\nexport function modelDeploymentDeserializer(item: any): ModelDeployment {\n return {\n type: item[\"type\"],\n name: item[\"name\"],\n modelName: item[\"modelName\"],\n modelVersion: item[\"modelVersion\"],\n modelPublisher: item[\"modelPublisher\"],\n capabilities: item[\"capabilities\"],\n sku: skuDeserializer(item[\"sku\"]),\n connectionName: item[\"connectionName\"],\n };\n}\n\n/** Sku information */\nexport interface Sku {\n /** Sku capacity */\n capacity: number;\n /** Sku family */\n family: string;\n /** Sku name */\n name: string;\n /** Sku size */\n size: string;\n /** Sku tier */\n tier: string;\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n capacity: item[\"capacity\"],\n family: item[\"family\"],\n name: item[\"name\"],\n size: item[\"size\"],\n tier: item[\"tier\"],\n };\n}\n\n/** Paged collection of Deployment items */\nexport interface _PagedDeployment {\n /** The Deployment items on this page */\n value: DeploymentUnion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedDeploymentDeserializer(item: any): _PagedDeployment {\n return {\n value: deploymentUnionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function deploymentUnionArrayDeserializer(result: Array<DeploymentUnion>): any[] {\n return result.map((item) => {\n return deploymentUnionDeserializer(item);\n });\n}\n\n/** Red team details. */\nexport interface RedTeam {\n /** Identifier of the red team run. */\n readonly name: string;\n /** Name of the red-team run. */\n displayName?: string;\n /** Number of simulation rounds. */\n numTurns?: number;\n /** List of attack strategies or nested lists of attack strategies. */\n attackStrategies?: AttackStrategy[];\n /** Simulation-only or Simulation + Evaluation. Default false, if true the scan outputs conversation not evaluation result. */\n simulationOnly?: boolean;\n /** List of risk categories to generate attack objectives for. */\n riskCategories?: RiskCategory[];\n /** Application scenario for the red team operation, to generate scenario specific attacks. */\n applicationScenario?: string;\n /** Red team's tags. Unlike properties, tags are fully mutable. */\n tags?: Record<string, string>;\n /** Red team's properties. Unlike tags, properties are add-only. Once added, a property cannot be removed. */\n properties?: Record<string, string>;\n /** Status of the red-team. It is set by service and is read-only. */\n readonly status?: string;\n /** Target configuration for the red-team run. */\n target: TargetConfigUnion;\n}\n\nexport function redTeamSerializer(item: RedTeam): any {\n return {\n displayName: item[\"displayName\"],\n numTurns: item[\"numTurns\"],\n attackStrategies: !item[\"attackStrategies\"]\n ? item[\"attackStrategies\"]\n : item[\"attackStrategies\"].map((p: any) => {\n return p;\n }),\n simulationOnly: item[\"simulationOnly\"],\n riskCategories: !item[\"riskCategories\"]\n ? item[\"riskCategories\"]\n : item[\"riskCategories\"].map((p: any) => {\n return p;\n }),\n applicationScenario: item[\"applicationScenario\"],\n tags: item[\"tags\"],\n properties: item[\"properties\"],\n target: targetConfigUnionSerializer(item[\"target\"]),\n };\n}\n\nexport function redTeamDeserializer(item: any): RedTeam {\n return {\n name: item[\"id\"],\n displayName: item[\"displayName\"],\n numTurns: item[\"numTurns\"],\n attackStrategies: !item[\"attackStrategies\"]\n ? item[\"attackStrategies\"]\n : item[\"attackStrategies\"].map((p: any) => {\n return p;\n }),\n simulationOnly: item[\"simulationOnly\"],\n riskCategories: !item[\"riskCategories\"]\n ? item[\"riskCategories\"]\n : item[\"riskCategories\"].map((p: any) => {\n return p;\n }),\n applicationScenario: item[\"applicationScenario\"],\n tags: item[\"tags\"],\n properties: item[\"properties\"],\n status: item[\"status\"],\n target: targetConfigUnionDeserializer(item[\"target\"]),\n };\n}\n\n/** Strategies for attacks. */\nexport type AttackStrategy =\n | \"easy\"\n | \"moderate\"\n | \"difficult\"\n | \"ascii_art\"\n | \"ascii_smuggler\"\n | \"atbash\"\n | \"base64\"\n | \"binary\"\n | \"caesar\"\n | \"character_space\"\n | \"jailbreak\"\n | \"ansii_attack\"\n | \"character_swap\"\n | \"suffix_append\"\n | \"string_join\"\n | \"unicode_confusable\"\n | \"unicode_substitution\"\n | \"diacritic\"\n | \"flip\"\n | \"leetspeak\"\n | \"rot13\"\n | \"morse\"\n | \"url\"\n | \"baseline\";\n/** Risk category for the attack objective. */\nexport type RiskCategory = \"HateUnfairness\" | \"Violence\" | \"Sexual\" | \"SelfHarm\";\n\n/** Abstract class for target configuration. */\nexport interface TargetConfig {\n /** Type of the model configuration. */\n /** The discriminator possible values: AzureOpenAIModel */\n type: string;\n}\n\nexport function targetConfigSerializer(item: TargetConfig): any {\n return { type: item[\"type\"] };\n}\n\nexport function targetConfigDeserializer(item: any): TargetConfig {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Alias for TargetConfigUnion */\nexport type TargetConfigUnion = AzureOpenAIModelConfiguration | TargetConfig;\n\nexport function targetConfigUnionSerializer(item: TargetConfigUnion): any {\n switch (item.type) {\n case \"AzureOpenAIModel\":\n return azureOpenAIModelConfigurationSerializer(item as AzureOpenAIModelConfiguration);\n\n default:\n return targetConfigSerializer(item);\n }\n}\n\nexport function targetConfigUnionDeserializer(item: any): TargetConfigUnion {\n switch (item.type) {\n case \"AzureOpenAIModel\":\n return azureOpenAIModelConfigurationDeserializer(item as AzureOpenAIModelConfiguration);\n\n default:\n return targetConfigDeserializer(item);\n }\n}\n\n/** Azure OpenAI model configuration. The API version would be selected by the service for querying the model. */\nexport interface AzureOpenAIModelConfiguration extends TargetConfig {\n /** Type of the model configuration. */\n readonly type: \"AzureOpenAIModel\";\n /** Deployment name for AOAI model. Example: gpt-4o if in AIServices or connection based `connection_name/deployment_name` (i.e. `my-aoai-connection/gpt-4o`. */\n modelDeploymentName: string;\n}\n\nexport function azureOpenAIModelConfigurationSerializer(item: AzureOpenAIModelConfiguration): any {\n return { modelDeploymentName: item[\"modelDeploymentName\"] };\n}\n\nexport function azureOpenAIModelConfigurationDeserializer(\n item: any,\n): AzureOpenAIModelConfiguration {\n return {\n type: item[\"type\"],\n modelDeploymentName: item[\"modelDeploymentName\"],\n };\n}\n\n/** Paged collection of RedTeam items */\nexport interface _PagedRedTeam {\n /** The RedTeam items on this page */\n value: RedTeam[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedRedTeamDeserializer(item: any): _PagedRedTeam {\n return {\n value: redTeamArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function redTeamArraySerializer(result: Array<RedTeam>): any[] {\n return result.map((item) => {\n return redTeamSerializer(item);\n });\n}\n\nexport function redTeamArrayDeserializer(result: Array<RedTeam>): any[] {\n return result.map((item) => {\n return redTeamDeserializer(item);\n });\n}\n\n/** The type of pending upload. */\nexport type PendingUploadType = \"None\" | \"BlobReference\";\n\n/** Azure AI Projects API versions */\nexport enum KnownVersions {\n /** Azure AI API version 2025-05-01. */\n V20250501 = \"2025-05-01\",\n /** Azure AI API version 2025-05-15-preview. */\n V20250515Preview = \"2025-05-15-preview\",\n}\n"]}
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/models/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable @typescript-eslint/naming-convention */\n\n/** Response from the list and get connections operations */\nexport interface Connection {\n /** The friendly name of the connection, provided by the user. */\n readonly name: string;\n /** A unique identifier for the connection, generated by the service */\n readonly id: string;\n /** Category of the connection */\n readonly type: ConnectionType;\n /** The connection URL to be used for this service */\n readonly target: string;\n /** Whether the connection is tagged as the default connection of its type */\n readonly isDefault: boolean;\n /** The credentials used by the connection */\n readonly credentials: BaseCredentialsUnion;\n /** Metadata of the connection */\n readonly metadata: Record<string, string>;\n}\n\n/** The Type (or category) of the connection */\nexport type ConnectionType =\n | \"AzureOpenAI\"\n | \"AzureBlob\"\n | \"AzureStorageAccount\"\n | \"CognitiveSearch\"\n | \"CosmosDB\"\n | \"ApiKey\"\n | \"AppConfig\"\n | \"AppInsights\"\n | \"CustomKeys\";\n\n/** A base class for connection credentials */\nexport interface BaseCredentials {\n /** The type of credential used by the connection */\n /** The discriminator possible values: ApiKey, AAD, CustomKeys, SAS, None */\n readonly type: CredentialType;\n}\n\nexport function connectionDeserializer(item: any): Connection {\n return {\n name: item[\"name\"],\n id: item[\"id\"],\n type: item[\"type\"],\n target: item[\"target\"],\n metadata: item[\"metadata\"],\n isDefault: item[\"isDefault\"],\n credentials: item[\"credentials\"]\n ? baseCredentialsUnionDeserializer(item[\"credentials\"])\n : { type: \"None\" },\n };\n}\n\nexport function baseCredentialsDeserializer(item: any): BaseCredentials {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Alias for BaseCredentialsUnion */\nexport type BaseCredentialsUnion =\n | ApiKeyCredentials\n | EntraIDCredentials\n | CustomCredential\n | SASCredentials\n | NoAuthenticationCredentials\n | BaseCredentials;\n\nexport function baseCredentialsUnionDeserializer(item: any): BaseCredentialsUnion {\n switch (item.type) {\n case \"ApiKey\":\n return apiKeyCredentialsDeserializer(item as ApiKeyCredentials);\n\n case \"AAD\":\n return entraIDCredentialsDeserializer(item as EntraIDCredentials);\n\n case \"CustomKeys\":\n return customCredentialDeserializer(item as CustomCredential);\n\n case \"SAS\":\n return sasCredentialsDeserializer(item as SASCredentials);\n\n case \"None\":\n return noAuthenticationCredentialsDeserializer(item as NoAuthenticationCredentials);\n\n default:\n return baseCredentialsDeserializer(item);\n }\n}\n\n/** The credential type used by the connection */\nexport type CredentialType = \"ApiKey\" | \"AAD\" | \"SAS\" | \"CustomKeys\" | \"None\";\n\n/** API Key Credential definition */\nexport interface ApiKeyCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"ApiKey\";\n /** API Key */\n readonly apiKey?: string;\n}\n\nexport function apiKeyCredentialsDeserializer(item: any): ApiKeyCredentials {\n return {\n type: item[\"type\"],\n apiKey: item[\"key\"],\n };\n}\n\n/** Entra ID credential definition */\nexport interface EntraIDCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"AAD\";\n}\n\nexport function entraIDCredentialsDeserializer(item: any): EntraIDCredentials {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Custom credential definition */\nexport interface CustomCredential extends BaseCredentials {\n /** The credential type */\n readonly type: \"CustomKeys\";\n /** The credential type */\n readonly keys: Record<string, string>;\n}\n\nexport function customCredentialDeserializer(item: any): CustomCredential {\n return {\n type: item[\"type\"],\n keys: item[\"keys\"],\n };\n}\n\n/** Shared Access Signature (SAS) credential definition */\nexport interface SASCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"SAS\";\n /** SAS token */\n readonly sasToken?: string;\n}\n\nexport function sasCredentialsDeserializer(item: any): SASCredentials {\n return {\n type: item[\"type\"],\n sasToken: item[\"SAS\"],\n };\n}\n\n/** Credentials that do not require authentication */\nexport interface NoAuthenticationCredentials extends BaseCredentials {\n /** The credential type */\n readonly type: \"None\";\n}\n\nexport function noAuthenticationCredentialsDeserializer(item: any): NoAuthenticationCredentials {\n return {\n type: item[\"type\"],\n };\n}\n\n/** Paged collection of Connection items */\nexport interface _PagedConnection {\n /** The Connection items on this page */\n value: Connection[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedConnectionDeserializer(item: any): _PagedConnection {\n return {\n value: connectionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function connectionArrayDeserializer(result: Array<Connection>): any[] {\n return result.map((item) => {\n return connectionDeserializer(item);\n });\n}\n\n/** Paged collection of DatasetVersion items */\nexport interface _PagedDatasetVersion {\n /** The DatasetVersion items on this page */\n value: DatasetVersionUnion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedDatasetVersionDeserializer(item: any): _PagedDatasetVersion {\n return {\n value: datasetVersionUnionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function datasetVersionUnionArraySerializer(result: Array<DatasetVersionUnion>): any[] {\n return result.map((item) => {\n return datasetVersionUnionSerializer(item);\n });\n}\n\nexport function datasetVersionUnionArrayDeserializer(result: Array<DatasetVersionUnion>): any[] {\n return result.map((item) => {\n return datasetVersionUnionDeserializer(item);\n });\n}\n\n/** DatasetVersion Definition */\nexport interface DatasetVersion {\n /** URI of the data. Example: https://go.microsoft.com/fwlink/?linkid=2202330 */\n dataUri: string;\n /** Dataset type */\n /** The discriminator possible values: uri_file, uri_folder */\n type: DatasetType;\n /** Indicates if the dataset holds a reference to the storage, or the dataset manages storage itself. If true, the underlying data will not be deleted when the dataset version is deleted */\n readonly isReference?: boolean;\n /** The Azure Storage Account connection name. Required if startPendingUploadVersion was not called before creating the Dataset */\n connectionName?: string;\n /** Asset ID, a unique identifier for the asset */\n readonly id?: string;\n /** The name of the resource */\n readonly name: string;\n /** The version of the resource */\n readonly version: string;\n /** The asset description text. */\n description?: string;\n /** Tag dictionary. Tags can be added, removed, and updated. */\n tags?: Record<string, string>;\n}\n\nexport function datasetVersionSerializer(item: DatasetVersion): any {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n connectionName: item[\"connectionName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function datasetVersionDeserializer(item: any): DatasetVersion {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n isReference: item[\"isReference\"],\n connectionName: item[\"connectionName\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Alias for DatasetVersionUnion */\nexport type DatasetVersionUnion = FileDatasetVersion | FolderDatasetVersion | DatasetVersion;\n\nexport function datasetVersionUnionSerializer(item: DatasetVersionUnion): any {\n switch (item.type) {\n case \"uri_file\":\n return fileDatasetVersionSerializer(item as FileDatasetVersion);\n\n case \"uri_folder\":\n return folderDatasetVersionSerializer(item as FolderDatasetVersion);\n\n default:\n return datasetVersionSerializer(item);\n }\n}\n\nexport function datasetVersionUnionDeserializer(item: any): DatasetVersionUnion {\n switch (item.type) {\n case \"uri_file\":\n return fileDatasetVersionDeserializer(item as FileDatasetVersion);\n\n case \"uri_folder\":\n return folderDatasetVersionDeserializer(item as FolderDatasetVersion);\n\n default:\n return datasetVersionDeserializer(item);\n }\n}\n\n/** Enum to determine the type of data. */\nexport type DatasetType = \"uri_file\" | \"uri_folder\";\n\n/** FileDatasetVersion Definition */\nexport interface FileDatasetVersion extends DatasetVersion {\n /** Dataset type */\n type: \"uri_file\";\n}\n\nexport function fileDatasetVersionSerializer(item: FileDatasetVersion): any {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n connectionName: item[\"connectionName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function fileDatasetVersionDeserializer(item: any): FileDatasetVersion {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n isReference: item[\"isReference\"],\n connectionName: item[\"connectionName\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** FileDatasetVersion Definition */\nexport interface FolderDatasetVersion extends DatasetVersion {\n /** Dataset type */\n type: \"uri_folder\";\n}\n\nexport function folderDatasetVersionSerializer(item: FolderDatasetVersion): any {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n connectionName: item[\"connectionName\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function folderDatasetVersionDeserializer(item: any): FolderDatasetVersion {\n return {\n dataUri: item[\"dataUri\"],\n type: item[\"type\"],\n isReference: item[\"isReference\"],\n connectionName: item[\"connectionName\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Represents a request for a pending upload. */\nexport interface PendingUploadRequest {\n /** If PendingUploadId is not provided, a random GUID will be used. */\n pendingUploadId?: string;\n /** Azure Storage Account connection name to use for generating temporary SAS token */\n connectionName?: string;\n /** BlobReference is the only supported type. */\n pendingUploadType: \"BlobReference\";\n}\n\nexport function pendingUploadRequestSerializer(item: PendingUploadRequest): any {\n return {\n pendingUploadId: item[\"pendingUploadId\"],\n connectionName: item[\"connectionName\"],\n pendingUploadType: item[\"pendingUploadType\"],\n };\n}\n\n/** Represents the response for a pending upload request */\nexport interface PendingUploadResponse {\n /** Container-level read, write, list SAS. */\n blobReference: BlobReference;\n /** ID for this upload request. */\n pendingUploadId: string;\n /** Version of asset to be created if user did not specify version when initially creating upload */\n version?: string;\n /** BlobReference is the only supported type */\n pendingUploadType: \"BlobReference\";\n}\n\nexport function pendingUploadResponseDeserializer(item: any): PendingUploadResponse {\n return {\n blobReference: blobReferenceDeserializer(item[\"blobReference\"]),\n pendingUploadId: item[\"pendingUploadId\"],\n version: item[\"version\"],\n pendingUploadType: item[\"pendingUploadType\"],\n };\n}\n\n/** Blob reference details. */\nexport interface BlobReference {\n /** Blob URI path for client to upload data. Example: https://blob.windows.core.net/Container/Path */\n blobUri: string;\n /** ARM ID of the storage account to use. */\n storageAccountArmId: string;\n /** Credential info to access the storage account. */\n credential: SasCredential;\n}\n\nexport function blobReferenceDeserializer(item: any): BlobReference {\n return {\n blobUri: item[\"blobUri\"],\n storageAccountArmId: item[\"storageAccountArmId\"],\n credential: sasCredentialDeserializer(item[\"credential\"]),\n };\n}\n\n/** SAS Credential definition */\nexport interface SasCredential {\n /** SAS uri */\n readonly sasUri: string;\n /** Type of credential */\n readonly type: \"SAS\";\n}\n\nexport function sasCredentialDeserializer(item: any): SasCredential {\n return {\n sasUri: item[\"sasUri\"],\n type: item[\"type\"],\n };\n}\n\n/** Represents a reference to a blob for consumption */\nexport interface AssetCredentialResponse {\n /** Credential info to access the storage account. */\n blobReference: BlobReference;\n}\n\nexport function assetCredentialResponseDeserializer(item: any): AssetCredentialResponse {\n return {\n blobReference: blobReferenceDeserializer(item[\"blobReference\"]),\n };\n}\n\n/** Paged collection of Index items */\nexport interface _PagedIndex {\n /** The Index items on this page */\n value: IndexUnion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedIndexDeserializer(item: any): _PagedIndex {\n return {\n value: indexUnionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function indexUnionArraySerializer(result: Array<IndexUnion>): any[] {\n return result.map((item) => {\n return indexUnionSerializer(item);\n });\n}\n\nexport function indexUnionArrayDeserializer(result: Array<IndexUnion>): any[] {\n return result.map((item) => {\n return indexUnionDeserializer(item);\n });\n}\n\n/** Index resource Definition */\nexport interface Index {\n /** Type of index */\n /** The discriminator possible values: AzureSearch, ManagedAzureSearch, CosmosDBNoSqlVectorStore */\n type: IndexType;\n /** Asset ID, a unique identifier for the asset */\n readonly id?: string;\n /** The name of the resource */\n readonly name: string;\n /** The version of the resource */\n readonly version: string;\n /** The asset description text. */\n description?: string;\n /** Tag dictionary. Tags can be added, removed, and updated. */\n tags?: Record<string, string>;\n}\n\nexport function indexSerializer(item: Index): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function indexDeserializer(item: any): Index {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Alias for IndexUnion */\nexport type IndexUnion = AzureAISearchIndex | ManagedAzureAISearchIndex | CosmosDBIndex | Index;\n\nexport function indexUnionSerializer(item: IndexUnion): any {\n switch (item.type) {\n case \"AzureSearch\":\n return azureAISearchIndexSerializer(item as AzureAISearchIndex);\n\n case \"ManagedAzureSearch\":\n return managedAzureAISearchIndexSerializer(item as ManagedAzureAISearchIndex);\n\n case \"CosmosDBNoSqlVectorStore\":\n return cosmosDBIndexSerializer(item as CosmosDBIndex);\n\n default:\n return indexSerializer(item);\n }\n}\n\nexport function indexUnionDeserializer(item: any): IndexUnion {\n switch (item.type) {\n case \"AzureSearch\":\n return azureAISearchIndexDeserializer(item as AzureAISearchIndex);\n\n case \"ManagedAzureSearch\":\n return managedAzureAISearchIndexDeserializer(item as ManagedAzureAISearchIndex);\n\n case \"CosmosDBNoSqlVectorStore\":\n return cosmosDBIndexDeserializer(item as CosmosDBIndex);\n\n default:\n return indexDeserializer(item);\n }\n}\n\n/** Type of IndexType */\nexport type IndexType = \"AzureSearch\" | \"CosmosDBNoSqlVectorStore\" | \"ManagedAzureSearch\";\n\n/** Azure AI Search Index Definition */\nexport interface AzureAISearchIndex extends Index {\n /** Type of index */\n type: \"AzureSearch\";\n /** Name of connection to Azure AI Search */\n connectionName: string;\n /** Name of index in Azure AI Search resource to attach */\n indexName: string;\n /** Field mapping configuration */\n fieldMapping?: FieldMapping;\n}\n\nexport function azureAISearchIndexSerializer(item: AzureAISearchIndex): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n indexName: item[\"indexName\"],\n fieldMapping: !item[\"fieldMapping\"]\n ? item[\"fieldMapping\"]\n : fieldMappingSerializer(item[\"fieldMapping\"]),\n };\n}\n\nexport function azureAISearchIndexDeserializer(item: any): AzureAISearchIndex {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n indexName: item[\"indexName\"],\n fieldMapping: !item[\"fieldMapping\"]\n ? item[\"fieldMapping\"]\n : fieldMappingDeserializer(item[\"fieldMapping\"]),\n };\n}\n\n/** Field mapping configuration class */\nexport interface FieldMapping {\n /** List of fields with text content */\n contentFields: string[];\n /** Path of file to be used as a source of text content */\n filepathField?: string;\n /** Field containing the title of the document */\n titleField?: string;\n /** Field containing the url of the document */\n urlField?: string;\n /** List of fields with vector content */\n vectorFields?: string[];\n /** List of fields with metadata content */\n metadataFields?: string[];\n}\n\nexport function fieldMappingSerializer(item: FieldMapping): any {\n return {\n contentFields: item[\"contentFields\"].map((p: any) => {\n return p;\n }),\n filepathField: item[\"filepathField\"],\n titleField: item[\"titleField\"],\n urlField: item[\"urlField\"],\n vectorFields: !item[\"vectorFields\"]\n ? item[\"vectorFields\"]\n : item[\"vectorFields\"].map((p: any) => {\n return p;\n }),\n metadataFields: !item[\"metadataFields\"]\n ? item[\"metadataFields\"]\n : item[\"metadataFields\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function fieldMappingDeserializer(item: any): FieldMapping {\n return {\n contentFields: item[\"contentFields\"].map((p: any) => {\n return p;\n }),\n filepathField: item[\"filepathField\"],\n titleField: item[\"titleField\"],\n urlField: item[\"urlField\"],\n vectorFields: !item[\"vectorFields\"]\n ? item[\"vectorFields\"]\n : item[\"vectorFields\"].map((p: any) => {\n return p;\n }),\n metadataFields: !item[\"metadataFields\"]\n ? item[\"metadataFields\"]\n : item[\"metadataFields\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Managed Azure AI Search Index Definition */\nexport interface ManagedAzureAISearchIndex extends Index {\n /** Type of index */\n type: \"ManagedAzureSearch\";\n /** Vector store id of managed index */\n vectorStoreId: string;\n}\n\nexport function managedAzureAISearchIndexSerializer(item: ManagedAzureAISearchIndex): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n vectorStoreId: item[\"vectorStoreId\"],\n };\n}\n\nexport function managedAzureAISearchIndexDeserializer(item: any): ManagedAzureAISearchIndex {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n vectorStoreId: item[\"vectorStoreId\"],\n };\n}\n\n/** CosmosDB Vector Store Index Definition */\nexport interface CosmosDBIndex extends Index {\n /** Type of index */\n type: \"CosmosDBNoSqlVectorStore\";\n /** Name of connection to CosmosDB */\n connectionName: string;\n /** Name of the CosmosDB Database */\n databaseName: string;\n /** Name of CosmosDB Container */\n containerName: string;\n /** Embedding model configuration */\n embeddingConfiguration: EmbeddingConfiguration;\n /** Field mapping configuration */\n fieldMapping: FieldMapping;\n}\n\nexport function cosmosDBIndexSerializer(item: CosmosDBIndex): any {\n return {\n type: item[\"type\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n databaseName: item[\"databaseName\"],\n containerName: item[\"containerName\"],\n embeddingConfiguration: embeddingConfigurationSerializer(item[\"embeddingConfiguration\"]),\n fieldMapping: fieldMappingSerializer(item[\"fieldMapping\"]),\n };\n}\n\nexport function cosmosDBIndexDeserializer(item: any): CosmosDBIndex {\n return {\n type: item[\"type\"],\n id: item[\"id\"],\n name: item[\"name\"],\n version: item[\"version\"],\n description: item[\"description\"],\n tags: item[\"tags\"],\n connectionName: item[\"connectionName\"],\n databaseName: item[\"databaseName\"],\n containerName: item[\"containerName\"],\n embeddingConfiguration: embeddingConfigurationDeserializer(item[\"embeddingConfiguration\"]),\n fieldMapping: fieldMappingDeserializer(item[\"fieldMapping\"]),\n };\n}\n\n/** Embedding configuration class */\nexport interface EmbeddingConfiguration {\n /** Deployment name of embedding model. It can point to a model deployment either in the parent AIServices or a connection. */\n modelDeploymentName: string;\n /** Embedding field */\n embeddingField: string;\n}\n\nexport function embeddingConfigurationSerializer(item: EmbeddingConfiguration): any {\n return {\n modelDeploymentName: item[\"modelDeploymentName\"],\n embeddingField: item[\"embeddingField\"],\n };\n}\n\nexport function embeddingConfigurationDeserializer(item: any): EmbeddingConfiguration {\n return {\n modelDeploymentName: item[\"modelDeploymentName\"],\n embeddingField: item[\"embeddingField\"],\n };\n}\n\n/** Model Deployment Definition */\nexport interface Deployment {\n /** The type of the deployment */\n /** The discriminator possible values: ModelDeployment */\n type: DeploymentType;\n /** Name of the deployment */\n readonly name: string;\n}\n\nexport function deploymentDeserializer(item: any): Deployment {\n return {\n type: item[\"type\"],\n name: item[\"name\"],\n };\n}\n\n/** Alias for DeploymentUnion */\nexport type DeploymentUnion = ModelDeployment | Deployment;\n\nexport function deploymentUnionDeserializer(item: any): DeploymentUnion {\n switch (item.type) {\n case \"ModelDeployment\":\n return modelDeploymentDeserializer(item as ModelDeployment);\n\n default:\n return deploymentDeserializer(item);\n }\n}\n\n/** Type of DeploymentType */\nexport type DeploymentType = \"ModelDeployment\";\n\n/** Model Deployment Definition */\nexport interface ModelDeployment extends Deployment {\n /** The type of the deployment */\n type: \"ModelDeployment\";\n /** Publisher-specific name of the deployed model */\n readonly modelName: string;\n /** Publisher-specific version of the deployed model */\n readonly modelVersion: string;\n /** Name of the deployed model's publisher */\n readonly modelPublisher: string;\n /** Capabilities of deployed model */\n readonly capabilities: Record<string, string>;\n /** Sku of the model deployment */\n readonly sku: Sku;\n /** Name of the connection the deployment comes from */\n readonly connectionName?: string;\n}\n\nexport function modelDeploymentDeserializer(item: any): ModelDeployment {\n return {\n type: item[\"type\"],\n name: item[\"name\"],\n modelName: item[\"modelName\"],\n modelVersion: item[\"modelVersion\"],\n modelPublisher: item[\"modelPublisher\"],\n capabilities: item[\"capabilities\"],\n sku: skuDeserializer(item[\"sku\"]),\n connectionName: item[\"connectionName\"],\n };\n}\n\n/** Sku information */\nexport interface Sku {\n /** Sku capacity */\n capacity: number;\n /** Sku family */\n family: string;\n /** Sku name */\n name: string;\n /** Sku size */\n size: string;\n /** Sku tier */\n tier: string;\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n capacity: item[\"capacity\"],\n family: item[\"family\"],\n name: item[\"name\"],\n size: item[\"size\"],\n tier: item[\"tier\"],\n };\n}\n\n/** Paged collection of Deployment items */\nexport interface _PagedDeployment {\n /** The Deployment items on this page */\n value: DeploymentUnion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _pagedDeploymentDeserializer(item: any): _PagedDeployment {\n return {\n value: deploymentUnionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function deploymentUnionArrayDeserializer(result: Array<DeploymentUnion>): any[] {\n return result.map((item) => {\n return deploymentUnionDeserializer(item);\n });\n}\n\n/** The type of pending upload. */\nexport type PendingUploadType = \"None\" | \"BlobReference\";\n\n/** Azure AI Projects API versions */\nexport enum KnownVersions {\n /** Azure AI API version 2025-05-01. */\n V20250501 = \"2025-05-01\",\n /** Azure AI API version v1. */\n V1 = \"v1\",\n}\n"]}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
|
-
import { __asyncDelegator, __asyncGenerator, __asyncValues, __await } from "tslib";
|
|
4
3
|
import { createRestError } from "@azure-rest/core-client";
|
|
5
4
|
import { RestError } from "@azure/core-rest-pipeline";
|
|
6
5
|
/**
|
|
7
6
|
* Helper to paginate results in a generic way and return a PagedAsyncIterableIterator
|
|
8
7
|
*/
|
|
9
8
|
export function buildPagedAsyncIterator(client, getInitialResponse, processResponseBody, expectedStatuses, options = {}) {
|
|
10
|
-
|
|
11
|
-
const
|
|
12
|
-
const nextLinkName = (_b = options.nextLinkName) !== null && _b !== void 0 ? _b : "nextLink";
|
|
9
|
+
const itemName = options.itemName ?? "value";
|
|
10
|
+
const nextLinkName = options.nextLinkName ?? "nextLink";
|
|
13
11
|
const pagedResult = {
|
|
14
12
|
getPage: async (pageLink) => {
|
|
15
13
|
const result = pageLink === undefined
|
|
@@ -25,7 +23,7 @@ export function buildPagedAsyncIterator(client, getInitialResponse, processRespo
|
|
|
25
23
|
};
|
|
26
24
|
},
|
|
27
25
|
byPage: (settings) => {
|
|
28
|
-
const { continuationToken } = settings
|
|
26
|
+
const { continuationToken } = settings ?? {};
|
|
29
27
|
return getPageAsyncIterator(pagedResult, {
|
|
30
28
|
pageLink: continuationToken,
|
|
31
29
|
});
|
|
@@ -41,7 +39,6 @@ export function buildPagedAsyncIterator(client, getInitialResponse, processRespo
|
|
|
41
39
|
* @returns a paged async iterator that iterates over results.
|
|
42
40
|
*/
|
|
43
41
|
function getPagedAsyncIterator(pagedResult) {
|
|
44
|
-
var _a;
|
|
45
42
|
const iter = getItemAsyncIterator(pagedResult);
|
|
46
43
|
return {
|
|
47
44
|
next() {
|
|
@@ -50,55 +47,39 @@ function getPagedAsyncIterator(pagedResult) {
|
|
|
50
47
|
[Symbol.asyncIterator]() {
|
|
51
48
|
return this;
|
|
52
49
|
},
|
|
53
|
-
byPage:
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
50
|
+
byPage: pagedResult?.byPage ??
|
|
51
|
+
((settings) => {
|
|
52
|
+
const { continuationToken } = settings ?? {};
|
|
53
|
+
return getPageAsyncIterator(pagedResult, {
|
|
54
|
+
pageLink: continuationToken,
|
|
55
|
+
});
|
|
56
|
+
}),
|
|
59
57
|
};
|
|
60
58
|
}
|
|
61
|
-
function getItemAsyncIterator(pagedResult) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
for (var _d = true, pages_1 = __asyncValues(pages), pages_1_1; pages_1_1 = yield __await(pages_1.next()), _a = pages_1_1.done, !_a; _d = true) {
|
|
67
|
-
_c = pages_1_1.value;
|
|
68
|
-
_d = false;
|
|
69
|
-
const page = _c;
|
|
70
|
-
yield __await(yield* __asyncDelegator(__asyncValues(page)));
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
74
|
-
finally {
|
|
75
|
-
try {
|
|
76
|
-
if (!_d && !_a && (_b = pages_1.return)) yield __await(_b.call(pages_1));
|
|
77
|
-
}
|
|
78
|
-
finally { if (e_1) throw e_1.error; }
|
|
79
|
-
}
|
|
80
|
-
});
|
|
59
|
+
async function* getItemAsyncIterator(pagedResult) {
|
|
60
|
+
const pages = getPageAsyncIterator(pagedResult);
|
|
61
|
+
for await (const page of pages) {
|
|
62
|
+
yield* page;
|
|
63
|
+
}
|
|
81
64
|
}
|
|
82
|
-
function getPageAsyncIterator(
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
65
|
+
async function* getPageAsyncIterator(pagedResult, options = {}) {
|
|
66
|
+
const { pageLink } = options;
|
|
67
|
+
let response = await pagedResult.getPage(pageLink ?? pagedResult.firstPageLink);
|
|
68
|
+
if (!response) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
let result = response.page;
|
|
72
|
+
result.continuationToken = response.nextPageLink;
|
|
73
|
+
yield result;
|
|
74
|
+
while (response.nextPageLink) {
|
|
75
|
+
response = await pagedResult.getPage(response.nextPageLink);
|
|
86
76
|
if (!response) {
|
|
87
|
-
return
|
|
77
|
+
return;
|
|
88
78
|
}
|
|
89
|
-
|
|
79
|
+
result = response.page;
|
|
90
80
|
result.continuationToken = response.nextPageLink;
|
|
91
|
-
yield
|
|
92
|
-
|
|
93
|
-
response = yield __await(pagedResult.getPage(response.nextPageLink));
|
|
94
|
-
if (!response) {
|
|
95
|
-
return yield __await(void 0);
|
|
96
|
-
}
|
|
97
|
-
result = response.page;
|
|
98
|
-
result.continuationToken = response.nextPageLink;
|
|
99
|
-
yield yield __await(result);
|
|
100
|
-
}
|
|
101
|
-
});
|
|
81
|
+
yield result;
|
|
82
|
+
}
|
|
102
83
|
}
|
|
103
84
|
/**
|
|
104
85
|
* Gets for the value of nextLink in the body
|
|
@@ -124,7 +105,7 @@ function getElements(body, itemName) {
|
|
|
124
105
|
if (!Array.isArray(value)) {
|
|
125
106
|
throw new RestError(`Couldn't paginate response\n Body doesn't contain an array property with name: ${itemName}`);
|
|
126
107
|
}
|
|
127
|
-
return value
|
|
108
|
+
return value ?? [];
|
|
128
109
|
}
|
|
129
110
|
/**
|
|
130
111
|
* Checks if a request failed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagingHelpers.js","sourceRoot":"","sources":["../../../src/static-helpers/pagingHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Client, createRestError, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { RestError } from \"@azure/core-rest-pipeline\";\n\n/**\n * Options for the byPage method\n */\nexport interface PageSettings {\n /**\n * A reference to a specific page to start iterating from.\n */\n continuationToken?: string;\n}\n\n/**\n * An interface that describes a page of results.\n */\nexport type ContinuablePage<TElement, TPage = TElement[]> = TPage & {\n /**\n * The token that keeps track of where to continue the iterator\n */\n continuationToken?: string;\n};\n\n/**\n * An interface that allows async iterable iteration both to completion and by page.\n */\nexport interface PagedAsyncIterableIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * The next method, part of the iteration protocol\n */\n next(): Promise<IteratorResult<TElement>>;\n /**\n * The connection to the async iterator, part of the iteration protocol\n */\n [Symbol.asyncIterator](): PagedAsyncIterableIterator<TElement, TPage, TPageSettings>;\n /**\n * Return an AsyncIterableIterator that works a page at a time\n */\n byPage: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n}\n\n/**\n * An interface that describes how to communicate with the service.\n */\nexport interface PagedResult<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * Link to the first page of results.\n */\n firstPageLink?: string;\n /**\n * A method that returns a page of results.\n */\n getPage: (pageLink?: string) => Promise<{ page: TPage; nextPageLink?: string } | undefined>;\n /**\n * a function to implement the `byPage` method on the paged async iterator.\n */\n byPage?: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n\n /**\n * A function to extract elements from a page.\n */\n toElements?: (page: TPage) => TElement[];\n}\n\n/**\n * Options for the paging helper\n */\nexport interface BuildPagedAsyncIteratorOptions {\n itemName?: string;\n nextLinkName?: string;\n}\n\n/**\n * Helper to paginate results in a generic way and return a PagedAsyncIterableIterator\n */\nexport function buildPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n>(\n client: Client,\n getInitialResponse: () => PromiseLike<TResponse>,\n processResponseBody: (result: TResponse) => PromiseLike<unknown>,\n expectedStatuses: string[],\n options: BuildPagedAsyncIteratorOptions = {},\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const itemName = options.itemName ?? \"value\";\n const nextLinkName = options.nextLinkName ?? \"nextLink\";\n const pagedResult: PagedResult<TElement, TPage, TPageSettings> = {\n getPage: async (pageLink?: string) => {\n const result =\n pageLink === undefined\n ? await getInitialResponse()\n : await client.pathUnchecked(pageLink).get();\n checkPagingRequest(result, expectedStatuses);\n const results = await processResponseBody(result as TResponse);\n const nextLink = getNextLink(results, nextLinkName);\n const values = getElements<TElement>(results, itemName) as TPage;\n return {\n page: values,\n nextPageLink: nextLink,\n };\n },\n byPage: (settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n },\n };\n return getPagedAsyncIterator(pagedResult);\n}\n\n/**\n * returns an async iterator that iterates over results. It also has a `byPage`\n * method that returns pages of items at once.\n *\n * @param pagedResult - an object that specifies how to get pages.\n * @returns a paged async iterator that iterates over results.\n */\n\nfunction getPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const iter = getItemAsyncIterator<TElement, TPage, TPageSettings>(pagedResult);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage:\n pagedResult?.byPage ??\n ((settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n }),\n };\n}\n\nasync function* getItemAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): AsyncIterableIterator<TElement> {\n const pages = getPageAsyncIterator(pagedResult);\n for await (const page of pages) {\n yield* page as unknown as TElement[];\n }\n}\n\nasync function* getPageAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n options: {\n pageLink?: string;\n } = {},\n): AsyncIterableIterator<ContinuablePage<TElement, TPage>> {\n const { pageLink } = options;\n let response = await pagedResult.getPage(pageLink ?? pagedResult.firstPageLink);\n if (!response) {\n return;\n }\n let result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n while (response.nextPageLink) {\n response = await pagedResult.getPage(response.nextPageLink);\n if (!response) {\n return;\n }\n result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n }\n}\n\n/**\n * Gets for the value of nextLink in the body\n */\nfunction getNextLink(body: unknown, nextLinkName?: string): string | undefined {\n if (!nextLinkName) {\n return undefined;\n }\n\n const nextLink = (body as Record<string, unknown>)[nextLinkName];\n\n if (typeof nextLink !== \"string\" && typeof nextLink !== \"undefined\" && nextLink !== null) {\n throw new RestError(\n `Body Property ${nextLinkName} should be a string or undefined or null but got ${typeof nextLink}`,\n );\n }\n\n if (nextLink === null) {\n return undefined;\n }\n\n return nextLink;\n}\n\n/**\n * Gets the elements of the current request in the body.\n */\nfunction getElements<T = unknown>(body: unknown, itemName: string): T[] {\n const value = (body as Record<string, unknown>)[itemName] as T[];\n if (!Array.isArray(value)) {\n throw new RestError(\n `Couldn't paginate response\\n Body doesn't contain an array property with name: ${itemName}`,\n );\n }\n\n return value ?? [];\n}\n\n/**\n * Checks if a request failed\n */\nfunction checkPagingRequest(response: PathUncheckedResponse, expectedStatuses: string[]): void {\n if (!expectedStatuses.includes(response.status)) {\n throw createRestError(\n `Pagination failed with unexpected statusCode ${response.status}`,\n response,\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"pagingHelpers.js","sourceRoot":"","sources":["../../../src/static-helpers/pagingHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Client, createRestError, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { RestError } from \"@azure/core-rest-pipeline\";\n\n/**\n * Options for the byPage method\n */\nexport interface PageSettings {\n /**\n * A reference to a specific page to start iterating from.\n */\n continuationToken?: string;\n}\n\n/**\n * An interface that describes a page of results.\n */\nexport type ContinuablePage<TElement, TPage = TElement[]> = TPage & {\n /**\n * The token that keeps track of where to continue the iterator\n */\n continuationToken?: string;\n};\n\n/**\n * An interface that allows async iterable iteration both to completion and by page.\n */\nexport interface PagedAsyncIterableIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * The next method, part of the iteration protocol\n */\n next(): Promise<IteratorResult<TElement>>;\n /**\n * The connection to the async iterator, part of the iteration protocol\n */\n [Symbol.asyncIterator](): PagedAsyncIterableIterator<TElement, TPage, TPageSettings>;\n /**\n * Return an AsyncIterableIterator that works a page at a time\n */\n byPage: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n}\n\n/**\n * An interface that describes how to communicate with the service.\n */\nexport interface PagedResult<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n> {\n /**\n * Link to the first page of results.\n */\n firstPageLink?: string;\n /**\n * A method that returns a page of results.\n */\n getPage: (pageLink?: string) => Promise<{ page: TPage; nextPageLink?: string } | undefined>;\n /**\n * a function to implement the `byPage` method on the paged async iterator.\n */\n byPage?: (settings?: TPageSettings) => AsyncIterableIterator<ContinuablePage<TElement, TPage>>;\n\n /**\n * A function to extract elements from a page.\n */\n toElements?: (page: TPage) => TElement[];\n}\n\n/**\n * Options for the paging helper\n */\nexport interface BuildPagedAsyncIteratorOptions {\n itemName?: string;\n nextLinkName?: string;\n}\n\n/**\n * Helper to paginate results in a generic way and return a PagedAsyncIterableIterator\n */\nexport function buildPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n>(\n client: Client,\n getInitialResponse: () => PromiseLike<TResponse>,\n processResponseBody: (result: TResponse) => PromiseLike<unknown>,\n expectedStatuses: string[],\n options: BuildPagedAsyncIteratorOptions = {},\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const itemName = options.itemName ?? \"value\";\n const nextLinkName = options.nextLinkName ?? \"nextLink\";\n const pagedResult: PagedResult<TElement, TPage, TPageSettings> = {\n getPage: async (pageLink?: string) => {\n const result =\n pageLink === undefined\n ? await getInitialResponse()\n : await client.pathUnchecked(pageLink).get();\n checkPagingRequest(result, expectedStatuses);\n const results = await processResponseBody(result as TResponse);\n const nextLink = getNextLink(results, nextLinkName);\n const values = getElements<TElement>(results, itemName) as TPage;\n return {\n page: values,\n nextPageLink: nextLink,\n };\n },\n byPage: (settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n },\n };\n return getPagedAsyncIterator(pagedResult);\n}\n\n/**\n * returns an async iterator that iterates over results. It also has a `byPage`\n * method that returns pages of items at once.\n *\n * @param pagedResult - an object that specifies how to get pages.\n * @returns a paged async iterator that iterates over results.\n */\n\nfunction getPagedAsyncIterator<\n TElement,\n TPage = TElement[],\n TPageSettings extends PageSettings = PageSettings,\n>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): PagedAsyncIterableIterator<TElement, TPage, TPageSettings> {\n const iter = getItemAsyncIterator<TElement, TPage, TPageSettings>(pagedResult);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage:\n pagedResult?.byPage ??\n ((settings?: TPageSettings) => {\n const { continuationToken } = settings ?? {};\n return getPageAsyncIterator(pagedResult, {\n pageLink: continuationToken,\n });\n }),\n };\n}\n\nasync function* getItemAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n): AsyncIterableIterator<TElement> {\n const pages = getPageAsyncIterator(pagedResult);\n for await (const page of pages) {\n yield* page as unknown as TElement[];\n }\n}\n\nasync function* getPageAsyncIterator<TElement, TPage, TPageSettings extends PageSettings>(\n pagedResult: PagedResult<TElement, TPage, TPageSettings>,\n options: {\n pageLink?: string;\n } = {},\n): AsyncIterableIterator<ContinuablePage<TElement, TPage>> {\n const { pageLink } = options;\n let response = await pagedResult.getPage(pageLink ?? pagedResult.firstPageLink);\n if (!response) {\n return;\n }\n let result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n while (response.nextPageLink) {\n response = await pagedResult.getPage(response.nextPageLink);\n if (!response) {\n return;\n }\n result = response.page as ContinuablePage<TElement, TPage>;\n result.continuationToken = response.nextPageLink;\n yield result;\n }\n}\n\n/**\n * Gets for the value of nextLink in the body\n */\nfunction getNextLink(body: unknown, nextLinkName?: string): string | undefined {\n if (!nextLinkName) {\n return undefined;\n }\n\n const nextLink = (body as Record<string, unknown>)[nextLinkName];\n\n if (typeof nextLink !== \"string\" && typeof nextLink !== \"undefined\" && nextLink !== null) {\n throw new RestError(\n `Body Property ${nextLinkName} should be a string or undefined or null but got ${typeof nextLink}`,\n );\n }\n\n if (nextLink === null) {\n return undefined;\n }\n\n return nextLink;\n}\n\n/**\n * Gets the elements of the current request in the body.\n */\nfunction getElements<T = unknown>(body: unknown, itemName: string): T[] {\n const value = (body as Record<string, unknown>)[itemName] as T[];\n if (!Array.isArray(value)) {\n throw new RestError(\n `Couldn't paginate response\\n Body doesn't contain an array property with name: ${itemName}`,\n );\n }\n\n return value ?? [];\n}\n\n/**\n * Checks if a request failed\n */\nfunction checkPagingRequest(response: PathUncheckedResponse, expectedStatuses: string[]): void {\n if (!expectedStatuses.includes(response.status)) {\n throw createRestError(\n `Pagination failed with unexpected statusCode ${response.status}`,\n response,\n );\n }\n}\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// helpers
|
|
5
5
|
// ---------------------
|
|
6
6
|
function encodeComponent(val, reserved, op) {
|
|
7
|
-
return (reserved
|
|
7
|
+
return (reserved ?? op === "+") || op === "#"
|
|
8
8
|
? encodeReservedComponent(val)
|
|
9
9
|
: encodeRFC3986URIComponent(val);
|
|
10
10
|
}
|
|
@@ -163,7 +163,7 @@ export function expandUrlTemplate(template, context, option) {
|
|
|
163
163
|
varValue: context[varMatch[1]],
|
|
164
164
|
varName: varMatch[1],
|
|
165
165
|
modifier: varMatch[2] || varMatch[3],
|
|
166
|
-
reserved: option
|
|
166
|
+
reserved: option?.allowReserved,
|
|
167
167
|
});
|
|
168
168
|
if (varValue) {
|
|
169
169
|
result.push(varValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urlTemplate.js","sourceRoot":"","sources":["../../../src/static-helpers/urlTemplate.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// interfaces\ninterface ValueOptions {\n isFirst: boolean; // is first value in the expression\n op?: string; // operator\n varValue?: any; // variable value\n varName?: string; // variable name\n modifier?: string; // modifier e.g *\n reserved?: boolean; // if true we'll keep reserved words with not encoding\n}\n\nexport interface UrlTemplateOptions {\n // if set to true, reserved characters will not be encoded\n allowReserved?: boolean;\n}\n\n// ---------------------\n// helpers\n// ---------------------\nfunction encodeComponent(val: string, reserved?: boolean, op?: string) {\n return (reserved ?? op === \"+\") || op === \"#\"\n ? encodeReservedComponent(val)\n : encodeRFC3986URIComponent(val);\n}\n\nfunction encodeReservedComponent(str: string) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part))\n .join(\"\");\n}\n\nfunction encodeRFC3986URIComponent(str: string) {\n return encodeURIComponent(str).replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`,\n );\n}\n\nfunction isDefined(val: any) {\n return val !== undefined && val !== null;\n}\n\nfunction getNamedAndIfEmpty(op?: string): [boolean, string] {\n return [!!op && [\";\", \"?\", \"&\"].includes(op), !!op && [\"?\", \"&\"].includes(op) ? \"=\" : \"\"];\n}\n\nfunction getFirstOrSep(op?: string, isFirst = false) {\n if (isFirst) {\n return !op || op === \"+\" ? \"\" : op;\n } else if (!op || op === \"+\" || op === \"#\") {\n return \",\";\n } else if (op === \"?\") {\n return \"&\";\n } else {\n return op;\n }\n}\n\nfunction getExpandedValue(option: ValueOptions) {\n let isFirst = option.isFirst;\n const { op, varName, varValue: value, reserved } = option;\n const vals: string[] = [];\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n // prepare the following parts: separator, varName, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (named && varName) {\n vals.push(`${encodeURIComponent(varName)}`);\n // eslint-disable-next-line no-unused-expressions\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n const val = value[key];\n if (!isDefined(val)) {\n continue;\n }\n // prepare the following parts: separator, key, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (key) {\n vals.push(`${encodeURIComponent(key)}`);\n // eslint-disable-next-line no-unused-expressions\n named && val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n }\n return vals.join(\"\");\n}\n\nfunction getNonExpandedValue(option: ValueOptions) {\n const { op, varName, varValue: value, isFirst, reserved } = option;\n const vals: string[] = [];\n const first = getFirstOrSep(op, isFirst);\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n if (named && varName) {\n vals.push(encodeComponent(varName, reserved, op));\n if (value === \"\") {\n if (!ifEmpty) {\n vals.push(ifEmpty);\n }\n return !vals.join(\"\") ? undefined : `${first}${vals.join(\"\")}`;\n }\n vals.push(\"=\");\n }\n\n const items = [];\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n items.push(encodeComponent(val, reserved, op));\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n if (!isDefined(value[key])) {\n continue;\n }\n items.push(encodeRFC3986URIComponent(key));\n items.push(encodeComponent(value[key], reserved, op));\n }\n }\n vals.push(items.join(\",\"));\n return !vals.join(\",\") ? undefined : `${first}${vals.join(\"\")}`;\n}\n\nfunction getVarValue(option: ValueOptions): string | undefined {\n const { op, varName, modifier, isFirst, reserved, varValue: value } = option;\n\n if (!isDefined(value)) {\n return undefined;\n } else if ([\"string\", \"number\", \"boolean\"].includes(typeof value)) {\n let val = value.toString();\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n const vals: string[] = [getFirstOrSep(op, isFirst)];\n if (named && varName) {\n // No need to encode varName considering it is already encoded\n vals.push(varName);\n // eslint-disable-next-line no-unused-expressions\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n if (modifier && modifier !== \"*\") {\n val = val.substring(0, parseInt(modifier, 10));\n }\n vals.push(encodeComponent(val, reserved, op));\n return vals.join(\"\");\n } else if (modifier === \"*\") {\n return getExpandedValue(option);\n } else {\n return getNonExpandedValue(option);\n }\n}\n\n// ---------------------------------------------------------------------------------------------------\n// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.\n// ---------------------------------------------------------------------------------------------------\nexport function expandUrlTemplate(\n template: string,\n context: Record<string, any>,\n option?: UrlTemplateOptions,\n): string {\n // eslint-disable-next-line no-useless-escape\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, (_, expr, text) => {\n if (!expr) {\n return encodeReservedComponent(text);\n }\n let op;\n if ([\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"].includes(expr[0])) {\n // eslint-disable-next-line no-unused-expressions\n ((op = expr[0]), (expr = expr.slice(1)));\n }\n const varList = expr.split(/,/g);\n const result = [];\n for (const varSpec of varList) {\n // eslint-disable-next-line no-useless-escape\n const varMatch = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(varSpec);\n if (!varMatch || !varMatch[1]) {\n continue;\n }\n const varValue = getVarValue({\n isFirst: result.length === 0,\n op,\n varValue: context[varMatch[1]],\n varName: varMatch[1],\n modifier: varMatch[2] || varMatch[3],\n reserved: option?.allowReserved,\n });\n if (varValue) {\n result.push(varValue);\n }\n }\n return result.join(\"\");\n });\n}\n"]}
|
|
1
|
+
{"version":3,"file":"urlTemplate.js","sourceRoot":"","sources":["../../../src/static-helpers/urlTemplate.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// interfaces\ninterface ValueOptions {\n isFirst: boolean; // is first value in the expression\n op?: string; // operator\n varValue?: any; // variable value\n varName?: string; // variable name\n modifier?: string; // modifier e.g *\n reserved?: boolean; // if true we'll keep reserved words with not encoding\n}\n\nexport interface UrlTemplateOptions {\n // if set to true, reserved characters will not be encoded\n allowReserved?: boolean;\n}\n\n// ---------------------\n// helpers\n// ---------------------\nfunction encodeComponent(val: string, reserved?: boolean, op?: string) {\n return (reserved ?? op === \"+\") || op === \"#\"\n ? encodeReservedComponent(val)\n : encodeRFC3986URIComponent(val);\n}\n\nfunction encodeReservedComponent(str: string) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part))\n .join(\"\");\n}\n\nfunction encodeRFC3986URIComponent(str: string) {\n return encodeURIComponent(str).replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`,\n );\n}\n\nfunction isDefined(val: any) {\n return val !== undefined && val !== null;\n}\n\nfunction getNamedAndIfEmpty(op?: string): [boolean, string] {\n return [!!op && [\";\", \"?\", \"&\"].includes(op), !!op && [\"?\", \"&\"].includes(op) ? \"=\" : \"\"];\n}\n\nfunction getFirstOrSep(op?: string, isFirst = false) {\n if (isFirst) {\n return !op || op === \"+\" ? \"\" : op;\n } else if (!op || op === \"+\" || op === \"#\") {\n return \",\";\n } else if (op === \"?\") {\n return \"&\";\n } else {\n return op;\n }\n}\n\nfunction getExpandedValue(option: ValueOptions) {\n let isFirst = option.isFirst;\n const { op, varName, varValue: value, reserved } = option;\n const vals: string[] = [];\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n // prepare the following parts: separator, varName, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (named && varName) {\n vals.push(`${encodeURIComponent(varName)}`);\n // eslint-disable-next-line no-unused-expressions\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n const val = value[key];\n if (!isDefined(val)) {\n continue;\n }\n // prepare the following parts: separator, key, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (key) {\n vals.push(`${encodeURIComponent(key)}`);\n // eslint-disable-next-line no-unused-expressions\n named && val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n }\n return vals.join(\"\");\n}\n\nfunction getNonExpandedValue(option: ValueOptions) {\n const { op, varName, varValue: value, isFirst, reserved } = option;\n const vals: string[] = [];\n const first = getFirstOrSep(op, isFirst);\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n if (named && varName) {\n vals.push(encodeComponent(varName, reserved, op));\n if (value === \"\") {\n if (!ifEmpty) {\n vals.push(ifEmpty);\n }\n return !vals.join(\"\") ? undefined : `${first}${vals.join(\"\")}`;\n }\n vals.push(\"=\");\n }\n\n const items = [];\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n items.push(encodeComponent(val, reserved, op));\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n if (!isDefined(value[key])) {\n continue;\n }\n items.push(encodeRFC3986URIComponent(key));\n items.push(encodeComponent(value[key], reserved, op));\n }\n }\n vals.push(items.join(\",\"));\n return !vals.join(\",\") ? undefined : `${first}${vals.join(\"\")}`;\n}\n\nfunction getVarValue(option: ValueOptions): string | undefined {\n const { op, varName, modifier, isFirst, reserved, varValue: value } = option;\n\n if (!isDefined(value)) {\n return undefined;\n } else if ([\"string\", \"number\", \"boolean\"].includes(typeof value)) {\n let val = value.toString();\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n const vals: string[] = [getFirstOrSep(op, isFirst)];\n if (named && varName) {\n // No need to encode varName considering it is already encoded\n vals.push(varName);\n // eslint-disable-next-line no-unused-expressions\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n if (modifier && modifier !== \"*\") {\n val = val.substring(0, parseInt(modifier, 10));\n }\n vals.push(encodeComponent(val, reserved, op));\n return vals.join(\"\");\n } else if (modifier === \"*\") {\n return getExpandedValue(option);\n } else {\n return getNonExpandedValue(option);\n }\n}\n\n// ---------------------------------------------------------------------------------------------------\n// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.\n// ---------------------------------------------------------------------------------------------------\nexport function expandUrlTemplate(\n template: string,\n context: Record<string, any>,\n option?: UrlTemplateOptions,\n): string {\n // eslint-disable-next-line no-useless-escape\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, (_, expr, text) => {\n if (!expr) {\n return encodeReservedComponent(text);\n }\n let op;\n if ([\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"].includes(expr[0])) {\n // eslint-disable-next-line no-unused-expressions\n ((op = expr[0]), (expr = expr.slice(1)));\n }\n const varList = expr.split(/,/g);\n const result = [];\n for (const varSpec of varList) {\n // eslint-disable-next-line no-useless-escape\n const varMatch = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(varSpec);\n if (!varMatch || !varMatch[1]) {\n continue;\n }\n const varValue = getVarValue({\n isFirst: result.length === 0,\n op,\n varValue: context[varMatch[1]],\n varName: varMatch[1],\n modifier: varMatch[2] || varMatch[3],\n reserved: option?.allowReserved,\n });\n if (varValue) {\n result.push(varValue);\n }\n }\n return result.join(\"\");\n });\n}\n"]}
|