@apimatic/cli 1.4.0 → 2.0.0-beta.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/LICENSE +21 -0
- package/README.md +128 -212
- package/apimatic.schema.json +550 -0
- package/lib/actions/action-result.js +3 -0
- package/lib/actions/action-result.js.map +1 -1
- package/lib/actions/api/transform.js +36 -33
- package/lib/actions/api/transform.js.map +1 -1
- package/lib/actions/api/validate.d.ts +9 -6
- package/lib/actions/api/validate.js +44 -38
- package/lib/actions/api/validate.js.map +1 -1
- package/lib/actions/auth/login.js +7 -4
- package/lib/actions/auth/login.js.map +1 -1
- package/lib/actions/auth/logout.js +2 -1
- package/lib/actions/auth/logout.js.map +1 -1
- package/lib/actions/auth/status.js +5 -3
- package/lib/actions/auth/status.js.map +1 -1
- package/lib/actions/plugin/generate.d.ts +5 -1
- package/lib/actions/plugin/generate.js +83 -56
- package/lib/actions/plugin/generate.js.map +1 -1
- package/lib/actions/plugin/publish.d.ts +2 -1
- package/lib/actions/plugin/publish.js +34 -37
- package/lib/actions/plugin/publish.js.map +1 -1
- package/lib/actions/plugin/record-metadata.d.ts +3 -2
- package/lib/actions/plugin/record-metadata.js +33 -30
- package/lib/actions/plugin/record-metadata.js.map +1 -1
- package/lib/actions/portal/generate.d.ts +8 -6
- package/lib/actions/portal/generate.js +50 -61
- package/lib/actions/portal/generate.js.map +1 -1
- package/lib/actions/portal/prepare-project.d.ts +25 -0
- package/lib/actions/portal/prepare-project.js +68 -0
- package/lib/actions/portal/prepare-project.js.map +1 -0
- package/lib/actions/portal/serve.d.ts +21 -6
- package/lib/actions/portal/serve.js +170 -153
- package/lib/actions/portal/serve.js.map +1 -1
- package/lib/actions/publishing/profile/list.js +4 -2
- package/lib/actions/publishing/profile/list.js.map +1 -1
- package/lib/actions/quickstart.d.ts +23 -5
- package/lib/actions/quickstart.js +222 -21
- package/lib/actions/quickstart.js.map +1 -1
- package/lib/actions/sdk/generate.d.ts +4 -7
- package/lib/actions/sdk/generate.js +53 -93
- package/lib/actions/sdk/generate.js.map +1 -1
- package/lib/actions/sdk/publish/interactive.d.ts +4 -3
- package/lib/actions/sdk/publish/interactive.js +96 -97
- package/lib/actions/sdk/publish/interactive.js.map +1 -1
- package/lib/actions/sdk/publish/non-interactive.d.ts +4 -2
- package/lib/actions/sdk/publish/non-interactive.js +91 -90
- package/lib/actions/sdk/publish/non-interactive.js.map +1 -1
- package/lib/actions/sdk/publish.d.ts +3 -2
- package/lib/actions/sdk/publish.js +55 -53
- package/lib/actions/sdk/publish.js.map +1 -1
- package/lib/actions/sdk/record-published-sdk.d.ts +14 -0
- package/lib/actions/sdk/record-published-sdk.js +57 -0
- package/lib/actions/sdk/record-published-sdk.js.map +1 -0
- package/lib/client-utils/auth-manager.js +1 -1
- package/lib/client-utils/auth-manager.js.map +1 -1
- package/lib/commands/api/transform.d.ts +1 -1
- package/lib/commands/api/transform.js +44 -40
- package/lib/commands/api/transform.js.map +1 -1
- package/lib/commands/api/validate.js +16 -16
- package/lib/commands/api/validate.js.map +1 -1
- package/lib/commands/auth/login.js +14 -15
- package/lib/commands/auth/login.js.map +1 -1
- package/lib/commands/auth/logout.js +5 -6
- package/lib/commands/auth/logout.js.map +1 -1
- package/lib/commands/auth/status.js +4 -5
- package/lib/commands/auth/status.js.map +1 -1
- package/lib/commands/plugin/generate.d.ts +3 -3
- package/lib/commands/plugin/generate.js +20 -20
- package/lib/commands/plugin/generate.js.map +1 -1
- package/lib/commands/plugin/publish.js +18 -18
- package/lib/commands/plugin/publish.js.map +1 -1
- package/lib/commands/portal/generate.d.ts +9 -8
- package/lib/commands/portal/generate.js +36 -27
- package/lib/commands/portal/generate.js.map +1 -1
- package/lib/commands/portal/serve.d.ts +7 -9
- package/lib/commands/portal/serve.js +41 -44
- package/lib/commands/portal/serve.js.map +1 -1
- package/lib/commands/publishing/profile/list.js +8 -12
- package/lib/commands/publishing/profile/list.js.map +1 -1
- package/lib/commands/quickstart.d.ts +5 -5
- package/lib/commands/quickstart.js +18 -24
- package/lib/commands/quickstart.js.map +1 -1
- package/lib/commands/sdk/generate.d.ts +5 -7
- package/lib/commands/sdk/generate.js +58 -70
- package/lib/commands/sdk/generate.js.map +1 -1
- package/lib/commands/sdk/publish.d.ts +6 -7
- package/lib/commands/sdk/publish.js +66 -60
- package/lib/commands/sdk/publish.js.map +1 -1
- package/lib/hooks/node-version.d.ts +3 -0
- package/lib/hooks/node-version.js +12 -0
- package/lib/hooks/node-version.js.map +1 -0
- package/lib/hooks/not-found.js +2 -3
- package/lib/hooks/not-found.js.map +1 -1
- package/lib/hooks/utils.d.ts +4 -2
- package/lib/hooks/utils.js +2 -2
- package/lib/hooks/utils.js.map +1 -1
- package/lib/infrastructure/env-info.d.ts +3 -0
- package/lib/infrastructure/env-info.js +13 -6
- package/lib/infrastructure/env-info.js.map +1 -1
- package/lib/infrastructure/file-service.d.ts +35 -8
- package/lib/infrastructure/file-service.js +149 -53
- package/lib/infrastructure/file-service.js.map +1 -1
- package/lib/infrastructure/file-watch-service.d.ts +40 -0
- package/lib/infrastructure/file-watch-service.js +167 -0
- package/lib/infrastructure/file-watch-service.js.map +1 -0
- package/lib/infrastructure/generation-status-poller.d.ts +8 -7
- package/lib/infrastructure/generation-status-poller.js +20 -12
- package/lib/infrastructure/generation-status-poller.js.map +1 -1
- package/lib/infrastructure/launcher-service.js +6 -6
- package/lib/infrastructure/launcher-service.js.map +1 -1
- package/lib/infrastructure/network-service.d.ts +3 -0
- package/lib/infrastructure/network-service.js +15 -1
- package/lib/infrastructure/network-service.js.map +1 -1
- package/lib/infrastructure/portal-build-service.d.ts +19 -0
- package/lib/infrastructure/portal-build-service.js +58 -0
- package/lib/infrastructure/portal-build-service.js.map +1 -0
- package/lib/infrastructure/portal-dev-server-service.d.ts +29 -0
- package/lib/infrastructure/portal-dev-server-service.js +135 -0
- package/lib/infrastructure/portal-dev-server-service.js.map +1 -0
- package/lib/infrastructure/portal-pages-service.d.ts +17 -0
- package/lib/infrastructure/portal-pages-service.js +103 -0
- package/lib/infrastructure/portal-pages-service.js.map +1 -0
- package/lib/infrastructure/portal-project-service.d.ts +77 -0
- package/lib/infrastructure/portal-project-service.js +309 -0
- package/lib/infrastructure/portal-project-service.js.map +1 -0
- package/lib/infrastructure/service-error.d.ts +1 -0
- package/lib/infrastructure/service-error.js +39 -41
- package/lib/infrastructure/service-error.js.map +1 -1
- package/lib/infrastructure/services/api-client-factory.js +15 -13
- package/lib/infrastructure/services/api-client-factory.js.map +1 -1
- package/lib/infrastructure/services/api-service.d.ts +7 -5
- package/lib/infrastructure/services/api-service.js +28 -20
- package/lib/infrastructure/services/api-service.js.map +1 -1
- package/lib/infrastructure/services/auth-service.js +4 -9
- package/lib/infrastructure/services/auth-service.js.map +1 -1
- package/lib/infrastructure/services/file-download-service.js +3 -3
- package/lib/infrastructure/services/file-download-service.js.map +1 -1
- package/lib/infrastructure/services/plugin-service.d.ts +1 -8
- package/lib/infrastructure/services/plugin-service.js +11 -22
- package/lib/infrastructure/services/plugin-service.js.map +1 -1
- package/lib/infrastructure/services/portal-artifacts-service.d.ts +44 -0
- package/lib/infrastructure/services/portal-artifacts-service.js +268 -0
- package/lib/infrastructure/services/portal-artifacts-service.js.map +1 -0
- package/lib/infrastructure/services/portal-authorization-service.d.ts +22 -0
- package/lib/infrastructure/services/portal-authorization-service.js +23 -0
- package/lib/infrastructure/services/portal-authorization-service.js.map +1 -0
- package/lib/infrastructure/services/publishing-api-service.d.ts +1 -1
- package/lib/infrastructure/services/publishing-api-service.js +11 -15
- package/lib/infrastructure/services/publishing-api-service.js.map +1 -1
- package/lib/infrastructure/services/sdk-generation-service.d.ts +21 -0
- package/lib/infrastructure/services/sdk-generation-service.js +118 -0
- package/lib/infrastructure/services/sdk-generation-service.js.map +1 -0
- package/lib/infrastructure/services/telemetry-service.js +5 -4
- package/lib/infrastructure/services/telemetry-service.js.map +1 -1
- package/lib/infrastructure/services/transformation-service.js +29 -32
- package/lib/infrastructure/services/transformation-service.js.map +1 -1
- package/lib/infrastructure/services/validation-service.d.ts +12 -53
- package/lib/infrastructure/services/validation-service.js +24 -199
- package/lib/infrastructure/services/validation-service.js.map +1 -1
- package/lib/infrastructure/timer-extensions.d.ts +2 -0
- package/lib/infrastructure/timer-extensions.js +10 -0
- package/lib/infrastructure/timer-extensions.js.map +1 -0
- package/lib/infrastructure/tmp-extensions.d.ts +31 -1
- package/lib/infrastructure/tmp-extensions.js +86 -3
- package/lib/infrastructure/tmp-extensions.js.map +1 -1
- package/lib/infrastructure/zip-service.js +2 -2
- package/lib/infrastructure/zip-service.js.map +1 -1
- package/lib/prompts/api/validate.d.ts +6 -7
- package/lib/prompts/api/validate.js +12 -12
- package/lib/prompts/api/validate.js.map +1 -1
- package/lib/prompts/format.d.ts +4 -0
- package/lib/prompts/format.js +5 -0
- package/lib/prompts/format.js.map +1 -1
- package/lib/prompts/plugin/generate.d.ts +17 -12
- package/lib/prompts/plugin/generate.js +94 -44
- package/lib/prompts/plugin/generate.js.map +1 -1
- package/lib/prompts/plugin/publish.d.ts +2 -1
- package/lib/prompts/plugin/publish.js +8 -7
- package/lib/prompts/plugin/publish.js.map +1 -1
- package/lib/prompts/plugin/record-metadata.d.ts +1 -0
- package/lib/prompts/plugin/record-metadata.js +10 -7
- package/lib/prompts/plugin/record-metadata.js.map +1 -1
- package/lib/prompts/portal/artifacts.d.ts +8 -0
- package/lib/prompts/portal/artifacts.js +26 -0
- package/lib/prompts/portal/artifacts.js.map +1 -0
- package/lib/prompts/portal/authorization.d.ts +6 -0
- package/lib/prompts/portal/authorization.js +29 -0
- package/lib/prompts/portal/authorization.js.map +1 -0
- package/lib/prompts/portal/code-samples.d.ts +1 -0
- package/lib/prompts/portal/code-samples.js +9 -0
- package/lib/prompts/portal/code-samples.js.map +1 -0
- package/lib/prompts/portal/generate.d.ts +14 -9
- package/lib/prompts/portal/generate.js +48 -26
- package/lib/prompts/portal/generate.js.map +1 -1
- package/lib/prompts/portal/prepare-project.d.ts +20 -0
- package/lib/prompts/portal/prepare-project.js +36 -0
- package/lib/prompts/portal/prepare-project.js.map +1 -0
- package/lib/prompts/portal/serve.d.ts +32 -12
- package/lib/prompts/portal/serve.js +102 -39
- package/lib/prompts/portal/serve.js.map +1 -1
- package/lib/prompts/portal/source.d.ts +26 -0
- package/lib/prompts/portal/source.js +253 -0
- package/lib/prompts/portal/source.js.map +1 -0
- package/lib/prompts/prompt.d.ts +11 -3
- package/lib/prompts/prompt.js +39 -15
- package/lib/prompts/prompt.js.map +1 -1
- package/lib/prompts/quickstart.d.ts +46 -3
- package/lib/prompts/quickstart.js +199 -12
- package/lib/prompts/quickstart.js.map +1 -1
- package/lib/prompts/sdk/generate.d.ts +15 -13
- package/lib/prompts/sdk/generate.js +29 -32
- package/lib/prompts/sdk/generate.js.map +1 -1
- package/lib/prompts/sdk/publish/interactive.d.ts +10 -6
- package/lib/prompts/sdk/publish/interactive.js +26 -24
- package/lib/prompts/sdk/publish/interactive.js.map +1 -1
- package/lib/prompts/sdk/publish/non-interactive.d.ts +2 -1
- package/lib/prompts/sdk/publish/non-interactive.js +5 -4
- package/lib/prompts/sdk/publish/non-interactive.js.map +1 -1
- package/lib/prompts/sdk/publish.d.ts +3 -3
- package/lib/prompts/sdk/publish.js +13 -17
- package/lib/prompts/sdk/publish.js.map +1 -1
- package/lib/prompts/sdk/record-published-sdk.d.ts +7 -0
- package/lib/prompts/sdk/record-published-sdk.js +26 -0
- package/lib/prompts/sdk/record-published-sdk.js.map +1 -0
- package/lib/types/apimatic-config/document.d.ts +70 -0
- package/lib/types/apimatic-config/document.js +167 -0
- package/lib/types/apimatic-config/document.js.map +1 -0
- package/lib/types/apimatic-config/languages-block.d.ts +39 -0
- package/lib/types/apimatic-config/languages-block.js +58 -0
- package/lib/types/apimatic-config/languages-block.js.map +1 -0
- package/lib/types/apimatic-config-context.d.ts +48 -0
- package/lib/types/apimatic-config-context.js +121 -0
- package/lib/types/apimatic-config-context.js.map +1 -0
- package/lib/types/build/build.d.ts +1 -89
- package/lib/types/build/build.js +6 -161
- package/lib/types/build/build.js.map +1 -1
- package/lib/types/events/domain-event.js +3 -0
- package/lib/types/events/domain-event.js.map +1 -1
- package/lib/types/events/quickstart-completed.js +3 -3
- package/lib/types/events/quickstart-completed.js.map +1 -1
- package/lib/types/events/quickstart-initiated.js +3 -3
- package/lib/types/events/quickstart-initiated.js.map +1 -1
- package/lib/types/events/sdk-publish-validation-failed.js +1 -1
- package/lib/types/events/sdk-publish-validation-failed.js.map +1 -1
- package/lib/types/file/directory.d.ts +4 -9
- package/lib/types/file/directory.js +17 -65
- package/lib/types/file/directory.js.map +1 -1
- package/lib/types/file/directoryPath.d.ts +17 -0
- package/lib/types/file/directoryPath.js +47 -2
- package/lib/types/file/directoryPath.js.map +1 -1
- package/lib/types/file/fileName.d.ts +8 -0
- package/lib/types/file/fileName.js +28 -6
- package/lib/types/file/fileName.js.map +1 -1
- package/lib/types/file/filePath.d.ts +18 -2
- package/lib/types/file/filePath.js +39 -4
- package/lib/types/file/filePath.js.map +1 -1
- package/lib/types/file/resource-input.js +1 -2
- package/lib/types/file/resource-input.js.map +1 -1
- package/lib/types/file/urlPath.js +2 -1
- package/lib/types/file/urlPath.js.map +1 -1
- package/lib/types/flags-provider.js +22 -22
- package/lib/types/flags-provider.js.map +1 -1
- package/lib/types/package-settings-context.js +2 -1
- package/lib/types/package-settings-context.js.map +1 -1
- package/lib/types/plugin/plugin-config.d.ts +10 -50
- package/lib/types/plugin/plugin-config.js +7 -1
- package/lib/types/plugin/plugin-config.js.map +1 -1
- package/lib/types/plugin-config-context.d.ts +30 -37
- package/lib/types/plugin-config-context.js +108 -139
- package/lib/types/plugin-config-context.js.map +1 -1
- package/lib/types/plugin-context.js +3 -2
- package/lib/types/plugin-context.js.map +1 -1
- package/lib/types/portal/code-samples.d.ts +27 -0
- package/lib/types/portal/code-samples.js +67 -0
- package/lib/types/portal/code-samples.js.map +1 -0
- package/lib/types/portal/config/ai-config.d.ts +15 -0
- package/lib/types/portal/config/ai-config.js +26 -0
- package/lib/types/portal/config/ai-config.js.map +1 -0
- package/lib/types/portal/config/brand-config.d.ts +55 -0
- package/lib/types/portal/config/brand-config.js +105 -0
- package/lib/types/portal/config/brand-config.js.map +1 -0
- package/lib/types/portal/config/color.d.ts +19 -0
- package/lib/types/portal/config/color.js +43 -0
- package/lib/types/portal/config/color.js.map +1 -0
- package/lib/types/portal/config/fields.d.ts +23 -0
- package/lib/types/portal/config/fields.js +67 -0
- package/lib/types/portal/config/fields.js.map +1 -0
- package/lib/types/portal/config/link.d.ts +18 -0
- package/lib/types/portal/config/link.js +72 -0
- package/lib/types/portal/config/link.js.map +1 -0
- package/lib/types/portal/config/navigation-config.d.ts +13 -0
- package/lib/types/portal/config/navigation-config.js +30 -0
- package/lib/types/portal/config/navigation-config.js.map +1 -0
- package/lib/types/portal/config/site-config.d.ts +32 -0
- package/lib/types/portal/config/site-config.js +88 -0
- package/lib/types/portal/config/site-config.js.map +1 -0
- package/lib/types/portal/config/static-asset.d.ts +25 -0
- package/lib/types/portal/config/static-asset.js +77 -0
- package/lib/types/portal/config/static-asset.js.map +1 -0
- package/lib/types/portal/content-notices.d.ts +20 -0
- package/lib/types/portal/content-notices.js +2 -0
- package/lib/types/portal/content-notices.js.map +1 -0
- package/lib/types/portal/content-tree.d.ts +103 -0
- package/lib/types/portal/content-tree.js +344 -0
- package/lib/types/portal/content-tree.js.map +1 -0
- package/lib/types/portal/endpoint.d.ts +6 -0
- package/lib/types/portal/endpoint.js +12 -0
- package/lib/types/portal/endpoint.js.map +1 -0
- package/lib/types/portal/generated-pages.d.ts +68 -0
- package/lib/types/portal/generated-pages.js +111 -0
- package/lib/types/portal/generated-pages.js.map +1 -0
- package/lib/types/portal/generation-status.d.ts +31 -0
- package/lib/types/portal/generation-status.js +26 -0
- package/lib/types/portal/generation-status.js.map +1 -0
- package/lib/types/portal/openapi-document.d.ts +48 -0
- package/lib/types/portal/openapi-document.js +138 -0
- package/lib/types/portal/openapi-document.js.map +1 -0
- package/lib/types/portal/page-fragments.d.ts +13 -0
- package/lib/types/portal/page-fragments.js +24 -0
- package/lib/types/portal/page-fragments.js.map +1 -0
- package/lib/types/portal/page-template.d.ts +15 -0
- package/lib/types/portal/page-template.js +64 -0
- package/lib/types/portal/page-template.js.map +1 -0
- package/lib/types/portal/page.d.ts +24 -0
- package/lib/types/portal/page.js +100 -0
- package/lib/types/portal/page.js.map +1 -0
- package/lib/types/portal/portal-artifacts.d.ts +25 -0
- package/lib/types/portal/portal-artifacts.js +30 -0
- package/lib/types/portal/portal-artifacts.js.map +1 -0
- package/lib/types/portal/portal-config.d.ts +69 -0
- package/lib/types/portal/portal-config.js +105 -0
- package/lib/types/portal/portal-config.js.map +1 -0
- package/lib/types/portal/portal-downloads.d.ts +8 -0
- package/lib/types/portal/portal-downloads.js +14 -0
- package/lib/types/portal/portal-downloads.js.map +1 -0
- package/lib/types/portal/portal-languages.d.ts +15 -0
- package/lib/types/portal/portal-languages.js +45 -0
- package/lib/types/portal/portal-languages.js.map +1 -0
- package/lib/types/portal/portal-navigation.d.ts +65 -0
- package/lib/types/portal/portal-navigation.js +217 -0
- package/lib/types/portal/portal-navigation.js.map +1 -0
- package/lib/types/portal/portal-sdk.d.ts +15 -0
- package/lib/types/portal/portal-sdk.js +28 -0
- package/lib/types/portal/portal-sdk.js.map +1 -0
- package/lib/types/portal/portal-source.d.ts +129 -0
- package/lib/types/portal/portal-source.js +2 -0
- package/lib/types/portal/portal-source.js.map +1 -0
- package/lib/types/portal/portal-stylesheet.d.ts +19 -0
- package/lib/types/portal/portal-stylesheet.js +40 -0
- package/lib/types/portal/portal-stylesheet.js.map +1 -0
- package/lib/types/portal/portal-tabs.d.ts +33 -0
- package/lib/types/portal/portal-tabs.js +38 -0
- package/lib/types/portal/portal-tabs.js.map +1 -0
- package/lib/types/portal/preview-config.d.ts +20 -0
- package/lib/types/portal/preview-config.js +32 -0
- package/lib/types/portal/preview-config.js.map +1 -0
- package/lib/types/portal/preview-content.d.ts +18 -0
- package/lib/types/portal/preview-content.js +50 -0
- package/lib/types/portal/preview-content.js.map +1 -0
- package/lib/types/portal/published-package.d.ts +12 -0
- package/lib/types/portal/published-package.js +35 -0
- package/lib/types/portal/published-package.js.map +1 -0
- package/lib/types/portal/unknown-fields.d.ts +5 -0
- package/lib/types/portal/unknown-fields.js +10 -0
- package/lib/types/portal/unknown-fields.js.map +1 -0
- package/lib/types/portal-context.d.ts +38 -6
- package/lib/types/portal-context.js +71 -24
- package/lib/types/portal-context.js.map +1 -1
- package/lib/types/portal-source-context.d.ts +77 -0
- package/lib/types/portal-source-context.js +408 -0
- package/lib/types/portal-source-context.js.map +1 -0
- package/lib/types/project-context.d.ts +49 -0
- package/lib/types/project-context.js +151 -0
- package/lib/types/project-context.js.map +1 -0
- package/lib/types/project-layout.d.ts +9 -0
- package/lib/types/project-layout.js +10 -0
- package/lib/types/project-layout.js.map +1 -0
- package/lib/types/publish/package-settings-configuration.d.ts +2 -0
- package/lib/types/publish/profile-id.js +1 -0
- package/lib/types/publish/profile-id.js.map +1 -1
- package/lib/types/publish/publishing-profile.d.ts +3 -1
- package/lib/types/publish/publishing-profile.js +33 -15
- package/lib/types/publish/publishing-profile.js.map +1 -1
- package/lib/types/publish/publishing-profiles.js +2 -1
- package/lib/types/publish/publishing-profiles.js.map +1 -1
- package/lib/types/publish/version.js +1 -0
- package/lib/types/publish/version.js.map +1 -1
- package/lib/types/resource-context.js +3 -2
- package/lib/types/resource-context.js.map +1 -1
- package/lib/types/sdk/generate.d.ts +22 -16
- package/lib/types/sdk/generate.js +64 -41
- package/lib/types/sdk/generate.js.map +1 -1
- package/lib/types/sdk/stability-choice.d.ts +12 -0
- package/lib/types/sdk/stability-choice.js +24 -0
- package/lib/types/sdk/stability-choice.js.map +1 -0
- package/lib/types/sdk-context.d.ts +4 -5
- package/lib/types/sdk-context.js +10 -18
- package/lib/types/sdk-context.js.map +1 -1
- package/lib/types/spec-context.d.ts +5 -4
- package/lib/types/spec-context.js +9 -8
- package/lib/types/spec-context.js.map +1 -1
- package/lib/types/temp-context.d.ts +1 -1
- package/lib/types/temp-context.js +5 -4
- package/lib/types/temp-context.js.map +1 -1
- package/lib/types/transform-context.d.ts +9 -5
- package/lib/types/transform-context.js +21 -18
- package/lib/types/transform-context.js.map +1 -1
- package/lib/utils/error-utils.d.ts +2 -0
- package/lib/utils/error-utils.js +5 -0
- package/lib/utils/error-utils.js.map +1 -0
- package/lib/utils/json-utils.d.ts +2 -0
- package/lib/utils/json-utils.js +4 -0
- package/lib/utils/json-utils.js.map +1 -0
- package/lib/utils/string-utils.d.ts +8 -1
- package/lib/utils/string-utils.js +13 -26
- package/lib/utils/string-utils.js.map +1 -1
- package/lib/utils/utils.d.ts +1 -3
- package/lib/utils/utils.js +12 -40
- package/lib/utils/utils.js.map +1 -1
- package/oclif.manifest.json +69 -357
- package/package.json +47 -25
- package/portal-pages/context-plugin.mdx +26 -0
- package/portal-pages/sdk.mdx +8 -0
- package/portal-pages/sdks.mdx +11 -0
- package/portal-template/NOTICE +37 -0
- package/portal-template/downloads.ts +41 -0
- package/portal-template/generated-pages-reload.ts +51 -0
- package/portal-template/package.json +11 -0
- package/portal-template/portal-config.ts +32 -0
- package/portal-template/prerender-pages.ts +81 -0
- package/portal-template/spec-reload.ts +26 -0
- package/portal-template/src/components/api-page.tsx +15 -0
- package/portal-template/src/components/code-block.tsx +9 -0
- package/portal-template/src/components/command-block.tsx +50 -0
- package/portal-template/src/components/example-layout.tsx +99 -0
- package/portal-template/src/components/logos.tsx +127 -0
- package/portal-template/src/components/mdx.tsx +28 -0
- package/portal-template/src/components/not-found.tsx +11 -0
- package/portal-template/src/components/plugin-install.tsx +22 -0
- package/portal-template/src/components/plugin-support.tsx +53 -0
- package/portal-template/src/components/sdk-actions.tsx +79 -0
- package/portal-template/src/components/sdk-cards.tsx +100 -0
- package/portal-template/src/components/search.tsx +41 -0
- package/portal-template/src/components/usage-tabs.tsx +92 -0
- package/portal-template/src/lib/code-samples.server.ts +40 -0
- package/portal-template/src/lib/code-samples.ts +43 -0
- package/portal-template/src/lib/code-titles.ts +29 -0
- package/portal-template/src/lib/install-command.ts +13 -0
- package/portal-template/src/lib/json.ts +5 -0
- package/portal-template/src/lib/layout.shared.tsx +41 -0
- package/portal-template/src/lib/layout.tsx +16 -0
- package/portal-template/src/lib/llms.server.ts +54 -0
- package/portal-template/src/lib/media-adapters.ts +34 -0
- package/portal-template/src/lib/navigation.ts +406 -0
- package/portal-template/src/lib/openapi-bundle.server.ts +343 -0
- package/portal-template/src/lib/openapi-filter.ts +191 -0
- package/portal-template/src/lib/openapi-labels.ts +15 -0
- package/portal-template/src/lib/openapi-methods.ts +12 -0
- package/portal-template/src/lib/openapi-section.server.ts +280 -0
- package/portal-template/src/lib/openapi-slim.ts +202 -0
- package/portal-template/src/lib/openapi.server.ts +16 -0
- package/portal-template/src/lib/portal-types.ts +36 -0
- package/portal-template/src/lib/portal.server.ts +13 -0
- package/portal-template/src/lib/portal.ts +11 -0
- package/portal-template/src/lib/rehype-code-titles.ts +53 -0
- package/portal-template/src/lib/request-examples.ts +72 -0
- package/portal-template/src/lib/seo.ts +21 -0
- package/portal-template/src/lib/shared.ts +51 -0
- package/portal-template/src/lib/shiki-bundle.ts +104 -0
- package/portal-template/src/lib/sitemap.server.ts +20 -0
- package/portal-template/src/lib/source.server.ts +27 -0
- package/portal-template/src/lib/source.ts +49 -0
- package/portal-template/src/lib/tabs.ts +37 -0
- package/portal-template/src/router.tsx +12 -0
- package/portal-template/src/routes/$.tsx +194 -0
- package/portal-template/src/routes/__root.tsx +56 -0
- package/portal-template/src/routes/api/search[.]json.ts +9 -0
- package/portal-template/src/routes/llms-full[.]txt.ts +10 -0
- package/portal-template/src/routes/llms[.]txt.ts +10 -0
- package/portal-template/src/routes/robots[.]txt.ts +10 -0
- package/portal-template/src/routes/sitemap[.]xml.ts +10 -0
- package/portal-template/src/routes/spa-shell.tsx +7 -0
- package/portal-template/src/routes/{$}[.]md.ts +21 -0
- package/portal-template/src/styles/app.css +33 -0
- package/portal-template/tsconfig.json +26 -0
- package/portal-template/vite.config.ts +68 -0
- package/lib/actions/plugin/record-sdk.d.ts +0 -14
- package/lib/actions/plugin/record-sdk.js +0 -60
- package/lib/actions/plugin/record-sdk.js.map +0 -1
- package/lib/actions/portal/copilot.d.ts +0 -17
- package/lib/actions/portal/copilot.js +0 -89
- package/lib/actions/portal/copilot.js.map +0 -1
- package/lib/actions/portal/quickstart.d.ts +0 -18
- package/lib/actions/portal/quickstart.js +0 -238
- package/lib/actions/portal/quickstart.js.map +0 -1
- package/lib/actions/portal/recipe/new-recipe.d.ts +0 -15
- package/lib/actions/portal/recipe/new-recipe.js +0 -177
- package/lib/actions/portal/recipe/new-recipe.js.map +0 -1
- package/lib/actions/portal/toc/new-toc.d.ts +0 -21
- package/lib/actions/portal/toc/new-toc.js +0 -95
- package/lib/actions/portal/toc/new-toc.js.map +0 -1
- package/lib/actions/sdk/merge-source-tree.d.ts +0 -12
- package/lib/actions/sdk/merge-source-tree.js +0 -78
- package/lib/actions/sdk/merge-source-tree.js.map +0 -1
- package/lib/actions/sdk/quickstart.d.ts +0 -18
- package/lib/actions/sdk/quickstart.js +0 -188
- package/lib/actions/sdk/quickstart.js.map +0 -1
- package/lib/actions/sdk/save-changes.d.ts +0 -8
- package/lib/actions/sdk/save-changes.js +0 -93
- package/lib/actions/sdk/save-changes.js.map +0 -1
- package/lib/application/portal/recipe/portal-recipe.d.ts +0 -8
- package/lib/application/portal/recipe/portal-recipe.js +0 -33
- package/lib/application/portal/recipe/portal-recipe.js.map +0 -1
- package/lib/application/portal/recipe/recipe-generator.d.ts +0 -21
- package/lib/application/portal/recipe/recipe-generator.js +0 -130
- package/lib/application/portal/recipe/recipe-generator.js.map +0 -1
- package/lib/application/portal/toc/toc-content-parser.d.ts +0 -5
- package/lib/application/portal/toc/toc-content-parser.js +0 -44
- package/lib/application/portal/toc/toc-content-parser.js.map +0 -1
- package/lib/application/portal/toc/toc-structure-generator.d.ts +0 -11
- package/lib/application/portal/toc/toc-structure-generator.js +0 -165
- package/lib/application/portal/toc/toc-structure-generator.js.map +0 -1
- package/lib/commands/portal/copilot.d.ts +0 -13
- package/lib/commands/portal/copilot.js +0 -34
- package/lib/commands/portal/copilot.js.map +0 -1
- package/lib/commands/portal/recipe/new.d.ts +0 -12
- package/lib/commands/portal/recipe/new.js +0 -45
- package/lib/commands/portal/recipe/new.js.map +0 -1
- package/lib/commands/portal/toc/new.d.ts +0 -16
- package/lib/commands/portal/toc/new.js +0 -68
- package/lib/commands/portal/toc/new.js.map +0 -1
- package/lib/commands/sdk/save-changes.d.ts +0 -14
- package/lib/commands/sdk/save-changes.js +0 -51
- package/lib/commands/sdk/save-changes.js.map +0 -1
- package/lib/infrastructure/debounce-service.d.ts +0 -10
- package/lib/infrastructure/debounce-service.js +0 -55
- package/lib/infrastructure/debounce-service.js.map +0 -1
- package/lib/infrastructure/services/portal-service.d.ts +0 -43
- package/lib/infrastructure/services/portal-service.js +0 -337
- package/lib/infrastructure/services/portal-service.js.map +0 -1
- package/lib/prompts/plugin/record-sdk.d.ts +0 -9
- package/lib/prompts/plugin/record-sdk.js +0 -40
- package/lib/prompts/plugin/record-sdk.js.map +0 -1
- package/lib/prompts/portal/copilot.d.ts +0 -18
- package/lib/prompts/portal/copilot.js +0 -82
- package/lib/prompts/portal/copilot.js.map +0 -1
- package/lib/prompts/portal/quickstart.d.ts +0 -42
- package/lib/prompts/portal/quickstart.js +0 -243
- package/lib/prompts/portal/quickstart.js.map +0 -1
- package/lib/prompts/portal/recipe/new-recipe.d.ts +0 -29
- package/lib/prompts/portal/recipe/new-recipe.js +0 -165
- package/lib/prompts/portal/recipe/new-recipe.js.map +0 -1
- package/lib/prompts/portal/toc/new-toc.d.ts +0 -16
- package/lib/prompts/portal/toc/new-toc.js +0 -50
- package/lib/prompts/portal/toc/new-toc.js.map +0 -1
- package/lib/prompts/sdk/merge-source-tree.d.ts +0 -22
- package/lib/prompts/sdk/merge-source-tree.js +0 -90
- package/lib/prompts/sdk/merge-source-tree.js.map +0 -1
- package/lib/prompts/sdk/quickstart.d.ts +0 -38
- package/lib/prompts/sdk/quickstart.js +0 -196
- package/lib/prompts/sdk/quickstart.js.map +0 -1
- package/lib/prompts/sdk/save-changes.d.ts +0 -21
- package/lib/prompts/sdk/save-changes.js +0 -84
- package/lib/prompts/sdk/save-changes.js.map +0 -1
- package/lib/types/build-context.d.ts +0 -26
- package/lib/types/build-context.js +0 -111
- package/lib/types/build-context.js.map +0 -1
- package/lib/types/events/recipe-creation-failed.d.ts +0 -5
- package/lib/types/events/recipe-creation-failed.js +0 -8
- package/lib/types/events/recipe-creation-failed.js.map +0 -1
- package/lib/types/events/sdk-changes-saved.d.ts +0 -8
- package/lib/types/events/sdk-changes-saved.js +0 -11
- package/lib/types/events/sdk-changes-saved.js.map +0 -1
- package/lib/types/events/sdk-changes-tracked.d.ts +0 -8
- package/lib/types/events/sdk-changes-tracked.js +0 -11
- package/lib/types/events/sdk-changes-tracked.js.map +0 -1
- package/lib/types/events/sdk-conflicts-resolved.d.ts +0 -8
- package/lib/types/events/sdk-conflicts-resolved.js +0 -11
- package/lib/types/events/sdk-conflicts-resolved.js.map +0 -1
- package/lib/types/events/toc-creation-failed.d.ts +0 -5
- package/lib/types/events/toc-creation-failed.js +0 -8
- package/lib/types/events/toc-creation-failed.js.map +0 -1
- package/lib/types/merge-source-tree-context.d.ts +0 -28
- package/lib/types/merge-source-tree-context.js +0 -63
- package/lib/types/merge-source-tree-context.js.map +0 -1
- package/lib/types/plugin/language-entry.d.ts +0 -9
- package/lib/types/plugin/language-entry.js +0 -64
- package/lib/types/plugin/language-entry.js.map +0 -1
- package/lib/types/recipe/recipe.d.ts +0 -22
- package/lib/types/recipe/recipe.js +0 -6
- package/lib/types/recipe/recipe.js.map +0 -1
- package/lib/types/recipe-context.d.ts +0 -9
- package/lib/types/recipe-context.js +0 -26
- package/lib/types/recipe-context.js.map +0 -1
- package/lib/types/save-changes-context.d.ts +0 -17
- package/lib/types/save-changes-context.js +0 -42
- package/lib/types/save-changes-context.js.map +0 -1
- package/lib/types/sdl/sdl.d.ts +0 -10
- package/lib/types/sdl/sdl.js +0 -18
- package/lib/types/sdl/sdl.js.map +0 -1
- package/lib/types/toc/toc-components.d.ts +0 -36
- package/lib/types/toc/toc-components.js +0 -94
- package/lib/types/toc/toc-components.js.map +0 -1
- package/lib/types/toc/toc.d.ts +0 -67
- package/lib/types/toc/toc.js +0 -2
- package/lib/types/toc/toc.js.map +0 -1
- package/lib/types/toc-context.d.ts +0 -12
- package/lib/types/toc-context.js +0 -26
- package/lib/types/toc-context.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip-service.js","sourceRoot":"","sources":["../../src/infrastructure/zip-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,SAAS,CAAC;AAI7B,MAAM,OAAO,UAAU;IACd,KAAK,CAAC,OAAO,CAAC,SAAwB,EAAE,aAAuB;QACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAEnC,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,cAAsB,EAAE,EAAE;gBAClE,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC5E,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACtC,sEAAsE;oBACtE,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;oBACrF,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;oBACrD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC;gBACH,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,UAAoB,EAAE,oBAAmC;QAC9E,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"zip-service.js","sourceRoot":"","sources":["../../src/infrastructure/zip-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,SAAS,CAAC;AAI7B,MAAM,OAAO,UAAU;IACd,KAAK,CAAC,OAAO,CAAC,SAAwB,EAAE,aAAuB;QACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAEnC,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,cAAsB,EAAE,EAAE;gBAClE,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC5E,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACtC,sEAAsE;oBACtE,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;oBACrF,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;oBACrD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC;gBACH,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,UAAoB,EAAE,oBAAmC;QAC9E,MAAM,SAAS,GAAG,OAAO,CAAC;QAC1B,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,OAAO;QAEvC,uEAAuE;QACvE,wEAAwE;QACxE,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,8CAA8C;QAC9C,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAEjC,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,0EAA0E;QAC1E,sEAAsE;QACtE,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,GAAG,CAAC,YAAY,CAAC,oBAAoB,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { ValidationMessages } from
|
|
2
|
-
import { Result } from
|
|
3
|
-
import { ValidationEntry, ValidationSummary } from
|
|
4
|
-
import { ServiceError } from
|
|
5
|
-
import { FilePath } from
|
|
6
|
-
import { ValidateApiResponse } from "../../infrastructure/services/validation-service.js";
|
|
1
|
+
import { ValidationMessages } from '../../types/utils.js';
|
|
2
|
+
import { Result } from 'neverthrow';
|
|
3
|
+
import { ValidateApiResult, ValidationEntry, ValidationSummary } from '@apimatic/sdk';
|
|
4
|
+
import { ServiceError } from '../../infrastructure/service-error.js';
|
|
5
|
+
import { FilePath } from '../../types/file/filePath.js';
|
|
7
6
|
export declare class ApiValidatePrompts {
|
|
8
|
-
validateApi(fn: Promise<Result<
|
|
7
|
+
validateApi<E>(fn: Promise<Result<ValidateApiResult, E>>): Promise<Result<ValidateApiResult, E>>;
|
|
9
8
|
displayValidationMessages({ warnings, errors, messages }: ValidationMessages): void;
|
|
10
9
|
formatValidationEntry(entry: ValidationEntry): string;
|
|
11
10
|
displayValidationSummary(summary: ValidationSummary): void;
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { log } from
|
|
2
|
-
import { replaceHTML } from
|
|
3
|
-
import { format as f } from
|
|
4
|
-
import { withSpinner } from
|
|
1
|
+
import { log } from '@clack/prompts';
|
|
2
|
+
import { replaceHTML } from '../../utils/utils.js';
|
|
3
|
+
import { format as f } from '../format.js';
|
|
4
|
+
import { withSpinner } from '../prompt.js';
|
|
5
5
|
export class ApiValidatePrompts {
|
|
6
6
|
async validateApi(fn) {
|
|
7
|
-
return withSpinner(
|
|
7
|
+
return withSpinner('Validating API', 'API validation completed', 'API validation failed', fn);
|
|
8
8
|
}
|
|
9
9
|
displayValidationMessages({ warnings, errors, messages }) {
|
|
10
10
|
if (messages.length > 0) {
|
|
11
|
-
log.info(
|
|
11
|
+
log.info('Messages');
|
|
12
12
|
messages.forEach((msg) => {
|
|
13
13
|
log.message(`${replaceHTML(msg)}`);
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
if (warnings.length > 0) {
|
|
17
|
-
log.
|
|
17
|
+
log.warn('Warnings');
|
|
18
18
|
warnings.forEach((war) => {
|
|
19
19
|
log.message(`${replaceHTML(war)}`);
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
if (errors.length > 0) {
|
|
23
|
-
log.error(
|
|
23
|
+
log.error('Errors');
|
|
24
24
|
errors.forEach((err) => {
|
|
25
25
|
log.message(`${replaceHTML(err)}`);
|
|
26
26
|
});
|
|
@@ -38,25 +38,25 @@ export class ApiValidatePrompts {
|
|
|
38
38
|
}
|
|
39
39
|
displayValidationSummary(summary) {
|
|
40
40
|
if (summary.blocking.length > 0) {
|
|
41
|
-
log.error(
|
|
41
|
+
log.error('Blocking');
|
|
42
42
|
for (const entry of summary.blocking) {
|
|
43
43
|
log.message(this.formatValidationEntry(entry));
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
if (summary.errors.length > 0) {
|
|
47
|
-
log.error(
|
|
47
|
+
log.error('Errors');
|
|
48
48
|
for (const entry of summary.errors) {
|
|
49
49
|
log.message(this.formatValidationEntry(entry));
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
if (summary.warnings.length > 0) {
|
|
53
|
-
log.
|
|
53
|
+
log.warn('Warnings');
|
|
54
54
|
for (const entry of summary.warnings) {
|
|
55
55
|
log.message(this.formatValidationEntry(entry));
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
if (summary.information.length > 0) {
|
|
59
|
-
log.info(
|
|
59
|
+
log.info('Information');
|
|
60
60
|
for (const entry of summary.information) {
|
|
61
61
|
log.message(this.formatValidationEntry(entry));
|
|
62
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/prompts/api/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAMnD,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/prompts/api/validate.ts"],"names":[],"mappings":"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"}
|
package/lib/prompts/format.d.ts
CHANGED
|
@@ -4,10 +4,14 @@ import { FilePath } from '../types/file/filePath.js';
|
|
|
4
4
|
export declare const format: {
|
|
5
5
|
var: (text: string) => string;
|
|
6
6
|
path: (text: DirectoryPath | FilePath) => string;
|
|
7
|
+
relative: (target: DirectoryPath | FilePath) => string;
|
|
8
|
+
relativePath: (target: DirectoryPath | FilePath) => string;
|
|
7
9
|
cmd: (cmd: string, ...args: string[]) => string;
|
|
8
10
|
cmdAlt: (cmd: string, ...args: string[]) => string;
|
|
9
11
|
link: (text: string) => string;
|
|
10
12
|
description: (text: string) => string;
|
|
13
|
+
/** Secondary text that sits under an answer rather than competing with it. */
|
|
14
|
+
hint: (text: string) => string;
|
|
11
15
|
flag: (name: string, value?: string | undefined) => string;
|
|
12
16
|
continuation: (text: string) => string;
|
|
13
17
|
success: (text: string) => string;
|
package/lib/prompts/format.js
CHANGED
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import pc from 'picocolors';
|
|
2
2
|
import { intro as i, outro as o } from '@clack/prompts';
|
|
3
|
+
import { DirectoryPath } from '../types/file/directoryPath.js';
|
|
3
4
|
export const format = {
|
|
4
5
|
// Core element types
|
|
5
6
|
var: (text) => pc.magenta(`'${text}'`),
|
|
6
7
|
path: (text) => pc.cyan(`'${text}'`),
|
|
8
|
+
relative: (target) => target.asTypedFrom(DirectoryPath.workingDirectory()),
|
|
9
|
+
relativePath: (target) => pc.cyan(`'${format.relative(target)}'`),
|
|
7
10
|
cmd: (cmd, ...args) => `${pc.blueBright(cmd)} ${args.map((arg) => pc.dim(arg)).join(' ')}`,
|
|
8
11
|
cmdAlt: (cmd, ...args) => `${pc.dim(pc.blueBright(cmd))} ${args.map((arg) => pc.blueBright(arg)).join(' ')}`,
|
|
9
12
|
link: (text) => pc.underline(pc.blueBright(text)),
|
|
10
13
|
description: (text) => pc.greenBright(`${text}`),
|
|
14
|
+
/** Secondary text that sits under an answer rather than competing with it. */
|
|
15
|
+
hint: (text) => pc.gray(text),
|
|
11
16
|
flag: (name, value = undefined) => {
|
|
12
17
|
if (value) {
|
|
13
18
|
const sanitizedValue = value.includes(' ') ? `'${value}'` : value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/prompts/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/prompts/format.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +1,29 @@
|
|
|
1
1
|
import { Result } from 'neverthrow';
|
|
2
2
|
import { ServiceError } from '../../infrastructure/service-error.js';
|
|
3
|
+
import { PublishingProfileItem } from '../../types/publish-api/publishing-profile-item.js';
|
|
3
4
|
import { DirectoryPath } from '../../types/file/directoryPath.js';
|
|
4
5
|
import { FilePath } from '../../types/file/filePath.js';
|
|
6
|
+
import { PluginConfig, PluginConfigWriteFailure } from '../../types/plugin-config-context.js';
|
|
7
|
+
import { Language } from '../../types/sdk/generate.js';
|
|
5
8
|
export declare class PluginGeneratePrompts {
|
|
6
9
|
generatePlugin(fn: Promise<Result<NodeJS.ReadableStream, ServiceError>>): Promise<Result<NodeJS.ReadableStream, ServiceError>>;
|
|
10
|
+
/** Advisory, and slow enough to look like a hang without a spinner over it. */
|
|
11
|
+
checkPublishingProfiles(fn: Promise<Result<PublishingProfileItem[], ServiceError>>): Promise<Result<PublishingProfileItem[], ServiceError>>;
|
|
7
12
|
overwritePlugin(directory: DirectoryPath): Promise<boolean>;
|
|
8
13
|
directoryCannotBeSame(directory: DirectoryPath): void;
|
|
9
|
-
|
|
14
|
+
sourceDirectoryDoesNotExist(directory: DirectoryPath): void;
|
|
10
15
|
pluginDirectoryNotEmpty(): void;
|
|
11
16
|
pluginGenerationError(error: string): void;
|
|
17
|
+
configNotPrepared(failure: PluginConfigWriteFailure, sourceDirectory: DirectoryPath): void;
|
|
12
18
|
pluginConfigUnreadable(reason: string, path: FilePath): void;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
nextStepsPublishPlugin(): void;
|
|
19
|
+
canAsk(): boolean;
|
|
20
|
+
setupNeedsTerminal(sourceDirectory: DirectoryPath, config: PluginConfig): void;
|
|
21
|
+
recordedLanguagesIncluded(languages: readonly Language[]): void;
|
|
22
|
+
selectLanguages(): Promise<Language[] | undefined>;
|
|
23
|
+
noLanguagesSelected(): void;
|
|
24
|
+
languagesNotIncluded(languages: readonly string[]): void;
|
|
25
|
+
confirmLocalPlugin(unattended: boolean): Promise<boolean>;
|
|
26
|
+
localPluginCancelled(): void;
|
|
27
|
+
previewOnly(): void;
|
|
28
|
+
installPluginLocally(plugin: DirectoryPath): void;
|
|
24
29
|
}
|
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import { confirm, isCancel, log } from '@clack/prompts';
|
|
1
|
+
import { confirm, isCancel, log, multiselect } from '@clack/prompts';
|
|
2
|
+
import { DirectoryPath } from '../../types/file/directoryPath.js';
|
|
2
3
|
import { format as f } from '../format.js';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const VS_CODE_PLUGINS_URL = 'https://code.visualstudio.com/docs/agent-customization/agent-plugins#_use-local-plugins';
|
|
9
|
-
const CODEX_PLUGINS_URL = 'https://developers.openai.com/plugins/build/plugins#install-a-local-plugin-manually';
|
|
4
|
+
import { withSpinner } from '../prompt.js';
|
|
5
|
+
import { APIMATIC_CONFIG_FILE_NAME } from '../../types/apimatic-config/document.js';
|
|
6
|
+
import { LANGUAGES_EXAMPLE } from '../../types/apimatic-config/languages-block.js';
|
|
7
|
+
import { AVAILABLE_LANGUAGES, languageLabel } from '../../types/sdk/generate.js';
|
|
8
|
+
import { listedInProse } from '../../utils/string-utils.js';
|
|
10
9
|
export class PluginGeneratePrompts {
|
|
10
|
+
// The spinner covers the service call only; until the save has run there is no path to name.
|
|
11
11
|
generatePlugin(fn) {
|
|
12
12
|
return withSpinner('Generating Context Plugin', 'Plugin generated successfully.', 'Plugin Generation failed.', fn);
|
|
13
13
|
}
|
|
14
|
+
/** Advisory, and slow enough to look like a hang without a spinner over it. */
|
|
15
|
+
checkPublishingProfiles(fn) {
|
|
16
|
+
return withSpinner('Checking your publishing profiles', 'Publishing profiles checked.', 'Could not check your publishing profiles.', fn);
|
|
17
|
+
}
|
|
14
18
|
async overwritePlugin(directory) {
|
|
15
19
|
const overwrite = await confirm({
|
|
16
20
|
message: `The destination ${f.path(directory)} is not empty, do you want to overwrite?`,
|
|
@@ -25,7 +29,7 @@ export class PluginGeneratePrompts {
|
|
|
25
29
|
const message = `The ${f.var('src')} and ${f.var('plugin')} directories must be different. Current value: ${f.path(directory)}`;
|
|
26
30
|
log.error(message);
|
|
27
31
|
}
|
|
28
|
-
|
|
32
|
+
sourceDirectoryDoesNotExist(directory) {
|
|
29
33
|
const message = `The ${f.var('src')} directory does not exist at the provided location: ${f.path(directory)}`;
|
|
30
34
|
log.error(message);
|
|
31
35
|
}
|
|
@@ -35,44 +39,90 @@ export class PluginGeneratePrompts {
|
|
|
35
39
|
pluginGenerationError(error) {
|
|
36
40
|
log.error(error);
|
|
37
41
|
}
|
|
42
|
+
configNotPrepared(failure, sourceDirectory) {
|
|
43
|
+
const message = failure === 'unreadable'
|
|
44
|
+
? `${f.var(APIMATIC_CONFIG_FILE_NAME)} in ${f.path(sourceDirectory)} could not be read. ` +
|
|
45
|
+
`Check that it can be read and try again.`
|
|
46
|
+
: `${f.var(APIMATIC_CONFIG_FILE_NAME)} in ${f.path(sourceDirectory)} starts with a byte-order mark, ` +
|
|
47
|
+
`which the plugin cannot be generated from, and it could not be rewritten without one. ` +
|
|
48
|
+
`Save the file as UTF-8 without a BOM and try again.`;
|
|
49
|
+
log.error(message);
|
|
50
|
+
}
|
|
38
51
|
pluginConfigUnreadable(reason, path) {
|
|
39
|
-
const message = `${f.var(
|
|
52
|
+
const message = `${f.var(APIMATIC_CONFIG_FILE_NAME)} cannot be used: ${reason}. ` + `Fix it at ${f.path(path)} and try again.`;
|
|
40
53
|
log.error(message);
|
|
41
54
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
`${
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
55
|
+
// Without a terminal a prompt never answers, and Node exits with nothing said.
|
|
56
|
+
canAsk() {
|
|
57
|
+
return process.stdin.isTTY === true;
|
|
58
|
+
}
|
|
59
|
+
setupNeedsTerminal(sourceDirectory, config) {
|
|
60
|
+
const command = `'${f.cmdAlt('apimatic', 'plugin', 'generate')}'`;
|
|
61
|
+
const configFile = `${f.var(APIMATIC_CONFIG_FILE_NAME)} in ${f.path(sourceDirectory)}`;
|
|
62
|
+
if (config.hasMetadata()) {
|
|
63
|
+
log.error(`${configFile} names no language the plugin can carry, and there is no terminal to ask which. Add one to ` +
|
|
64
|
+
`its ${f.var('languages')} block, for example ${LANGUAGES_EXAMPLE}, or run ${command} in a terminal.`);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
const [asked, kept] = config.hasRecordedLanguages() ? ['its name', 'it'] : ['its name and languages', 'both'];
|
|
68
|
+
log.error(`A project's first plugin asks for ${asked}, and there is no terminal to ask in. Run ${command} in a ` +
|
|
69
|
+
`terminal once; later runs read ${kept} from ${configFile}.`);
|
|
70
|
+
}
|
|
71
|
+
recordedLanguagesIncluded(languages) {
|
|
72
|
+
if (languages.length === 0) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
log.info(`The plugin covers ${listedInProse(languages.map(languageLabel))}, as ${f.var(APIMATIC_CONFIG_FILE_NAME)} ` +
|
|
76
|
+
`records them. Edit its ${f.var('languages')} block to change that.`);
|
|
77
|
+
}
|
|
78
|
+
async selectLanguages() {
|
|
79
|
+
const selected = await multiselect({
|
|
80
|
+
message: 'Which languages should your plugin include?',
|
|
81
|
+
options: AVAILABLE_LANGUAGES.map((language) => ({ value: language, label: languageLabel(language) })),
|
|
82
|
+
initialValues: [...AVAILABLE_LANGUAGES],
|
|
83
|
+
required: false
|
|
84
|
+
});
|
|
85
|
+
return isCancel(selected) ? undefined : selected;
|
|
86
|
+
}
|
|
87
|
+
noLanguagesSelected() {
|
|
88
|
+
log.warn('No languages selected. Exiting without generating a plugin.');
|
|
89
|
+
}
|
|
90
|
+
// Saying so is the only way the omission is visible; their entries are left alone.
|
|
91
|
+
languagesNotIncluded(languages) {
|
|
92
|
+
if (languages.length === 0) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
const [verb, entries] = languages.length === 1 ? ['is', 'its entry'] : ['are', 'their entries'];
|
|
96
|
+
const names = languages.map((language) => languageLabel(language)).join(', ');
|
|
97
|
+
log.warn(`${names} cannot be included in a context plugin and ${verb} left out of this one. ` +
|
|
98
|
+
`${f.var(APIMATIC_CONFIG_FILE_NAME)} keeps ${entries} unchanged.`);
|
|
99
|
+
}
|
|
100
|
+
// A recommendation, then a confirm, never a fork; a set-up project, asked nothing, gets the recommendation alone.
|
|
101
|
+
async confirmLocalPlugin(unattended) {
|
|
102
|
+
log.warn(`You have a publishing profile set up.\n` +
|
|
103
|
+
`We recommend publishing your SDK first for a better plugin experience.`);
|
|
104
|
+
if (unattended) {
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
const proceed = await confirm({
|
|
108
|
+
message: 'Do you still want to continue with a local plugin?',
|
|
109
|
+
initialValue: true
|
|
110
|
+
});
|
|
111
|
+
return isCancel(proceed) ? false : proceed;
|
|
112
|
+
}
|
|
113
|
+
localPluginCancelled() {
|
|
114
|
+
log.warn(`Exiting without generating a plugin. Run '${f.cmdAlt('apimatic', 'sdk', 'publish')}' to publish ` +
|
|
115
|
+
`your SDK first.`);
|
|
116
|
+
}
|
|
117
|
+
// Only where a profile exists: a user without one cannot act on it.
|
|
118
|
+
previewOnly() {
|
|
119
|
+
log.warn('Context plugin is preview only.\nFor production, publish your SDK and plugin.');
|
|
120
|
+
}
|
|
121
|
+
// Double quotes, not `f.path`: single quotes are not quoting to `cmd.exe`.
|
|
122
|
+
installPluginLocally(plugin) {
|
|
123
|
+
const quotedPath = `"${plugin.relativeTo(DirectoryPath.workingDirectory())}"`;
|
|
124
|
+
const command = f.cmdAlt('npx', 'context-plugins', 'install', quotedPath);
|
|
125
|
+
log.info(`Run '${command}' to install your plugin.`);
|
|
76
126
|
}
|
|
77
127
|
}
|
|
78
128
|
//# sourceMappingURL=generate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/plugin/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/plugin/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,8 @@ export declare class PluginPublishPrompts {
|
|
|
13
13
|
private contentsLine;
|
|
14
14
|
/**
|
|
15
15
|
* Double quotes rather than `f.path`: single quotes are not quoting to `cmd.exe`, so a path
|
|
16
|
-
* containing spaces would break the line the user pastes.
|
|
16
|
+
* containing spaces would break the line the user pastes. Relative where it can be, because the
|
|
17
|
+
* reader is standing in the directory above it.
|
|
17
18
|
*/
|
|
18
19
|
private changeDirectory;
|
|
19
20
|
private createRepository;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { log } from '@clack/prompts';
|
|
2
2
|
import { format as f } from '../format.js';
|
|
3
3
|
import { noteWrapped } from '../prompt.js';
|
|
4
|
-
|
|
4
|
+
import { APIMATIC_CONFIG_FILE_NAME } from '../../types/apimatic-config/document.js';
|
|
5
5
|
const NOTE_TITLE = 'Commands to Copy and Run';
|
|
6
6
|
const TAG_PREFIX = 'v';
|
|
7
7
|
export class PluginPublishPrompts {
|
|
@@ -34,17 +34,17 @@ export class PluginPublishPrompts {
|
|
|
34
34
|
log.error(message);
|
|
35
35
|
}
|
|
36
36
|
pluginConfigMissing(directory) {
|
|
37
|
-
const message = `${f.var(
|
|
37
|
+
const message = `${f.var(APIMATIC_CONFIG_FILE_NAME)} was not found in ${f.path(directory)}. ` +
|
|
38
38
|
`Run '${f.cmdAlt('apimatic', 'plugin', 'generate')}' first.`;
|
|
39
39
|
log.error(message);
|
|
40
40
|
}
|
|
41
41
|
pluginConfigUnreadable(reason, path) {
|
|
42
|
-
const message = `${f.var(
|
|
43
|
-
`Fix
|
|
42
|
+
const message = `${f.var(APIMATIC_CONFIG_FILE_NAME)} cannot be used: ${reason}. ` +
|
|
43
|
+
`Fix it at ${f.path(path)}, then run '${f.cmdAlt('apimatic', 'plugin', 'generate')}'.`;
|
|
44
44
|
log.error(message);
|
|
45
45
|
}
|
|
46
46
|
pluginDetailsNotSet() {
|
|
47
|
-
const message = `${f.var(
|
|
47
|
+
const message = `${f.var(APIMATIC_CONFIG_FILE_NAME)} does not name the plugin or its version. ` +
|
|
48
48
|
`Run '${f.cmdAlt('apimatic', 'plugin', 'generate')}' to set them.`;
|
|
49
49
|
log.error(message);
|
|
50
50
|
}
|
|
@@ -55,10 +55,11 @@ export class PluginPublishPrompts {
|
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* Double quotes rather than `f.path`: single quotes are not quoting to `cmd.exe`, so a path
|
|
58
|
-
* containing spaces would break the line the user pastes.
|
|
58
|
+
* containing spaces would break the line the user pastes. Relative where it can be, because the
|
|
59
|
+
* reader is standing in the directory above it.
|
|
59
60
|
*/
|
|
60
61
|
changeDirectory(pluginDirectory) {
|
|
61
|
-
return f.cmdAlt('cd', `"${pluginDirectory}"`);
|
|
62
|
+
return f.cmdAlt('cd', `"${f.relative(pluginDirectory)}"`);
|
|
62
63
|
}
|
|
63
64
|
createRepository(release) {
|
|
64
65
|
return f.cmdAlt('gh', 'repo', 'create', release.pluginId, '--public', '--source=.', '--remote=origin');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/prompts/plugin/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAKrC,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/prompts/plugin/publish.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ export type PluginMetadataResult = {
|
|
|
12
12
|
cancelled: string;
|
|
13
13
|
};
|
|
14
14
|
export declare class PluginRecordMetadataPrompts {
|
|
15
|
+
metadataCancelled(reason: string): void;
|
|
15
16
|
spinnerAccountInfo(fn: Promise<Result<SubscriptionInfo, ServiceError>>): Promise<Result<SubscriptionInfo, ServiceError>>;
|
|
16
17
|
/**
|
|
17
18
|
* Required fields get a `placeholder` but no `defaultValue`, so an empty answer re-prompts.
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { isCancel, log, text } from '@clack/prompts';
|
|
2
|
-
import { PLUGIN_ID_PATTERN } from '../../types/plugin-config
|
|
2
|
+
import { PLUGIN_ID_PATTERN } from '../../types/plugin/plugin-config.js';
|
|
3
3
|
import { SemVersion } from '../../types/publish/version.js';
|
|
4
4
|
import { format as f } from '../format.js';
|
|
5
5
|
import { noteWrapped, withSpinner } from '../prompt.js';
|
|
6
|
-
|
|
6
|
+
import { APIMATIC_CONFIG_FILE_NAME } from '../../types/apimatic-config/document.js';
|
|
7
7
|
export class PluginRecordMetadataPrompts {
|
|
8
|
+
metadataCancelled(reason) {
|
|
9
|
+
log.warn(`${reason}. Exiting without generating a plugin.`);
|
|
10
|
+
}
|
|
8
11
|
spinnerAccountInfo(fn) {
|
|
9
12
|
return withSpinner('Retrieving your subscription info', 'Subscription info retrieved', 'Subscription info retrieval failed', fn);
|
|
10
13
|
}
|
|
@@ -49,21 +52,21 @@ export class PluginRecordMetadataPrompts {
|
|
|
49
52
|
return { metadata: { pluginId, pluginName, pluginVersion } };
|
|
50
53
|
}
|
|
51
54
|
accountInfoUnavailable() {
|
|
52
|
-
log.warn(`Could not read your subscription info, so the author was left out of ${f.var(
|
|
55
|
+
log.warn(`Could not read your subscription info, so the author was left out of ${f.var(APIMATIC_CONFIG_FILE_NAME)}.`);
|
|
53
56
|
}
|
|
54
57
|
pluginConfigUnreadable() {
|
|
55
|
-
const message = `${f.var(
|
|
56
|
-
`Fix
|
|
58
|
+
const message = `${f.var(APIMATIC_CONFIG_FILE_NAME)} could not be read, so its plugin details were not written. ` +
|
|
59
|
+
`Fix it and try again.`;
|
|
57
60
|
log.error(message);
|
|
58
61
|
}
|
|
59
62
|
pluginConfigNotWritten() {
|
|
60
|
-
log.error(`${f.var(
|
|
63
|
+
log.error(`${f.var(APIMATIC_CONFIG_FILE_NAME)} could not be written, so its plugin details were not saved.`);
|
|
61
64
|
}
|
|
62
65
|
metadataRecorded(metadata) {
|
|
63
66
|
const message = `Plugin ID: ${f.var(metadata.pluginId)}\n` +
|
|
64
67
|
`Plugin Name: ${f.var(metadata.pluginName)}\n` +
|
|
65
68
|
`Version: ${f.var(metadata.pluginVersion)}\n\n` +
|
|
66
|
-
`Configuration saved to: ${f.var(
|
|
69
|
+
`Configuration saved to: ${f.var(APIMATIC_CONFIG_FILE_NAME)}`;
|
|
67
70
|
noteWrapped(message, 'Plugin Configuration');
|
|
68
71
|
}
|
|
69
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-metadata.js","sourceRoot":"","sources":["../../../src/prompts/plugin/record-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"record-metadata.js","sourceRoot":"","sources":["../../../src/prompts/plugin/record-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Result } from 'neverthrow';
|
|
2
|
+
import { ServiceError } from '../../infrastructure/service-error.js';
|
|
3
|
+
import { MissingArtifacts } from '../../types/portal/generated-pages.js';
|
|
4
|
+
import { PortalArtifacts } from '../../types/portal/portal-artifacts.js';
|
|
5
|
+
/** One step for the SDKs, the samples and the plugin, because one call produces all three. */
|
|
6
|
+
export declare function generateArtifacts(fn: Promise<Result<PortalArtifacts, ServiceError>>): Promise<Result<PortalArtifacts, ServiceError>>;
|
|
7
|
+
/** For example "the SDK and SDK docs for 'python', the SDK docs for 'csharp' and the context plugin". */
|
|
8
|
+
export declare function describeMissingArtifacts(missing: MissingArtifacts): string;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { format as f } from '../format.js';
|
|
2
|
+
import { withSpinner } from '../prompt.js';
|
|
3
|
+
/** One step for the SDKs, the samples and the plugin, because one call produces all three. */
|
|
4
|
+
export function generateArtifacts(fn) {
|
|
5
|
+
return withSpinner('Generating artifacts', 'Artifacts ready.', (error) => error.errorMessage, fn, {
|
|
6
|
+
indicator: 'timer'
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
/** For example "the SDK and SDK docs for 'python', the SDK docs for 'csharp' and the context plugin". */
|
|
10
|
+
export function describeMissingArtifacts(missing) {
|
|
11
|
+
const both = missing.sdks.filter((language) => missing.sdkDocs.includes(language));
|
|
12
|
+
const parts = [
|
|
13
|
+
...named('the SDK and SDK docs for', both),
|
|
14
|
+
...named('the SDK for', without(missing.sdks, both)),
|
|
15
|
+
...named('the SDK docs for', without(missing.sdkDocs, both)),
|
|
16
|
+
...(missing.plugin ? ['the context plugin'] : [])
|
|
17
|
+
];
|
|
18
|
+
return parts.length > 1 ? `${parts.slice(0, -1).join(', ')} and ${parts.at(-1)}` : parts.join('');
|
|
19
|
+
}
|
|
20
|
+
function named(what, languages) {
|
|
21
|
+
return languages.length === 0 ? [] : [`${what} ${languages.map((language) => f.var(language)).join(', ')}`];
|
|
22
|
+
}
|
|
23
|
+
function without(languages, excluded) {
|
|
24
|
+
return languages.filter((language) => !excluded.includes(language));
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=artifacts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/prompts/portal/artifacts.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,8FAA8F;AAC9F,MAAM,UAAU,iBAAiB,CAAC,EAAkD;IAClF,OAAO,WAAW,CAAC,sBAAsB,EAAE,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE;QAChG,SAAS,EAAE,OAAO;KACnB,CAAC,CAAC;AACL,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,wBAAwB,CAAC,OAAyB;IAChE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnF,MAAM,KAAK,GAAG;QACZ,GAAG,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC;QAC1C,GAAG,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpD,GAAG,KAAK,CAAC,kBAAkB,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC5D,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;IACF,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpG,CAAC;AAED,SAAS,KAAK,CAAC,IAAY,EAAE,SAA8B;IACzD,OAAO,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,OAAO,CAAC,SAA8B,EAAE,QAA6B;IAC5E,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PortalAuthorizationFailure } from '../../infrastructure/services/portal-authorization-service.js';
|
|
2
|
+
/**
|
|
3
|
+
* Shared by `portal generate` and `portal serve` so the same refusal always reads the
|
|
4
|
+
* same way, whichever command hit it.
|
|
5
|
+
*/
|
|
6
|
+
export declare function reportAuthorizationFailure(failure: PortalAuthorizationFailure): void;
|