You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by nt...@apache.org on 2017/04/03 08:31:05 UTC
[05/50] [abbrv] ignite git commit: IGNITE-4659 Migration to Webpack
2. Upgrade template engine from jade to pug. (cherry picked from commit
1080e68)
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/sql/sql.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/sql/sql.tpl.pug b/modules/web-console/frontend/views/sql/sql.tpl.pug
new file mode 100644
index 0000000..931d632
--- /dev/null
+++ b/modules/web-console/frontend/views/sql/sql.tpl.pug
@@ -0,0 +1,278 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+include /app/helpers/jade/mixins
+include /app/components/ui-grid-settings/ui-grid-settings
+
+mixin btn-toolbar(btn, click, tip, focusId)
+ i.btn.btn-default.fa(class=btn ng-click=click bs-tooltip='' data-title=tip ignite-on-click-focus=focusId data-trigger='hover' data-placement='bottom')
+
+mixin btn-toolbar-data(btn, kind, tip)
+ i.btn.btn-default.fa(class=btn ng-click=`setResult(paragraph, '${kind}')` ng-class=`{active: resultEq(paragraph, '${kind}')}` bs-tooltip='' data-title=tip data-trigger='hover' data-placement='bottom')
+
+mixin result-toolbar
+ .btn-group(ng-model='paragraph.result' ng-click='$event.stopPropagation()' style='left: 50%; margin: 0 0 0 -70px;display: block;')
+ +btn-toolbar-data('fa-table', 'table', 'Show data in tabular form')
+ +btn-toolbar-data('fa-bar-chart', 'bar', 'Show bar chart<br/>By default first column - X values, second column - Y values<br/>In case of one column it will be treated as Y values')
+ +btn-toolbar-data('fa-pie-chart', 'pie', 'Show pie chart<br/>By default first column - pie labels, second column - pie values<br/>In case of one column it will be treated as pie values')
+ +btn-toolbar-data('fa-line-chart', 'line', 'Show line chart<br/>By default first column - X values, second column - Y values<br/>In case of one column it will be treated as Y values')
+ +btn-toolbar-data('fa-area-chart', 'area', 'Show area chart<br/>By default first column - X values, second column - Y values<br/>In case of one column it will be treated as Y values')
+
+mixin chart-settings
+ .total.row
+ .col-xs-4
+ .chart-settings-link(ng-show='paragraph.chart && paragraph.chartColumns.length > 0')
+ a(title='Click to show chart settings dialog' ng-click='$event.stopPropagation()' bs-popover data-template-url='{{ $ctrl.chartSettingsTemplateUrl }}' data-placement='bottom' data-auto-close='1' data-trigger='click')
+ i.fa.fa-bars
+ | Chart settings
+ div(ng-show='paragraphTimeSpanVisible(paragraph)')
+ label Show
+ button.select-manual-caret.btn.btn-default(ng-model='paragraph.timeLineSpan' ng-change='applyChartSettings(paragraph)' bs-options='item for item in timeLineSpans' bs-select data-caret-html='<span class="caret"></span>')
+ label min
+ .col-xs-4
+ +result-toolbar
+
+mixin notebook-rename
+ .docs-header.notebook-header
+ h1.col-sm-6(ng-hide='notebook.edit')
+ label(style='max-width: calc(100% - 60px)') {{notebook.name}}
+ .btn-group(ng-if='!demo')
+ +btn-toolbar('fa-pencil', 'notebook.edit = true;notebook.editName = notebook.name', 'Rename notebook')
+ +btn-toolbar('fa-trash', 'removeNotebook(notebook)', 'Remove notebook')
+ h1.col-sm-6(ng-show='notebook.edit')
+ i.btn.fa.fa-floppy-o(ng-show='notebook.editName' ng-click='renameNotebook(notebook.editName)' bs-tooltip data-title='Save notebook name' data-trigger='hover')
+ .input-tip
+ input.form-control(ng-model='notebook.editName' required ignite-on-enter='renameNotebook(notebook.editName)' ignite-on-escape='notebook.edit = false;')
+ h1.pull-right
+ a.dropdown-toggle(style='margin-right: 20px' data-toggle='dropdown' bs-dropdown='scrollParagraphs' data-placement='bottom-right') Scroll to query
+ span.caret
+ button.btn.btn-default(style='margin-top: 2px' ng-click='addQuery()' ignite-on-click-focus=focusId)
+ i.fa.fa-fw.fa-plus
+ | Add query
+
+ button.btn.btn-default(style='margin-top: 2px' ng-click='addScan()' ignite-on-click-focus=focusId)
+ i.fa.fa-fw.fa-plus
+ | Add scan
+
+mixin notebook-error
+ h2 Failed to load notebook
+ label.col-sm-12 Notebook not accessible any more. Go back to configuration or open to another notebook.
+ button.h3.btn.btn-primary(ui-sref='base.configuration.clusters') Back to configuration
+
+mixin paragraph-rename
+ .col-sm-6(ng-hide='paragraph.edit')
+ i.fa(ng-class='paragraphExpanded(paragraph) ? "fa-chevron-circle-down" : "fa-chevron-circle-right"')
+ label {{paragraph.name}}
+
+ .btn-group(ng-hide='notebook.paragraphs.length > 1')
+ +btn-toolbar('fa-pencil', 'paragraph.edit = true; paragraph.editName = paragraph.name; $event.stopPropagation();', 'Rename query', 'paragraph-name-{{paragraph.id}}')
+
+ .btn-group(ng-show='notebook.paragraphs.length > 1' ng-click='$event.stopPropagation();')
+ +btn-toolbar('fa-pencil', 'paragraph.edit = true; paragraph.editName = paragraph.name;', 'Rename query', 'paragraph-name-{{paragraph.id}}')
+ +btn-toolbar('fa-remove', 'removeParagraph(paragraph)', 'Remove query')
+
+ .col-sm-6(ng-show='paragraph.edit')
+ i.tipLabel.fa(style='float: left;' ng-class='paragraphExpanded(paragraph) ? "fa-chevron-circle-down" : "fa-chevron-circle-right"')
+ i.tipLabel.fa.fa-floppy-o(style='float: right;' ng-show='paragraph.editName' ng-click='renameParagraph(paragraph, paragraph.editName); $event.stopPropagation();' bs-tooltip data-title='Save query name' data-trigger='hover')
+ .input-tip
+ input.form-control(id='paragraph-name-{{paragraph.id}}' ng-model='paragraph.editName' required ng-click='$event.stopPropagation();' ignite-on-enter='renameParagraph(paragraph, paragraph.editName)' ignite-on-escape='paragraph.edit = false')
+
+mixin query-settings
+ label.tipLabel(bs-tooltip data-placement='bottom' data-title='Configure periodical execution of last successfully executed query') Refresh rate:
+ button.btn.btn-default.fa.fa-clock-o.tipLabel(ng-class='{"btn-info": paragraph.rate && paragraph.rate.installed}' bs-popover data-template-url='{{ $ctrl.paragraphRateTemplateUrl }}' data-placement='left' data-auto-close='1' data-trigger='click') {{rateAsString(paragraph)}}
+
+ label.tipLabel(bs-tooltip data-placement='bottom' data-title='Max number of rows to show in query result as one page') Page size:
+ button.btn.btn-default.select-toggle.tipLabel(ng-model='paragraph.pageSize' bs-select bs-options='item for item in pageSizes')
+
+ label.tipLabel(bs-tooltip data-placement='bottom' data-title='Limit query max results to specified number of pages') Max pages:
+ button.btn.btn-default.select-toggle.tipLabel(ng-model='paragraph.maxPages' bs-select bs-options='item.value as item.label for item in maxPages')
+
+ label.tipLabel(ng-if='nonCollocatedJoinsAvailable(paragraph)' bs-tooltip data-placement='bottom' data-title='Non-collocated joins is a special mode that allow to join data across cluster without collocation.<br/>\
+ Nested joins are not supported for now.<br/>\
+ <b>NOTE</b>: In some cases it may consume more heap memory or may take a long time than collocated joins.' data-trigger='hover')
+ input(type='checkbox' ng-model='paragraph.nonCollocatedJoins')
+ span Allow non-collocated joins
+
+mixin query-actions
+ button.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, true)' ng-click='execute(paragraph)') Execute
+ button.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, true)' ng-click='execute(paragraph, true)') Execute on selected node
+
+ a.btn.btn-default(ng-disabled='!actionAvailable(paragraph, true)' ng-click='explain(paragraph)' data-placement='bottom' bs-tooltip='' data-title='{{actionTooltip(paragraph, "explain", true)}}') Explain
+
+mixin table-result-heading-query
+ .total.row
+ .col-xs-4
+ +ui-grid-settings
+ label Page: #[b {{paragraph.page}}]
+ label.margin-left-dflt Results so far: #[b {{paragraph.rows.length + paragraph.total}}]
+ label.margin-left-dflt Duration: #[b {{paragraph.duration | duration}}]
+ .col-xs-4
+ div(ng-if='paragraph.qryType === "query"')
+ +result-toolbar
+ .col-xs-4
+ .pull-right
+ .btn-group(ng-disabled='paragraph.loading')
+ button.btn.btn-primary(ng-click='exportCsv(paragraph)' bs-tooltip data-title='{{actionTooltip(paragraph, "export", false)}}') Export
+ button.btn.btn-primary.dropdown-toggle(id='export-item-dropdown' data-toggle='dropdown' data-container='body' bs-dropdown='exportDropdown' data-placement='bottom-right')
+ span.caret
+
+mixin table-result-heading-scan
+ .total.row
+ .col-xs-4
+ +ui-grid-settings
+ label Page: #[b {{paragraph.page}}]
+ label.margin-left-dflt Results so far: #[b {{paragraph.rows.length + paragraph.total}}]
+ label.margin-left-dflt Duration: #[b {{paragraph.duration | duration}}]
+ .col-xs-4
+ div(ng-if='paragraph.qryType === "query"')
+ +result-toolbar
+ .col-xs-4
+ .pull-right
+ .btn-group(ng-disabled='paragraph.loading')
+ button.btn.btn-primary(ng-click='exportCsv(paragraph)' bs-tooltip data-title='{{actionTooltip(paragraph, "export", false)}}') Export
+ button.btn.btn-primary.dropdown-toggle(id='export-item-dropdown' data-toggle='dropdown' data-container='body' bs-dropdown='exportDropdown' data-placement='bottom-right')
+ span.caret
+
+mixin table-result-body
+ .grid(ui-grid='paragraph.gridOptions' ui-grid-resize-columns ui-grid-exporter)
+
+mixin chart-result
+ div(ng-hide='paragraph.scanExplain()')
+ +chart-settings
+ .empty(ng-show='paragraph.chartColumns.length > 0 && !paragraph.chartColumnsConfigured()') Cannot display chart. Please configure axis using #[b Chart settings]
+ .empty(ng-show='paragraph.chartColumns.length == 0') Cannot display chart. Result set must contain Java build-in type columns. Please change query and execute it again.
+ div(ng-show='paragraph.chartColumnsConfigured()')
+ div(ng-show='paragraph.timeLineSupported() || !paragraph.chartTimeLineEnabled()')
+ div(ng-repeat='chart in paragraph.charts')
+ nvd3(options='chart.options' data='chart.data' api='chart.api')
+ .empty(ng-show='!paragraph.timeLineSupported() && paragraph.chartTimeLineEnabled()') Pie chart does not support 'TIME_LINE' column for X-axis. Please use another column for X-axis or switch to another chart.
+ .empty(ng-show='paragraph.scanExplain()')
+ .row
+ .col-xs-4.col-xs-offset-4
+ +result-toolbar
+ label.margin-top-dflt Charts do not support #[b Explain] and #[b Scan] query
+
+mixin paragraph-scan
+ .panel-heading(bs-collapse-toggle)
+ .row
+ +paragraph-rename
+ .panel-collapse(role='tabpanel' bs-collapse-target)
+ .col-sm-12.sql-controls
+ .col-sm-3
+ +dropdown-required('Cache:', 'paragraph.cacheName', '"cache"', 'true', 'false', 'Choose cache', 'caches')
+ .col-sm-3
+ +text-enabled('Filter:', 'paragraph.filter', '"filter"', true, false, 'Enter filter')
+ label.btn.btn-default.ignite-form-field__btn(ng-click='paragraph.caseSensitive = !paragraph.caseSensitive')
+ input(type='checkbox' ng-model='paragraph.caseSensitive')
+ span(bs-tooltip data-title='Select this checkbox for case sensitive search') Cs
+ label.tipLabel(bs-tooltip data-placement='bottom' data-title='Max number of rows to show in query result as one page') Page size:
+ button.btn.btn-default.select-toggle.tipLabel(ng-model='paragraph.pageSize' bs-select bs-options='item for item in pageSizes')
+
+ .col-sm-12.sql-controls
+ button.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, false)' ng-click='scan(paragraph)')
+ | Scan
+ button.btn.btn-primary(ng-disabled='!actionAvailable(paragraph, false)' ng-click='scan(paragraph, true)')
+ | Scan on selected node
+
+ .col-sm-12.sql-result(ng-if='paragraph.queryExecuted()' ng-switch='paragraph.resultType()')
+ .error(ng-switch-when='error') Error: {{paragraph.errMsg}}
+ .empty(ng-switch-when='empty') Result set is empty
+ .table(ng-switch-when='table')
+ +table-result-heading-scan
+ +table-result-body
+ .footer.clearfix()
+ .pull-left
+ | Showing results for scan of #[b {{ paragraph.queryArgs.cacheName | defaultName }}]
+ span(ng-if='paragraph.queryArgs.filter') with filter: #[b {{ paragraph.queryArgs.filter }}]
+ span(ng-if='paragraph.queryArgs.localNid') on node: #[b {{ paragraph.queryArgs.localNid | limitTo:8 }}]
+
+ -var nextVisibleCondition = 'paragraph.resultType() != "error" && paragraph.queryId && paragraph.nonRefresh() && (paragraph.table() || paragraph.chart() && !paragraph.scanExplain())'
+
+ .pull-right(ng-show=`${nextVisibleCondition}` ng-class='{disabled: paragraph.loading}' ng-click='!paragraph.loading && nextPage(paragraph)')
+ i.fa.fa-chevron-circle-right
+ a Next
+
+mixin paragraph-query
+ .row.panel-heading(bs-collapse-toggle)
+ +paragraph-rename
+ .panel-collapse(role='tabpanel' bs-collapse-target)
+ .col-sm-12
+ .col-xs-8.col-sm-9(style='border-right: 1px solid #eee')
+ .sql-editor(ignite-ace='{onLoad: aceInit(paragraph), theme: "chrome", mode: "sql", require: ["ace/ext/language_tools"],' +
+ 'advanced: {enableSnippets: false, enableBasicAutocompletion: true, enableLiveAutocompletion: true}}'
+ ng-model='paragraph.query')
+ .col-xs-4.col-sm-3
+ div(ng-show='caches.length > 0' style='padding: 5px 10px' st-table='displayedCaches' st-safe-src='caches')
+ lable.labelField.labelFormField Caches:
+ i.fa.fa-database.tipField(title='Click to show cache types metadata dialog' bs-popover data-template-url='{{ $ctrl.cacheMetadataTemplateUrl }}' data-placement='bottom' data-trigger='click' data-container='#{{ paragraph.id }}')
+ .input-tip
+ input.form-control(type='text' st-search='label' placeholder='Filter caches...')
+ table.links
+ tbody.scrollable-y(style='max-height: 15em; display: block;')
+ tr(ng-repeat='cache in displayedCaches track by cache.name')
+ td(style='width: 100%')
+ input.labelField(id='cache_{{ [paragraph.id, $index].join("_") }}' type='radio' value='{{cache.name}}' ng-model='paragraph.cacheName')
+ label(for='cache_{{ [paragraph.id, $index].join("_") }} ' ng-bind-html='cache.label')
+ .empty-caches(ng-show='displayedCaches.length == 0 && caches.length != 0')
+ label Wrong caches filter
+ .empty-caches(ng-show='caches.length == 0')
+ label No caches
+ .col-sm-12.sql-controls
+ +query-actions
+
+ .pull-right
+ +query-settings
+ .col-sm-12.sql-result(ng-if='paragraph.queryExecuted()' ng-switch='paragraph.resultType()')
+ .error(ng-switch-when='error') Error: {{paragraph.errMsg}}
+ .empty(ng-switch-when='empty') Result set is empty
+ .table(ng-switch-when='table')
+ +table-result-heading-query
+ +table-result-body
+ .chart(ng-switch-when='chart')
+ +chart-result
+ .footer.clearfix
+ a.pull-left(ng-click='showResultQuery(paragraph)') Show query
+
+ -var nextVisibleCondition = 'paragraph.resultType() != "error" && paragraph.queryId && paragraph.nonRefresh() && (paragraph.table() || paragraph.chart() && !paragraph.scanExplain())'
+
+ .pull-right(ng-show=`${nextVisibleCondition}` ng-class='{disabled: paragraph.loading}' ng-click='!paragraph.loading && nextPage(paragraph)')
+ i.fa.fa-chevron-circle-right
+ a Next
+
+.row
+ .docs-content
+ .row(ng-if='notebook' bs-affix style='margin-bottom: 20px;')
+ +notebook-rename
+
+ ignite-information(data-title='With query notebook you can' style='margin-top: 0; margin-bottom: 30px')
+ ul
+ li Create any number of queries
+ li Execute and explain SQL queries
+ li Execute scan queries
+ li View data in tabular form and as charts
+
+ div(ng-if='notebookLoadFailed' style='text-align: center')
+ +notebook-error
+
+ div(ng-if='notebook' ignite-loading='sqlLoading' ignite-loading-text='{{ loadingText }}' ignite-loading-position='top')
+ .docs-body.paragraphs
+ .panel-group(bs-collapse ng-model='notebook.expandedParagraphs' data-allow-multiple='true' data-start-collapsed='false')
+
+ .panel-paragraph(ng-repeat='paragraph in notebook.paragraphs' id='{{paragraph.id}}' ng-form='form_{{paragraph.id}}')
+ .panel.panel-default(ng-if='paragraph.qryType === "scan"')
+ +paragraph-scan
+ .panel.panel-default(ng-if='paragraph.qryType === "query"')
+ +paragraph-query
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/agent-download.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/agent-download.jade b/modules/web-console/frontend/views/templates/agent-download.jade
deleted file mode 100644
index b913636..0000000
--- a/modules/web-console/frontend/views/templates/agent-download.jade
+++ /dev/null
@@ -1,50 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.modal.center(tabindex='-1' role='dialog')
- .modal-dialog
- .modal-content
- #errors-container.modal-header.header
- h4.modal-title
- i.fa.fa-download
- span(ng-if='!hasAgents') Connection to Ignite Web Agent is not established
- span(ng-if='hasAgents') Connection to Ignite Node is not established
- .agent-download(ng-if='!hasAgents')
- p Please download and run #[a(href='/api/v1/agent/download/zip' target='_self') ignite-web-agent] in order to {{::agentGoal}}
- p For run:
- ul
- li Download and unzip #[a(href='/api/v1/agent/download/zip' target='_self') ignite-web-agent] archive
- li Run shell file #[b ignite-web-agent.{sh|bat}]
- p Refer to #[b README.txt] in agent folder for more information
- .modal-advanced-options
- i.fa.fa-chevron-circle-down(ng-show='agentLoad.showToken' ng-click='agentLoad.showToken = ! agentLoad.showToken')
- i.fa.fa-chevron-circle-right(ng-show='!agentLoad.showToken' ng-click='agentLoad.showToken = ! agentLoad.showToken')
- a(ng-click='agentLoad.showToken = ! agentLoad.showToken') {{agentLoad.showToken ? 'Hide security token...' : 'Show security token...'}}
- .details-row(ng-show='agentLoad.showToken')
- label.labelField Security token: {{user.becameToken || user.token}}
- i.tipLabel.fa.fa-clipboard(ignite-copy-to-clipboard='{{user.becameToken || user.token}}' bs-tooltip='' data-title='Copy security token to clipboard')
- i.tipLabel.icon-help(ng-if=lines bs-tooltip='' data-title='The security token is used for authorization of web agent')
- .agent-download(ng-if='hasAgents')
- p Connection to Ignite Web Agent is established, but agent failed to connect to Ignite Node
- p Please check the following:
- ul
- li Ignite Grid is up and Ignite REST server started (copy "ignite-rest-http" folder from libs/optional/ to libs/)
- li In agent settings check URI for connect to Ignite REST server
- li Check agent logs for errors
- li Refer to #[b README.txt] in agent folder for more information
- .modal-footer
- button.btn.btn-default(ng-click='back()') {{::backText}}
- a.btn.btn-primary(ng-if='!hasAgents' href='/api/v1/agent/download/zip' target='_self') Download agent
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/agent-download.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/agent-download.tpl.pug b/modules/web-console/frontend/views/templates/agent-download.tpl.pug
new file mode 100644
index 0000000..b913636
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/agent-download.tpl.pug
@@ -0,0 +1,50 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.modal.center(tabindex='-1' role='dialog')
+ .modal-dialog
+ .modal-content
+ #errors-container.modal-header.header
+ h4.modal-title
+ i.fa.fa-download
+ span(ng-if='!hasAgents') Connection to Ignite Web Agent is not established
+ span(ng-if='hasAgents') Connection to Ignite Node is not established
+ .agent-download(ng-if='!hasAgents')
+ p Please download and run #[a(href='/api/v1/agent/download/zip' target='_self') ignite-web-agent] in order to {{::agentGoal}}
+ p For run:
+ ul
+ li Download and unzip #[a(href='/api/v1/agent/download/zip' target='_self') ignite-web-agent] archive
+ li Run shell file #[b ignite-web-agent.{sh|bat}]
+ p Refer to #[b README.txt] in agent folder for more information
+ .modal-advanced-options
+ i.fa.fa-chevron-circle-down(ng-show='agentLoad.showToken' ng-click='agentLoad.showToken = ! agentLoad.showToken')
+ i.fa.fa-chevron-circle-right(ng-show='!agentLoad.showToken' ng-click='agentLoad.showToken = ! agentLoad.showToken')
+ a(ng-click='agentLoad.showToken = ! agentLoad.showToken') {{agentLoad.showToken ? 'Hide security token...' : 'Show security token...'}}
+ .details-row(ng-show='agentLoad.showToken')
+ label.labelField Security token: {{user.becameToken || user.token}}
+ i.tipLabel.fa.fa-clipboard(ignite-copy-to-clipboard='{{user.becameToken || user.token}}' bs-tooltip='' data-title='Copy security token to clipboard')
+ i.tipLabel.icon-help(ng-if=lines bs-tooltip='' data-title='The security token is used for authorization of web agent')
+ .agent-download(ng-if='hasAgents')
+ p Connection to Ignite Web Agent is established, but agent failed to connect to Ignite Node
+ p Please check the following:
+ ul
+ li Ignite Grid is up and Ignite REST server started (copy "ignite-rest-http" folder from libs/optional/ to libs/)
+ li In agent settings check URI for connect to Ignite REST server
+ li Check agent logs for errors
+ li Refer to #[b README.txt] in agent folder for more information
+ .modal-footer
+ button.btn.btn-default(ng-click='back()') {{::backText}}
+ a.btn.btn-primary(ng-if='!hasAgents' href='/api/v1/agent/download/zip' target='_self') Download agent
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/alert.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/alert.jade b/modules/web-console/frontend/views/templates/alert.jade
deleted file mode 100644
index d30d2fd..0000000
--- a/modules/web-console/frontend/views/templates/alert.jade
+++ /dev/null
@@ -1,21 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.alert(ng-show='type' ng-class='[type ? "alert-" + type : null]')
- button.close(type='button', ng-if='dismissable', ng-click='$hide()') ×
- i.alert-icon(ng-if='icon' ng-class='[icon]')
- span.alert-title(ng-bind-html='title')
- span.alert-content(ng-bind-html='content')
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/alert.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/alert.tpl.pug b/modules/web-console/frontend/views/templates/alert.tpl.pug
new file mode 100644
index 0000000..d30d2fd
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/alert.tpl.pug
@@ -0,0 +1,21 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.alert(ng-show='type' ng-class='[type ? "alert-" + type : null]')
+ button.close(type='button', ng-if='dismissable', ng-click='$hide()') ×
+ i.alert-icon(ng-if='icon' ng-class='[icon]')
+ span.alert-title(ng-bind-html='title')
+ span.alert-content(ng-bind-html='content')
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/batch-confirm.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/batch-confirm.jade b/modules/web-console/frontend/views/templates/batch-confirm.jade
deleted file mode 100644
index 0b74a4e..0000000
--- a/modules/web-console/frontend/views/templates/batch-confirm.jade
+++ /dev/null
@@ -1,34 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.modal(tabindex='-1' role='dialog')
- .modal-dialog
- .modal-content
- .modal-header
- button.close(ng-click='cancel()' aria-hidden='true') ×
- h4.modal-title
- i.icon-confirm
- | Confirmation
- .modal-body(ng-show='content')
- p(ng-bind-html='content' style='text-align: center')
- .modal-footer
- .checkbox.labelField
- label
- input(type='checkbox' ng-model='applyToAll')
- | Apply to all
- button.btn.btn-default(id='batch-confirm-btn-cancel' ng-click='cancel()') Cancel
- button.btn.btn-default(id='batch-confirm-btn-skip' ng-click='skip(applyToAll)') Skip
- button.btn.btn-primary(id='batch-confirm-btn-overwrite' ng-click='overwrite(applyToAll)') Overwrite
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/batch-confirm.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/batch-confirm.tpl.pug b/modules/web-console/frontend/views/templates/batch-confirm.tpl.pug
new file mode 100644
index 0000000..0b74a4e
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/batch-confirm.tpl.pug
@@ -0,0 +1,34 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.modal(tabindex='-1' role='dialog')
+ .modal-dialog
+ .modal-content
+ .modal-header
+ button.close(ng-click='cancel()' aria-hidden='true') ×
+ h4.modal-title
+ i.icon-confirm
+ | Confirmation
+ .modal-body(ng-show='content')
+ p(ng-bind-html='content' style='text-align: center')
+ .modal-footer
+ .checkbox.labelField
+ label
+ input(type='checkbox' ng-model='applyToAll')
+ | Apply to all
+ button.btn.btn-default(id='batch-confirm-btn-cancel' ng-click='cancel()') Cancel
+ button.btn.btn-default(id='batch-confirm-btn-skip' ng-click='skip(applyToAll)') Skip
+ button.btn.btn-primary(id='batch-confirm-btn-overwrite' ng-click='overwrite(applyToAll)') Overwrite
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/clone.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/clone.jade b/modules/web-console/frontend/views/templates/clone.jade
deleted file mode 100644
index 99ec58b..0000000
--- a/modules/web-console/frontend/views/templates/clone.jade
+++ /dev/null
@@ -1,39 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-include /app/helpers/jade/mixins.jade
-
-.modal(tabindex='-1' role='dialog')
- .modal-dialog
- .modal-content
- .modal-header
- button.close(ng-click='$hide()') ×
- h4.modal-title
- i.fa.fa-clone
- | Clone
- form.form-horizontal.modal-body.row(name='ui.inputForm' novalidate)
- div
- .col-sm-2
- label.required.labelFormField New name:
- .col-sm-10
- .input-tip
- +ignite-form-field-input('"copy-new-name"','newName', false, 'true', 'Enter new name')(
- data-ignite-form-field-input-autofocus='true'
- ignite-on-enter='form.$valid && ok(newName)'
- )
- .modal-footer
- button.btn.btn-default(id='copy-btn-cancel' ng-click='$hide()') Cancel
- button.btn.btn-primary(id='copy-btn-confirm' ng-disabled='ui.inputForm.$invalid' ng-click='ok(newName)') Confirm
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/clone.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/clone.tpl.pug b/modules/web-console/frontend/views/templates/clone.tpl.pug
new file mode 100644
index 0000000..e62cb18
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/clone.tpl.pug
@@ -0,0 +1,39 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+include /app/helpers/jade/mixins
+
+.modal(tabindex='-1' role='dialog')
+ .modal-dialog
+ .modal-content
+ .modal-header
+ button.close(ng-click='$hide()') ×
+ h4.modal-title
+ i.fa.fa-clone
+ | Clone
+ form.form-horizontal.modal-body.row(name='ui.inputForm' novalidate)
+ div
+ .col-sm-2
+ label.required.labelFormField New name:
+ .col-sm-10
+ .input-tip
+ +ignite-form-field-input('"copy-new-name"','newName', false, 'true', 'Enter new name')(
+ data-ignite-form-field-input-autofocus='true'
+ ignite-on-enter='form.$valid && ok(newName)'
+ )
+ .modal-footer
+ button.btn.btn-default(id='copy-btn-cancel' ng-click='$hide()') Cancel
+ button.btn.btn-primary(id='copy-btn-confirm' ng-disabled='ui.inputForm.$invalid' ng-click='ok(newName)') Confirm
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/confirm.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/confirm.jade b/modules/web-console/frontend/views/templates/confirm.jade
deleted file mode 100644
index 0031498..0000000
--- a/modules/web-console/frontend/views/templates/confirm.jade
+++ /dev/null
@@ -1,33 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.modal(tabindex='-1' role='dialog')
- .modal-dialog
- .modal-content
- .modal-header
- button.close(ng-click='confirmCancel()' aria-hidden='true') ×
- h4.modal-title
- i.icon-confirm
- | Confirmation
- .modal-body(ng-show='content')
- p(ng-bind-html='content' style='text-align: center;')
- .modal-footer
- button#confirm-btn-cancel.btn.btn-default(ng-click='confirmCancel()') Cancel
-
- button#confirm-btn-no.btn.btn-default(ng-if='yesNo' ng-click='confirmNo()') No
- button#confirm-btn-yes.btn.btn-primary(ng-if='yesNo' ng-click='confirmYes()') Yes
-
- button#confirm-btn-ok.btn.btn-primary(ng-if='!yesNo' ng-click='confirmYes()') Confirm
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/confirm.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/confirm.tpl.pug b/modules/web-console/frontend/views/templates/confirm.tpl.pug
new file mode 100644
index 0000000..0031498
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/confirm.tpl.pug
@@ -0,0 +1,33 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.modal(tabindex='-1' role='dialog')
+ .modal-dialog
+ .modal-content
+ .modal-header
+ button.close(ng-click='confirmCancel()' aria-hidden='true') ×
+ h4.modal-title
+ i.icon-confirm
+ | Confirmation
+ .modal-body(ng-show='content')
+ p(ng-bind-html='content' style='text-align: center;')
+ .modal-footer
+ button#confirm-btn-cancel.btn.btn-default(ng-click='confirmCancel()') Cancel
+
+ button#confirm-btn-no.btn.btn-default(ng-if='yesNo' ng-click='confirmNo()') No
+ button#confirm-btn-yes.btn.btn-primary(ng-if='yesNo' ng-click='confirmYes()') Yes
+
+ button#confirm-btn-ok.btn.btn-primary(ng-if='!yesNo' ng-click='confirmYes()') Confirm
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/demo-info.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/demo-info.jade b/modules/web-console/frontend/views/templates/demo-info.jade
deleted file mode 100644
index 44c091c..0000000
--- a/modules/web-console/frontend/views/templates/demo-info.jade
+++ /dev/null
@@ -1,47 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.modal.center(role='dialog')
- .modal-dialog
- .modal-content
- #errors-container.modal-header.header
- button.close(ng-click='close()' aria-hidden='true') ×
- h4.modal-title
- i.fa.fa-info-circle
- | {{title}}
- .modal-body
- div(ng-bind-html='message')
- div(ng-hide='hasAgents')
- p
- div
- h4
- i.fa.fa-download.fa-cursor-default
- | How To Start Demo
- ul
- li
- a(ng-click='downloadAgent()') #[b Download]
- | and unzip ignite-web-agent archive
- li #[b Run] shell file ignite-web-agent.{sh|bat}
- div(ng-show='hasAgents')
- h4
- i.fa.fa-star-o.fa-cursor-default
- | Start Demo
- ul
- li Web Agent is already started
- li Close dialog and try Web Console
- .modal-footer
- button.btn.btn-default(ng-class='hasAgents ? "btn-primary" : "btn-default"' ng-click='close()') Close
- button.btn.btn-primary(ng-hide='hasAgents' ng-click='downloadAgent()') Download agent
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/demo-info.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/demo-info.tpl.pug b/modules/web-console/frontend/views/templates/demo-info.tpl.pug
new file mode 100644
index 0000000..44c091c
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/demo-info.tpl.pug
@@ -0,0 +1,47 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.modal.center(role='dialog')
+ .modal-dialog
+ .modal-content
+ #errors-container.modal-header.header
+ button.close(ng-click='close()' aria-hidden='true') ×
+ h4.modal-title
+ i.fa.fa-info-circle
+ | {{title}}
+ .modal-body
+ div(ng-bind-html='message')
+ div(ng-hide='hasAgents')
+ p
+ div
+ h4
+ i.fa.fa-download.fa-cursor-default
+ | How To Start Demo
+ ul
+ li
+ a(ng-click='downloadAgent()') #[b Download]
+ | and unzip ignite-web-agent archive
+ li #[b Run] shell file ignite-web-agent.{sh|bat}
+ div(ng-show='hasAgents')
+ h4
+ i.fa.fa-star-o.fa-cursor-default
+ | Start Demo
+ ul
+ li Web Agent is already started
+ li Close dialog and try Web Console
+ .modal-footer
+ button.btn.btn-default(ng-class='hasAgents ? "btn-primary" : "btn-default"' ng-click='close()') Close
+ button.btn.btn-primary(ng-hide='hasAgents' ng-click='downloadAgent()') Download agent
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/dropdown.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/dropdown.jade b/modules/web-console/frontend/views/templates/dropdown.jade
deleted file mode 100644
index 2ee8616..0000000
--- a/modules/web-console/frontend/views/templates/dropdown.jade
+++ /dev/null
@@ -1,24 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-ul.dropdown-menu(tabindex='-1' role='menu' ng-show='content && content.length')
- li(role='presentation' ui-sref-active='active' ng-class='{divider: item.divider, active: item.active}' ng-repeat='item in content')
- a(role='menuitem' tabindex='-1' ui-sref='{{item.sref}}' ng-if='!item.action && !item.divider && item.sref' ng-bind='item.text')
- a(role='menuitem' tabindex='-1' ng-href='{{item.href}}' ng-if='!item.action && !item.divider && item.href' target='{{item.target || ""}}' ng-bind='item.text')
- a(role='menuitem' tabindex='-1' href='javascript:void(0)' ng-if='!item.action && !item.divider && item.click' ng-click='$eval(item.click);$hide()' ng-bind='item.text')
- div(role='menuitem' ng-if='item.action')
- i.fa.pull-right(class='{{ item.action.icon }}' ng-click='item.action.click(item.data)' bs-tooltip data-title='{{ item.action.tooltip }}' data-trigger='hover' data-placement='bottom')
- div: a(ui-sref='{{ item.sref }}' ng-bind='item.text')
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/dropdown.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/dropdown.tpl.pug b/modules/web-console/frontend/views/templates/dropdown.tpl.pug
new file mode 100644
index 0000000..2ee8616
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/dropdown.tpl.pug
@@ -0,0 +1,24 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ul.dropdown-menu(tabindex='-1' role='menu' ng-show='content && content.length')
+ li(role='presentation' ui-sref-active='active' ng-class='{divider: item.divider, active: item.active}' ng-repeat='item in content')
+ a(role='menuitem' tabindex='-1' ui-sref='{{item.sref}}' ng-if='!item.action && !item.divider && item.sref' ng-bind='item.text')
+ a(role='menuitem' tabindex='-1' ng-href='{{item.href}}' ng-if='!item.action && !item.divider && item.href' target='{{item.target || ""}}' ng-bind='item.text')
+ a(role='menuitem' tabindex='-1' href='javascript:void(0)' ng-if='!item.action && !item.divider && item.click' ng-click='$eval(item.click);$hide()' ng-bind='item.text')
+ div(role='menuitem' ng-if='item.action')
+ i.fa.pull-right(class='{{ item.action.icon }}' ng-click='item.action.click(item.data)' bs-tooltip data-title='{{ item.action.tooltip }}' data-trigger='hover' data-placement='bottom')
+ div: a(ui-sref='{{ item.sref }}' ng-bind='item.text')
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/getting-started.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/getting-started.jade b/modules/web-console/frontend/views/templates/getting-started.jade
deleted file mode 100644
index 3a89035..0000000
--- a/modules/web-console/frontend/views/templates/getting-started.jade
+++ /dev/null
@@ -1,34 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.modal.center(role='dialog')
- .modal-dialog
- .modal-content
- #errors-container.modal-header.header
- button.close(ng-click='close()' aria-hidden='true') ×
- h4.modal-title
- i.fa.fa-book
- | {{title}}
- .getting-started
- .col-xs-12(ng-bind-html='message')
- .modal-footer
- .checkbox
- label
- input(type='checkbox' ng-model='ui.showGettingStarted')
- | Show getting started on next login
- a.btn.btn-primary(ng-disabled='isFirst()' ng-click='!isFirst() && prev()') Prev
- a.btn.btn-primary(ng-disabled='isLast()' ng-click='!isLast() && next()') Next
- a.btn.btn-primary(ng-click='close()') Close
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/getting-started.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/getting-started.tpl.pug b/modules/web-console/frontend/views/templates/getting-started.tpl.pug
new file mode 100644
index 0000000..3a89035
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/getting-started.tpl.pug
@@ -0,0 +1,34 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.modal.center(role='dialog')
+ .modal-dialog
+ .modal-content
+ #errors-container.modal-header.header
+ button.close(ng-click='close()' aria-hidden='true') ×
+ h4.modal-title
+ i.fa.fa-book
+ | {{title}}
+ .getting-started
+ .col-xs-12(ng-bind-html='message')
+ .modal-footer
+ .checkbox
+ label
+ input(type='checkbox' ng-model='ui.showGettingStarted')
+ | Show getting started on next login
+ a.btn.btn-primary(ng-disabled='isFirst()' ng-click='!isFirst() && prev()') Prev
+ a.btn.btn-primary(ng-disabled='isLast()' ng-click='!isLast() && next()') Next
+ a.btn.btn-primary(ng-click='close()') Close
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/message.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/message.jade b/modules/web-console/frontend/views/templates/message.jade
deleted file mode 100644
index 6eff74b..0000000
--- a/modules/web-console/frontend/views/templates/message.jade
+++ /dev/null
@@ -1,28 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.modal(tabindex='-1' role='dialog')
- .modal-dialog
- .modal-content
- .modal-header
- button.close(ng-click='$hide()' aria-hidden='true') ×
- h4.modal-title
- i.fa.fa-info-circle
- | {{title}}
- .modal-body(ng-show='content')
- p(ng-bind-html='content.join("<br/>")' style='text-align: left;')
- .modal-footer
- button.btn.btn-primary(id='confirm-btn-confirm' ng-click='$hide()') Ok
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/message.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/message.tpl.pug b/modules/web-console/frontend/views/templates/message.tpl.pug
new file mode 100644
index 0000000..6eff74b
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/message.tpl.pug
@@ -0,0 +1,28 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.modal(tabindex='-1' role='dialog')
+ .modal-dialog
+ .modal-content
+ .modal-header
+ button.close(ng-click='$hide()' aria-hidden='true') ×
+ h4.modal-title
+ i.fa.fa-info-circle
+ | {{title}}
+ .modal-body(ng-show='content')
+ p(ng-bind-html='content.join("<br/>")' style='text-align: left;')
+ .modal-footer
+ button.btn.btn-primary(id='confirm-btn-confirm' ng-click='$hide()') Ok
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/pagination.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/pagination.jade b/modules/web-console/frontend/views/templates/pagination.jade
deleted file mode 100644
index 08ced60..0000000
--- a/modules/web-console/frontend/views/templates/pagination.jade
+++ /dev/null
@@ -1,32 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-nav(ng-if='numPages && pages.length >= 2')
- ul.pagination
- li(ng-if='currentPage > 1')
- a(href='javascript:void(0);' ng-click='selectPage(1)' bs-tooltip='' data-title='First page' data-placement='bottom')
- i.fa.fa-angle-double-left
- li(ng-if='currentPage > 1')
- a(href='javascript:void(0);' ng-click='selectPage(currentPage-1)' bs-tooltip='' data-title='Previous page' data-placement='bottom')
- i.fa.fa-angle-left
- li(ng-repeat='page in pages' ng-class='{active: page==currentPage}')
- a(href='javascript:void(0);' ng-click='selectPage(page)') {{page}}
- li(ng-if='currentPage < numPages')
- a(href='javascript:void(0);' ng-click='selectPage(currentPage+1)' bs-tooltip='' data-title='Next page' data-placement='bottom')
- i.fa.fa-angle-right
- li(ng-if='currentPage < numPages')
- a(href='javascript:void(0);' ng-click='selectPage(numPages)' bs-tooltip='' data-title='Last page' data-placement='bottom')
- i.fa.fa-angle-double-right
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/select.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/select.jade b/modules/web-console/frontend/views/templates/select.jade
deleted file mode 100644
index aa6a2ef..0000000
--- a/modules/web-console/frontend/views/templates/select.jade
+++ /dev/null
@@ -1,26 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-ul.select.dropdown-menu(tabindex='-1' ng-show='$isVisible()' role='select')
- li(ng-if='$showAllNoneButtons || ($isMultiple && $matches.length > 2)')
- a(id='li-dropdown-select-all' ng-click='$selectAll()') {{$allText}} ({{$matches.length}})
- a(id='li-dropdown-select-none' ng-click='$selectNone()') {{$noneText}}
- hr(style='margin: 5px 0')
- li(role='presentation' ng-repeat='match in $matches')
- hr(ng-if='match.value == undefined' style='margin: 5px 0')
- a(id='li-dropdown-item-{{$index}}' role='menuitem' tabindex='-1' ng-class='{active: $isActive($index)}' ng-click='$select($index, $event)' bs-tooltip='widthIsSufficient && !widthIsSufficient("li-dropdown-item-{{$index}}", $index, match.label) ? match.label : ""' data-placement='right auto')
- i(class='{{$iconCheckmark}}' ng-if='$isActive($index)' ng-class='{active: $isActive($index)}')
- span(ng-bind-html='match.label')
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/select.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/select.tpl.pug b/modules/web-console/frontend/views/templates/select.tpl.pug
new file mode 100644
index 0000000..aa6a2ef
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/select.tpl.pug
@@ -0,0 +1,26 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ul.select.dropdown-menu(tabindex='-1' ng-show='$isVisible()' role='select')
+ li(ng-if='$showAllNoneButtons || ($isMultiple && $matches.length > 2)')
+ a(id='li-dropdown-select-all' ng-click='$selectAll()') {{$allText}} ({{$matches.length}})
+ a(id='li-dropdown-select-none' ng-click='$selectNone()') {{$noneText}}
+ hr(style='margin: 5px 0')
+ li(role='presentation' ng-repeat='match in $matches')
+ hr(ng-if='match.value == undefined' style='margin: 5px 0')
+ a(id='li-dropdown-item-{{$index}}' role='menuitem' tabindex='-1' ng-class='{active: $isActive($index)}' ng-click='$select($index, $event)' bs-tooltip='widthIsSufficient && !widthIsSufficient("li-dropdown-item-{{$index}}", $index, match.label) ? match.label : ""' data-placement='right auto')
+ i(class='{{$iconCheckmark}}' ng-if='$isActive($index)' ng-class='{active: $isActive($index)}')
+ span(ng-bind-html='match.label')
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/validation-error.jade
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/validation-error.jade b/modules/web-console/frontend/views/templates/validation-error.jade
deleted file mode 100644
index 13deb9b..0000000
--- a/modules/web-console/frontend/views/templates/validation-error.jade
+++ /dev/null
@@ -1,25 +0,0 @@
-//-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-.popover.validation-error
- .arrow
- .popover-content
- table
- tr
- td
- label {{content}}  
- td
- button.close(id='popover-btn-close' ng-click='$hide()') ×
http://git-wip-us.apache.org/repos/asf/ignite/blob/cad46799/modules/web-console/frontend/views/templates/validation-error.tpl.pug
----------------------------------------------------------------------
diff --git a/modules/web-console/frontend/views/templates/validation-error.tpl.pug b/modules/web-console/frontend/views/templates/validation-error.tpl.pug
new file mode 100644
index 0000000..13deb9b
--- /dev/null
+++ b/modules/web-console/frontend/views/templates/validation-error.tpl.pug
@@ -0,0 +1,25 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+.popover.validation-error
+ .arrow
+ .popover-content
+ table
+ tr
+ td
+ label {{content}}  
+ td
+ button.close(id='popover-btn-close' ng-click='$hide()') ×