UNPKG

@aws/pdk

Version:

All documentation is located at: https://aws.github.io/aws-pdk

49 lines 6.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TypescriptReactQueryHooksLibrary = void 0; /*! Copyright [Amazon.com](http://amazon.com/), Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ const javascript_1 = require("projen/lib/javascript"); const generated_typescript_library_project_1 = require("./generated-typescript-library-project"); const languages_1 = require("../../languages"); /** * Typescript project containing generated react-query hooks */ class TypescriptReactQueryHooksLibrary extends generated_typescript_library_project_1.GeneratedTypescriptLibraryProject { constructor(options) { super({ ...options, tsconfig: options.tsconfig ?? { compilerOptions: { jsx: javascript_1.TypeScriptJsxMode.REACT, }, }, }); this.useReactQueryV5 = options.useReactQueryV5; // Add dependencies on react-query and react if (this.useReactQueryV5) { this.addDeps("@tanstack/react-query@^5"); } else { this.addDeps("@tanstack/react-query@^4"); } this.addDevDeps("react", "@types/react"); this.addPeerDeps("react"); } buildCodegenOptions() { return { specPath: this.options.specPath, // Include the typescript client code in the hooks library templateDirs: [ `${languages_1.Language.TYPESCRIPT}/templates/client`, languages_1.Library.TYPESCRIPT_REACT_QUERY_HOOKS, ], metadata: { srcDir: this.srcdir, queryV5: !!this.useReactQueryV5, }, }; } } exports.TypescriptReactQueryHooksLibrary = TypescriptReactQueryHooksLibrary; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC1yZWFjdC1xdWVyeS1ob29rcy1saWJyYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidHlwZXNjcmlwdC1yZWFjdC1xdWVyeS1ob29rcy1saWJyYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBO3NDQUNzQztBQUN0QyxzREFBMEQ7QUFDMUQsaUdBR2dEO0FBQ2hELCtDQUFvRDtBQWVwRDs7R0FFRztBQUNILE1BQWEsZ0NBQWlDLFNBQVEsd0VBQWlDO0lBR3JGLFlBQVksT0FBeUQ7UUFDbkUsS0FBSyxDQUFDO1lBQ0osR0FBRyxPQUFPO1lBQ1YsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRLElBQUk7Z0JBQzVCLGVBQWUsRUFBRTtvQkFDZixHQUFHLEVBQUUsOEJBQWlCLENBQUMsS0FBSztpQkFDN0I7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUUvQyw0Q0FBNEM7UUFDNUMsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzNDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVE7WUFDL0IsMERBQTBEO1lBQzFELFlBQVksRUFBRTtnQkFDWixHQUFHLG9CQUFRLENBQUMsVUFBVSxtQkFBbUI7Z0JBQ3pDLG1CQUFPLENBQUMsNEJBQTRCO2FBQ3JDO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZTthQUNoQztTQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF0Q0QsNEVBc0NDIiwic291cmNlc0NvbnRlbnQiOlsiLyohIENvcHlyaWdodCBbQW1hem9uLmNvbV0oaHR0cDovL2FtYXpvbi5jb20vKSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wICovXG5pbXBvcnQgeyBUeXBlU2NyaXB0SnN4TW9kZSB9IGZyb20gXCJwcm9qZW4vbGliL2phdmFzY3JpcHRcIjtcbmltcG9ydCB7XG4gIEdlbmVyYXRlZFR5cGVzY3JpcHRMaWJyYXJ5UHJvamVjdCxcbiAgR2VuZXJhdGVkVHlwZXNjcmlwdExpYnJhcnlQcm9qZWN0T3B0aW9ucyxcbn0gZnJvbSBcIi4vZ2VuZXJhdGVkLXR5cGVzY3JpcHQtbGlicmFyeS1wcm9qZWN0XCI7XG5pbXBvcnQgeyBMYW5ndWFnZSwgTGlicmFyeSB9IGZyb20gXCIuLi8uLi9sYW5ndWFnZXNcIjtcbmltcG9ydCB7IENvZGVnZW5PcHRpb25zIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvdXRpbHNcIjtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUgZ2VuZXJhdGVkIHR5cGVzY3JpcHQgY2xpZW50IHByb2plY3RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW5lcmF0ZWRUeXBlc2NyaXB0UmVhY3RRdWVyeUhvb2tzUHJvamVjdE9wdGlvbnNcbiAgZXh0ZW5kcyBHZW5lcmF0ZWRUeXBlc2NyaXB0TGlicmFyeVByb2plY3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIFNldCB0byB0cnVlIHRvIHVzZSBAdGFuc3RhY2svcmVhY3QtcXVlcnkgdmVyc2lvbiA1LnhcbiAgICogQGRlZmF1bHQgZmFsc2UgLSBAdGFuc3RhY2svcmVhY3QtcXVlcnkgdmVyc2lvbiA0LnggaXMgdXNlZFxuICAgKi9cbiAgcmVhZG9ubHkgdXNlUmVhY3RRdWVyeVY1PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUeXBlc2NyaXB0IHByb2plY3QgY29udGFpbmluZyBnZW5lcmF0ZWQgcmVhY3QtcXVlcnkgaG9va3NcbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVzY3JpcHRSZWFjdFF1ZXJ5SG9va3NMaWJyYXJ5IGV4dGVuZHMgR2VuZXJhdGVkVHlwZXNjcmlwdExpYnJhcnlQcm9qZWN0IHtcbiAgcHJpdmF0ZSByZWFkb25seSB1c2VSZWFjdFF1ZXJ5VjU/OiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEdlbmVyYXRlZFR5cGVzY3JpcHRSZWFjdFF1ZXJ5SG9va3NQcm9qZWN0T3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0c2NvbmZpZzogb3B0aW9ucy50c2NvbmZpZyA/PyB7XG4gICAgICAgIGNvbXBpbGVyT3B0aW9uczoge1xuICAgICAgICAgIGpzeDogVHlwZVNjcmlwdEpzeE1vZGUuUkVBQ1QsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHRoaXMudXNlUmVhY3RRdWVyeVY1ID0gb3B0aW9ucy51c2VSZWFjdFF1ZXJ5VjU7XG5cbiAgICAvLyBBZGQgZGVwZW5kZW5jaWVzIG9uIHJlYWN0LXF1ZXJ5IGFuZCByZWFjdFxuICAgIGlmICh0aGlzLnVzZVJlYWN0UXVlcnlWNSkge1xuICAgICAgdGhpcy5hZGREZXBzKFwiQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5QF41XCIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFkZERlcHMoXCJAdGFuc3RhY2svcmVhY3QtcXVlcnlAXjRcIik7XG4gICAgfVxuICAgIHRoaXMuYWRkRGV2RGVwcyhcInJlYWN0XCIsIFwiQHR5cGVzL3JlYWN0XCIpO1xuICAgIHRoaXMuYWRkUGVlckRlcHMoXCJyZWFjdFwiKTtcbiAgfVxuXG4gIHB1YmxpYyBidWlsZENvZGVnZW5PcHRpb25zKCk6IENvZGVnZW5PcHRpb25zIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3BlY1BhdGg6IHRoaXMub3B0aW9ucy5zcGVjUGF0aCxcbiAgICAgIC8vIEluY2x1ZGUgdGhlIHR5cGVzY3JpcHQgY2xpZW50IGNvZGUgaW4gdGhlIGhvb2tzIGxpYnJhcnlcbiAgICAgIHRlbXBsYXRlRGlyczogW1xuICAgICAgICBgJHtMYW5ndWFnZS5UWVBFU0NSSVBUfS90ZW1wbGF0ZXMvY2xpZW50YCxcbiAgICAgICAgTGlicmFyeS5UWVBFU0NSSVBUX1JFQUNUX1FVRVJZX0hPT0tTLFxuICAgICAgXSxcbiAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgIHNyY0RpcjogdGhpcy5zcmNkaXIsXG4gICAgICAgIHF1ZXJ5VjU6ICEhdGhpcy51c2VSZWFjdFF1ZXJ5VjUsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==