1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- TS_TSC_CMD=$TOUCH_UNIT \
- && $_TS_FILES_COPY_CMD \
- && $NOTS_TOOL $NOTS_TOOL_BASE_ARGS build-tsc $NOTS_TOOL_COMMON_BUILDER_ARGS \
- $_NODE_MODULES_INOUTS ${hide:PEERS} \
- ${hide;input:"package.json"} ${TS_CONFIG_FILES} $_AS_HIDDEN_INPUTS(IN $TS_INPUT_FILES) \
- ${hide;output:"package.json"} \
- ${hide;kv:"pc magenta"} ${hide;kv:"p TS_TSC"}
- ### @usage: TS_TSC([name])
- ###
- ### The TypeScript/JavaScript library module, compiles TypeScript sources to JavaScript using tsc.
- ### Build results are JavaScript files, typings and source mappings (depending on local tsconfig.json settings).
- ###
- ### Documentation: https://docs.yandex-team.ru/frontend-in-arcadia/references/TS_TSC
- ###
- ### @example
- ###
- ### TS_TSC()
- ###
- ### END()
- ###
- multimodule TS_TSC {
- module BUILD: _TS_BASE_UNIT {
- .CMD=TS_TSC_CMD
- .EPILOGUE=_TS_CONFIG_EPILOGUE
- .PEERDIRSELF=TS_PREPARE_DEPS
- # by default multimodule overrides inherited MODULE_TAG to submodule name (BUILD in this case)
- # but we have to set it to TS for include processor to work
- SET(MODULE_TAG TS)
- SET(MODULE_LANG TS)
- _PEERDIR_TS_RESOURCE(typescript)
- DISABLE(TS_CONFIG_DEDUCE_OUT)
- ENABLE(TS_CONFIG_USE_OUTDIR)
- _TS_CONFIGURE()
- SET_APPEND(_MAKEFILE_INCLUDE_LIKE_DEPS ${CURDIR}/package.json ${CURDIR}/pnpm-lock.yaml ${CURDIR}/package-lock.json ${CURDIR}/${TS_CONFIG_PATH})
- _TS_ADD_NODE_MODULES_FOR_BUILDER()
- }
- module TS_PREPARE_DEPS: _PREPARE_DEPS_BASE {
- }
- }
|