├── LICENSE.md ├── README.md ├── client ├── .gitignore ├── .vscode │ ├── launch.json │ ├── settings.json │ ├── symbols.json │ └── tasks.json ├── .vscodeignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── WHATSNEW.md ├── gulpclass.ts ├── gulpfile.js ├── img │ └── OpenUI5_logo.png ├── jsonschemas │ └── manifest.schema.json ├── package.json ├── schemastore │ ├── sap.m.xsd │ ├── sap.tnt.xsd │ ├── sap.ui.commons.xsd │ ├── sap.ui.core.xsd │ ├── sap.ui.demokit.xsd │ ├── sap.ui.dt.xsd │ ├── sap.ui.layout.xsd │ ├── sap.ui.suite.xsd │ ├── sap.ui.table.xsd │ ├── sap.ui.unified.xsd │ ├── sap.ui.ux3.xsd │ └── sap.uxap.xsd ├── server │ ├── Log.js │ ├── Log.js.map │ ├── filehandler.js │ ├── filehandler.js.map │ ├── installServerIntoExtension │ ├── installServerIntoExtension.cmd │ ├── package.json │ ├── providers │ │ ├── XmlCompletionProvider.js │ │ ├── XmlCompletionProvider.js.map │ │ ├── XmlDiagnosticProvider.js │ │ ├── XmlDiagnosticProvider.js.map │ │ ├── XmlHoverProvider.js │ │ └── XmlHoverProvider.js.map │ ├── server.js │ ├── server.js.map │ ├── test │ │ ├── xmllintertests.js │ │ └── xmllintertests.js.map │ ├── xmltypes.js │ └── xmltypes.js.map ├── snippets │ ├── typescript.json │ └── xml.json ├── src │ ├── Settings.ts │ ├── UI5Extension.ts │ ├── baseclasses.ts │ ├── commands.ts │ ├── extension.ts │ ├── helpers │ │ ├── filehandler.ts │ │ └── logging.ts │ └── language │ │ ├── js │ │ ├── ModuleReferenceProvider.js │ │ └── ModuleReferenceProvider.ts │ │ ├── searchFunctions.ts │ │ ├── ts │ │ └── IDCompletionProvider.ts │ │ ├── ui5 │ │ ├── Ui5DefinitionProviders.ts │ │ ├── Ui5ManifestCompletionProviders.ts │ │ ├── Ui5ManifestDiagnostics.ts │ │ ├── Ui5RenameProviders.ts │ │ └── Ui5TsCodeLensProviders.ts │ │ └── xml │ │ ├── I18nCompletionProvider.ts │ │ ├── XmlActionProviders.ts │ │ └── XmlDiagnostics.ts ├── templates │ ├── Component.ts │ ├── index.html │ └── project │ │ ├── .vscode │ │ └── launch.json │ │ ├── controller │ │ └── App.controller.ts │ │ ├── i18n │ │ └── i18n.properties │ │ ├── manifest.json │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── view │ │ └── App.view.xml ├── test │ ├── extension.test.ts │ └── index.ts ├── tsconfig.json ├── tslint.json ├── typings.json └── typings │ └── manifest.d.ts ├── ui5manifestjsonserver ├── .gitignore ├── .vscode │ ├── launch.json │ ├── settings.json │ ├── symbols.json │ └── tasks.json ├── License.txt ├── README.md ├── ThirdPartyNotices.txt ├── debug.log ├── npm-debug.log ├── package.json ├── src │ ├── filehandler.ts │ └── server.ts ├── tsconfig.json └── typings │ ├── manifest.d.ts │ ├── node │ └── node.d.ts │ ├── promise.d.ts │ └── recursive-readdir │ └── recursive-readdir.d.ts └── ui5xmlserver ├── .gitignore ├── .vscode ├── launch.json ├── settings.json ├── symbols.json └── tasks.json ├── License.txt ├── README.md ├── ThirdPartyNotices.txt ├── debug.log ├── package.json ├── src ├── Log.ts ├── filehandler.ts ├── providers │ ├── XmlCompletionProvider.ts │ ├── XmlDiagnosticProvider.ts │ └── XmlHoverProvider.ts ├── server.ts ├── test │ ├── qunit-2.1.1.js │ ├── tests.html │ └── xmllintertests.ts └── xmltypes.ts ├── tsconfig.json ├── tslint.json └── typings ├── index.d.ts ├── modules └── xml2js │ ├── index.d.ts │ └── typings.json ├── qunit.d.ts ├── recursive-readdir └── recursive-readdir.d.ts └── xsd.d.ts /LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ui5ts Extension 2 | 3 | This extension aims to improve the experience using UI5 with typescript. 4 | 5 | > This extension is not officially supported by SAP or the openUi5 team. It is currently in an alpha phase. Please report issues. 6 | 7 | ## Features 8 | 9 | * Code snippets for generating views and controllers in typescript 10 | * Generator for getting up-to-date typescript declarations for UI5 (customizable) 11 | * Navigation between views and controllers 12 | * Schemas for manifest.json 13 | 14 | ## Requirements 15 | 16 | none 17 | 18 | ## Extension Settings 19 | 20 | none 21 | 22 | ## Usage 23 | 24 | This section will help getting you started. 25 | 26 | ### Code snippets 27 | 28 | All snippets start with `ui5ts:`. 29 | 30 | #### Document outlines 31 | To create a new xml view or controller just create your file at the desired position and type `ui5ts.doc:` to get the suggestions. 32 | 33 | ## Known Issues 34 | 35 | * Navigation between controller and view may not work, if controller is used in multiple views. 36 | * Problems getting the right controllers in large projects (multiple manifests) 37 | 38 | ## Release Notes 39 | 40 | ### 0.1.0 - alpha: First Release 41 | 42 | 43 | ----------------------------------------------------------------------------------------------------------- 44 | 45 | ## Working with Markdown 46 | 47 | **Note:** You can author your README using Visual Studio Code. Here are some useful editor keyboard shortcuts: 48 | 49 | * Split the editor (`Cmd+\` on OSX or `Ctrl+\` on Windows and Linux) 50 | * Toggle preview (`Shift+CMD+V` on OSX or `Shift+Ctrl+V` on Windows and Linux) 51 | * Press `Ctrl+Space` (Windows, Linux) or `Cmd+Space` (OSX) to see a list of Markdown snippets 52 | 53 | ### For more information 54 | 55 | * [Visual Studio Code's Markdown Support](http://code.visualstudio.com/docs/languages/markdown) 56 | * [Markdown Syntax Reference](https://help.github.com/articles/markdown-basics/) 57 | 58 | **Enjoy!** 59 | -------------------------------------------------------------------------------- /client/.gitignore: -------------------------------------------------------------------------------- 1 | out 2 | node_modules 3 | schemastore -------------------------------------------------------------------------------- /client/.vscode/launch.json: -------------------------------------------------------------------------------- 1 | // A launch configuration that compiles the extension and then opens it inside a new window 2 | { 3 | "version": "0.1.0", 4 | "configurations": [ 5 | { 6 | "name": "Launch Extension", 7 | "type": "extensionHost", 8 | "request": "launch", 9 | "runtimeExecutable": "${execPath}", 10 | "args": ["--extensionDevelopmentPath=${workspaceRoot}" ], 11 | "stopOnEntry": false, 12 | "sourceMaps": true, 13 | "outDir": "${workspaceRoot}/out/src", 14 | "preLaunchTask": "npm" 15 | }, 16 | { 17 | "name": "Launch Tests", 18 | "type": "extensionHost", 19 | "request": "launch", 20 | "runtimeExecutable": "${execPath}", 21 | "args": ["--extensionDevelopmentPath=${workspaceRoot}", "--extensionTestsPath=${workspaceRoot}/out/test" ], 22 | "stopOnEntry": false, 23 | "sourceMaps": true, 24 | "outDir": "${workspaceRoot}/out/test", 25 | "preLaunchTask": "npm" 26 | } 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /client/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "files.exclude": { 4 | "**/*.js": { "when": "$(basename).ts" }, 5 | "out/*": true, // set this to true to hide the "out" folder with the compiled JS files 6 | "node_modules/*": true 7 | }, 8 | "search.exclude": { 9 | "out/**/*": true, // set this to false to include "out" folder in search results 10 | "node_modules/**/*": true 11 | }, 12 | "typescript.tsdk": "./node_modules/typescript/lib", 13 | "vsicons.presets.angular": false, // we want to use the TS server from our node_modules folder to control its version 14 | "markdownlint.config": { 15 | "MD013": false, 16 | "MD024": false 17 | }, 18 | "tslint.alwaysShowRuleFailuresAsWarnings": true 19 | } -------------------------------------------------------------------------------- /client/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | // Available variables which can be used inside of strings. 2 | // ${workspaceRoot}: the root folder of the team 3 | // ${file}: the current opened file 4 | // ${fileBasename}: the current opened file's basename 5 | // ${fileDirname}: the current opened file's dirname 6 | // ${fileExtname}: the current opened file's extension 7 | // ${cwd}: the current working directory of the spawned process 8 | 9 | // A task runner that calls a custom npm script that compiles the extension. 10 | { 11 | "version": "0.1.0", 12 | 13 | // we want to run npm 14 | "command": "npm", 15 | 16 | // the command is a shell script 17 | "isShellCommand": true, 18 | 19 | // show the output window only if unrecognized errors occur. 20 | "showOutput": "silent", 21 | 22 | // we run the custom script "compile" as defined in package.json 23 | "args": ["run", "compile", "--loglevel", "silent"], 24 | 25 | // The tsc compiler is started in watching mode 26 | "isBackground": true, 27 | 28 | // use the standard tsc in watch mode problem matcher to find compile problems in the output. 29 | "problemMatcher": "$tsc-watch" 30 | } -------------------------------------------------------------------------------- /client/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | out/test/** 4 | test/** 5 | src/** 6 | **/*.map 7 | .gitignore 8 | tsconfig.json 9 | vsc-extension-quickstart.md 10 | typings/** 11 | -------------------------------------------------------------------------------- /client/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | All notable changes to this project will be documented in this file. 4 | 5 | The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). 6 | 7 | ## [Unreleased] 8 | 9 | ### Add 10 | 11 | * Typescript AMD declaration generator 12 | * Project generator (with browser sync) 13 | * CodeLens for fragments 14 | * Custom Typescript compiler to get better UI5 Syntax 15 | * XML Diagnostics for Elements, Attributes and their values 16 | * Autocomplete for XML base types (boolean) 17 | * JSON view JSON schemas 18 | * Show I18n label text on hover (XML view) 19 | * I18n multiple files support from manifest json (no setting needed anymore) 20 | 21 | ## [0.5.0] - 2017-07-28 - Productivity update 22 | 23 | ### Added 24 | 25 | * Goto Event Callback from fragment 26 | * Rename event callbacks in typescript files will also rename them in views / fragments (Insiders - buggy - wait for vscode team) 27 | * Check for missing controller in xml view 28 | * GoTo Controller(s) from Fragments 29 | 30 | ### Changed 31 | 32 | * CodeLens Callback provider does not show up when no callbacks are given 33 | * Settings structure back to old scheme (not compatible with contributions site) 34 | 35 | ### Fixed 36 | 37 | * I18n Label linter stopped working 38 | * Goto i18n Label stopped working (#27) 39 | * Callback display does not work when callback is in fragment (#29) 40 | * Goto event handler does not work on async methods (#28) 41 | * Extension startup does not create namespace mappings and manifest location 42 | * Path resolving in manifest.json (Router section) 43 | * Views not found in targets section of manifest.json 44 | 45 | ## [0.4.1] - 2017-06-30 - XML Server Fix 46 | 47 | ### Fixed 48 | 49 | * XML Server crashed when no lang.xml settings is present in workspace config 50 | 51 | ## [0.4.0] - 2017-06-26 - Major XML Improvements 52 | 53 | ### Added 54 | 55 | * Completion for Enumeration 56 | * Insider Mode for review procedure 57 | * [Insider] Goto Module -> Credit & thanks to [anacierdem](https://github.com/anacierdem) for letting me use the code of his [Require Module Support Provider](https://marketplace.visualstudio.com/items?itemName=lici.require-js) 58 | * XML Hover Provider 59 | * CodeLens for event handlers (callacks) 60 | * GoTo Event from View 61 | 62 | ### Changed 63 | 64 | * XML elements on parent element are now displayed as properties 65 | * Layout of the config section 66 | 67 | ### Fixed 68 | 69 | * Fixed element finding in XML Language Server 70 | * Fixed wrong types for elements in XML Language Server 71 | * Fixed attribute showing up when in attribute value section (part in quotes) 72 | * Fixed annoying manifest location found message, if manifest is set in workspace settings 73 | 74 | ## [0.3.1] - 2017-04-04 75 | 76 | ### Fixed 77 | 78 | * I18N file was not found due to wrong relative path 79 | 80 | ## [0.3.0] - 2017-03-28 81 | 82 | ### Added 83 | 84 | * Relative source path to source project (in preparation to the project template) 85 | * Extension listens to workspace config changes 86 | 87 | ### Changed 88 | 89 | * Switch to controller and view commands are now using relative root path (location of manifest.json) 90 | * I18n file is now resolved relative to the manifest.json path (default still ./i18n/i18n.properties) 91 | * Improved readme 92 | 93 | ## [0.2.8] - 2017-03-23 94 | 95 | ### Fixed 96 | 97 | * XML View was in ts file 98 | * typescript.json was not referenced correctly in project json 99 | * Updated README to provide help which snippets are available 100 | 101 | ## [0.2.7] - 2017-03-20 102 | 103 | ### Fixed 104 | 105 | * Root element was not recognized 106 | * Autocomplete crashed when Elements were in subattributes of their parent element 107 | 108 | ## [0.2.6] - 2017-03-15 109 | 110 | ### Fixed 111 | 112 | * Goto fragments, controllers and other views from views and fragments 113 | 114 | ## [0.2.5] - 2017-03-09 115 | 116 | ### Fixed 117 | 118 | * xml2js linting did not work 119 | 120 | ## [0.2.4] - 2017-03-04 121 | 122 | ### Added 123 | 124 | * I18n diagnostic will automatically updated when i18n.properties file is changed 125 | * XML Diagnostic attribute check (double attributes) 126 | * XML CodeCompletion for SimpleForm (`sap.ui.layout.form`) and Views (`sap.ui.core.mvc`) 127 | 128 | ### Fixed 129 | 130 | * XML Attribute search improved 131 | 132 | ## [0.2.3] - 2017-02-25 133 | 134 | ### Added 135 | 136 | * I18n Diagnostic provider for existing labels 137 | * Create new I18n Label via command or CodeAction 138 | * Go to definition of i18n label 139 | 140 | ### Fixed 141 | 142 | * Code completion for i18n label 143 | * Improved Element Crawling in language server, can now resolve subelements properly 144 | * Split some ui5 specific features from xml language server 145 | 146 | ## [0.2.2] - 2017-02-23 147 | 148 | ### Fixed 149 | 150 | * Fixed false auto delete empty tag closing wrong element. 151 | 152 | ## [0.2.1] - 2017-02-23 153 | 154 | ### Fixed 155 | 156 | * Completion Items for i18n model weren't generated 157 | * Removed wrong feature in Readme.md 158 | 159 | ## [0.2.0] - 2017-02-22 160 | 161 | ### Added 162 | 163 | * Autoclose on empty XML Elements when putting / at the end. 164 | * Context menu entries for switch to controller and switch to view 165 | 166 | ### Fixed 167 | 168 | * Replaced document crawling algorithm for code completion with a much more stable one 169 | 170 | ## [0.1.4] - 2017-02-21 171 | 172 | ### Fixed 173 | 174 | * Extension did not start due to missing modlue 175 | 176 | ## [0.1.1] - 2017-02-21 177 | 178 | ### Added 179 | 180 | * Added Changelog 181 | 182 | ## [0.1.0] - 2017-02-21 183 | 184 | ### Added 185 | 186 | * Initial Release -------------------------------------------------------------------------------- /client/README.md: -------------------------------------------------------------------------------- 1 | # ui5ts Extension 2 | 3 | > **Important Note**
4 | > In Version `0.4.0` The settings were restructured. This did not work, as vscode could not display it this way in the contribution section. Please check your workspace settings and adjust it accordingly. I am sorry for the inconvenience. 5 | 6 | This extension improves the experience using UI5 with typescript. It is also targeted to give a quicker start in developing UI5, but also more experieced users may have a profit. 7 | 8 | It is currently work in progress. It also may benefit js programming, as I try to keep all filesearches to both, ts and js file endings. Please let me know on github, if something mentioned below does not work for js. 9 | 10 | Since version 0.4.0, though, the typescript compiler and its language server are part of the extension to improve the editing experience. goto providers, refactoring, linting and other editing features are exclusive to typescript development in the future. 11 | 12 | ## Disclaimer 13 | 14 | > This extension is not officially supported by SAP or the openUi5 team. It is currently in an early development phase, so [please report any issues](https://github.com/apazureck/openui5vscodeTypescriptTools/issues) you have. If you want to contribute, feel free to conatct me via [Github](https://github.com/apazureck/openui5vscodeTypescriptTools/issues). I will also update it quite frequently for the next time, which may cause some new bugs. 15 | 16 | ## What is new in Version 0.5.0 17 | 18 | * ID Completion when using byId() method of controller class 19 | * GoTo Event callback from fragment (+ improved navigation with typescript language service) 20 | * Check for missing controller files in xml views 21 | 22 | ## Features 23 | 24 | * **Code snippets** see also snippet section under Usage, will automatically updated if new snippets are available. Contribution welcome! 25 | * generate views and controllers in typescript (ts only) 26 | * **Navigation** between views and controllers 27 | * Navigation between views and controllers using `CTRL+F7` _(view)_ or `CTRL+SHIFT+F7` _(controller)_. 28 | * Navigation between fragments and controllers using `CTRL+F7` _(fragment)_ 29 | * Go to event handlers by pressing `F12`. 30 | * **i18n** support 31 | * Code completion for labels in XML views 32 | * Autogeneration for labels (via Command and CodeAction) 33 | * Peek and Goto i18n label definition (XML view) 34 | * **manifest.json** support 35 | * JSON Schema 36 | * Autocomplete for routings 37 | * Check if target views exist 38 | * **XML** support 39 | * Code completion for XML views (Attributes, Elements and Attribute Values (Enum)) 40 | * Simple check for well-formed xml files 41 | * Check for double attributes 42 | * Hover support for Elements and Attributes 43 | * Check for missing controller 44 | * **Project Template** with auto compile, bower support and browser sync 45 | * [Check out this repo for now](https://github.com/apazureck/UI5TypescriptDeclarations/tree/master/generator) 46 | * Will be included in one of the next releases, if stable enough 47 | * **Code Lens** 48 | * Code lens for events referenced in XML views (on Typescript Controllers) 49 | * **Typescript** 50 | * Autocompletion for ID (works only for byId() method and will be improved in future releases) 51 | 52 | ## Requirements 53 | 54 | Get the typescript declarations: 55 | 56 | 1. [Typescript definitions](https://github.com/apazureck/UI5TypescriptDeclarations) (based on UI5 Version 1.42.6) for UI5 from the repository or check out the [typescript generator](https://github.com/apazureck/openui5TypescriptGenerator) (currently C#/.NET). 57 | 1. There are also other Typescript declarations on dt, so check out these, if you like: `typings install openui5`. These are also used by vscode when writing js code. 58 | 1. There is [another generator](https://github.com/maylukas/openui5-typescript-definition-parser) written in typescript. This generator may be included in this extension in a later release, if the author is ok with that. 59 | 60 | I can reccomend using the first generator, as it also respects the UI5 version you want to use, but feel free to experiment on that topic for now. 61 | 62 | ## Usage 63 | 64 | This extension will start if you open any xml file or your workspace contains any manifest.json file. Check if the XML Language server gets started in the output window. 65 | 66 | From Version `0.3.0` on you should be informed either 67 | 68 | 1. no manifest.json is found. 69 | 1. multiple manifest.json files were found (Quickpick to choose). 70 | 1. exactly 1 manifest.json file is found. 71 | 72 | After that the manifest.json location will be added to your workspace settings. All search for views, controllers, etc. will be done in the folders below this manifest.json, so make sure you have one in your project. [Use this template to get started](https://github.com/apazureck/UI5TypescriptDeclarations/tree/master/generator) (will be included in this extension in the near future). 73 | 74 | You may also manually set the manifest.json, even if you do not have any. It may work this way, too. Just set it manually in the settings.json 75 | 76 | ### Commands 77 | 78 | 1. Go to controller `CTRL + F7` (works only in xml views (maybe also in json views, not tested so far)) 79 | 1. Go to view `CTRL + Shift + F7` (works only in js,ts controllers) 80 | 1. Go to from view or fragment to fragment, view or controller: Put cursor on line with view/fragment/controller and press `F12` 81 | 82 | ### i18n 83 | 84 | 1. Set up your relative model file path in your workspace settings `ui5ts.lang.i18n.modelfilelocation` (default `/i18n/i18n.properties`). 85 | 1. Set up your model name in your workspace settings `ui5ts.lang.i18n.modelname` (default `i18n`) 86 | 87 | After that the xml files should be checked for missing labels. Check your Problems window on that. If a missing label is found a code action will allow you to add it to your i18n file. It will always be appended (no sorting so far). 88 | 89 | ### Tell me more... 90 | 91 | Check out for more detail at the [Wiki on Github](https://github.com/apazureck/openui5vscodeTypescriptTools/wiki). Contribution very welcome here! 92 | 93 | ## Snippets 94 | 95 | If you have useful snippets to share please [let me know](https://github.com/apazureck/openui5vscodeTypescriptTools/issues). 96 | 97 | ### Typescript 98 | 99 | 100 | 101 | * `ui5controller`: Inserts a new UI5 typescript controller 102 | 103 | 104 | 105 | ### XML 106 | 107 | 108 | 109 | * `i18n`: Creates a model reference with i18n address 110 | * `labeli18n`: Creates a label with i18n address 111 | * `titlei18n`: Creates a title with i18n address 112 | * `sapmodel`: Creates a sap.m.Text element with text property 113 | * `ui5xmlview`: Inserts a new UI5 XML page 114 | 115 | 116 | 117 | ## Known Issues 118 | 119 | This is a early release, therefore, functionallity is very limited and the functions provided are not stable and may not work in all circumstances. If you confront any problems let me know by [creating an issue](https://github.com/apazureck/openui5vscodeTypescriptTools/issues) on github. 120 | 121 | 1. The extension always bothers that no manifest.json is found. This may be an activation issue and will be addressed in the future. 122 | 1. XML autocomplete is sometimes not working (for example at closing brackets) and insertion of completed code is causing some brackets to be double. This will be addressed in the future. 123 | 124 | ## Contribution welcome 125 | 126 | I am currently doing this project as a kind of a hobby and I am always glad, if I can get feedback. Rate and review this extension or support it by contributing some code. 127 | 128 | * [Fork on Github](https://github.com/apazureck/openui5vscodeTypescriptTools) 129 | * [Report a bug or request a Features](https://github.com/apazureck/openui5vscodeTypescriptTools/issues) 130 | * [Share your knowledge and extend the wiki](https://github.com/apazureck/openui5vscodeTypescriptTools/wiki) 131 | 132 | ## Insiders Mode 133 | 134 | The insiders mode is for publishing instable or not tested features released for a first beta test. Activate this to get the latest features. 135 | 136 | ### Activate Insiders Mode 137 | 138 | To get to the Insiders Mode just go to your **User Settings** and set `"ui5ts.insiders": true`. Please don't forget to [Report Bugs](https://github.com/apazureck/openui5vscodeTypescriptTools/issues). 139 | 140 | ### Currently Available in Insiders Mode 141 | 142 | * Go to Module and function (javascript) 143 | * Rename Callback (This will prevent typescript to proceed rename, if callback is found in xml view) 144 | 145 | ## Special Thanks to 146 | 147 | * [anacierdem](https://github.com/anacierdem) for letting me use some code of his [Require Module Support Provider](https://marketplace.visualstudio.com/items?itemName=lici.require-js)! -------------------------------------------------------------------------------- /client/WHATSNEW.md: -------------------------------------------------------------------------------- 1 | # What's new 2 | 3 | ## What is new in Version 0.4.0 4 | 5 | * GoTo Event on Controller (typescript only) 6 | * GoTo Controller from Fragment 7 | * Better XML Autocomplete 8 | * Hover Providers for XML Views 9 | * Code Lens for event handlers (callbacks) on typescript controllers -------------------------------------------------------------------------------- /client/gulpclass.ts: -------------------------------------------------------------------------------- 1 | import { Gulpclass, Task } from "gulpclass/Decorators" 2 | import * as gulp from "gulp" 3 | 4 | @Gulpclass() 5 | class Gulp { 6 | @Task() 7 | installLocal(cb: Function) { 8 | let i = 0; 9 | } 10 | } -------------------------------------------------------------------------------- /client/gulpfile.js: -------------------------------------------------------------------------------- 1 | var gulp = require('gulp'), 2 | fs = require('fs'), 3 | gutil = require('gulp-util'), 4 | sequence = require('run-sequence'); 5 | 6 | gulp.task('default', function() { 7 | return sequence('updatereadmetssnippets', 'updatereadmexmlsnippets'); 8 | }); 9 | 10 | gulp.task('updatereadmetssnippets', function() { 11 | var txt = fs.readFileSync('snippets/typescript.json', 'utf-8'); 12 | gutil.log(txt.substring(990, 1000)); 13 | var snippets = JSON.parse(txt); 14 | var snippetlist = "\n"; 15 | for (var sname in snippets) { 16 | var snippet = snippets[sname]; 17 | snippetlist += "* `" + snippet.prefix + "`: " + snippet.description + "\n"; 18 | } 19 | snippetlist += "\n"; 20 | var readme = fs.readFileSync('README.md', 'utf-8'); 21 | readme = readme.replace(/[\s\S]*/, "" + snippetlist + ""); 22 | return fs.writeFileSync('README.md', readme); 23 | }); 24 | 25 | gulp.task('updatereadmexmlsnippets', function() { 26 | var txt = fs.readFileSync('snippets/xml.json', 'utf-8'); 27 | var snippets = JSON.parse(txt); 28 | var snippetlist = "\n\n"; 29 | for (var sname in snippets) { 30 | var snippet = snippets[sname]; 31 | snippetlist += "* `" + snippet.prefix + "`: " + snippet.description + "\n"; 32 | } 33 | snippetlist += "\n"; 34 | var readme = fs.readFileSync('README.md', 'utf-8'); 35 | readme = readme.replace(/[\s\S]*/, "" + snippetlist + ""); 36 | return fs.writeFileSync('README.md', readme); 37 | }); -------------------------------------------------------------------------------- /client/img/OpenUI5_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apazureck/openui5vscodeTypescriptTools/3298d6478ba0f8570df5dc8f32aa316fc73c4a90/client/img/OpenUI5_logo.png -------------------------------------------------------------------------------- /client/schemastore/sap.ui.dt.xsd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /client/schemastore/sap.ui.suite.xsd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | This control shows a circle which radius and color depends on the given parameters 7 | 8 | 9 | 10 | 11 | This control shows a vertical progress bar in dependency of the given percentage. Only values between 0 and 100 are valid. 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | Current value of the task circle to be displayed. In dependency of the parameters maxValue and minValue it controls the size of the circle. 21 | 22 | 23 | 24 | 25 | Upper limit of the displayed values. Default is 100. 26 | 27 | 28 | 29 | 30 | Lower limit of the displayed values. Default is 0. 31 | 32 | 33 | 34 | 35 | Color of the circle. The default color is red. 36 | 37 | 38 | 39 | 40 | Association to controls / ids which label this control (see WAI-ARIA attribute aria-labelledby). 41 | 42 | 43 | 44 | 45 | Association to controls / ids which describe this control (see WAI-ARIA attribute aria-describedby). 46 | 47 | 48 | 49 | 50 | Event is fired when the user clicks the control. 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | The numerical value between 0 and 100 which determines the height of the vertical bar. Values higher than 100 will be displayed as 100%, values lower than zero will be displayed as 0%. 63 | 64 | 65 | 66 | 67 | Association to controls / ids which label this control (see WAI-ARIA attribute aria-labelledby). 68 | 69 | 70 | 71 | 72 | Association to controls / ids which describe this control (see WAI-ARIA attribute aria-describedby). 73 | 74 | 75 | 76 | 77 | Event is fired when the user clicks the control. 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | Red 88 | 89 | 90 | 91 | 92 | Yellow 93 | 94 | 95 | 96 | 97 | Green 98 | 99 | 100 | 101 | 102 | Default value 103 | 104 | 105 | 106 | 107 | 108 | -------------------------------------------------------------------------------- /client/server/Log.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | (function (LogLevel) { 3 | LogLevel[LogLevel["Debug"] = 0] = "Debug"; 4 | LogLevel[LogLevel["Information"] = 1] = "Information"; 5 | LogLevel[LogLevel["Warning"] = 2] = "Warning"; 6 | LogLevel[LogLevel["Error"] = 3] = "Error"; 7 | LogLevel[LogLevel["None"] = 4] = "None"; 8 | })(exports.LogLevel || (exports.LogLevel = {})); 9 | var LogLevel = exports.LogLevel; 10 | /** 11 | * A base class to send log messages to the client 12 | * 13 | * @export 14 | * @class Log 15 | */ 16 | class Log { 17 | /** 18 | * Creates an instance of Log. 19 | * @param {IConnection} connection The connection to the client 20 | * @param {LogLevel} loglevel The loglevel of this instance 21 | * 22 | * @memberOf Log 23 | */ 24 | constructor(connection, loglevel) { 25 | this.connection = connection; 26 | this.loglevel = loglevel; 27 | } 28 | /** 29 | * Sends a debug message to the client output. 30 | * 31 | * @param {LogMessage} message 32 | * 33 | * @memberOf Log 34 | */ 35 | logDebug(message) { 36 | try { 37 | if (this.loglevel <= LogLevel.Debug) { 38 | let d = new Date; 39 | if (typeof message === "string") 40 | this.connection.console.log("[Debug - " + d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds() + "] " + message); 41 | else 42 | this.connection.console.log("[Debug - " + d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds() + "] " + message()); 43 | } 44 | } 45 | catch (error) { 46 | } 47 | } 48 | /** 49 | * Sends a log message without any prefix or date. 50 | * 51 | * @param {LogMessage} message message to send, either a string or a function returning a string. 52 | * @param {LogLevel} [level] default = 0 53 | * 54 | * @memberOf Log 55 | */ 56 | log(message, level) { 57 | try { 58 | if (!level) 59 | level = 0; 60 | if (!message) 61 | message = " "; 62 | if (this.loglevel <= level) { 63 | let d = new Date; 64 | if (typeof message === "string") 65 | this.connection.console.log(message); 66 | else 67 | this.connection.console.log(message()); 68 | } 69 | } 70 | catch (error) { 71 | } 72 | } 73 | /** 74 | * Sends an info message to the client output 75 | * 76 | * @param {LogMessage} message 77 | * 78 | * @memberOf Log 79 | */ 80 | logInfo(message) { 81 | try { 82 | if (this.loglevel <= LogLevel.Debug) { 83 | if (typeof message === "string") 84 | this.connection.console.info(message); 85 | else 86 | this.connection.console.info(message()); 87 | } 88 | } 89 | catch (error) { 90 | } 91 | } 92 | /** 93 | * Sends a warning message to the client output 94 | * 95 | * @param {LogMessage} message 96 | * 97 | * @memberOf Log 98 | */ 99 | logWarn(message) { 100 | try { 101 | if (this.loglevel <= LogLevel.Warning) { 102 | if (typeof message === "string") 103 | this.connection.console.warn(message); 104 | else 105 | this.connection.console.warn(message()); 106 | } 107 | } 108 | catch (error) { 109 | } 110 | } 111 | /** 112 | * Sends an error message to the client output 113 | * 114 | * @param {LogMessage} message 115 | * 116 | * @memberOf Log 117 | */ 118 | logError(message) { 119 | try { 120 | if (this.loglevel <= LogLevel.Error) { 121 | if (typeof message === "string") 122 | this.connection.console.error(message); 123 | else 124 | this.connection.console.error(message()); 125 | } 126 | } 127 | catch (error) { 128 | } 129 | } 130 | /** 131 | * Sends a fatal error to the client output. Fatal errors are displayed regardless of the loglevel. 132 | * 133 | * @param {LogMessage} message 134 | * 135 | * @memberOf Log 136 | */ 137 | logFatalError(message) { 138 | try { 139 | if (typeof message === "string") 140 | this.connection.console.error("FATAL ERROR: " + message); 141 | else 142 | this.connection.console.error("FATAL ERROR: " + message()); 143 | } 144 | catch (error) { 145 | } 146 | } 147 | } 148 | exports.Log = Log; 149 | //# sourceMappingURL=Log.js.map -------------------------------------------------------------------------------- /client/server/Log.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../ui5xmlserver/src/Log.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /client/server/filehandler.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 3 | return new (P || (P = Promise))(function (resolve, reject) { 4 | function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } 5 | function rejected(value) { try { step(generator.throw(value)); } catch (e) { reject(e); } } 6 | function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } 7 | step((generator = generator.apply(thisArg, _arguments)).next()); 8 | }); 9 | }; 10 | const rrd = require('recursive-readdir'); 11 | const fs = require('fs'); 12 | const server_1 = require('./server'); 13 | /** 14 | * File interface 15 | * 16 | * @export 17 | * @class File 18 | */ 19 | class File { 20 | /** 21 | * async file search method. 22 | * 23 | * @static 24 | * @param {(string|RegExp)} pattern to search for. 25 | * @param {string} [startdir] to start search at. default: workspace root path 26 | * @returns {Promise} 27 | * 28 | * @memberOf File 29 | */ 30 | static findAsync(pattern, startdir) { 31 | return __awaiter(this, void 0, void 0, function* () { 32 | startdir = startdir ? startdir : server_1.Global.workspaceRoot; 33 | let matcher = typeof pattern === "string" ? new RegExp(pattern) : pattern; 34 | return new Promise((resolve, reject) => { 35 | rrd(startdir, (err, files) => { 36 | if (err) { 37 | reject(err); 38 | return; 39 | } 40 | let result = files.filter(x => x.match(matcher) != null); 41 | if (result) 42 | resolve(result); 43 | else 44 | reject(); 45 | }); 46 | }); 47 | }); 48 | } 49 | /** 50 | * 51 | * @static 52 | * @param {(RegExp|string)} pattern Filepattern to search for 53 | * @param {string} [startdir] dir to start (if none is given workspace is taken) 54 | * @returns {string[]} files 55 | * 56 | * @memberOf File 57 | */ 58 | static find(pattern, startdir) { 59 | startdir = startdir ? startdir : server_1.Global.workspaceRoot; 60 | let regex = typeof pattern === "string" ? new RegExp(pattern) : pattern; 61 | return findFilesSync(regex, startdir); 62 | } 63 | static getFileName(path) { 64 | return path.split("\\").pop(); 65 | } 66 | static open(path, encoding) { 67 | encoding = encoding ? encoding : "utf-8"; 68 | return fs.readFileSync(path, encoding); 69 | } 70 | } 71 | exports.File = File; 72 | function findFilesSync(pattern, startdir) { 73 | let results = []; 74 | let list = fs.readdirSync(startdir); 75 | for (let file of list) { 76 | file = startdir + '\\' + file; 77 | var stat = fs.statSync(file); 78 | if (stat && stat.isDirectory()) 79 | results = results.concat(findFilesSync(pattern, file)); 80 | else if (file.match(pattern)) 81 | results.push(file); 82 | } 83 | return results; 84 | } 85 | //# sourceMappingURL=filehandler.js.map -------------------------------------------------------------------------------- /client/server/filehandler.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"filehandler.js","sourceRoot":"","sources":["../../ui5xmlserver/src/filehandler.ts"],"names":[],"mappings":";;;;;;;;;AAAA,MAAY,GAAG,WAAM,mBAAmB,CAAC,CAAA;AACzC,MAAY,EAAE,WAAM,IAAI,CAAC,CAAA;AAEzB,yBAAuB,UAAU,CAAC,CAAA;AAElC;;;;;GAKG;AACH;IAEI;;;;;;;;;OASG;IACH,OAAa,SAAS,CAAC,OAAsB,EAAE,QAAiB;;YAC5D,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,eAAM,CAAC,aAAa,CAAC;YACtD,IAAI,OAAO,GAAG,OAAO,OAAO,KAAK,QAAQ,GAAG,IAAI,MAAM,CAAE,OAAkB,CAAC,GAAG,OAAiB,CAAC;YAChG,MAAM,CAAC,IAAI,OAAO,CAAW,CAAC,OAAO,EAAE,MAAM;gBACzC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK;oBACrB,EAAE,CAAA,CAAC,GAAG,CAAC,CAAC,CAAC;wBACL,MAAM,CAAC,GAAG,CAAC,CAAC;wBACZ,MAAM,CAAC;oBACX,CAAC;oBACD,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAE,IAAI,CAAC,CAAC;oBACvD,EAAE,CAAA,CAAC,MAAM,CAAC;wBACN,OAAO,CAAC,MAAM,CAAC,CAAC;oBACpB,IAAI;wBACA,MAAM,EAAE,CAAC;gBACjB,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAED;;;;;;;;OAQG;IACH,OAAO,IAAI,CAAC,OAAsB,EAAE,QAAgB;QAChD,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,eAAM,CAAC,aAAa,CAAC;QACtD,IAAI,KAAK,GAAG,OAAO,OAAO,KAAK,QAAQ,GAAG,IAAI,MAAM,CAAC,OAAiB,CAAC,GAAG,OAAiB,CAAC;QAC5F,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,WAAW,CAAC,IAAY;QAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;IAClC,CAAC;IAED,OAAO,IAAI,CAAC,IAAY,EAAE,QAAgB;QACtC,QAAQ,GAAG,QAAQ,GAAE,QAAQ,GAAG,OAAO,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;AACL,CAAC;AArDY,YAAI,OAqDhB,CAAA;AAED,uBAAuB,OAAe,EAAE,QAAQ;IAC5C,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;IACnC,GAAG,CAAA,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC;QACnB,IAAI,GAAG,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;QAC9B,IAAI,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC3B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE,CAAA,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,CAAC,OAAO,CAAC;AACnB,CAAC"} -------------------------------------------------------------------------------- /client/server/installServerIntoExtension: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | "$basedir/node" "$basedir/node_modules/vscode-languageserver/bin/installServerIntoExtension" "$@" 10 | ret=$? 11 | else 12 | node "$basedir/node_modules/vscode-languageserver/bin/installServerIntoExtension" "$@" 13 | ret=$? 14 | fi 15 | exit $ret 16 | -------------------------------------------------------------------------------- /client/server/installServerIntoExtension.cmd: -------------------------------------------------------------------------------- 1 | @IF EXIST "%~dp0\node.exe" ( 2 | "%~dp0\node.exe" "%~dp0\node_modules\vscode-languageserver\bin\installServerIntoExtension" %* 3 | ) ELSE ( 4 | @SETLOCAL 5 | @SET PATHEXT=%PATHEXT:;.JS;=;% 6 | node "%~dp0\node_modules\vscode-languageserver\bin\installServerIntoExtension" %* 7 | ) -------------------------------------------------------------------------------- /client/server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ui5xml-language-server", 3 | "description": "A language server for extending xml views and fragments in ui5", 4 | "version": "0.0.1", 5 | "author": "Andreas Pazureck", 6 | "license": "MIT", 7 | "repository": { 8 | "type": "git", 9 | "url": "https://github.com/apazureck/openui5vscodeTypescriptTools.git" 10 | }, 11 | "engines": { 12 | "node": "*" 13 | }, 14 | "dependencies": { 15 | "linq-es6": "^0.2.1", 16 | "recursive-readdir": "^2.1.1", 17 | "vscode": "^1.0.3", 18 | "vscode-languageserver": "^3.0.5", 19 | "xml-js-converter": "^1.0.0", 20 | "xml2js": "^0.4.17", 21 | "xmlchecker": "^0.1.0" 22 | }, 23 | "devDependencies": { 24 | "@types/node": "^7.0.5", 25 | "fs": "0.0.1-security", 26 | "recursive-readdir": "^2.1.1", 27 | "typescript": "2.0.10", 28 | "vscode-languageserver": "^3.0.5" 29 | }, 30 | "scripts": { 31 | "compile": "installServerIntoExtension ../client ./package.json ./tsconfig.json && tsc -p .", 32 | "watch": "installServerIntoExtension ../client ./package.json ./tsconfig.json && tsc --watch -p ." 33 | } 34 | } -------------------------------------------------------------------------------- /client/server/providers/XmlCompletionProvider.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"XmlCompletionProvider.js","sourceRoot":"","sources":["../../../ui5xmlserver/src/providers/XmlCompletionProvider.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /client/server/providers/XmlDiagnosticProvider.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"XmlDiagnosticProvider.js","sourceRoot":"","sources":["../../../ui5xmlserver/src/providers/XmlDiagnosticProvider.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /client/server/providers/XmlHoverProvider.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 3 | return new (P || (P = Promise))(function (resolve, reject) { 4 | function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } 5 | function rejected(value) { try { step(generator.throw(value)); } catch (e) { reject(e); } } 6 | function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } 7 | step((generator = generator.apply(thisArg, _arguments)).next()); 8 | }); 9 | }; 10 | const vscode_languageserver_1 = require("vscode-languageserver"); 11 | const xmltypes_1 = require("../xmltypes"); 12 | class XmlHoverProvider extends xmltypes_1.XmlBaseHandler { 13 | constructor(schemastorage, documents, connection, schemastorePath, loglevel) { 14 | super(schemastorage, connection, loglevel); 15 | this.documents = documents; 16 | this.schemastorePath = schemastorePath; 17 | this.schemastorage = schemastorage.schemas; 18 | } 19 | getHoverInformation(handler) { 20 | return __awaiter(this, void 0, void 0, function* () { 21 | const doc = this.documents.get(handler.textDocument.uri); 22 | const txt = doc.getText(); 23 | const pos = doc.offsetAt(handler.position); 24 | this.getUsedNamespaces(txt); 25 | const foundCursor = this.textGetElementAtCursorPos(txt, pos); 26 | // todo: Maybe bind to this necessary 27 | this.logDebug((() => { 28 | let ret = "Used Namespaces: "; 29 | for (const ns in this.usedNamespaces) { 30 | if (ns) { 31 | ret += ns + " = " + this.usedNamespaces[ns] + " | "; 32 | } 33 | } 34 | return ret.substring(0, ret.length - 3); 35 | })); 36 | if (foundCursor.isOnElementHeader) { 37 | if (foundCursor.isOnAttributeName) { 38 | this.logDebug("Found cursor location to be on attribute"); 39 | return new Promise((resolve, reject) => { 40 | resolve(this.getHoverItemForAttribute(foundCursor, doc)); 41 | }); 42 | } 43 | else { 44 | this.logDebug("Found cursor location to be in element"); 45 | return new Promise((resolve, reject) => { 46 | resolve(this.getElementDescription(foundCursor, doc)); 47 | }); 48 | } 49 | } 50 | }); 51 | } 52 | getElementDescription(cursor, doc) { 53 | this.logDebug("Processing Tagstring: " + cursor.tagName); 54 | const namespace = this.usedNamespaces[cursor.tagNamespace]; 55 | this.logDebug("Using Namespace: " + namespace); 56 | const schema = this.schemastorage[namespace]; 57 | this.logDebug("Using Schema: " + schema.targetNamespace); 58 | const element = this.findElement(cursor.tagName, schema); 59 | if (element) { 60 | // Check if this simple type has an enumeration on it 61 | const header = { language: "xml", value: "<" + cursor.elementHeader + ">" }; 62 | return { 63 | contents: [header, vscode_languageserver_1.MarkedString.fromPlainText(element.annotation ? element.annotation[0].documentation[0] : "")], 64 | range: { 65 | end: doc.positionAt(cursor.endindex), 66 | start: doc.positionAt(cursor.startindex), 67 | }, 68 | }; 69 | } 70 | return undefined; 71 | } 72 | getHoverItemForAttribute(cursor, doc) { 73 | this.logDebug("Processing Tagstring: " + cursor.tagName); 74 | const namespace = this.usedNamespaces[cursor.tagNamespace]; 75 | this.logDebug("Using Namespace: " + namespace); 76 | const schema = this.schemastorage[namespace]; 77 | this.logDebug("Using Schema: " + schema.targetNamespace); 78 | const element = this.findElement(cursor.tagName, schema); 79 | this.logDebug(() => "Found element: " + element.$.name); 80 | const elementType = this.getTypeOf(element); 81 | this.logDebug(() => "Found Element type: " + elementType.$.name); 82 | const types = this.getBaseTypes(elementType, []); 83 | if (types && types.length > 0) 84 | elementType.basetype = types[0]; 85 | const matchingAttribute = elementType.attribute.find((value, index, obj) => value.$.name === cursor.attribute.name); 86 | if (matchingAttribute) { 87 | // Check if this simple type has an enumeration on it 88 | const header = { language: "xml", value: "<" + cursor.fullName + " ... " + cursor.attribute.name + '="' + cursor.attribute.value + '"' + (cursor.isSelfClosingTag ? " ... />" : " ... >") }; 89 | return { 90 | contents: [header, vscode_languageserver_1.MarkedString.fromPlainText(matchingAttribute.annotation ? matchingAttribute.annotation[0].documentation[0] : "")], 91 | range: { 92 | end: doc.positionAt(cursor.startindex + cursor.attribute.endpos), 93 | start: doc.positionAt(cursor.startindex + cursor.attribute.startpos), 94 | }, 95 | }; 96 | } 97 | return undefined; 98 | } 99 | } 100 | exports.XmlHoverProvider = XmlHoverProvider; 101 | //# sourceMappingURL=XmlHoverProvider.js.map -------------------------------------------------------------------------------- /client/server/providers/XmlHoverProvider.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"XmlHoverProvider.js","sourceRoot":"","sources":["../../../ui5xmlserver/src/providers/XmlHoverProvider.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /client/server/server.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"server.js","sourceRoot":"","sources":["../../ui5xmlserver/src/server.ts"],"names":[],"mappings":";;;;;;;;;AAEA,wCAMO,uBAAuB,CAAC,CAAA;AAG/B,8BAAqB,eAAe,CAAC,CAAA;AACrC,sBAAyB,OAAO,CAAC,CAAA;AACjC,wCAAqC,mCAAmC,CAAC,CAAA;AACzE,wCAIO,mCAAmC,CAAC,CAAA;AAC3C,mCAAiC,8BAA8B,CAAC,CAAA;AAChE,2BAA2C,YAAY,CAAC,CAAA;AAExD,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAEpD,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE;QAChD,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE;YACN,MAAM,GAAG,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG;gBAC5C,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC,EAAE,IAAI,CAAC,CAAC;YAET,MAAM,CAAC,GAAG,CAAC;QACZ,CAAC;QACD,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;AAiBJ,IAAiB,MAAM,CAiBtB;AAjBD,WAAiB,MAAM,EAAC,CAAC;IAgBS,JAClC,CAAC,EAjBgB,MAAM,GAAN,cAAM,KAAN,cAAM,QAiBtB;AAED,oFAAoF;AACpF,MAAM,UAAU,GAAgB,wCAAgB,CAAC,IAAI,wCAAgB,CAAC,OAAO,CAAC,EAAE,IAAI,wCAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAE/G,mEAAmE;AACnE,mCAAmC;AACnC,MAAM,SAAS,GAAkB,IAAI,qCAAa,EAAE,CAAC;AAErD,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM;IAC9B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAC5D,+DAA+D;IAE/D,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,qBAAqB,CAAC;IACrD,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC;IACvC,MAAM,CAAC,WAAW,GAAG,IAAI,qBAAU,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,UAAU,EAAE,cAAQ,CAAC,IAAI,CAAC,CAAC;IAElG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC7C,0DAA0D;IAC1D,kDAAkD;IAClD,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE7B,MAAM,CAAC;QACN,YAAY,EAAE;YACb,kBAAkB,EAAE,KAAK;YACzB,kBAAkB,EAAE;gBACnB,eAAe,EAAE,KAAK;gBACtB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;aACjD;YACD,wDAAwD;YACxD,kBAAkB,EAAE,KAAK;YACzB,aAAa,EAAE,IAAI;YACnB,wEAAwE;YACxE,gBAAgB,EAAE,SAAS,CAAC,QAAQ;SACpC;KACD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,YAAY,CAAC,CAAO,MAAM,EAAE,KAAK;IAC3C,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACjE,2DAA2D;IAC3D,MAAM,EAAE,GAAmB;QAC1B,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,EAAE;KACT,CAAC;IAEF,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE1D,IAAI,CAAC;QACJ,MAAM,EAAE,GAAG,IAAI,4CAAoB,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC;QACtE,EAAE,CAAC,YAAY,GAAG,KAAK,CAAC;IACzB,CAAE;IAAA,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAChB,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,6CAA6C,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,CAAC,EAAE,CAAC;AACX,CAAC,CAAA,CAAC,CAAC;AAEH,UAAU,CAAC,OAAO,CAAC,CAAO,MAAkC,EAAE,KAAU;IACvE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE1D,IAAI,CAAC;QACJ,MAAM,EAAE,GAAG,IAAI,mCAAgB,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrI,MAAM,CAAC,MAAM,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAE;IAAA,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAChB,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,6CAA6C,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,CAAC,SAAS,CAAC;AAClB,CAAC,CAAA,CAAC,CAAC;AAEH,SAAS,CAAC,kBAAkB,CAAC,CAAO,MAAM;IACzC,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/C,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACR,MAAM,CAAC;IAER,MAAM,WAAW,GAA6B,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IAEhF,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,uDAA+B,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrG,WAAW,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACnF,CAAE;IAAA,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAEjB,CAAC;IACD,IAAI,CAAC;QACJ,MAAM,EAAE,GAAG,IAAI,sDAA8B,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACvH,WAAW,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAClF,CAAE;IAAA,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAEjB,CAAC;IACD,UAAU,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;AACzC,CAAC,CAAA,CAAC,CAAC;AAEH,UAAU,CAAC,wBAAwB,CAAC,CAAC,MAAM;IAC1C,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAA2B,CAAC;IACrD,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG;YAC5B,GAAG,EAAE;gBACJ,QAAQ,EAAE,CAAC;gBACX,qBAAqB,EAAE,KAAK;aAC5B;SACD,CAAA;IACF,CAAC;AACF,CAAC,CAAC,CAAC;AAEH,iBAAwB,IAAY,EAAE,UAAkB;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,EAAE,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/B,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AAC1B,CAAC;AALe,eAAO,UAKtB,CAAA;AAED,kBAAyB,OAAe,EAAE,aAAqB;IAC9D,MAAM,SAAS,GAAG,iBAAiB,CAAC;IACpC,IAAI,CAAC,CAAC;IACN,MAAM,GAAG,GAAY,EAAE,CAAC;IACxB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/C,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC;QACtB,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,SAAS,CAAC;YACnC,SAAS,CAAC,SAAS,EAAE,CAAC;QAEvB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEpC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YACV,QAAQ,CAAC;QAEV,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClI,CAAC;IACD,MAAM,CAAC,GAAG,CAAC;AACZ,CAAC;AAlBe,gBAAQ,WAkBvB,CAAA;AAED,8BAAqC,KAAa,EAAE,KAAa;IAChE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,GAAG,CAAC,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC;QAC1B,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC;gBACN,SAAS,EAAE,KAAK,GAAG,QAAQ;gBAC3B,IAAI,EAAE,SAAS;aACf,CAAC;QACH,CAAC;QACD,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5B,SAAS,EAAE,CAAC;IACb,CAAC;AACF,CAAC;AAde,4BAAoB,uBAcnC,CAAA;AAED,sBAA6B,KAAa;IACzC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AACjC,CAAC;AAFe,oBAAY,eAE3B,CAAA;AAcD,6BAA6B,IAAY,EAAE,cAAsB,EAAE,YAAoB;IACtF,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,CAAC,IAAI,CAAC;IAEb,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACrD,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QACjB,MAAM,CAAC;IACR,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,QAAQ,GAAG,SAAS,CAAC;IAElC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAEjE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACd,MAAM,CAAC,EAAE,CAAC;IACX,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAE1C,MAAM,KAAK,GAAG,kBAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAE9D,MAAM,gBAAgB,GAAe,EAAE,CAAC;IACxC,MAAM,GAAG,GAAe,EAAE,CAAC;IAC3B,2BAA2B;IAC3B,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrD,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7H,CAAC;IAED,kDAAkD;IAElD,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,gBAAgB,CAAC,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,kBAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3C,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACzC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YACrB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAG1C,CAAC;IAED,MAAM,CAAC,GAAG,CAAC;AACZ,CAAC;AAED,UAAU,CAAC,MAAM,EAAE,CAAC"} -------------------------------------------------------------------------------- /client/server/test/xmllintertests.js: -------------------------------------------------------------------------------- 1 | //# sourceMappingURL=xmllintertests.js.map -------------------------------------------------------------------------------- /client/server/test/xmllintertests.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"xmllintertests.js","sourceRoot":"","sources":["../../../ui5xmlserver/src/test/xmllintertests.ts"],"names":[],"mappings":""} -------------------------------------------------------------------------------- /client/snippets/typescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "ui5tsController": { 3 | "description": "Inserts a new UI5 typescript controller", 4 | "prefix": "ui5controller", 5 | "body": ["sap.ui.define([\"sap/ui/core/mvc/Controller\",", 6 | "// Insert your used ui5 elements here to get them loaded", 7 | "], function (Controller: sap.ui.core.mvc.Controller) {", 8 | " \"use strict\";", 9 | " return Controller.extend(\"${namespace}.controller.${name}\");", 10 | "});", 11 | "", 12 | "namespace ${namespace} {", 13 | "", 14 | " export class ${name} extends sap.ui.core.mvc.Controller {", 15 | " onInit(): void {", 16 | " console.info(\"${name} initialized\");", 17 | " }", 18 | " onBeforeRendering(): void {", 19 | " }", 20 | " onAfterRendering(): void {", 21 | " }", 22 | " onExit(): void {", 23 | " }", 24 | " }", 25 | "}" 26 | ] 27 | } 28 | } -------------------------------------------------------------------------------- /client/snippets/xml.json: -------------------------------------------------------------------------------- 1 | { 2 | "i18n": { 3 | "prefix": "i18n", 4 | "description": "Creates a model reference with i18n address", 5 | "body": "\"{i18n>$0}\"" 6 | }, 7 | "i18nlabel": { 8 | "prefix": "labeli18n", 9 | "description": "Creates a label with i18n address", 10 | "body": "