aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web
diff options
context:
space:
mode:
authorStas Vilchik <vilchiks@gmail.com>2015-05-18 16:29:19 +0200
committerStas Vilchik <vilchiks@gmail.com>2015-05-19 18:20:09 +0200
commite59e4aa2c06a57566f148f4217d286461231ae58 (patch)
treead0918eb06b2474a6c71997b7ff573bbb93e0170 /server/sonar-web
parent8d82c9cf9ba88c1517604b4063ad0fc2a9a1bb9a (diff)
downloadsonarqube-e59e4aa2c06a57566f148f4217d286461231ae58.tar.gz
sonarqube-e59e4aa2c06a57566f148f4217d286461231ae58.zip
change web structure: separate components
Diffstat (limited to 'server/sonar-web')
-rw-r--r--server/sonar-web/.gitignore2
-rw-r--r--server/sonar-web/Gruntfile.coffee430
-rw-r--r--server/sonar-web/package.json14
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/app.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/app.coffee)17
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/layout.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/layout.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/models/report.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/models/report.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/models/reports.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/models/reports.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/router.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/router.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-actions.hbs (renamed from server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-actions.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-empty.hbs (renamed from server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-empty.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-layout.hbs (renamed from server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-layout.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-report.hbs (renamed from server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-report.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/views/actions-view.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/views/actions-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/views/report-view.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/views/report-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/views/reports-empty-view.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/views/reports-empty-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/analysis-reports/views/reports-view.coffee (renamed from server/sonar-web/src/main/coffee/analysis-reports/views/reports-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/app-context.coffee (renamed from server/sonar-web/src/main/coffee/issues/app-context.coffee)27
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/app-new.coffee (renamed from server/sonar-web/src/main/coffee/issues/app-new.coffee)27
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/component-viewer/issue-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/component-viewer/issue-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/component-viewer/main.coffee (renamed from server/sonar-web/src/main/coffee/issues/component-viewer/main.coffee)8
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/controller.coffee (renamed from server/sonar-web/src/main/coffee/issues/controller.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets-view.coffee)34
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/action-plan-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/action-plan-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/assignee-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/assignee-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/author-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/author-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/base-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/base-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/context-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/context-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/creation-date-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/creation-date-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/custom-values-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/custom-values-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/file-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/file-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/issue-key-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/issue-key-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/language-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/language-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/module-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/module-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/project-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/project-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/reporter-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/reporter-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/resolution-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/resolution-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/rule-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/rule-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/severity-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/severity-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/status-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/status-facet.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/facets/tag-facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/facets/tag-facet.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/filters-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/filters-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/issue-filter-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/issue-filter-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/layout.coffee (renamed from server/sonar-web/src/main/coffee/issues/layout.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/models/facet.coffee (renamed from server/sonar-web/src/main/coffee/issues/models/facet.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/models/facets.coffee (renamed from server/sonar-web/src/main/coffee/issues/models/facets.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/models/filter.coffee (renamed from server/sonar-web/src/main/coffee/issues/models/filter.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/models/filters.coffee (renamed from server/sonar-web/src/main/coffee/issues/models/filters.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/models/issues.coffee (renamed from server/sonar-web/src/main/coffee/issues/models/issues.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/models/state.coffee (renamed from server/sonar-web/src/main/coffee/issues/models/state.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/router.coffee (renamed from server/sonar-web/src/main/coffee/issues/router.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/_issues-filter-name.hbs (renamed from server/sonar-web/src/main/hbs/issues/_issues-filter-name.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/_issues-facet-header.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/_issues-facet-header.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-action-plan-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-action-plan-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-assignee-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-assignee-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-base-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-base-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-context-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-context-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-creation-date-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-creation-date-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-custom-values-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-custom-values-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-file-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-file-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-issue-key-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-issue-key-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-resolution-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-resolution-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-severity-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-severity-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-status-facet.hbs (renamed from server/sonar-web/src/main/hbs/issues/facets/issues-status-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-filters.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-filters.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-issue-filter-form.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-issue-filter-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-issue-filter.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-issue-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-layout.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-layout.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-header.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-workspace-header.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-home.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-workspace-home.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-list-component.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-workspace-list-component.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-list.hbs (renamed from server/sonar-web/src/main/hbs/issues/issues-workspace-list.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/workspace-header-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/workspace-header-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/workspace-home-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/workspace-home-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/workspace-list-empty-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/workspace-list-empty-view.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/workspace-list-item-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/workspace-list-item-view.coffee)6
-rw-r--r--server/sonar-web/src/main/coffee/apps/issues/workspace-list-view.coffee (renamed from server/sonar-web/src/main/coffee/issues/workspace-list-view.coffee)6
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/app.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/app.coffee)19
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/collections/conditions.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/collections/conditions.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/collections/quality-gates.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/collections/quality-gates.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/layout.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/layout.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/models/condition.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/models/condition.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/models/quality-gate.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/models/quality-gate.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/router.coffee)6
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/_quality-gate-intro.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/_quality-gate-intro.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-actions.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-actions.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-condition.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-condition.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-conditions-empty.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-conditions-empty.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-conditions.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-conditions.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-header.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-header.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-projects.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-projects.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-edit.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-edit.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-sidebar-list-empty.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-sidebar-list-empty.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-sidebar-list-item.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gate-sidebar-list-item.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gates-layout.hbs (renamed from server/sonar-web/src/main/hbs/quality-gates/quality-gates-layout.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-actions-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-actions-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-condition-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-condition-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-conditions-empty-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-conditions-empty-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-conditions-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-conditions-view.coffee)8
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-header-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-header-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-projects-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-projects-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-view.coffee)10
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-edit-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-edit-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-empty-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-empty-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-item-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-item-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-view.coffee (renamed from server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/common/dialogs.coffee (renamed from server/sonar-web/src/main/coffee/common/dialogs.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/components/common/inputs.coffee (renamed from server/sonar-web/src/main/coffee/common/inputs.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/components/common/popup.coffee (renamed from server/sonar-web/src/main/coffee/common/popup.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/collections/action-plans.coffee (renamed from server/sonar-web/src/main/coffee/issue/collections/action-plans.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/collections/issues.coffee (renamed from server/sonar-web/src/main/coffee/issue/collections/issues.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/issue-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/issue-view.coffee)28
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/manual-issue-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/manual-issue-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/models/changelog.coffee (renamed from server/sonar-web/src/main/coffee/issue/models/changelog.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/models/issue.coffee (renamed from server/sonar-web/src/main/coffee/issue/models/issue.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/comment-form.hbs (renamed from server/sonar-web/src/main/hbs/issue/comment-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-assign-form-option.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-assign-form-option.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-assign-form.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-assign-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-changelog.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-changelog.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-more-actions.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-more-actions.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-plan-form.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-plan-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-set-severity-form.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-set-severity-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-tags-form-option.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-tags-form-option.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-tags-form.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-tags-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue-transitions-form.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue-transitions-form.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/issue.hbs (renamed from server/sonar-web/src/main/hbs/issue/issue.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/templates/manual-issue.hbs (renamed from server/sonar-web/src/main/hbs/issue/manual-issue.hbs)0
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/action-options-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/action-options-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/assign-form-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/assign-form-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/changelog-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/changelog-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/comment-form-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/comment-form-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/issue-popup.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/issue-popup.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/more-actions-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/more-actions-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/plan-form-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/plan-form-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/set-severity-form-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/set-severity-form-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/tags-form-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/tags-form-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/issue/views/transitions-form-view.coffee (renamed from server/sonar-web/src/main/coffee/issue/views/transitions-form-view.coffee)4
-rw-r--r--server/sonar-web/src/main/coffee/components/navigator/filters/date-filter-view.coffee (renamed from server/sonar-web/src/main/coffee/navigator/filters/date-filter-view.coffee)2
-rw-r--r--server/sonar-web/src/main/coffee/libs/widgets/base.coffee (renamed from server/sonar-web/src/main/coffee/widgets/base.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/libs/widgets/histogram.coffee (renamed from server/sonar-web/src/main/coffee/widgets/histogram.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/libs/widgets/tag-cloud.coffee (renamed from server/sonar-web/src/main/coffee/widgets/tag-cloud.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/libs/widgets/treemap.coffee (renamed from server/sonar-web/src/main/coffee/widgets/treemap.coffee)0
-rw-r--r--server/sonar-web/src/main/coffee/libs/widgets/word-cloud.coffee (renamed from server/sonar-web/src/main/coffee/widgets/word-cloud.coffee)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/action-view.js (renamed from server/sonar-web/src/main/js/api-documentation/action-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/actions-view.js (renamed from server/sonar-web/src/main/js/api-documentation/actions-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/app.js (renamed from server/sonar-web/src/main/js/api-documentation/app.js)12
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/controller.js (renamed from server/sonar-web/src/main/js/api-documentation/controller.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/filters-view.js (renamed from server/sonar-web/src/main/js/api-documentation/filters-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/header-view.js (renamed from server/sonar-web/src/main/js/api-documentation/header-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/item-view.js (renamed from server/sonar-web/src/main/js/api-documentation/item-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/layout.js (renamed from server/sonar-web/src/main/js/api-documentation/layout.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/list-view.js (renamed from server/sonar-web/src/main/js/api-documentation/list-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/list.js (renamed from server/sonar-web/src/main/js/api-documentation/list.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/router.js (renamed from server/sonar-web/src/main/js/api-documentation/router.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-action.hbs (renamed from server/sonar-web/src/main/hbs/api-documentation/api-documentation-action.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-filters.hbs (renamed from server/sonar-web/src/main/hbs/api-documentation/api-documentation-filters.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-header.hbs (renamed from server/sonar-web/src/main/hbs/api-documentation/api-documentation-header.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-layout.hbs (renamed from server/sonar-web/src/main/hbs/api-documentation/api-documentation-layout.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-web-service.hbs (renamed from server/sonar-web/src/main/hbs/api-documentation/api-documentation-web-service.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/app.js (renamed from server/sonar-web/src/main/js/coding-rules/app.js)23
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/bulk-change-modal-view.js (renamed from server/sonar-web/src/main/js/coding-rules/bulk-change-modal-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/bulk-change-popup-view.js (renamed from server/sonar-web/src/main/js/coding-rules/bulk-change-popup-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/controller.js (renamed from server/sonar-web/src/main/js/coding-rules/controller.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets-view.js (renamed from server/sonar-web/src/main/js/coding-rules/facets-view.js)28
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/active-severity-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/active-severity-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/available-since-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/available-since-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/base-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/base-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/characteristic-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/custom-labels-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/custom-labels-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/custom-values-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/custom-values-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/inheritance-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/inheritance-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/key-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/key-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/language-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/language-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/quality-profile-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/quality-profile-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/query-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/query-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/repository-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/repository-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/severity-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/severity-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/status-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/status-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/tag-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/tag-facet.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/facets/template-facet.js (renamed from server/sonar-web/src/main/js/coding-rules/facets/template-facet.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/filters-view.js (renamed from server/sonar-web/src/main/js/coding-rules/filters-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/layout.js (renamed from server/sonar-web/src/main/js/coding-rules/layout.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/models/rule.js (renamed from server/sonar-web/src/main/js/coding-rules/models/rule.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/models/rules.js (renamed from server/sonar-web/src/main/js/coding-rules/models/rules.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/models/state.js (renamed from server/sonar-web/src/main/js/coding-rules/models/state.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule-details-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule-details-view.js)20
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule-filter-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule-filter-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rule-creation-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/custom-rule-creation-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rule-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/custom-rule-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rules-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/custom-rules-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/manual-rule-creation-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/manual-rule-creation-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/profile-activation-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/profile-activation-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-description-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-description-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-filter-mixin.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-filter-mixin.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-issues-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-issues-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-meta-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-meta-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-parameters-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-parameters-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-profile-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-profile-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/rule/rule-profiles-view.js (renamed from server/sonar-web/src/main/js/coding-rules/rule/rule-profiles-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/_coding-rules-workspace-list-item-activation.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/_coding-rules-workspace-list-item-activation.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-bulk-change-modal.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-bulk-change-modal.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-bulk-change-popup.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-bulk-change-popup.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-filters.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-filters.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-layout.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-layout.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-rule-details.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-rule-details.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-rule-filter-form.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-rule-filter-form.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-header.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-header.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-list-item.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-list-item.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-list.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-list.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/_coding-rules-facet-header.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/_coding-rules-facet-header.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-available-since-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-available-since-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-base-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-base-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-characteristic-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-characteristic-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-custom-values-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-custom-values-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-key-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-key-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-quality-profile-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-quality-profile-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-query-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-query-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-severity-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-severity-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-template-facet.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-template-facet.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rule-creation.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rule-creation.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rule.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rule.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rules.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rules.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-manual-rule-creation.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-manual-rule-creation.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-profile-activation.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-profile-activation.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-description.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-description.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-issues.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-issues.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-meta.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-meta.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-parameters.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-parameters.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-profile.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-profiles.hbs (renamed from server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-profiles.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/workspace-header-view.js (renamed from server/sonar-web/src/main/js/coding-rules/workspace-header-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/workspace-list-empty-view.js (renamed from server/sonar-web/src/main/js/coding-rules/workspace-list-empty-view.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/workspace-list-item-view.js (renamed from server/sonar-web/src/main/js/coding-rules/workspace-list-item-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/coding-rules/workspace-list-view.js (renamed from server/sonar-web/src/main/js/coding-rules/workspace-list-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/drilldown/app.js (renamed from server/sonar-web/src/main/js/drilldown/app.js)8
-rw-r--r--server/sonar-web/src/main/js/apps/markdown/app.js (renamed from server/sonar-web/src/main/js/markdown/app.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/markdown/markdown-help-view.js (renamed from server/sonar-web/src/main/js/markdown/markdown-help-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/markdown/templates/markdown-help.hbs (renamed from server/sonar-web/src/main/hbs/markdown/markdown-help.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/measures/app.js (renamed from server/sonar-web/src/main/js/measures/app.js)24
-rw-r--r--server/sonar-web/src/main/js/apps/measures/measures-filter-bar.js (renamed from server/sonar-web/src/main/js/measures/measures-filter-bar.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/nav/app.js (renamed from server/sonar-web/src/main/js/nav/app.js)10
-rw-r--r--server/sonar-web/src/main/js/apps/nav/context-navbar-view.js (renamed from server/sonar-web/src/main/js/nav/context-navbar-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/nav/global-navbar-view.js (renamed from server/sonar-web/src/main/js/nav/global-navbar-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/nav/search-view.js (renamed from server/sonar-web/src/main/js/nav/search-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/nav/settings-navbar-view.js (renamed from server/sonar-web/src/main/js/nav/settings-navbar-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/nav/shortcuts-help-view.js (renamed from server/sonar-web/src/main/js/nav/shortcuts-help-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/nav/state.js (renamed from server/sonar-web/src/main/js/nav/state.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/_nav-logo.hbs (renamed from server/sonar-web/src/main/hbs/nav/_nav-logo.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/_nav-navbar-label.hbs (renamed from server/sonar-web/src/main/hbs/nav/_nav-navbar-label.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-context-navbar.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-context-navbar.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-global-navbar.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-global-navbar.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-search-empty.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-search-empty.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-search-item.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-search-item.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-search.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-search.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-settings-navbar.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-settings-navbar.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/nav/templates/nav-shortcuts-help.hbs (renamed from server/sonar-web/src/main/hbs/nav/nav-shortcuts-help.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/actions-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/actions-view.js)8
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/app.js (renamed from server/sonar-web/src/main/js/quality-profiles/app.js)14
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/change-profile-parent-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/change-profile-parent-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/controller.js (renamed from server/sonar-web/src/main/js/quality-profiles/controller.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/copy-profile-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/copy-profile-view.js)6
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/create-profile-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/create-profile-view.js)8
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/delete-profile-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/delete-profile-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/helpers.js (renamed from server/sonar-web/src/main/js/quality-profiles/helpers.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/intro-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/intro-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/layout.js (renamed from server/sonar-web/src/main/js/quality-profiles/layout.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profile-changelog-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/profile-changelog-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profile-comparison-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/profile-comparison-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profile-details-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/profile-details-view.js)12
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profile-header-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/profile-header-view.js)8
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profile-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/profile-view.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profile.js (renamed from server/sonar-web/src/main/js/quality-profiles/profile.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profiles-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/profiles-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/profiles.js (renamed from server/sonar-web/src/main/js/quality-profiles/profiles.js)2
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/rename-profile-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/rename-profile-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/restore-built-in-profiles-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/restore-built-in-profiles-view.js)4
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/restore-profile-view.js (renamed from server/sonar-web/src/main/js/quality-profiles/restore-profile-view.js)8
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/router.js (renamed from server/sonar-web/src/main/js/quality-profiles/router.js)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profile-changelog.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profile-changelog.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profile-comparison.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profile-comparison.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-actions.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-actions.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-change-profile-parent.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-change-profile-parent.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-copy-profile.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-copy-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-create-profile.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-create-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-delete-profile.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-delete-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-intro.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-intro.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-layout.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-layout.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile-details.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile-details.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile-header.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile-header.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profiles-language.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profiles-language.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profiles.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profiles.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-rename-profile.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-rename-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-restore-built-in-profiles.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-restore-built-in-profiles.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-restore-profile.hbs (renamed from server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-restore-profile.hbs)0
-rw-r--r--server/sonar-web/src/main/js/apps/source-viewer/app.js (renamed from server/sonar-web/src/main/js/source-viewer/app.js)2
-rw-r--r--server/sonar-web/src/main/js/components/common/file-upload.js (renamed from server/sonar-web/src/main/js/common/file-upload.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/handlebars-extensions.js (renamed from server/sonar-web/src/main/js/common/handlebars-extensions.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/jquery-isolated-scroll.js (renamed from server/sonar-web/src/main/js/common/jquery-isolated-scroll.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/modal-form.js (renamed from server/sonar-web/src/main/js/common/modal-form.js)2
-rw-r--r--server/sonar-web/src/main/js/components/common/modals.js (renamed from server/sonar-web/src/main/js/common/modals.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/processes.js (renamed from server/sonar-web/src/main/js/common/processes.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/select-list.js (renamed from server/sonar-web/src/main/js/common/select-list.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/selectable-collection-view.js (renamed from server/sonar-web/src/main/js/common/selectable-collection-view.js)0
-rw-r--r--server/sonar-web/src/main/js/components/common/templates/_markdown-tips.hbs (renamed from server/sonar-web/src/main/hbs/common/_markdown-tips.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/ajax-select-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/ajax-select-filters.js)6
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/base-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/base-filters.js)2
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/checkbox-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/checkbox-filters.js)4
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/choice-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/choice-filters.js)4
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/favorite-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/favorite-filters.js)6
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/filter-bar.js (renamed from server/sonar-web/src/main/js/navigator/filters/filter-bar.js)14
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/metric-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/metric-filters.js)4
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/more-criteria-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/more-criteria-filters.js)6
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/range-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/range-filters.js)4
-rw-r--r--server/sonar-web/src/main/js/components/navigator/filters/string-filters.js (renamed from server/sonar-web/src/main/js/navigator/filters/string-filters.js)4
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/ajax-select-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/ajax-select-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/base-details-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/base-details-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/base-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/base-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/checkbox-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/checkbox-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/choice-filter-item.hbs (renamed from server/sonar-web/src/main/hbs/navigator/choice-filter-item.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/choice-filter-template.hbs (renamed from server/sonar-web/src/main/hbs/navigator/choice-filter-template.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/choice-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/choice-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/favorite-details-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/favorite-details-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/favorite-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/favorite-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/metric-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/metric-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/more-criteria-details-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/more-criteria-details-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/more-criteria-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/more-criteria-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/range-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/range-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/navigator/templates/string-filter.hbs (renamed from server/sonar-web/src/main/hbs/navigator/string-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/header.js (renamed from server/sonar-web/src/main/js/source-viewer/header.js)6
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/main.js (renamed from server/sonar-web/src/main/js/source-viewer/viewer.js)20
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js (renamed from server/sonar-web/src/main/js/source-viewer/measures-overlay.js)4
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/more-actions.js (renamed from server/sonar-web/src/main/js/source-viewer/more-actions.js)6
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/popups/coverage-popup.js (renamed from server/sonar-web/src/main/js/source-viewer/popups/coverage-popup.js)8
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/popups/duplication-popup.js (renamed from server/sonar-web/src/main/js/source-viewer/popups/duplication-popup.js)8
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/popups/line-actions-popup.js (renamed from server/sonar-web/src/main/js/source-viewer/popups/line-actions-popup.js)6
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/popups/scm-popup.js (renamed from server/sonar-web/src/main/js/source-viewer/popups/scm-popup.js)4
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/source.js (renamed from server/sonar-web/src/main/js/source-viewer/source.js)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-all.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-all.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-coverage.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-coverage.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-duplications.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-duplications.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-issues.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-issues.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-lines.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-lines.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-test-cases.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-test-cases.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-tests.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-tests.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-coverage-popup.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-coverage-popup.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-duplication-popup.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-duplication-popup.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-header.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-header.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-line-options-popup.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-line-options-popup.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-measures.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-measures.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-more-actions.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-more-actions.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-scm-popup.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer-scm-popup.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer.hbs (renamed from server/sonar-web/src/main/hbs/source-viewer/source-viewer.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/main.js (renamed from server/sonar-web/src/main/js/workspace/main.js)10
-rw-r--r--server/sonar-web/src/main/js/components/workspace/models/item.js (renamed from server/sonar-web/src/main/js/workspace/models/item.js)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/models/items.js (renamed from server/sonar-web/src/main/js/workspace/models/items.js)2
-rw-r--r--server/sonar-web/src/main/js/components/workspace/templates/workspace-item.hbs (renamed from server/sonar-web/src/main/hbs/workspace/workspace-item.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/templates/workspace-items.hbs (renamed from server/sonar-web/src/main/hbs/workspace/workspace-items.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/templates/workspace-rule.hbs (renamed from server/sonar-web/src/main/hbs/workspace/workspace-rule.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/templates/workspace-viewer-header.hbs (renamed from server/sonar-web/src/main/hbs/workspace/workspace-viewer-header.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/templates/workspace-viewer.hbs (renamed from server/sonar-web/src/main/hbs/workspace/workspace-viewer.hbs)0
-rw-r--r--server/sonar-web/src/main/js/components/workspace/views/base-viewer-view.js (renamed from server/sonar-web/src/main/js/workspace/views/base-viewer-view.js)2
-rw-r--r--server/sonar-web/src/main/js/components/workspace/views/item-view.js (renamed from server/sonar-web/src/main/js/workspace/views/item-view.js)2
-rw-r--r--server/sonar-web/src/main/js/components/workspace/views/items-view.js (renamed from server/sonar-web/src/main/js/workspace/views/items-view.js)4
-rw-r--r--server/sonar-web/src/main/js/components/workspace/views/rule-view.js (renamed from server/sonar-web/src/main/js/workspace/views/rule-view.js)4
-rw-r--r--server/sonar-web/src/main/js/components/workspace/views/viewer-header-view.js (renamed from server/sonar-web/src/main/js/workspace/views/viewer-header-view.js)2
-rw-r--r--server/sonar-web/src/main/js/components/workspace/views/viewer-view.js (renamed from server/sonar-web/src/main/js/workspace/views/viewer-view.js)8
-rw-r--r--server/sonar-web/src/main/js/libs/application.js (renamed from server/sonar-web/src/main/js/application.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/csv.js (renamed from server/sonar-web/src/main/js/csv.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/dashboard.js (renamed from server/sonar-web/src/main/js/dashboard.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/graphics/barchart.js (renamed from server/sonar-web/src/main/js/graphics/barchart.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/graphics/pie-chart.js (renamed from server/sonar-web/src/main/js/graphics/pie-chart.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/recent-history.js (renamed from server/sonar-web/src/main/js/recent-history.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/require.js2083
-rw-r--r--server/sonar-web/src/main/js/libs/select2-jquery-ui-fix.js (renamed from server/sonar-web/src/main/js/select2-jquery-ui-fix.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/sortable.js (renamed from server/sonar-web/src/main/js/sortable.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/backbone.js (renamed from server/sonar-web/src/main/js/third-party/backbone.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/backbone.marionette.js (renamed from server/sonar-web/src/main/js/third-party/backbone.marionette.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/bootstrap/dropdown.js (renamed from server/sonar-web/src/main/js/third-party/bootstrap/dropdown.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/bootstrap/tooltip.js (renamed from server/sonar-web/src/main/js/third-party/bootstrap/tooltip.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/d3.js (renamed from server/sonar-web/src/main/js/third-party/d3.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/handlebars.js (renamed from server/sonar-web/src/main/js/third-party/handlebars.js)0
-rwxr-xr-xserver/sonar-web/src/main/js/libs/third-party/jquery-ui.js (renamed from server/sonar-web/src/main/js/third-party/jquery-ui.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/jquery.js (renamed from server/sonar-web/src/main/js/third-party/jquery.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/jquery.mockjax.js (renamed from server/sonar-web/src/main/js/third-party/jquery.mockjax.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/keymaster.js (renamed from server/sonar-web/src/main/js/third-party/keymaster.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/latinize.js (renamed from server/sonar-web/src/main/js/third-party/latinize.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/moment.js (renamed from server/sonar-web/src/main/js/third-party/moment.js)0
-rwxr-xr-xserver/sonar-web/src/main/js/libs/third-party/numeral-languages.js (renamed from server/sonar-web/src/main/js/third-party/numeral-languages.js)0
-rwxr-xr-xserver/sonar-web/src/main/js/libs/third-party/numeral.js (renamed from server/sonar-web/src/main/js/third-party/numeral.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/select2.js (renamed from server/sonar-web/src/main/js/third-party/select2.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/third-party/underscore.js (renamed from server/sonar-web/src/main/js/third-party/underscore.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/translate.js (renamed from server/sonar-web/src/main/js/translate.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/widgets/bubble-chart.js (renamed from server/sonar-web/src/main/js/widgets/bubble-chart.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/widgets/pie-chart.js (renamed from server/sonar-web/src/main/js/widgets/pie-chart.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/widgets/stack-area.js (renamed from server/sonar-web/src/main/js/widgets/stack-area.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/widgets/timeline.js (renamed from server/sonar-web/src/main/js/widgets/timeline.js)0
-rw-r--r--server/sonar-web/src/main/js/libs/widgets/widget.js (renamed from server/sonar-web/src/main/js/widgets/widget.js)0
-rw-r--r--server/sonar-web/src/main/js/require.js55
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/_widget-issue-filter-limit.hbs (renamed from server/sonar-web/src/main/hbs/widgets/_widget-issue-filter-limit.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/_widget-issue-filter-total.hbs (renamed from server/sonar-web/src/main/hbs/widgets/_widget-issue-filter-total.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-action-plans.hbs (renamed from server/sonar-web/src/main/hbs/widgets/widget-issue-filter-action-plans.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-assignees.hbs (renamed from server/sonar-web/src/main/hbs/widgets/widget-issue-filter-assignees.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-resolutions.hbs (renamed from server/sonar-web/src/main/hbs/widgets/widget-issue-filter-resolutions.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-severities.hbs (renamed from server/sonar-web/src/main/hbs/widgets/widget-issue-filter-severities.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-statuses.hbs (renamed from server/sonar-web/src/main/hbs/widgets/widget-issue-filter-statuses.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter.hbs (renamed from server/sonar-web/src/main/hbs/widgets/widget-issue-filter.hbs)0
-rw-r--r--server/sonar-web/src/main/js/widgets/issue-filter/widget.js (renamed from server/sonar-web/src/main/js/widgets/issue-filter.js)2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/analysis_reports/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/api_documentation/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/coding_rules/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/component/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/component_issues/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/dashboard/no_dashboard.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/drilldown/measures.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/groups/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/issues/search.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_head.html.erb3
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_navbar.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/markdown/help.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/measures/search.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/permission_templates/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/profiles/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/project_roles/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/quality_gates/index.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/global.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/projects.html.erb2
-rw-r--r--server/sonar-web/src/main/webapp/WEB-INF/app/views/users/index.html.erb2
-rw-r--r--server/sonar-web/src/test/js/api-documentation-spec.js10
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-active-severity-facet.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-available-since.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-bulk-change.js8
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-facets.js8
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-header.js6
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-inheritance-facet.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-list-actions.js6
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-no-available-profiles-for-activation.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-quality-profile-facet.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-query-facet.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-rule-should-have-permalink.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-activate-profile.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-create-custom-rules.js4
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-create-manual-rules.js4
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-delete-custom-rules.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-delete-manual-rules.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-custom-rules.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-deprecated-label.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-details.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-empty-list.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-facets.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-rule-issues.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-rule.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-should-show-rules.js2
-rw-r--r--server/sonar-web/src/test/js/coding-rules-page-spec.js4
-rw-r--r--server/sonar-web/src/test/js/global-issue-filter-widget.js32
-rw-r--r--server/sonar-web/src/test/js/issues-page-should-open-issue-permalink.js2
-rw-r--r--server/sonar-web/src/test/js/issues-page-spec.js18
-rw-r--r--server/sonar-web/src/test/js/markdown-spec.js2
-rw-r--r--server/sonar-web/src/test/js/nav-spec.js12
-rw-r--r--server/sonar-web/src/test/js/project-issue-filter-widget.js8
-rw-r--r--server/sonar-web/src/test/js/quality-gates-spec.js2
-rw-r--r--server/sonar-web/src/test/js/quality-profiles.js42
-rw-r--r--server/sonar-web/src/test/js/source-viewer-coverage.js2
-rw-r--r--server/sonar-web/src/test/js/source-viewer-create-manual-issue.js2
-rw-r--r--server/sonar-web/src/test/js/source-viewer-duplications.js4
-rw-r--r--server/sonar-web/src/test/js/source-viewer-favorite-spec.js4
-rw-r--r--server/sonar-web/src/test/js/source-viewer-issues.js2
-rw-r--r--server/sonar-web/src/test/js/source-viewer-scm.js2
-rw-r--r--server/sonar-web/src/test/js/source-viewer-should-not-show-source-if-no-permission.js2
-rw-r--r--server/sonar-web/src/test/js/source-viewer-spec.js16
-rw-r--r--server/sonar-web/src/test/js/workspace.js12
-rw-r--r--server/sonar-web/src/test/server-coverage.js2
-rw-r--r--server/sonar-web/src/test/server.js2
-rw-r--r--server/sonar-web/src/test/views/layouts/main.jade90
474 files changed, 2923 insertions, 971 deletions
diff --git a/server/sonar-web/.gitignore b/server/sonar-web/.gitignore
index 0a915bbc459..704f5b5a922 100644
--- a/server/sonar-web/.gitignore
+++ b/server/sonar-web/.gitignore
@@ -5,7 +5,7 @@ node/
node_modules/
# build
-src/main/webapp/build/
+build/
src/main/webapp/js/
src/main/webapp/css/
src/main/webapp/WEB-INF/lib/*.jar
diff --git a/server/sonar-web/Gruntfile.coffee b/server/sonar-web/Gruntfile.coffee
index 892a11c2f45..a229f16ae23 100644
--- a/server/sonar-web/Gruntfile.coffee
+++ b/server/sonar-web/Gruntfile.coffee
@@ -4,238 +4,171 @@ module.exports = (grunt) ->
unzip: 'grunt-zip'
replace: 'grunt-text-replace'
});
+ require('time-grunt')(grunt);
- pkg = grunt.file.readJSON('package.json')
expressPort = '<%= grunt.option("port") || 3000 %>'
isWindows = process.platform == 'win32'
grunt.initConfig
pkg: grunt.file.readJSON('package.json')
+ SOURCE_PATH: './src/main'
+ ASSETS_PATH: grunt.option("assetsDir") || './src/main/webapp'
+ BUILD_PATH: './build'
+
less:
build:
- options: cleancss: true
+ options:
+ cleancss: true
files:
- '<%= grunt.option("assetsDir") || pkg.assets %>css/sonar.css': [
- '<%= pkg.sources %>less/jquery-ui.less'
- '<%= pkg.sources %>less/select2.less'
- '<%= pkg.sources %>less/select2-sonar.less'
+ '<%= BUILD_PATH %>/css/sonar.css': [
+ '<%= SOURCE_PATH %>/less/jquery-ui.less'
+ '<%= SOURCE_PATH %>/less/select2.less'
+ '<%= SOURCE_PATH %>/less/select2-sonar.less'
- '<%= pkg.sources %>less/init.less'
- '<%= pkg.sources %>less/components.less'
- '<%= pkg.sources %>less/pages.less'
+ '<%= SOURCE_PATH %>/less/init.less'
+ '<%= SOURCE_PATH %>/less/components.less'
+ '<%= SOURCE_PATH %>/less/pages.less'
- '<%= pkg.sources %>less/style.less'
+ '<%= SOURCE_PATH %>/less/style.less'
- '<%= pkg.sources %>less/*.less'
+ '<%= SOURCE_PATH %>/less/*.less'
]
- cssUrlRewrite:
- build:
- src: '<%= grunt.option("assetsDir") || pkg.assets %>css/sonar.css'
- dest: '<%= grunt.option("assetsDir") || pkg.assets %>css/sonar.css'
- options:
- skipExternal: true
- rewriteUrl: (url, options, dataURI) ->
- path = url.replace pkg.assets, ''
- if path.indexOf('data:') == 0
- "#{path}"
- else
- hash = require('crypto').createHash('md5').update(dataURI).digest('hex')
- "../#{path}?#{hash}"
-
-
-
coffee:
build:
files: [
expand: true
- cwd: '<%= pkg.sources %>coffee'
+ cwd: '<%= SOURCE_PATH %>/coffee'
src: ['**/*.coffee']
- dest: '<%= grunt.option("assetsDir") || pkg.assets %>js'
+ dest: '<%= BUILD_PATH %>/js'
ext: '.js'
]
concat:
- dev:
- files:
- '<%= grunt.option("assetsDir") || pkg.assets %>js/sonar.js': [
- '<%= grunt.option("assetsDir") || pkg.assets %>js/translate.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/jquery.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/jquery-ui.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/d3.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/latinize.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/underscore.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/backbone.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/backbone.marionette.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/handlebars.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/underscore.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/select2.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/keymaster.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/moment.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/numeral.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/numeral-languages.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/bootstrap/tooltip.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/bootstrap/dropdown.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/select2-jquery-ui-fix.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/base.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/widget.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/bubble-chart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/timeline.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/stack-area.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/pie-chart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/histogram.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/word-cloud.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/tag-cloud.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/treemap.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/graphics/pie-chart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/graphics/barchart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/sortable.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/inputs.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/dialogs.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/processes.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/jquery-isolated-scroll.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/handlebars-extensions.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/application.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/csv.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/dashboard.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/recent-history.js'
- ]
build:
files:
- '<%= grunt.option("assetsDir") || pkg.assets %>build/js/sonar.js': [
- '<%= grunt.option("assetsDir") || pkg.assets %>js/translate.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/jquery.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/jquery-ui.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/d3.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/latinize.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/underscore.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/backbone.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/backbone.marionette.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/handlebars.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/underscore.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/select2.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/keymaster.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/moment.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/numeral.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/numeral-languages.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/bootstrap/tooltip.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/third-party/bootstrap/dropdown.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/select2-jquery-ui-fix.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/base.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/widget.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/bubble-chart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/timeline.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/stack-area.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/pie-chart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/histogram.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/word-cloud.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/tag-cloud.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/widgets/treemap.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/graphics/pie-chart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/graphics/barchart.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/sortable.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/inputs.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/dialogs.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/processes.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/jquery-isolated-scroll.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/common/handlebars-extensions.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/application.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/csv.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/dashboard.js'
- '<%= grunt.option("assetsDir") || pkg.assets %>js/recent-history.js'
+ '<%= BUILD_PATH %>/js/sonar.js': [
+ '<%= BUILD_PATH %>/js/libs/translate.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/jquery.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/jquery-ui.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/d3.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/latinize.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/underscore.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/backbone.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/backbone.marionette.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/handlebars.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/underscore.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/select2.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/keymaster.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/moment.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/numeral.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/numeral-languages.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/bootstrap/tooltip.js'
+ '<%= BUILD_PATH %>/js/libs/third-party/bootstrap/dropdown.js'
+ '<%= BUILD_PATH %>/js/libs/select2-jquery-ui-fix.js'
+
+ '<%= BUILD_PATH %>/js/libs/widgets/base.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/widget.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/bubble-chart.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/timeline.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/stack-area.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/pie-chart.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/histogram.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/word-cloud.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/tag-cloud.js'
+ '<%= BUILD_PATH %>/js/libs/widgets/treemap.js'
+
+ '<%= BUILD_PATH %>/js/libs/graphics/pie-chart.js'
+ '<%= BUILD_PATH %>/js/libs/graphics/barchart.js'
+ '<%= BUILD_PATH %>/js/libs/sortable.js'
+
+ '<%= BUILD_PATH %>/js/components/common/inputs.js'
+ '<%= BUILD_PATH %>/js/components/common/dialogs.js'
+ '<%= BUILD_PATH %>/js/components/common/processes.js'
+ '<%= BUILD_PATH %>/js/components/common/jquery-isolated-scroll.js'
+ '<%= BUILD_PATH %>/js/components/common/handlebars-extensions.js'
+
+ '<%= BUILD_PATH %>/js/libs/application.js'
+ '<%= BUILD_PATH %>/js/libs/csv.js'
+ '<%= BUILD_PATH %>/js/libs/dashboard.js'
+ '<%= BUILD_PATH %>/js/libs/recent-history.js'
+ '<%= BUILD_PATH %>/js/libs/require.js'
]
requirejs:
options:
- baseUrl: '<%= grunt.option("assetsDir") || pkg.assets %>js/'
+ baseUrl: '<%= BUILD_PATH %>/js/'
preserveLicenseComments: false
- optimize: 'none'
-
- paths:
- 'backbone': 'third-party/backbone'
- 'backbone.marionette': 'third-party/backbone.marionette'
- 'handlebars': 'third-party/handlebars'
- 'moment': 'third-party/moment'
- 'select-list': 'common/select-list'
- 'jquery.mockjax': 'third-party/jquery.mockjax'
-
- shim:
- 'backbone.marionette':
- deps: ['backbone']
- exports: 'Marionette'
- 'backbone': exports: 'Backbone'
- 'handlebars': exports: 'Handlebars'
- 'moment': exports: 'moment'
- 'select-list': exports: 'SelectList'
qualityGate: options:
- name: 'quality-gate/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/quality-gate/app.js'
+ name: 'apps/quality-gate/app'
+ out: '<%= ASSETS_PATH %>/js/apps/quality-gate/app.js'
qualityProfiles: options:
- name: 'quality-profiles/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/quality-profiles/app.js'
+ name: 'apps/quality-profiles/app'
+ out: '<%= ASSETS_PATH %>/js/apps/quality-profiles/app.js'
codingRules: options:
- name: 'coding-rules/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/coding-rules/app.js'
+ name: 'apps/coding-rules/app'
+ out: '<%= ASSETS_PATH %>/js/apps/coding-rules/app.js'
issues: options:
- name: 'issues/app-new'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/issues/app-new.js'
+ name: 'apps/issues/app-new'
+ out: '<%= ASSETS_PATH %>/js/apps/issues/app-new.js'
issuesContext: options:
- name: 'issues/app-context'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/issues/app-context.js'
+ name: 'apps/issues/app-context'
+ out: '<%= ASSETS_PATH %>/js/apps/issues/app-context.js'
measures: options:
- name: 'measures/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/measures/app.js'
+ name: 'apps/measures/app'
+ out: '<%= ASSETS_PATH %>/js/apps/measures/app.js'
selectList: options:
- name: 'common/select-list'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/common/select-list.js'
+ name: 'components/common/select-list'
+ out: '<%= ASSETS_PATH %>/js/components/common/select-list.js'
apiDocumentation: options:
- name: 'api-documentation/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/api-documentation/app.js'
+ name: 'apps/api-documentation/app'
+ out: '<%= ASSETS_PATH %>/js/apps/api-documentation/app.js'
drilldown: options:
- name: 'drilldown/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/drilldown/app.js'
+ name: 'apps/drilldown/app'
+ out: '<%= ASSETS_PATH %>/js/apps/drilldown/app.js'
sourceViewer: options:
- name: 'source-viewer/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/source-viewer/app.js'
+ name: 'apps/source-viewer/app'
+ out: '<%= ASSETS_PATH %>/js/apps/source-viewer/app.js'
monitoring: options:
- name: 'analysis-reports/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/analysis-reports/app.js'
+ name: 'apps/analysis-reports/app'
+ out: '<%= ASSETS_PATH %>/js/apps/analysis-reports/app.js'
nav: options:
- name: 'nav/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/nav/app.js'
+ name: 'apps/nav/app'
+ out: '<%= ASSETS_PATH %>/js/apps/nav/app.js'
issueFilterWidget: options:
- name: 'widgets/issue-filter'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/widgets/issue-filter.js'
+ name: 'widgets/issue-filter/widget'
+ out: '<%= ASSETS_PATH %>/js/widgets/issue-filter/widget.js'
markdown: options:
- name: 'markdown/app'
- out: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/markdown/app.js'
+ name: 'apps/markdown/app'
+ out: '<%= ASSETS_PATH %>/js/apps/markdown/app.js'
parallel:
compile:
options: grunt: true
tasks: ['less:build', 'coffee:build', 'handlebars:build']
- requirejs:
+ build:
options: grunt: true
tasks: [
+ 'uglify:build'
'requirejs:qualityGate'
'requirejs:qualityProfiles'
'requirejs:codingRules'
@@ -251,6 +184,14 @@ module.exports = (grunt) ->
'requirejs:issueFilterWidget'
'requirejs:markdown'
]
+ 'build-test':
+ options:
+ grunt: true
+ tasks: ['build-suffix', 'test-suffix']
+ 'build-coverage':
+ options:
+ grunt: true
+ tasks: ['build-suffix', 'coverage-suffix']
handlebars:
@@ -267,64 +208,66 @@ module.exports = (grunt) ->
build:
files:
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/navigator.js': [
- '<%= pkg.sources %>hbs/navigator/**/*.hbs'
+ '<%= BUILD_PATH %>/js/components/navigator/templates.js': [
+ '<%= SOURCE_PATH %>/js/components/navigator/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/coding-rules.js': [
- '<%= pkg.sources %>hbs/common/**/*.hbs'
- '<%= pkg.sources %>hbs/coding-rules/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/coding-rules/templates.js': [
+ '<%= SOURCE_PATH %>/js/components/common/templates/**/*.hbs'
+ '<%= SOURCE_PATH %>/js/apps/coding-rules/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/quality-gates.js': [
- '<%= pkg.sources %>hbs/quality-gates/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/quality-gate/templates.js': [
+ '<%= SOURCE_PATH %>/coffee/apps/quality-gate/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/quality-profiles.js': [
- '<%= pkg.sources %>hbs/quality-profiles/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/quality-profiles/templates.js': [
+ '<%= SOURCE_PATH %>/js/apps/quality-profiles/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/source-viewer.js': [
- '<%= pkg.sources %>hbs/source-viewer/**/*.hbs'
+ '<%= BUILD_PATH %>/js/components/source-viewer/templates.js': [
+ '<%= SOURCE_PATH %>/js/components/source-viewer/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/issue.js': [
- '<%= pkg.sources %>hbs/common/**/*.hbs'
- '<%= pkg.sources %>hbs/issue/**/*.hbs'
+ '<%= BUILD_PATH %>/js/components/issue/templates.js': [
+ '<%= SOURCE_PATH %>/js/components/common/templates/**/*.hbs'
+ '<%= SOURCE_PATH %>/coffee/components/issue/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/issues.js': [
- '<%= pkg.sources %>hbs/issues/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/issues/templates.js': [
+ '<%= SOURCE_PATH %>/coffee/apps/issues/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/api-documentation.js': [
- '<%= pkg.sources %>hbs/api-documentation/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/api-documentation/templates.js': [
+ '<%= SOURCE_PATH %>/js/apps/api-documentation/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/analysis-reports.js': [
- '<%= pkg.sources %>hbs/analysis-reports/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/analysis-reports/templates.js': [
+ '<%= SOURCE_PATH %>/coffee/apps/analysis-reports/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/nav.js': [
- '<%= pkg.sources %>hbs/nav/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/nav/templates.js': [
+ '<%= SOURCE_PATH %>/js/apps/nav/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/widgets.js': [
- '<%= pkg.sources %>hbs/widgets/**/*.hbs'
+ '<%= BUILD_PATH %>/js/widgets/issue-filter/templates.js': [
+ '<%= SOURCE_PATH %>/js/widgets/issue-filter/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/workspace.js': [
- '<%= pkg.sources %>hbs/workspace/**/*.hbs'
+ '<%= BUILD_PATH %>/js/components/workspace/templates.js': [
+ '<%= SOURCE_PATH %>/js/components/workspace/templates/**/*.hbs'
]
- '<%= grunt.option("assetsDir") || pkg.assets %>js/templates/markdown.js': [
- '<%= pkg.sources %>hbs/markdown/**/*.hbs'
+ '<%= BUILD_PATH %>/js/apps/markdown/templates.js': [
+ '<%= SOURCE_PATH %>/js/apps/markdown/templates/**/*.hbs'
]
clean:
options:
force: true
- css: ['<%= grunt.option("assetsDir") || pkg.assets %>css/']
- js: ['<%= grunt.option("assetsDir") || pkg.assets %>js/']
- build: ['<%= grunt.option("assetsDir") || pkg.assets %>build/']
+ css: ['<%= ASSETS_PATH %>/css']
+ js: ['<%= ASSETS_PATH %>/js']
+ build: ['<%= BUILD_PATH %>']
copy:
js:
- expand: true, cwd: '<%= pkg.sources %>js/', src: ['**'], dest: '<%= grunt.option("assetsDir") || pkg.assets %>js/'
- build:
- expand: true, cwd: '<%= grunt.option("assetsDir") || pkg.assets %>build/js/', src: ['**'], dest: '<%= grunt.option("assetsDir") || pkg.assets %>js/'
- requirejs:
- src: '<%= pkg.sources %>js/require.js', dest: '<%= grunt.option("assetsDir") || pkg.assets %>js/require.js'
+ expand: true, cwd: '<%= SOURCE_PATH %>/js', src: ['**/*.js'], dest: '<%= BUILD_PATH %>/js'
+ 'assets-js':
+ src: '<%= BUILD_PATH %>/js/sonar.js', dest: '<%= ASSETS_PATH %>/js/sonar.js'
+ 'assets-all-js':
+ expand: true, cwd: '<%= BUILD_PATH %>/js', src: ['**/*.js'], dest: '<%= ASSETS_PATH %>/js'
+ 'assets-css':
+ src: '<%= BUILD_PATH %>/css/sonar.css', dest: '<%= ASSETS_PATH %>/css/sonar.css'
express:
@@ -384,15 +327,10 @@ module.exports = (grunt) ->
src: ['<%= grunt.option("file") %>']
- uglify_parallel:
+ uglify:
build:
- files: [
- expand: true
- cwd: '<%= grunt.option("assetsDir") || pkg.assets %>js'
- src: ['**/*.js']
- dest: '<%= grunt.option("assetsDir") || pkg.assets %>js'
- ext: '.js'
- ]
+ src: '<%= ASSETS_PATH %>/js/sonar.js'
+ dest: '<%= ASSETS_PATH %>/js/sonar.js'
curl:
@@ -424,11 +362,11 @@ module.exports = (grunt) ->
jshint:
dev:
src: [
- '<%= pkg.sources %>js/**/*.js'
- '!<%= pkg.sources %>js/third-party/underscore.js'
- '!<%= pkg.sources %>js/third-party/**/*.js'
- '!<%= pkg.sources %>js/tests/**/*.js'
- '!<%= pkg.sources %>js/require.js'
+ '<%= SOURCE_PATH %>/js/**/*.js'
+ '!<%= SOURCE_PATH %>/js/third-party/underscore.js'
+ '!<%= SOURCE_PATH %>/js/third-party/**/*.js'
+ '!<%= SOURCE_PATH %>/js/tests/**/*.js'
+ '!<%= SOURCE_PATH %>/js/require.js'
]
options:
jshintrc: true
@@ -439,61 +377,83 @@ module.exports = (grunt) ->
spawn: false
less:
- files: '<%= pkg.sources %>less/**/*.less'
+ files: '<%= SOURCE_PATH %>/less/**/*.less'
tasks: ['less:build']
coffee:
- files: '<%= pkg.sources %>coffee/**/*.coffee'
- tasks: ['coffee:build', 'copy:js', 'concat:dev']
+ files: '<%= SOURCE_PATH %>/coffee/**/*.coffee'
+ tasks: ['coffee:build', 'copy:js', 'concat:build']
js:
- files: '<%= pkg.sources %>js/**/*.js'
- tasks: ['copy:js', 'concat:dev']
+ files: '<%= SOURCE_PATH %>/js/**/*.js'
+ tasks: ['copy:js', 'concat:build']
handlebars:
- files: '<%= pkg.sources %>hbs/**/*.hbs'
+ files: '<%= SOURCE_PATH %>/hbs/**/*.hbs'
tasks: ['handlebars:build']
+ # Basic tasks
+ grunt.registerTask 'prepare',
+ ['clean:css', 'clean:js', 'clean:build', 'parallel:compile', 'copy:js', 'concat:build']
+
+ grunt.registerTask 'build-fast-suffix',
+ ['copy:assets-css', 'copy:assets-all-js']
- # Define tasks
- grunt.registerTask 'dev',
- ['clean:css', 'clean:js', 'parallel:compile', 'copy:js', 'concat:dev']
+ grunt.registerTask 'build-suffix',
+ ['copy:assets-css', 'copy:assets-js', 'parallel:build']
+
+ grunt.registerTask 'test-suffix',
+ ['express:test', 'casper:test']
+
+ grunt.registerTask 'coverage-suffix',
+ ['express:testCoverage', 'curl:resetCoverage', 'casper:testCoverage', 'curl:downloadCoverage', 'unzip',
+ 'replace:lcov']
+
+ # Output tasks
+ grunt.registerTask 'build-fast',
+ ['prepare', 'build-fast-suffix']
grunt.registerTask 'build',
- ['clean:css', 'clean:js', 'parallel:compile', 'cssUrlRewrite:build', 'copy:js',
- 'concat:build', 'parallel:requirejs', 'clean:js', 'copy:build', 'copy:requirejs', 'uglify_parallel:build', 'clean:build']
+ ['prepare', 'build-suffix']
- grunt.registerTask 'default',
- ['build']
+ grunt.registerTask 'build-test',
+ ['prepare', 'parallel:build-test']
- grunt.registerTask 'dw',
- ['dev', 'watch']
+ grunt.registerTask 'build-coverage',
+ ['prepare', 'parallel:build-coverage']
grunt.registerTask 'test',
- ['dev', 'express:test', 'casper:test']
+ ['prepare', 'test-suffix']
- grunt.registerTask 'testCoverage',
- ['dev', 'express:testCoverage', 'curl:resetCoverage', 'casper:testCoverage', 'curl:downloadCoverage', 'unzip', 'replace:lcov']
+ grunt.registerTask 'coverage',
+ ['prepare', 'coverage-suffix']
+
+ grunt.registerTask 'default',
+ ['build']
+
+ # Development
+ grunt.registerTask 'dw',
+ ['build-fast', 'watch']
grunt.registerTask 'testCoverageLight',
- ['dev', 'express:testCoverage', 'curl:resetCoverage', 'casper:testCoverageLight', 'curl:downloadCoverage', 'unzip', 'replace:lcov']
+ ['prepare', 'express:testCoverage', 'curl:resetCoverage', 'casper:testCoverageLight', 'curl:downloadCoverage', 'unzip', 'replace:lcov']
grunt.registerTask 'single',
- ['dev', 'express:test', 'casper:single']
+ ['prepare', 'express:test', 'casper:single']
grunt.registerTask 'testfile',
- ['dev', 'express:test', 'casper:testfile']
+ ['prepare', 'express:test', 'casper:testfile']
# tasks used by Maven build (see pom.xml)
grunt.registerTask 'maven-quick-build',
- ['dev']
+ ['build-fast']
grunt.registerTask 'maven-build-skip-tests-true-nocoverage',
['build']
grunt.registerTask 'maven-build-skip-tests-false-nocoverage',
- ['test', 'build']
+ ['build-test']
grunt.registerTask 'maven-build-skip-tests-false-coverage',
- ['testCoverage', 'build']
+ ['build-coverage']
diff --git a/server/sonar-web/package.json b/server/sonar-web/package.json
index f77c150e436..e218bf15091 100644
--- a/server/sonar-web/package.json
+++ b/server/sonar-web/package.json
@@ -18,7 +18,6 @@
"grunt-contrib-requirejs": "0.4.3",
"grunt-contrib-uglify": "0.4.0",
"grunt-contrib-watch": "0.5.3",
- "grunt-css-url-rewrite": "0.3.5",
"grunt-curl": "2.1.0",
"grunt-express-server": "0.4.17",
"grunt-parallel": "0.4.1",
@@ -29,14 +28,15 @@
"istanbul-middleware": "0.2.0",
"jade": "1.4.2",
"jit-grunt": "0.9.1",
- "serve-static": "1.5.0"
+ "serve-static": "1.5.0",
+ "time-grunt": "1.2.0"
},
"scripts": {
- "build-fast": "./node_modules/.bin/grunt dev",
+ "build-fast": "./node_modules/.bin/grunt build-fast",
"build": "./node_modules/.bin/grunt build",
+ "build-test": "./node_modules/.bin/grunt build-test",
+ "build-coverage": "./node_modules/.bin/grunt build-coverage",
"test": "./node_modules/.bin/grunt test",
- "coverage": "./node_modules/.bin/grunt testCoverage"
- },
- "sources": "src/main/",
- "assets": "src/main/webapp/"
+ "coverage": "./node_modules/.bin/grunt coverage"
+ }
}
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/app.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/app.coffee
index 31f4f69451b..0d7c20d4bd4 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/app.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/app.coffee
@@ -17,17 +17,12 @@
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
-
-requirejs.config
- baseUrl: "#{baseUrl}/js"
-
-
-requirejs [
- 'analysis-reports/router'
- 'analysis-reports/layout'
- 'analysis-reports/models/reports'
- 'analysis-reports/views/reports-view'
- 'analysis-reports/views/actions-view'
+define [
+ './router'
+ './layout'
+ './models/reports'
+ './views/reports-view'
+ './views/actions-view'
], (
Router
Layout
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/layout.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/layout.coffee
index 691c7278394..5aa028e86b2 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/layout.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/layout.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/analysis-reports'
+ './templates'
], ->
class extends Marionette.Layout
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/models/report.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/models/report.coffee
index 28700ed4a62..28700ed4a62 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/models/report.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/models/report.coffee
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/models/reports.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/models/reports.coffee
index c6ec45e165c..1689eed3e65 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/models/reports.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/models/reports.coffee
@@ -19,7 +19,7 @@
#
define [
- 'analysis-reports/models/report'
+ './report'
], (
Report
) ->
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/router.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/router.coffee
index 1bebf0ee964..1bebf0ee964 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/router.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/router.coffee
diff --git a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-actions.hbs b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-actions.hbs
index 90f24e63851..90f24e63851 100644
--- a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-actions.hbs
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-actions.hbs
diff --git a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-empty.hbs b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-empty.hbs
index b044d70fc04..b044d70fc04 100644
--- a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-empty.hbs
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-empty.hbs
diff --git a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-layout.hbs b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-layout.hbs
index e00c677a6d6..e00c677a6d6 100644
--- a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-layout.hbs
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-layout.hbs
diff --git a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-report.hbs b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-report.hbs
index b816c2fbec7..b816c2fbec7 100644
--- a/server/sonar-web/src/main/hbs/analysis-reports/analysis-reports-report.hbs
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/templates/analysis-reports-report.hbs
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/views/actions-view.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/actions-view.coffee
index acc49e52c5e..89ae9048c52 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/views/actions-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/actions-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/analysis-reports'
+ '../templates'
], ->
class extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/views/report-view.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/report-view.coffee
index 81b6f8bd034..4af3d06f602 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/views/report-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/report-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/analysis-reports'
+ '../templates'
], ->
class extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/views/reports-empty-view.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/reports-empty-view.coffee
index 9fd439d8ea1..c5c16ea59c0 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/views/reports-empty-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/reports-empty-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/analysis-reports'
+ '../templates'
], ->
class extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/analysis-reports/views/reports-view.coffee b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/reports-view.coffee
index 11b789e131f..32efc6f0707 100644
--- a/server/sonar-web/src/main/coffee/analysis-reports/views/reports-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/analysis-reports/views/reports-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'analysis-reports/views/report-view'
- 'analysis-reports/views/reports-empty-view'
+ './report-view'
+ './reports-empty-view'
], (
ReportView
EmptyView
diff --git a/server/sonar-web/src/main/coffee/issues/app-context.coffee b/server/sonar-web/src/main/coffee/apps/issues/app-context.coffee
index 257b3bf008e..556b93e1e00 100644
--- a/server/sonar-web/src/main/coffee/issues/app-context.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/app-context.coffee
@@ -17,26 +17,21 @@
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
-
-requirejs.config
- baseUrl: "#{baseUrl}/js"
-
-
-requirejs [
- 'issues/models/state'
- 'issues/layout'
- 'issues/models/issues'
+define [
+ './models/state'
+ './layout'
+ './models/issues'
'components/navigator/models/facets'
- 'issues/models/filters'
+ './models/filters'
- 'issues/controller'
- 'issues/router'
+ './controller'
+ './router'
- 'issues/workspace-list-view'
- 'issues/workspace-header-view'
+ './workspace-list-view'
+ './workspace-header-view'
- 'issues/facets-view'
- 'issues/filters-view'
+ './facets-view'
+ './filters-view'
], (
State
Layout
diff --git a/server/sonar-web/src/main/coffee/issues/app-new.coffee b/server/sonar-web/src/main/coffee/apps/issues/app-new.coffee
index 0cb70931247..c69a48e6207 100644
--- a/server/sonar-web/src/main/coffee/issues/app-new.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/app-new.coffee
@@ -17,26 +17,21 @@
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
-
-requirejs.config
- baseUrl: "#{baseUrl}/js"
-
-
-requirejs [
- 'issues/models/state'
- 'issues/layout'
- 'issues/models/issues'
+define [
+ './models/state'
+ './layout'
+ './models/issues'
'components/navigator/models/facets'
- 'issues/models/filters'
+ './models/filters'
- 'issues/controller'
- 'issues/router'
+ './controller'
+ './router'
- 'issues/workspace-list-view'
- 'issues/workspace-header-view'
+ './workspace-list-view'
+ './workspace-header-view'
- 'issues/facets-view'
- 'issues/filters-view'
+ './facets-view'
+ './filters-view'
], (
State
Layout
diff --git a/server/sonar-web/src/main/coffee/issues/component-viewer/issue-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/component-viewer/issue-view.coffee
index f47a5efe309..b626cff1070 100644
--- a/server/sonar-web/src/main/coffee/issues/component-viewer/issue-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/component-viewer/issue-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/workspace-list-item-view'
+ '../workspace-list-item-view'
], (
IssueView
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/component-viewer/main.coffee b/server/sonar-web/src/main/coffee/apps/issues/component-viewer/main.coffee
index 76288c332d7..1a23d070331 100644
--- a/server/sonar-web/src/main/coffee/issues/component-viewer/main.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/component-viewer/main.coffee
@@ -19,10 +19,10 @@
#
define [
- 'source-viewer/viewer'
- 'issues/models/issues'
- 'issues/component-viewer/issue-view'
- 'templates/issues'
+ 'components/source-viewer/main'
+ '../models/issues'
+ './issue-view'
+ '../templates'
], (
SourceViewer
Issues
diff --git a/server/sonar-web/src/main/coffee/issues/controller.coffee b/server/sonar-web/src/main/coffee/apps/issues/controller.coffee
index 99f39a32afe..18749e884a4 100644
--- a/server/sonar-web/src/main/coffee/issues/controller.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/controller.coffee
@@ -21,8 +21,8 @@
define [
'components/navigator/controller'
- 'issues/component-viewer/main'
- 'issues/workspace-home-view'
+ './component-viewer/main'
+ './workspace-home-view'
], (
Controller
diff --git a/server/sonar-web/src/main/coffee/issues/facets-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets-view.coffee
index 7ac2c44617a..a8a17947ffd 100644
--- a/server/sonar-web/src/main/coffee/issues/facets-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets-view.coffee
@@ -21,23 +21,23 @@
define [
'components/navigator/facets-view'
- 'issues/facets/base-facet'
- 'issues/facets/severity-facet'
- 'issues/facets/status-facet'
- 'issues/facets/project-facet'
- 'issues/facets/module-facet'
- 'issues/facets/assignee-facet'
- 'issues/facets/rule-facet'
- 'issues/facets/tag-facet'
- 'issues/facets/resolution-facet'
- 'issues/facets/creation-date-facet'
- 'issues/facets/action-plan-facet'
- 'issues/facets/file-facet'
- 'issues/facets/reporter-facet'
- 'issues/facets/language-facet'
- 'issues/facets/author-facet'
- 'issues/facets/issue-key-facet'
- 'issues/facets/context-facet'
+ './facets/base-facet'
+ './facets/severity-facet'
+ './facets/status-facet'
+ './facets/project-facet'
+ './facets/module-facet'
+ './facets/assignee-facet'
+ './facets/rule-facet'
+ './facets/tag-facet'
+ './facets/resolution-facet'
+ './facets/creation-date-facet'
+ './facets/action-plan-facet'
+ './facets/file-facet'
+ './facets/reporter-facet'
+ './facets/language-facet'
+ './facets/author-facet'
+ './facets/issue-key-facet'
+ './facets/context-facet'
], (
FacetsView
diff --git a/server/sonar-web/src/main/coffee/issues/facets/action-plan-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/action-plan-facet.coffee
index 68d8afde3bc..a2a746e1007 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/action-plan-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/action-plan-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/assignee-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/assignee-facet.coffee
index 366b13bb032..83d0a78da80 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/assignee-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/assignee-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/custom-values-facet'
- 'templates/issues'
+ './custom-values-facet'
+ '../templates'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/author-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/author-facet.coffee
index b593dc273cf..25e8c989749 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/author-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/author-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/custom-values-facet'
+ './custom-values-facet'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/base-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/base-facet.coffee
index 07897f17c47..4d41996b164 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/base-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/base-facet.coffee
@@ -20,7 +20,7 @@
define [
'components/navigator/facets/base-facet'
- 'templates/issues'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/context-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/context-facet.coffee
index 962e69d3555..3809f07b856 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/context-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/context-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/creation-date-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/creation-date-facet.coffee
index 0edea5385f5..c1a29019ba1 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/creation-date-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/creation-date-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/custom-values-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/custom-values-facet.coffee
index 2cb99e56876..9cd45d02579 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/custom-values-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/custom-values-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/file-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/file-facet.coffee
index 9dc7d5c94a9..62081444f4b 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/file-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/file-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/issue-key-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/issue-key-facet.coffee
index 72e8c7056a9..53afcf4f441 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/issue-key-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/issue-key-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/language-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/language-facet.coffee
index 82fcc4fc15f..3d67584dd02 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/language-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/language-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/custom-values-facet'
+ './custom-values-facet'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/module-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/module-facet.coffee
index e4054331c9f..425f4b5c2d4 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/module-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/module-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/base-facet'
+ './base-facet'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/project-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/project-facet.coffee
index a0873452df4..d7ea58a1dca 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/project-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/project-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/custom-values-facet'
+ './custom-values-facet'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/reporter-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/reporter-facet.coffee
index 2feacfc2184..e8e10a4d06f 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/reporter-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/reporter-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/custom-values-facet'
+ './custom-values-facet'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/resolution-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/resolution-facet.coffee
index 4619e4a6186..7c7eef0bd74 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/resolution-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/resolution-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/rule-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/rule-facet.coffee
index d9b203ca30b..25ea9f9dd9c 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/rule-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/rule-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/custom-values-facet'
+ './custom-values-facet'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/severity-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/severity-facet.coffee
index 74b729707f8..c0639ef97a6 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/severity-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/severity-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/status-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/status-facet.coffee
index 73c7b9ed03f..f3a0eb7a040 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/status-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/status-facet.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issues/facets/base-facet'
- 'templates/issues'
+ './base-facet'
+ '../templates'
], (
BaseFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/facets/tag-facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/facets/tag-facet.coffee
index 8147757d794..fb061cf96f8 100644
--- a/server/sonar-web/src/main/coffee/issues/facets/tag-facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/facets/tag-facet.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/facets/custom-values-facet'
+ './custom-values-facet'
], (
CustomValuesFacet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/filters-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/filters-view.coffee
index 43a8b0b7d88..71024317783 100644
--- a/server/sonar-web/src/main/coffee/issues/filters-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/filters-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/issues'
+ './templates'
], ->
$ = jQuery
diff --git a/server/sonar-web/src/main/coffee/issues/issue-filter-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/issue-filter-view.coffee
index 3eba1223409..cb3ee4d95f7 100644
--- a/server/sonar-web/src/main/coffee/issues/issue-filter-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/issue-filter-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issue/views/action-options-view'
- 'templates/issues'
+ 'components/issue/views/action-options-view'
+ './templates'
], (
ActionOptionsView
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/layout.coffee b/server/sonar-web/src/main/coffee/apps/issues/layout.coffee
index e06daa35e74..ac81d542e7c 100644
--- a/server/sonar-web/src/main/coffee/issues/layout.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/layout.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/issues'
+ './templates'
], ->
$ = jQuery
diff --git a/server/sonar-web/src/main/coffee/issues/models/facet.coffee b/server/sonar-web/src/main/coffee/apps/issues/models/facet.coffee
index 96bc2d81e00..96bc2d81e00 100644
--- a/server/sonar-web/src/main/coffee/issues/models/facet.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/models/facet.coffee
diff --git a/server/sonar-web/src/main/coffee/issues/models/facets.coffee b/server/sonar-web/src/main/coffee/apps/issues/models/facets.coffee
index ca6abbf4d86..3f6a957b3d7 100644
--- a/server/sonar-web/src/main/coffee/issues/models/facets.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/models/facets.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/models/facet'
+ './facet'
], (
Facet
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/models/filter.coffee b/server/sonar-web/src/main/coffee/apps/issues/models/filter.coffee
index 9759bc31ff1..9759bc31ff1 100644
--- a/server/sonar-web/src/main/coffee/issues/models/filter.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/models/filter.coffee
diff --git a/server/sonar-web/src/main/coffee/issues/models/filters.coffee b/server/sonar-web/src/main/coffee/apps/issues/models/filters.coffee
index ea49d1e4350..b002dba96a6 100644
--- a/server/sonar-web/src/main/coffee/issues/models/filters.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/models/filters.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issues/models/filter'
+ './filter'
], (
Filter
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/models/issues.coffee b/server/sonar-web/src/main/coffee/apps/issues/models/issues.coffee
index 1376d8327d9..08926040335 100644
--- a/server/sonar-web/src/main/coffee/issues/models/issues.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/models/issues.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issue/models/issue'
+ 'components/issue/models/issue'
], (
Issue
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/models/state.coffee b/server/sonar-web/src/main/coffee/apps/issues/models/state.coffee
index b0588d25f7d..b0588d25f7d 100644
--- a/server/sonar-web/src/main/coffee/issues/models/state.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/models/state.coffee
diff --git a/server/sonar-web/src/main/coffee/issues/router.coffee b/server/sonar-web/src/main/coffee/apps/issues/router.coffee
index ca220549f1f..ca220549f1f 100644
--- a/server/sonar-web/src/main/coffee/issues/router.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/router.coffee
diff --git a/server/sonar-web/src/main/hbs/issues/_issues-filter-name.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/_issues-filter-name.hbs
index 374d15ab48f..374d15ab48f 100644
--- a/server/sonar-web/src/main/hbs/issues/_issues-filter-name.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/_issues-filter-name.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/_issues-facet-header.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/_issues-facet-header.hbs
index 3b57c6021ea..3b57c6021ea 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/_issues-facet-header.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/_issues-facet-header.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-action-plan-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-action-plan-facet.hbs
index 20958a58b4c..20958a58b4c 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-action-plan-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-action-plan-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-assignee-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-assignee-facet.hbs
index 9654cf06f1e..9654cf06f1e 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-assignee-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-assignee-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-base-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-base-facet.hbs
index f5b0f44f777..f5b0f44f777 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-base-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-base-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-context-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-context-facet.hbs
index 9f981c07c1a..9f981c07c1a 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-context-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-context-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-creation-date-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-creation-date-facet.hbs
index 4cc52cc4ae6..4cc52cc4ae6 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-creation-date-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-creation-date-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-custom-values-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-custom-values-facet.hbs
index c7d8a081ef1..c7d8a081ef1 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-custom-values-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-custom-values-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-file-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-file-facet.hbs
index 530959b7d72..530959b7d72 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-file-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-file-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-issue-key-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-issue-key-facet.hbs
index d68931e4487..d68931e4487 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-issue-key-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-issue-key-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-resolution-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-resolution-facet.hbs
index 08c1b25a15a..08c1b25a15a 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-resolution-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-resolution-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-severity-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-severity-facet.hbs
index 96a6470ef72..96a6470ef72 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-severity-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-severity-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/facets/issues-status-facet.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-status-facet.hbs
index 33e556abf5e..33e556abf5e 100644
--- a/server/sonar-web/src/main/hbs/issues/facets/issues-status-facet.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/facets/issues-status-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-filters.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-filters.hbs
index a197f5335d1..a197f5335d1 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-filters.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-filters.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-issue-filter-form.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-issue-filter-form.hbs
index 01515749698..01515749698 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-issue-filter-form.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-issue-filter-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-issue-filter.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-issue-filter.hbs
index 875bc3bc4a5..875bc3bc4a5 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-issue-filter.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-issue-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-layout.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-layout.hbs
index 5a61d1f66bf..5a61d1f66bf 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-layout.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-layout.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-workspace-header.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-header.hbs
index 4b4958fd1d1..4b4958fd1d1 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-workspace-header.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-header.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-workspace-home.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-home.hbs
index 3889dcdd978..3889dcdd978 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-workspace-home.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-home.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-workspace-list-component.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-list-component.hbs
index d5d0b439952..d5d0b439952 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-workspace-list-component.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-list-component.hbs
diff --git a/server/sonar-web/src/main/hbs/issues/issues-workspace-list.hbs b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-list.hbs
index 37421cb75c2..37421cb75c2 100644
--- a/server/sonar-web/src/main/hbs/issues/issues-workspace-list.hbs
+++ b/server/sonar-web/src/main/coffee/apps/issues/templates/issues-workspace-list.hbs
diff --git a/server/sonar-web/src/main/coffee/issues/workspace-header-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/workspace-header-view.coffee
index da12162df55..7672d1ac41c 100644
--- a/server/sonar-web/src/main/coffee/issues/workspace-header-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/workspace-header-view.coffee
@@ -20,7 +20,7 @@
define [
'components/navigator/workspace-header-view'
- 'templates/issues'
+ './templates'
], (
WorkspaceHeaderView
) ->
diff --git a/server/sonar-web/src/main/coffee/issues/workspace-home-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/workspace-home-view.coffee
index 75c9ed9bf93..6bf9c15fcee 100644
--- a/server/sonar-web/src/main/coffee/issues/workspace-home-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/workspace-home-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'widgets/issue-filter'
- 'templates/issues'
+ 'widgets/issue-filter/widget'
+ './templates'
], (IssueFilter) ->
$ = jQuery
diff --git a/server/sonar-web/src/main/coffee/issues/workspace-list-empty-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/workspace-list-empty-view.coffee
index 23bba0eef47..23bba0eef47 100644
--- a/server/sonar-web/src/main/coffee/issues/workspace-list-empty-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/workspace-list-empty-view.coffee
diff --git a/server/sonar-web/src/main/coffee/issues/workspace-list-item-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/workspace-list-item-view.coffee
index 50cd234bac6..62b223fb57f 100644
--- a/server/sonar-web/src/main/coffee/issues/workspace-list-item-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/workspace-list-item-view.coffee
@@ -19,9 +19,9 @@
#
define [
- 'issue/issue-view'
- 'issues/issue-filter-view'
- 'templates/issues'
+ 'components/issue/issue-view'
+ './issue-filter-view'
+ './templates'
], (
IssueView
IssueFilterView
diff --git a/server/sonar-web/src/main/coffee/issues/workspace-list-view.coffee b/server/sonar-web/src/main/coffee/apps/issues/workspace-list-view.coffee
index 9ae1682420c..889b03310a2 100644
--- a/server/sonar-web/src/main/coffee/issues/workspace-list-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/issues/workspace-list-view.coffee
@@ -20,9 +20,9 @@
define [
'components/navigator/workspace-list-view'
- 'issues/workspace-list-item-view'
- 'issues/workspace-list-empty-view'
- 'templates/issues'
+ './workspace-list-item-view'
+ './workspace-list-empty-view'
+ './templates'
], (
WorkspaceListView
IssueView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/app.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/app.coffee
index 38705f870b2..770d1f1e454 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/app.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/app.coffee
@@ -17,18 +17,13 @@
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
-
-requirejs.config
- baseUrl: "#{baseUrl}/js"
-
-
-requirejs [
- 'quality-gate/collections/quality-gates',
- 'quality-gate/views/quality-gate-sidebar-list-view',
- 'quality-gate/views/quality-gate-actions-view',
- 'quality-gate/views/quality-gate-edit-view',
- 'quality-gate/router',
- 'quality-gate/layout'
+define [
+ './collections/quality-gates',
+ './views/quality-gate-sidebar-list-view',
+ './views/quality-gate-actions-view',
+ './views/quality-gate-edit-view',
+ './router',
+ './layout'
], (QualityGates,
QualityGateSidebarListItemView,
QualityGateActionsView,
diff --git a/server/sonar-web/src/main/coffee/quality-gate/collections/conditions.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/collections/conditions.coffee
index 1d0e03521d2..a3ecccc29d1 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/collections/conditions.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/collections/conditions.coffee
@@ -19,7 +19,7 @@
#
define [
- 'quality-gate/models/condition'
+ '../models/condition'
], (
Condition
) ->
diff --git a/server/sonar-web/src/main/coffee/quality-gate/collections/quality-gates.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/collections/quality-gates.coffee
index 20879e8ca58..c74a50c4a97 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/collections/quality-gates.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/collections/quality-gates.coffee
@@ -19,7 +19,7 @@
#
define [
- 'quality-gate/models/quality-gate'
+ '../models/quality-gate'
], (
QualityGate
) ->
diff --git a/server/sonar-web/src/main/coffee/quality-gate/layout.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/layout.coffee
index 879172162d2..36da66f1941 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/layout.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/layout.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/quality-gates'
+ './templates'
], ->
$ = jQuery
diff --git a/server/sonar-web/src/main/coffee/quality-gate/models/condition.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/models/condition.coffee
index 7cf8ca03b82..7cf8ca03b82 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/models/condition.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/models/condition.coffee
diff --git a/server/sonar-web/src/main/coffee/quality-gate/models/quality-gate.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/models/quality-gate.coffee
index 3b6dc6d1f41..3b6dc6d1f41 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/models/quality-gate.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/models/quality-gate.coffee
diff --git a/server/sonar-web/src/main/coffee/quality-gate/router.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee
index d63a1fbc713..31fc35abe68 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/router.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee
@@ -19,9 +19,9 @@
#
define [
- 'quality-gate/models/quality-gate',
- 'quality-gate/views/quality-gate-detail-view',
- 'quality-gate/views/quality-gate-detail-header-view',
+ './models/quality-gate',
+ './views/quality-gate-detail-view',
+ './views/quality-gate-detail-header-view',
], (
QualityGate,
QualityGateDetailView,
diff --git a/server/sonar-web/src/main/hbs/quality-gates/_quality-gate-intro.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/_quality-gate-intro.hbs
index 6f194fb7fbb..6f194fb7fbb 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/_quality-gate-intro.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/_quality-gate-intro.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-actions.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-actions.hbs
index 6826aa94353..6826aa94353 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-actions.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-actions.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-condition.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-condition.hbs
index 9be26807f78..9be26807f78 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-condition.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-condition.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-conditions-empty.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-conditions-empty.hbs
index 40c92668496..40c92668496 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-conditions-empty.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-conditions-empty.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-conditions.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-conditions.hbs
index 74888876431..74888876431 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-conditions.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-conditions.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-header.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-header.hbs
index 71f7e3b06de..71f7e3b06de 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-header.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-header.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-projects.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-projects.hbs
index 989cae0f31e..989cae0f31e 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail-projects.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail-projects.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail.hbs
index 0c5467b3476..0c5467b3476 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-detail.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-detail.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-edit.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-edit.hbs
index 5aeb891a816..5aeb891a816 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-edit.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-edit.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-sidebar-list-empty.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-sidebar-list-empty.hbs
index 8b017f09987..8b017f09987 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-sidebar-list-empty.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-sidebar-list-empty.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-sidebar-list-item.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-sidebar-list-item.hbs
index 2e92b2eedde..2e92b2eedde 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gate-sidebar-list-item.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gate-sidebar-list-item.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-gates/quality-gates-layout.hbs b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gates-layout.hbs
index 3428ac4d466..3428ac4d466 100644
--- a/server/sonar-web/src/main/hbs/quality-gates/quality-gates-layout.hbs
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/templates/quality-gates-layout.hbs
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-actions-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-actions-view.coffee
index 62ca49341d3..46e5f3e6d99 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-actions-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-actions-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'quality-gate/models/quality-gate'
- 'templates/quality-gates'
+ '../models/quality-gate'
+ '../templates'
], (
QualityGate
) ->
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-condition-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-condition-view.coffee
index 9b1c8e405fb..54c106126e2 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-condition-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-condition-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/quality-gates'
+ '../templates'
], ->
class QualityGateDetailConditionView extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-conditions-empty-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-conditions-empty-view.coffee
index 015838753bc..b285ca05617 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-conditions-empty-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-conditions-empty-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/quality-gates'
+ '../templates'
], ->
class QualityGateDetailConditionsView extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-conditions-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-conditions-view.coffee
index 034bd7a3cec..29843cbf32c 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-conditions-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-conditions-view.coffee
@@ -19,10 +19,10 @@
#
define [
- 'quality-gate/models/condition',
- 'quality-gate/views/quality-gate-detail-condition-view',
- 'quality-gate/views/quality-gate-detail-conditions-empty-view'
- 'templates/quality-gates'
+ '../models/condition',
+ './quality-gate-detail-condition-view',
+ './quality-gate-detail-conditions-empty-view'
+ '../templates'
], (
Condition,
QualityGateDetailConditionView,
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-header-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-header-view.coffee
index 3a9cb6b09ec..1980b9ed7c2 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-header-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-header-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'quality-gate/models/quality-gate'
- 'templates/quality-gates',
+ '../models/quality-gate'
+ '../templates',
], (
QualityGate
) ->
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-projects-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-projects-view.coffee
index 550f29fce96..726d95ac5c9 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-projects-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-projects-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'common/select-list'
- 'templates/quality-gates'
+ 'components/common/select-list'
+ '../templates'
], ->
class QualityGateDetailProjectsView extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-view.coffee
index bcdf2a84dfa..10b4b6e0ceb 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-detail-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-detail-view.coffee
@@ -19,11 +19,11 @@
#
define [
- 'quality-gate/collections/conditions',
- 'quality-gate/views/quality-gate-detail-header-view',
- 'quality-gate/views/quality-gate-detail-conditions-view',
- 'quality-gate/views/quality-gate-detail-projects-view'
- 'templates/quality-gates',
+ '../collections/conditions',
+ './quality-gate-detail-header-view',
+ './quality-gate-detail-conditions-view',
+ './quality-gate-detail-projects-view'
+ '../templates',
], (
Conditions,
QualityGateDetailHeaderView,
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-edit-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-edit-view.coffee
index d8c06db28a5..67adfeca477 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-edit-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-edit-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/quality-gates'
+ '../templates'
], ->
class QualityGateEditView extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-empty-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-empty-view.coffee
index 7a458fd337d..9ec9393dd9e 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-empty-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-empty-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/quality-gates'
+ '../templates'
], ->
class QualityGateSidebarListEmptyView extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-item-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-item-view.coffee
index 1453dfad38f..3527a6c6e1a 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-item-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-item-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/quality-gates'
+ '../templates'
], ->
class QualityGateSidebarListItemView extends Marionette.ItemView
diff --git a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-view.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-view.coffee
index bc5c67e85c1..7fd40da3121 100644
--- a/server/sonar-web/src/main/coffee/quality-gate/views/quality-gate-sidebar-list-view.coffee
+++ b/server/sonar-web/src/main/coffee/apps/quality-gate/views/quality-gate-sidebar-list-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'quality-gate/views/quality-gate-sidebar-list-item-view',
- 'quality-gate/views/quality-gate-sidebar-list-empty-view'
+ './quality-gate-sidebar-list-item-view',
+ './quality-gate-sidebar-list-empty-view'
], (
QualityGateSidebarListItemView,
QualityGateSidebarListEmptyView,
diff --git a/server/sonar-web/src/main/coffee/common/dialogs.coffee b/server/sonar-web/src/main/coffee/components/common/dialogs.coffee
index e9dd43822dd..e9dd43822dd 100644
--- a/server/sonar-web/src/main/coffee/common/dialogs.coffee
+++ b/server/sonar-web/src/main/coffee/components/common/dialogs.coffee
diff --git a/server/sonar-web/src/main/coffee/common/inputs.coffee b/server/sonar-web/src/main/coffee/components/common/inputs.coffee
index 70e7ac99173..70e7ac99173 100644
--- a/server/sonar-web/src/main/coffee/common/inputs.coffee
+++ b/server/sonar-web/src/main/coffee/components/common/inputs.coffee
diff --git a/server/sonar-web/src/main/coffee/common/popup.coffee b/server/sonar-web/src/main/coffee/components/common/popup.coffee
index 52f28041d57..52f28041d57 100644
--- a/server/sonar-web/src/main/coffee/common/popup.coffee
+++ b/server/sonar-web/src/main/coffee/components/common/popup.coffee
diff --git a/server/sonar-web/src/main/coffee/issue/collections/action-plans.coffee b/server/sonar-web/src/main/coffee/components/issue/collections/action-plans.coffee
index 91b5a357b42..91b5a357b42 100644
--- a/server/sonar-web/src/main/coffee/issue/collections/action-plans.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/collections/action-plans.coffee
diff --git a/server/sonar-web/src/main/coffee/issue/collections/issues.coffee b/server/sonar-web/src/main/coffee/components/issue/collections/issues.coffee
index b8b4d105495..ddce4332d2e 100644
--- a/server/sonar-web/src/main/coffee/issue/collections/issues.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/collections/issues.coffee
@@ -19,7 +19,7 @@
#
define [
- 'issue/models/issue'
+ '../models/issue'
], (
Issue
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/issue-view.coffee b/server/sonar-web/src/main/coffee/components/issue/issue-view.coffee
index bb2ea79d86b..dd8189f632d 100644
--- a/server/sonar-web/src/main/coffee/issue/issue-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/issue-view.coffee
@@ -19,24 +19,24 @@
#
define [
- 'issue/models/changelog'
- 'issue/views/changelog-view'
+ './models/changelog'
+ './views/changelog-view'
- 'issue/collections/action-plans'
+ './collections/action-plans'
- 'issue/views/issue-popup'
+ './views/issue-popup'
- 'issue/views/transitions-form-view'
- 'issue/views/assign-form-view'
- 'issue/views/comment-form-view'
- 'issue/views/plan-form-view'
- 'issue/views/set-severity-form-view'
- 'issue/views/more-actions-view'
- 'issue/views/tags-form-view'
+ './views/transitions-form-view'
+ './views/assign-form-view'
+ './views/comment-form-view'
+ './views/plan-form-view'
+ './views/set-severity-form-view'
+ './views/more-actions-view'
+ './views/tags-form-view'
- 'workspace/main'
+ 'components/workspace/main'
- 'templates/issue'
+ './templates'
], (
ChangeLog
@@ -264,7 +264,7 @@ define [
showRule: ->
unless Workspace?
- Workspace = require 'workspace/main'
+ Workspace = require 'components/workspace/main'
ruleKey = @model.get 'rule'
Workspace.openRule key: ruleKey
diff --git a/server/sonar-web/src/main/coffee/issue/manual-issue-view.coffee b/server/sonar-web/src/main/coffee/components/issue/manual-issue-view.coffee
index dc29cdd2253..c0030e14c2d 100644
--- a/server/sonar-web/src/main/coffee/issue/manual-issue-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/manual-issue-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'templates/issue'
+ './templates'
], ->
$ = jQuery
diff --git a/server/sonar-web/src/main/coffee/issue/models/changelog.coffee b/server/sonar-web/src/main/coffee/components/issue/models/changelog.coffee
index 3aadd10825f..3aadd10825f 100644
--- a/server/sonar-web/src/main/coffee/issue/models/changelog.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/models/changelog.coffee
diff --git a/server/sonar-web/src/main/coffee/issue/models/issue.coffee b/server/sonar-web/src/main/coffee/components/issue/models/issue.coffee
index e5f99dc2bed..e5f99dc2bed 100644
--- a/server/sonar-web/src/main/coffee/issue/models/issue.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/models/issue.coffee
diff --git a/server/sonar-web/src/main/hbs/issue/comment-form.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/comment-form.hbs
index 9bd51396d0b..9bd51396d0b 100644
--- a/server/sonar-web/src/main/hbs/issue/comment-form.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/comment-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-assign-form-option.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-assign-form-option.hbs
index e35905f8c1d..e35905f8c1d 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-assign-form-option.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-assign-form-option.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-assign-form.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-assign-form.hbs
index 9d20be8d079..9d20be8d079 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-assign-form.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-assign-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-changelog.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-changelog.hbs
index e1cb758c574..e1cb758c574 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-changelog.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-changelog.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-more-actions.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-more-actions.hbs
index 18917b5f9c1..18917b5f9c1 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-more-actions.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-more-actions.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-plan-form.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-plan-form.hbs
index d4e693aa9d0..d4e693aa9d0 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-plan-form.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-plan-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-set-severity-form.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-set-severity-form.hbs
index 7007fddf67e..7007fddf67e 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-set-severity-form.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-set-severity-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-tags-form-option.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-tags-form-option.hbs
index df054fe2466..df054fe2466 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-tags-form-option.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-tags-form-option.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-tags-form.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-tags-form.hbs
index 9d20be8d079..9d20be8d079 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-tags-form.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-tags-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue-transitions-form.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue-transitions-form.hbs
index 2fa1f4cb7dd..2fa1f4cb7dd 100644
--- a/server/sonar-web/src/main/hbs/issue/issue-transitions-form.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue-transitions-form.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/issue.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/issue.hbs
index dc47a49ddb9..dc47a49ddb9 100644
--- a/server/sonar-web/src/main/hbs/issue/issue.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/issue.hbs
diff --git a/server/sonar-web/src/main/hbs/issue/manual-issue.hbs b/server/sonar-web/src/main/coffee/components/issue/templates/manual-issue.hbs
index bbcf333395b..bbcf333395b 100644
--- a/server/sonar-web/src/main/hbs/issue/manual-issue.hbs
+++ b/server/sonar-web/src/main/coffee/components/issue/templates/manual-issue.hbs
diff --git a/server/sonar-web/src/main/coffee/issue/views/action-options-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/action-options-view.coffee
index aea1b758d31..878d172f09f 100644
--- a/server/sonar-web/src/main/coffee/issue/views/action-options-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/action-options-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'common/popup'
+ 'components/common/popup'
], (
PopupView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/assign-form-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/assign-form-view.coffee
index b92d7a475fd..ae00ec881a3 100644
--- a/server/sonar-web/src/main/coffee/issue/views/assign-form-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/assign-form-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issue/views/action-options-view'
- 'templates/issue'
+ './action-options-view'
+ '../templates'
], (
ActionOptionsView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/changelog-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/changelog-view.coffee
index 4a543238942..34e77c9191b 100644
--- a/server/sonar-web/src/main/coffee/issue/views/changelog-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/changelog-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'common/popup'
- 'templates/issue'
+ 'components/common/popup'
+ '../templates'
], (
PopupView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/comment-form-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/comment-form-view.coffee
index 2c3de5e1975..95fa6739d4b 100644
--- a/server/sonar-web/src/main/coffee/issue/views/comment-form-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/comment-form-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'common/popup'
- 'templates/issue'
+ 'components/common/popup'
+ '../templates'
], (
PopupView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/issue-popup.coffee b/server/sonar-web/src/main/coffee/components/issue/views/issue-popup.coffee
index 8032797b2ed..fa54c06c298 100644
--- a/server/sonar-web/src/main/coffee/issue/views/issue-popup.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/issue-popup.coffee
@@ -19,7 +19,7 @@
#
define [
- 'common/popup'
+ 'components/common/popup'
], (
Popup
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/more-actions-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/more-actions-view.coffee
index 28fab43bd04..868dbb2b9fb 100644
--- a/server/sonar-web/src/main/coffee/issue/views/more-actions-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/more-actions-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'common/popup'
- 'templates/issue'
+ 'components/common/popup'
+ '../templates'
], (
PopupView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/plan-form-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/plan-form-view.coffee
index 47530e7d63e..bface05c07e 100644
--- a/server/sonar-web/src/main/coffee/issue/views/plan-form-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/plan-form-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issue/views/action-options-view'
- 'templates/issue'
+ './action-options-view'
+ '../templates'
], (
ActionOptionsView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/set-severity-form-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/set-severity-form-view.coffee
index 5f706b83212..bdd813ff449 100644
--- a/server/sonar-web/src/main/coffee/issue/views/set-severity-form-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/set-severity-form-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issue/views/action-options-view'
- 'templates/issue'
+ './action-options-view'
+ '../templates'
], (
ActionOptionsView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/tags-form-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/tags-form-view.coffee
index 129d028fdcb..ea08c2c54fd 100644
--- a/server/sonar-web/src/main/coffee/issue/views/tags-form-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/tags-form-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issue/views/action-options-view'
- 'templates/issue'
+ './action-options-view'
+ '../templates'
], (
ActionOptionsView
) ->
diff --git a/server/sonar-web/src/main/coffee/issue/views/transitions-form-view.coffee b/server/sonar-web/src/main/coffee/components/issue/views/transitions-form-view.coffee
index c6b6c086d32..cf4d47d8592 100644
--- a/server/sonar-web/src/main/coffee/issue/views/transitions-form-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/issue/views/transitions-form-view.coffee
@@ -19,8 +19,8 @@
#
define [
- 'issue/views/action-options-view'
- 'templates/issue'
+ './action-options-view'
+ '../templates'
], (
ActionOptionsView
) ->
diff --git a/server/sonar-web/src/main/coffee/navigator/filters/date-filter-view.coffee b/server/sonar-web/src/main/coffee/components/navigator/filters/date-filter-view.coffee
index 0433ab0853c..afc0b4f8cdb 100644
--- a/server/sonar-web/src/main/coffee/navigator/filters/date-filter-view.coffee
+++ b/server/sonar-web/src/main/coffee/components/navigator/filters/date-filter-view.coffee
@@ -19,7 +19,7 @@
#
define [
- 'navigator/filters/string-filters'
+ './string-filters'
], (
StringFilterView
) ->
diff --git a/server/sonar-web/src/main/coffee/widgets/base.coffee b/server/sonar-web/src/main/coffee/libs/widgets/base.coffee
index d2f914b8427..d2f914b8427 100644
--- a/server/sonar-web/src/main/coffee/widgets/base.coffee
+++ b/server/sonar-web/src/main/coffee/libs/widgets/base.coffee
diff --git a/server/sonar-web/src/main/coffee/widgets/histogram.coffee b/server/sonar-web/src/main/coffee/libs/widgets/histogram.coffee
index c62628a56eb..c62628a56eb 100644
--- a/server/sonar-web/src/main/coffee/widgets/histogram.coffee
+++ b/server/sonar-web/src/main/coffee/libs/widgets/histogram.coffee
diff --git a/server/sonar-web/src/main/coffee/widgets/tag-cloud.coffee b/server/sonar-web/src/main/coffee/libs/widgets/tag-cloud.coffee
index f9202d80728..f9202d80728 100644
--- a/server/sonar-web/src/main/coffee/widgets/tag-cloud.coffee
+++ b/server/sonar-web/src/main/coffee/libs/widgets/tag-cloud.coffee
diff --git a/server/sonar-web/src/main/coffee/widgets/treemap.coffee b/server/sonar-web/src/main/coffee/libs/widgets/treemap.coffee
index 9a78011c8be..9a78011c8be 100644
--- a/server/sonar-web/src/main/coffee/widgets/treemap.coffee
+++ b/server/sonar-web/src/main/coffee/libs/widgets/treemap.coffee
diff --git a/server/sonar-web/src/main/coffee/widgets/word-cloud.coffee b/server/sonar-web/src/main/coffee/libs/widgets/word-cloud.coffee
index 417fb6f032c..417fb6f032c 100644
--- a/server/sonar-web/src/main/coffee/widgets/word-cloud.coffee
+++ b/server/sonar-web/src/main/coffee/libs/widgets/word-cloud.coffee
diff --git a/server/sonar-web/src/main/js/api-documentation/action-view.js b/server/sonar-web/src/main/js/apps/api-documentation/action-view.js
index fd972e14613..6df5db30ee5 100644
--- a/server/sonar-web/src/main/js/api-documentation/action-view.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/action-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/api-documentation'
+ './templates'
], function () {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/api-documentation/actions-view.js b/server/sonar-web/src/main/js/apps/api-documentation/actions-view.js
index 04d9cbccb76..099e1ea73d0 100644
--- a/server/sonar-web/src/main/js/api-documentation/actions-view.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/actions-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'api-documentation/action-view'
+ './action-view'
], function (ActionView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/api-documentation/app.js b/server/sonar-web/src/main/js/apps/api-documentation/app.js
index 31f3e60f368..3e706bcc05f 100644
--- a/server/sonar-web/src/main/js/api-documentation/app.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/app.js
@@ -18,12 +18,12 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'api-documentation/router',
- 'api-documentation/controller',
- 'api-documentation/layout',
- 'api-documentation/list',
- 'api-documentation/list-view',
- 'api-documentation/filters-view'
+ './router',
+ './controller',
+ './layout',
+ './list',
+ './list-view',
+ './filters-view'
], function (Router, Controller, Layout, List, ListView, FiltersView) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/api-documentation/controller.js b/server/sonar-web/src/main/js/apps/api-documentation/controller.js
index 3c3aba8c43c..69ae9413bac 100644
--- a/server/sonar-web/src/main/js/api-documentation/controller.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/controller.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'api-documentation/actions-view',
- 'api-documentation/header-view'
+ './actions-view',
+ './header-view'
], function (ActionsView, HeaderView) {
return Marionette.Controller.extend({
diff --git a/server/sonar-web/src/main/js/api-documentation/filters-view.js b/server/sonar-web/src/main/js/apps/api-documentation/filters-view.js
index 9c824dfd62b..8465cfe9db3 100644
--- a/server/sonar-web/src/main/js/api-documentation/filters-view.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/filters-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/api-documentation'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/api-documentation/header-view.js b/server/sonar-web/src/main/js/apps/api-documentation/header-view.js
index 17593155f8d..259fffae1c6 100644
--- a/server/sonar-web/src/main/js/api-documentation/header-view.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/header-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/api-documentation'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/api-documentation/item-view.js b/server/sonar-web/src/main/js/apps/api-documentation/item-view.js
index e930b060d37..2c88eb9e13f 100644
--- a/server/sonar-web/src/main/js/api-documentation/item-view.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/item-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/api-documentation'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/api-documentation/layout.js b/server/sonar-web/src/main/js/apps/api-documentation/layout.js
index b80e5aca0a2..64f17b220ed 100644
--- a/server/sonar-web/src/main/js/api-documentation/layout.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/layout.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/api-documentation'
+ './templates'
], function () {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/api-documentation/list-view.js b/server/sonar-web/src/main/js/apps/api-documentation/list-view.js
index 20d0e0b80e6..a833cf7b48b 100644
--- a/server/sonar-web/src/main/js/api-documentation/list-view.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/list-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'api-documentation/item-view'
+ './item-view'
], function (ItemView) {
return Marionette.CollectionView.extend({
diff --git a/server/sonar-web/src/main/js/api-documentation/list.js b/server/sonar-web/src/main/js/apps/api-documentation/list.js
index 131b3352e8d..131b3352e8d 100644
--- a/server/sonar-web/src/main/js/api-documentation/list.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/list.js
diff --git a/server/sonar-web/src/main/js/api-documentation/router.js b/server/sonar-web/src/main/js/apps/api-documentation/router.js
index fee3493fb18..fee3493fb18 100644
--- a/server/sonar-web/src/main/js/api-documentation/router.js
+++ b/server/sonar-web/src/main/js/apps/api-documentation/router.js
diff --git a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-action.hbs b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-action.hbs
index 7e5c702e145..7e5c702e145 100644
--- a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-action.hbs
+++ b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-action.hbs
diff --git a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-filters.hbs b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-filters.hbs
index 5941110db0a..5941110db0a 100644
--- a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-filters.hbs
+++ b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-filters.hbs
diff --git a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-header.hbs b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-header.hbs
index b652f85c9d4..b652f85c9d4 100644
--- a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-header.hbs
+++ b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-header.hbs
diff --git a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-layout.hbs b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-layout.hbs
index 4ef38c51b11..4ef38c51b11 100644
--- a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-layout.hbs
+++ b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-layout.hbs
diff --git a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-web-service.hbs b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-web-service.hbs
index 2e47c41cc68..2e47c41cc68 100644
--- a/server/sonar-web/src/main/hbs/api-documentation/api-documentation-web-service.hbs
+++ b/server/sonar-web/src/main/js/apps/api-documentation/templates/api-documentation-web-service.hbs
diff --git a/server/sonar-web/src/main/js/coding-rules/app.js b/server/sonar-web/src/main/js/apps/coding-rules/app.js
index 7c177183148..c07d7513591 100644
--- a/server/sonar-web/src/main/js/coding-rules/app.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/app.js
@@ -17,25 +17,20 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-requirejs.config({
- baseUrl: baseUrl + '/js'
-});
-
-
-requirejs([
- 'coding-rules/models/state',
- 'coding-rules/layout',
- 'coding-rules/models/rules',
+define([
+ './models/state',
+ './layout',
+ './models/rules',
'components/navigator/models/facets',
- 'coding-rules/controller',
+ './controller',
'components/navigator/router',
- 'coding-rules/workspace-list-view',
- 'coding-rules//workspace-header-view',
+ './workspace-list-view',
+ './workspace-header-view',
- 'coding-rules/facets-view',
- 'coding-rules/filters-view'
+ './facets-view',
+ './filters-view'
],
function (State,
Layout,
diff --git a/server/sonar-web/src/main/js/coding-rules/bulk-change-modal-view.js b/server/sonar-web/src/main/js/apps/coding-rules/bulk-change-modal-view.js
index 66db628e647..bdd2cbb5f34 100644
--- a/server/sonar-web/src/main/js/coding-rules/bulk-change-modal-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/bulk-change-modal-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/coding-rules'
+ 'components/common/modal-form',
+ './templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/bulk-change-popup-view.js b/server/sonar-web/src/main/js/apps/coding-rules/bulk-change-popup-view.js
index b429cacfc8c..be418ea4540 100644
--- a/server/sonar-web/src/main/js/coding-rules/bulk-change-popup-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/bulk-change-popup-view.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/popup',
- 'coding-rules/bulk-change-modal-view',
- 'templates/coding-rules'
+ 'components/common/popup',
+ './bulk-change-modal-view',
+ './templates'
], function (PopupView, BulkChangeModalView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/controller.js b/server/sonar-web/src/main/js/apps/coding-rules/controller.js
index 8d37ad5a043..5ee32475e99 100644
--- a/server/sonar-web/src/main/js/coding-rules/controller.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/controller.js
@@ -19,8 +19,8 @@
*/
define([
'components/navigator/controller',
- 'coding-rules/models/rule',
- 'coding-rules/rule-details-view'
+ './models/rule',
+ './rule-details-view'
], function (Controller, Rule, RuleDetailsView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/facets-view.js b/server/sonar-web/src/main/js/apps/coding-rules/facets-view.js
index 5e7a3c083bc..b9c2a7f4921 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets-view.js
@@ -19,20 +19,20 @@
*/
define([
'components/navigator/facets-view',
- 'coding-rules/facets/base-facet',
- 'coding-rules/facets/query-facet',
- 'coding-rules/facets/key-facet',
- 'coding-rules/facets/language-facet',
- 'coding-rules/facets/repository-facet',
- 'coding-rules/facets/tag-facet',
- 'coding-rules/facets/quality-profile-facet',
- 'coding-rules/facets/characteristic-facet',
- 'coding-rules/facets/severity-facet',
- 'coding-rules/facets/status-facet',
- 'coding-rules/facets/available-since-facet',
- 'coding-rules/facets/inheritance-facet',
- 'coding-rules/facets/active-severity-facet',
- 'coding-rules/facets/template-facet'
+ './facets/base-facet',
+ './facets/query-facet',
+ './facets/key-facet',
+ './facets/language-facet',
+ './facets/repository-facet',
+ './facets/tag-facet',
+ './facets/quality-profile-facet',
+ './facets/characteristic-facet',
+ './facets/severity-facet',
+ './facets/status-facet',
+ './facets/available-since-facet',
+ './facets/inheritance-facet',
+ './facets/active-severity-facet',
+ './facets/template-facet'
],
function (FacetsView,
BaseFacet,
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/active-severity-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/active-severity-facet.js
index fbec233e5f1..6695943968d 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/active-severity-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/active-severity-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/available-since-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/available-since-facet.js
index 0eb3f40495f..b67e07d205b 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/available-since-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/available-since-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/base-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/base-facet.js
index ff8d07d33e3..04da173a760 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/base-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/base-facet.js
@@ -19,7 +19,7 @@
*/
define([
'components/navigator/facets/base-facet',
- 'templates/coding-rules'
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/characteristic-facet.js
index c7485ba0572..7cd9d884257 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/characteristic-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/custom-labels-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/custom-labels-facet.js
index c86b9ac6bf3..da7d1949a18 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/custom-labels-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/custom-labels-facet.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet'
+ './base-facet'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/custom-values-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/custom-values-facet.js
index c277cb7a25c..7aad57ad48c 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/custom-values-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/custom-values-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/inheritance-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/inheritance-facet.js
index 6e4accbaf96..36f56294967 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/inheritance-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/inheritance-facet.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet'
+ './base-facet'
], function (BaseFacet) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/key-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/key-facet.js
index 305ceab83ad..07542add062 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/key-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/key-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/language-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/language-facet.js
index ae2bcfed3f2..478c589032c 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/language-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/language-facet.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/custom-values-facet'
+ './custom-values-facet'
], function (CustomValuesFacet) {
return CustomValuesFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/quality-profile-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/quality-profile-facet.js
index 8175fcb2036..b7af11147e4 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/quality-profile-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/quality-profile-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/query-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/query-facet.js
index a5a6c3f1d50..03431cd76cd 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/query-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/query-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/repository-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/repository-facet.js
index a92d0b6fd53..08283dc5b18 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/repository-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/repository-facet.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/custom-values-facet'
+ './custom-values-facet'
], function (CustomValuesFacet) {
return CustomValuesFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/severity-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/severity-facet.js
index 4ac07e6ba0c..54f71f86691 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/severity-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/severity-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/status-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/status-facet.js
index 13e8ac2a7d3..96854e47564 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/status-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/status-facet.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet'
+ './base-facet'
], function (BaseFacet) {
return BaseFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/tag-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/tag-facet.js
index a3e100a8465..9a5b0f21570 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/tag-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/tag-facet.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/custom-values-facet'
+ './custom-values-facet'
], function (CustomValuesFacet) {
return CustomValuesFacet.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/template-facet.js b/server/sonar-web/src/main/js/apps/coding-rules/facets/template-facet.js
index 9eb0fb5dafe..118913333d2 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/template-facet.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/facets/template-facet.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/facets/base-facet',
- 'templates/coding-rules'
+ './base-facet',
+ '../templates'
], function (BaseFacet) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/filters-view.js b/server/sonar-web/src/main/js/apps/coding-rules/filters-view.js
index 5b888444bc9..835119e9a66 100644
--- a/server/sonar-web/src/main/js/coding-rules/filters-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/filters-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/coding-rules'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/layout.js b/server/sonar-web/src/main/js/apps/coding-rules/layout.js
index c7430fff3b8..87ec56e9694 100644
--- a/server/sonar-web/src/main/js/coding-rules/layout.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/layout.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/coding-rules'
+ './templates'
], function () {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/models/rule.js b/server/sonar-web/src/main/js/apps/coding-rules/models/rule.js
index 51993df4b98..51993df4b98 100644
--- a/server/sonar-web/src/main/js/coding-rules/models/rule.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/models/rule.js
diff --git a/server/sonar-web/src/main/js/coding-rules/models/rules.js b/server/sonar-web/src/main/js/apps/coding-rules/models/rules.js
index c1c2f6e56d7..f1f83bcf1bd 100644
--- a/server/sonar-web/src/main/js/coding-rules/models/rules.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/models/rules.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/models/rule'
+ './rule'
], function (Rule) {
return Backbone.Collection.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/models/state.js b/server/sonar-web/src/main/js/apps/coding-rules/models/state.js
index 8c25312a2f1..8c25312a2f1 100644
--- a/server/sonar-web/src/main/js/coding-rules/models/state.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/models/state.js
diff --git a/server/sonar-web/src/main/js/coding-rules/rule-details-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule-details-view.js
index 2f608db03a3..941cfc42912 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule-details-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule-details-view.js
@@ -18,16 +18,16 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/models/rules',
- 'coding-rules/rule/rule-meta-view',
- 'coding-rules/rule/rule-description-view',
- 'coding-rules/rule/rule-parameters-view',
- 'coding-rules/rule/rule-profiles-view',
- 'coding-rules/rule/custom-rules-view',
- 'coding-rules/rule/manual-rule-creation-view',
- 'coding-rules/rule/custom-rule-creation-view',
- 'coding-rules/rule/rule-issues-view',
- 'templates/coding-rules'
+ './models/rules',
+ './rule/rule-meta-view',
+ './rule/rule-description-view',
+ './rule/rule-parameters-view',
+ './rule/rule-profiles-view',
+ './rule/custom-rules-view',
+ './rule/manual-rule-creation-view',
+ './rule/custom-rule-creation-view',
+ './rule/rule-issues-view',
+ './templates'
],
function (Rules,
MetaView,
diff --git a/server/sonar-web/src/main/js/coding-rules/rule-filter-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule-filter-view.js
index e1fed12ef5f..cbe6434e225 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule-filter-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule-filter-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'issue/views/action-options-view',
- 'templates/coding-rules'
+ 'components/issue/views/action-options-view',
+ './templates'
], function (ActionOptionsView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/custom-rule-creation-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rule-creation-view.js
index 3ff81d43723..5c3829854a6 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/custom-rule-creation-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rule-creation-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/coding-rules'
+ 'components/common/modal-form',
+ '../templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/custom-rule-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rule-view.js
index 19b1784b348..98d9634516e 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/custom-rule-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rule-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/coding-rules'
+ '../templates'
], function () {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/custom-rules-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rules-view.js
index 3d90e39547c..3785b8ed6b6 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/custom-rules-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/custom-rules-view.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/rule/custom-rule-view',
- 'coding-rules/rule/custom-rule-creation-view',
- 'templates/coding-rules'
+ './custom-rule-view',
+ './custom-rule-creation-view',
+ '../templates'
], function (CustomRuleView, CustomRuleCreationView) {
return Marionette.CompositeView.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/manual-rule-creation-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/manual-rule-creation-view.js
index 6fd9ce49c3f..6417beb3c8a 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/manual-rule-creation-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/manual-rule-creation-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/coding-rules'
+ 'components/common/modal-form',
+ '../templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/profile-activation-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/profile-activation-view.js
index 2e2e0f9be56..5381c6299bc 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/profile-activation-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/profile-activation-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modals',
- 'templates/coding-rules'
+ 'components/common/modals',
+ '../templates'
], function (Modal) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-description-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-description-view.js
index cc9af61314f..c84213c614d 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-description-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-description-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/coding-rules'
+ '../templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-filter-mixin.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-filter-mixin.js
index fed13b8fee9..839e1743af0 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-filter-mixin.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-filter-mixin.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/rule-filter-view'
+ '../rule-filter-view'
], function (RuleFilterView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-issues-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-issues-view.js
index bce51f8b505..e25e8be81de 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-issues-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-issues-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/coding-rules'
+ '../templates'
], function () {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-meta-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-meta-view.js
index 80f2662d1ef..1a4cb4c3f7e 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-meta-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-meta-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/rule/rule-filter-mixin',
- 'templates/coding-rules'
+ './rule-filter-mixin',
+ '../templates'
], function (RuleFilterMixin) {
return Marionette.ItemView.extend(RuleFilterMixin).extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-parameters-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-parameters-view.js
index 514fe6f38ff..2e5a927621d 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-parameters-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-parameters-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/coding-rules'
+ '../templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-profile-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-profile-view.js
index 6fb07e347d0..42902e38c3c 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-profile-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-profile-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/rule/profile-activation-view',
- 'templates/coding-rules'
+ './profile-activation-view',
+ '../templates'
], function (ProfileActivationView) {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/rule/rule-profiles-view.js b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-profiles-view.js
index 20d4e9a9ff3..7c3dc3df275 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule/rule-profiles-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/rule/rule-profiles-view.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'coding-rules/rule/rule-profile-view',
- 'coding-rules/rule/profile-activation-view',
- 'templates/coding-rules'
+ './rule-profile-view',
+ './profile-activation-view',
+ '../templates'
], function (ProfileView, ProfileActivationView) {
return Marionette.CompositeView.extend({
diff --git a/server/sonar-web/src/main/hbs/coding-rules/_coding-rules-workspace-list-item-activation.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/_coding-rules-workspace-list-item-activation.hbs
index 84f89974491..84f89974491 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/_coding-rules-workspace-list-item-activation.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/_coding-rules-workspace-list-item-activation.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-bulk-change-modal.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-bulk-change-modal.hbs
index 8816b6cb5af..8816b6cb5af 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-bulk-change-modal.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-bulk-change-modal.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-bulk-change-popup.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-bulk-change-popup.hbs
index c5a4622e9f6..c5a4622e9f6 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-bulk-change-popup.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-bulk-change-popup.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-filters.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-filters.hbs
index e307b61b100..e307b61b100 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-filters.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-filters.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-layout.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-layout.hbs
index 8f46e4f8fb1..8f46e4f8fb1 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-layout.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-layout.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-rule-details.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-rule-details.hbs
index f889780e6c6..f889780e6c6 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-rule-details.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-rule-details.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-rule-filter-form.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-rule-filter-form.hbs
index 35f896c0264..35f896c0264 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-rule-filter-form.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-rule-filter-form.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-header.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-header.hbs
index 7e39482dbbc..7e39482dbbc 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-header.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-header.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-list-item.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-list-item.hbs
index 92aef7fdc1c..92aef7fdc1c 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-list-item.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-list-item.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-list.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-list.hbs
index 37421cb75c2..37421cb75c2 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/coding-rules-workspace-list.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/coding-rules-workspace-list.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/_coding-rules-facet-header.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/_coding-rules-facet-header.hbs
index 2251f570ee9..2251f570ee9 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/_coding-rules-facet-header.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/_coding-rules-facet-header.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-available-since-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-available-since-facet.hbs
index db6138c3663..db6138c3663 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-available-since-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-available-since-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-base-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-base-facet.hbs
index 60db5dc6d7a..60db5dc6d7a 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-base-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-base-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-characteristic-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-characteristic-facet.hbs
index 645205b0c5c..645205b0c5c 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-characteristic-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-characteristic-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-custom-values-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-custom-values-facet.hbs
index 9f24a8d450c..9f24a8d450c 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-custom-values-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-custom-values-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-key-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-key-facet.hbs
index 1cc7b5bceed..1cc7b5bceed 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-key-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-key-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-quality-profile-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-quality-profile-facet.hbs
index b83bf1cf51b..b83bf1cf51b 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-quality-profile-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-quality-profile-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-query-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-query-facet.hbs
index d26b4f3c12c..d26b4f3c12c 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-query-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-query-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-severity-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-severity-facet.hbs
index 8550a95df84..8550a95df84 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-severity-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-severity-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-template-facet.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-template-facet.hbs
index ef7dd5b98f2..ef7dd5b98f2 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/facets/coding-rules-template-facet.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/facets/coding-rules-template-facet.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rule-creation.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rule-creation.hbs
index 660c4a57d51..660c4a57d51 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rule-creation.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rule-creation.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rule.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rule.hbs
index b5371ee37f3..b5371ee37f3 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rule.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rule.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rules.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rules.hbs
index 36a79d1951a..36a79d1951a 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-custom-rules.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-custom-rules.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-manual-rule-creation.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-manual-rule-creation.hbs
index 49856ca84f5..49856ca84f5 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-manual-rule-creation.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-manual-rule-creation.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-profile-activation.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-profile-activation.hbs
index 2b47036fd89..2b47036fd89 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-profile-activation.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-profile-activation.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-description.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-description.hbs
index d24143dc42c..d24143dc42c 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-description.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-description.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-issues.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-issues.hbs
index da9a5336d36..da9a5336d36 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-issues.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-issues.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-meta.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-meta.hbs
index 010f827776d..010f827776d 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-meta.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-meta.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-parameters.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-parameters.hbs
index 0298c2aa33e..0298c2aa33e 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-parameters.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-parameters.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-profile.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-profile.hbs
index 441eb2ed22f..441eb2ed22f 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-profile.hbs
diff --git a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-profiles.hbs b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-profiles.hbs
index 2a28c69d62e..2a28c69d62e 100644
--- a/server/sonar-web/src/main/hbs/coding-rules/rule/coding-rules-rule-profiles.hbs
+++ b/server/sonar-web/src/main/js/apps/coding-rules/templates/rule/coding-rules-rule-profiles.hbs
diff --git a/server/sonar-web/src/main/js/coding-rules/workspace-header-view.js b/server/sonar-web/src/main/js/apps/coding-rules/workspace-header-view.js
index 408c5e7b6f1..b194b54fc90 100644
--- a/server/sonar-web/src/main/js/coding-rules/workspace-header-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/workspace-header-view.js
@@ -19,9 +19,9 @@
*/
define([
'components/navigator/workspace-header-view',
- 'coding-rules/bulk-change-popup-view',
- 'coding-rules/rule/manual-rule-creation-view',
- 'templates/coding-rules'
+ './bulk-change-popup-view',
+ './rule/manual-rule-creation-view',
+ './templates'
], function (WorkspaceHeaderView, BulkChangePopup, ManualRuleCreationView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/coding-rules/workspace-list-empty-view.js b/server/sonar-web/src/main/js/apps/coding-rules/workspace-list-empty-view.js
index 2aefada2578..2aefada2578 100644
--- a/server/sonar-web/src/main/js/coding-rules/workspace-list-empty-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/workspace-list-empty-view.js
diff --git a/server/sonar-web/src/main/js/coding-rules/workspace-list-item-view.js b/server/sonar-web/src/main/js/apps/coding-rules/workspace-list-item-view.js
index 44fad926616..b18ba7b52e1 100644
--- a/server/sonar-web/src/main/js/coding-rules/workspace-list-item-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/workspace-list-item-view.js
@@ -19,9 +19,9 @@
*/
define([
'components/navigator/workspace-list-item-view',
- 'coding-rules/rule/profile-activation-view',
- 'coding-rules/rule/rule-filter-mixin',
- 'templates/coding-rules'
+ './rule/profile-activation-view',
+ './rule/rule-filter-mixin',
+ './templates'
], function (WorkspaceListItemView, ProfileActivationView, RuleFilterMixin) {
return WorkspaceListItemView.extend(RuleFilterMixin).extend({
diff --git a/server/sonar-web/src/main/js/coding-rules/workspace-list-view.js b/server/sonar-web/src/main/js/apps/coding-rules/workspace-list-view.js
index da435074b7f..e5f1ac02eb2 100644
--- a/server/sonar-web/src/main/js/coding-rules/workspace-list-view.js
+++ b/server/sonar-web/src/main/js/apps/coding-rules/workspace-list-view.js
@@ -19,9 +19,9 @@
*/
define([
'components/navigator/workspace-list-view',
- 'coding-rules/workspace-list-item-view',
- 'coding-rules/workspace-list-empty-view',
- 'templates/coding-rules'
+ './workspace-list-item-view',
+ './workspace-list-empty-view',
+ './templates'
], function (WorkspaceListView, WorkspaceListItemView, WorkspaceListEmptyView) {
return WorkspaceListView.extend({
diff --git a/server/sonar-web/src/main/js/drilldown/app.js b/server/sonar-web/src/main/js/apps/drilldown/app.js
index c3e2380eb5d..a6d9b5546b3 100644
--- a/server/sonar-web/src/main/js/drilldown/app.js
+++ b/server/sonar-web/src/main/js/apps/drilldown/app.js
@@ -17,12 +17,8 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-requirejs.config({
- baseUrl: baseUrl + '/js'
-});
-
-requirejs([
- 'source-viewer/viewer'
+define([
+ 'components/source-viewer/main'
], function (SourceViewer) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/markdown/app.js b/server/sonar-web/src/main/js/apps/markdown/app.js
index 8446405c15c..80215acba17 100644
--- a/server/sonar-web/src/main/js/markdown/app.js
+++ b/server/sonar-web/src/main/js/apps/markdown/app.js
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-define(['markdown/markdown-help-view'], function (MarkdownView) {
+define(['./markdown-help-view'], function (MarkdownView) {
var App = new Marionette.Application();
diff --git a/server/sonar-web/src/main/js/markdown/markdown-help-view.js b/server/sonar-web/src/main/js/apps/markdown/markdown-help-view.js
index 8c2c10dee66..050128861bd 100644
--- a/server/sonar-web/src/main/js/markdown/markdown-help-view.js
+++ b/server/sonar-web/src/main/js/apps/markdown/markdown-help-view.js
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-define(['templates/markdown'], function () {
+define(['./templates'], function () {
return Marionette.ItemView.extend({
template: Templates['markdown-help']
diff --git a/server/sonar-web/src/main/hbs/markdown/markdown-help.hbs b/server/sonar-web/src/main/js/apps/markdown/templates/markdown-help.hbs
index 49b968a94dd..49b968a94dd 100644
--- a/server/sonar-web/src/main/hbs/markdown/markdown-help.hbs
+++ b/server/sonar-web/src/main/js/apps/markdown/templates/markdown-help.hbs
diff --git a/server/sonar-web/src/main/js/measures/app.js b/server/sonar-web/src/main/js/apps/measures/app.js
index d871a2f5aca..5885cbe87ba 100644
--- a/server/sonar-web/src/main/js/measures/app.js
+++ b/server/sonar-web/src/main/js/apps/measures/app.js
@@ -17,21 +17,17 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-requirejs.config({
- baseUrl: baseUrl + '/js'
-});
-
-requirejs(
+define(
[
- 'measures/measures-filter-bar',
- 'navigator/filters/base-filters',
- 'navigator/filters/checkbox-filters',
- 'navigator/filters/choice-filters',
- 'navigator/filters/ajax-select-filters',
- 'navigator/filters/favorite-filters',
- 'navigator/filters/range-filters',
- 'navigator/filters/string-filters',
- 'navigator/filters/metric-filters'
+ './measures-filter-bar',
+ 'components/navigator/filters/base-filters',
+ 'components/navigator/filters/checkbox-filters',
+ 'components/navigator/filters/choice-filters',
+ 'components/navigator/filters/ajax-select-filters',
+ 'components/navigator/filters/favorite-filters',
+ 'components/navigator/filters/range-filters',
+ 'components/navigator/filters/string-filters',
+ 'components/navigator/filters/metric-filters'
],
function (FilterBar, BaseFilters, CheckboxFilterView, ChoiceFilters, AjaxSelectFilters,
FavoriteFilters, RangeFilters, StringFilterView, MetricFilterView) {
diff --git a/server/sonar-web/src/main/js/measures/measures-filter-bar.js b/server/sonar-web/src/main/js/apps/measures/measures-filter-bar.js
index 4589b8b4b78..a2ca390e068 100644
--- a/server/sonar-web/src/main/js/measures/measures-filter-bar.js
+++ b/server/sonar-web/src/main/js/apps/measures/measures-filter-bar.js
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-define(['navigator/filters/filter-bar'], function (FilterBarView) {
+define(['components/navigator/filters/filter-bar'], function (FilterBarView) {
return FilterBarView.extend({
template: function () {
diff --git a/server/sonar-web/src/main/js/nav/app.js b/server/sonar-web/src/main/js/apps/nav/app.js
index 880e1f549f2..5d45dd82f97 100644
--- a/server/sonar-web/src/main/js/nav/app.js
+++ b/server/sonar-web/src/main/js/apps/nav/app.js
@@ -18,11 +18,11 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'nav/state',
- 'nav/global-navbar-view',
- 'nav/context-navbar-view',
- 'nav/settings-navbar-view',
- 'workspace/main'
+ './state',
+ './global-navbar-view',
+ './context-navbar-view',
+ './settings-navbar-view',
+ 'components/workspace/main'
], function (State, GlobalNavbarView, ContextNavbarView, SettingsNavbarView) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/nav/context-navbar-view.js b/server/sonar-web/src/main/js/apps/nav/context-navbar-view.js
index 4730c38249c..07eb0cd159a 100644
--- a/server/sonar-web/src/main/js/nav/context-navbar-view.js
+++ b/server/sonar-web/src/main/js/apps/nav/context-navbar-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/nav'
+ './templates'
], function () {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/nav/global-navbar-view.js b/server/sonar-web/src/main/js/apps/nav/global-navbar-view.js
index b5435662373..9ee43d9fdfe 100644
--- a/server/sonar-web/src/main/js/nav/global-navbar-view.js
+++ b/server/sonar-web/src/main/js/apps/nav/global-navbar-view.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'nav/search-view',
- 'nav/shortcuts-help-view',
- 'templates/nav'
+ './search-view',
+ './shortcuts-help-view',
+ './templates'
], function (SearchView, ShortcutsHelpView) {
return Marionette.Layout.extend({
diff --git a/server/sonar-web/src/main/js/nav/search-view.js b/server/sonar-web/src/main/js/apps/nav/search-view.js
index 7736cda0a04..57daa695031 100644
--- a/server/sonar-web/src/main/js/nav/search-view.js
+++ b/server/sonar-web/src/main/js/apps/nav/search-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/selectable-collection-view',
- 'templates/nav'
+ 'components/common/selectable-collection-view',
+ './templates'
], function (SelectableCollectionView) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/nav/settings-navbar-view.js b/server/sonar-web/src/main/js/apps/nav/settings-navbar-view.js
index 5fb2616a55c..6134e229fd1 100644
--- a/server/sonar-web/src/main/js/nav/settings-navbar-view.js
+++ b/server/sonar-web/src/main/js/apps/nav/settings-navbar-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/nav'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/nav/shortcuts-help-view.js b/server/sonar-web/src/main/js/apps/nav/shortcuts-help-view.js
index a614b13ed5b..b054b7c6150 100644
--- a/server/sonar-web/src/main/js/nav/shortcuts-help-view.js
+++ b/server/sonar-web/src/main/js/apps/nav/shortcuts-help-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modals',
- 'templates/nav'
+ 'components/common/modals',
+ './templates'
], function (ModalView) {
return ModalView.extend({
diff --git a/server/sonar-web/src/main/js/nav/state.js b/server/sonar-web/src/main/js/apps/nav/state.js
index f41557663ee..f41557663ee 100644
--- a/server/sonar-web/src/main/js/nav/state.js
+++ b/server/sonar-web/src/main/js/apps/nav/state.js
diff --git a/server/sonar-web/src/main/hbs/nav/_nav-logo.hbs b/server/sonar-web/src/main/js/apps/nav/templates/_nav-logo.hbs
index fcc91b8f24b..fcc91b8f24b 100644
--- a/server/sonar-web/src/main/hbs/nav/_nav-logo.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/_nav-logo.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/_nav-navbar-label.hbs b/server/sonar-web/src/main/js/apps/nav/templates/_nav-navbar-label.hbs
index df44ac06af2..df44ac06af2 100644
--- a/server/sonar-web/src/main/hbs/nav/_nav-navbar-label.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/_nav-navbar-label.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-context-navbar.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-context-navbar.hbs
index 11ef4f53ad7..11ef4f53ad7 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-context-navbar.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-context-navbar.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-global-navbar.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-global-navbar.hbs
index fcaf9cc2672..fcaf9cc2672 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-global-navbar.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-global-navbar.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-search-empty.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-search-empty.hbs
index fb76e686612..fb76e686612 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-search-empty.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-search-empty.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-search-item.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-search-item.hbs
index 855b5175187..855b5175187 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-search-item.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-search-item.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-search.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-search.hbs
index 68e1f3ad168..68e1f3ad168 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-search.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-search.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-settings-navbar.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-settings-navbar.hbs
index 5cc7dbbc1ed..5cc7dbbc1ed 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-settings-navbar.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-settings-navbar.hbs
diff --git a/server/sonar-web/src/main/hbs/nav/nav-shortcuts-help.hbs b/server/sonar-web/src/main/js/apps/nav/templates/nav-shortcuts-help.hbs
index 9457d1b7762..9457d1b7762 100644
--- a/server/sonar-web/src/main/hbs/nav/nav-shortcuts-help.hbs
+++ b/server/sonar-web/src/main/js/apps/nav/templates/nav-shortcuts-help.hbs
diff --git a/server/sonar-web/src/main/js/quality-profiles/actions-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/actions-view.js
index 3581f909c1b..fc107d10cef 100644
--- a/server/sonar-web/src/main/js/quality-profiles/actions-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/actions-view.js
@@ -18,10 +18,10 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/create-profile-view',
- 'quality-profiles/restore-profile-view',
- 'quality-profiles/restore-built-in-profiles-view',
- 'templates/quality-profiles'
+ './create-profile-view',
+ './restore-profile-view',
+ './restore-built-in-profiles-view',
+ './templates'
], function (CreateProfileView, RestoreProfileView, RestoreBuiltInProfilesView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/app.js b/server/sonar-web/src/main/js/apps/quality-profiles/app.js
index 81f9aa9d4d3..30ed90b173c 100644
--- a/server/sonar-web/src/main/js/quality-profiles/app.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/app.js
@@ -17,13 +17,13 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-require([
- 'quality-profiles/router',
- 'quality-profiles/controller',
- 'quality-profiles/layout',
- 'quality-profiles/profiles',
- 'quality-profiles/actions-view',
- 'quality-profiles/profiles-view'
+define([
+ './router',
+ './controller',
+ './layout',
+ './profiles',
+ './actions-view',
+ './profiles-view'
], function (Router, Controller, Layout, Profiles, ActionsView, ProfilesView) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/quality-profiles/change-profile-parent-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/change-profile-parent-view.js
index ef087af1a18..e3c30699fe7 100644
--- a/server/sonar-web/src/main/js/quality-profiles/change-profile-parent-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/change-profile-parent-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ './templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/controller.js b/server/sonar-web/src/main/js/apps/quality-profiles/controller.js
index 2087cd447fe..282d398dc3f 100644
--- a/server/sonar-web/src/main/js/quality-profiles/controller.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/controller.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/profile-header-view',
- 'quality-profiles/profile-details-view'
+ './profile-header-view',
+ './profile-details-view'
], function (ProfileHeaderView, ProfileDetailsView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/copy-profile-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/copy-profile-view.js
index 5c5eb987957..446254c1c4c 100644
--- a/server/sonar-web/src/main/js/quality-profiles/copy-profile-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/copy-profile-view.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'quality-profiles/profile',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ './profile',
+ './templates'
], function (ModalFormView, Profile) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/create-profile-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/create-profile-view.js
index e6045f31716..ec5a0923d4b 100644
--- a/server/sonar-web/src/main/js/quality-profiles/create-profile-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/create-profile-view.js
@@ -18,10 +18,10 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'common/file-upload',
- 'quality-profiles/profile',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ 'components/common/file-upload',
+ './profile',
+ './templates'
], function (ModalFormView, uploader, Profile) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/delete-profile-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/delete-profile-view.js
index e1026727f79..3b2ccee277a 100644
--- a/server/sonar-web/src/main/js/quality-profiles/delete-profile-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/delete-profile-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ './templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/helpers.js b/server/sonar-web/src/main/js/apps/quality-profiles/helpers.js
index d241c123e17..d241c123e17 100644
--- a/server/sonar-web/src/main/js/quality-profiles/helpers.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/helpers.js
diff --git a/server/sonar-web/src/main/js/quality-profiles/intro-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/intro-view.js
index a074bc6da1d..abfb416541b 100644
--- a/server/sonar-web/src/main/js/quality-profiles/intro-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/intro-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/quality-profiles'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/quality-profiles/layout.js b/server/sonar-web/src/main/js/apps/quality-profiles/layout.js
index ccc2f6df805..9099a11fa78 100644
--- a/server/sonar-web/src/main/js/quality-profiles/layout.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/layout.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/intro-view',
- 'templates/quality-profiles'
+ './intro-view',
+ './templates'
], function (IntroView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/profile-changelog-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/profile-changelog-view.js
index 0e9083ecb7b..28838846bba 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profile-changelog-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profile-changelog-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/quality-profiles'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/quality-profiles/profile-comparison-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/profile-comparison-view.js
index 862ede66deb..d5f5ea37d4b 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profile-comparison-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profile-comparison-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/quality-profiles'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/quality-profiles/profile-details-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/profile-details-view.js
index 51aa787cb3f..ede00f14d73 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profile-details-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profile-details-view.js
@@ -18,12 +18,12 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/change-profile-parent-view',
- 'quality-profiles/profile-changelog-view',
- 'quality-profiles/profile-comparison-view',
- 'common/select-list',
- 'quality-profiles/helpers',
- 'templates/quality-profiles'
+ './change-profile-parent-view',
+ './profile-changelog-view',
+ './profile-comparison-view',
+ 'components/common/select-list',
+ './helpers',
+ './templates'
], function (ChangeProfileParentView, ProfileChangelogView, ProfileComparisonView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/profile-header-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/profile-header-view.js
index 7b55bfa3d2e..57a5d310736 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profile-header-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profile-header-view.js
@@ -18,10 +18,10 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/copy-profile-view',
- 'quality-profiles/rename-profile-view',
- 'quality-profiles/delete-profile-view',
- 'templates/quality-profiles'
+ './copy-profile-view',
+ './rename-profile-view',
+ './delete-profile-view',
+ './templates'
], function (ProfileCopyView, ProfileRenameView, ProfileDeleteView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/profile-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/profile-view.js
index b8c69aba0fb..03e5352e2d0 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profile-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profile-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/quality-profiles'
+ './templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/quality-profiles/profile.js b/server/sonar-web/src/main/js/apps/quality-profiles/profile.js
index 7315821cf1c..7315821cf1c 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profile.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profile.js
diff --git a/server/sonar-web/src/main/js/quality-profiles/profiles-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/profiles-view.js
index fbf2615bd42..2a433476dcd 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profiles-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profiles-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/profile-view',
- 'templates/quality-profiles'
+ './profile-view',
+ './templates'
], function (ProfileView) {
return Marionette.CompositeView.extend({
diff --git a/server/sonar-web/src/main/js/quality-profiles/profiles.js b/server/sonar-web/src/main/js/apps/quality-profiles/profiles.js
index 38c0477ca29..8b556ce8aa5 100644
--- a/server/sonar-web/src/main/js/quality-profiles/profiles.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/profiles.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'quality-profiles/profile'
+ './profile'
], function (Profile) {
return Backbone.Collection.extend({
diff --git a/server/sonar-web/src/main/js/quality-profiles/rename-profile-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/rename-profile-view.js
index 023f3a94f78..b61d9d8a794 100644
--- a/server/sonar-web/src/main/js/quality-profiles/rename-profile-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/rename-profile-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ './templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/restore-built-in-profiles-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/restore-built-in-profiles-view.js
index 3d86785c579..645197f7b55 100644
--- a/server/sonar-web/src/main/js/quality-profiles/restore-built-in-profiles-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/restore-built-in-profiles-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ './templates'
], function (ModalFormView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/restore-profile-view.js b/server/sonar-web/src/main/js/apps/quality-profiles/restore-profile-view.js
index 24f7ae3409b..fca5b66476f 100644
--- a/server/sonar-web/src/main/js/quality-profiles/restore-profile-view.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/restore-profile-view.js
@@ -18,10 +18,10 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modal-form',
- 'common/file-upload',
- 'quality-profiles/profile',
- 'templates/quality-profiles'
+ 'components/common/modal-form',
+ 'components/common/file-upload',
+ './profile',
+ './templates'
], function (ModalFormView, uploader, Profile) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/quality-profiles/router.js b/server/sonar-web/src/main/js/apps/quality-profiles/router.js
index 7970d6d2ea6..7970d6d2ea6 100644
--- a/server/sonar-web/src/main/js/quality-profiles/router.js
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/router.js
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profile-changelog.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profile-changelog.hbs
index 92d87282448..92d87282448 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profile-changelog.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profile-changelog.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profile-comparison.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profile-comparison.hbs
index e6eeeb28eb5..e6eeeb28eb5 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profile-comparison.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profile-comparison.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-actions.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-actions.hbs
index 2d887af6df3..2d887af6df3 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-actions.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-actions.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-change-profile-parent.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-change-profile-parent.hbs
index 9cbb1778a7f..9cbb1778a7f 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-change-profile-parent.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-change-profile-parent.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-copy-profile.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-copy-profile.hbs
index 6cc034f1209..6cc034f1209 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-copy-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-copy-profile.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-create-profile.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-create-profile.hbs
index 50fbc195fff..50fbc195fff 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-create-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-create-profile.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-delete-profile.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-delete-profile.hbs
index bd011a01694..bd011a01694 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-delete-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-delete-profile.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-intro.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-intro.hbs
index ae369f7f707..ae369f7f707 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-intro.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-intro.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-layout.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-layout.hbs
index 91e2e23a237..91e2e23a237 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-layout.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-layout.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile-details.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile-details.hbs
index 7f1d8c3c993..7f1d8c3c993 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile-details.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile-details.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile-header.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile-header.hbs
index 141004e9fdb..141004e9fdb 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile-header.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile-header.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile.hbs
index f6cc63068b8..f6cc63068b8 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profile.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profiles-language.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profiles-language.hbs
index f3ec16f0a9c..f3ec16f0a9c 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profiles-language.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profiles-language.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profiles.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profiles.hbs
index 8022059ffad..8022059ffad 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-profiles.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-profiles.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-rename-profile.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-rename-profile.hbs
index 3da132f8f4f..3da132f8f4f 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-rename-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-rename-profile.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-restore-built-in-profiles.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-restore-built-in-profiles.hbs
index 44c02a80497..44c02a80497 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-restore-built-in-profiles.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-restore-built-in-profiles.hbs
diff --git a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-restore-profile.hbs b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-restore-profile.hbs
index faffd5950ae..faffd5950ae 100644
--- a/server/sonar-web/src/main/hbs/quality-profiles/quality-profiles-restore-profile.hbs
+++ b/server/sonar-web/src/main/js/apps/quality-profiles/templates/quality-profiles-restore-profile.hbs
diff --git a/server/sonar-web/src/main/js/source-viewer/app.js b/server/sonar-web/src/main/js/apps/source-viewer/app.js
index 601bfc44e2e..ded35b07041 100644
--- a/server/sonar-web/src/main/js/source-viewer/app.js
+++ b/server/sonar-web/src/main/js/apps/source-viewer/app.js
@@ -22,7 +22,7 @@ requirejs.config({
});
requirejs([
- 'source-viewer/viewer'
+ 'components/source-viewer/main'
], function (SourceViewer) {
diff --git a/server/sonar-web/src/main/js/common/file-upload.js b/server/sonar-web/src/main/js/components/common/file-upload.js
index 266d2b12903..266d2b12903 100644
--- a/server/sonar-web/src/main/js/common/file-upload.js
+++ b/server/sonar-web/src/main/js/components/common/file-upload.js
diff --git a/server/sonar-web/src/main/js/common/handlebars-extensions.js b/server/sonar-web/src/main/js/components/common/handlebars-extensions.js
index 610d5425dc2..610d5425dc2 100644
--- a/server/sonar-web/src/main/js/common/handlebars-extensions.js
+++ b/server/sonar-web/src/main/js/components/common/handlebars-extensions.js
diff --git a/server/sonar-web/src/main/js/common/jquery-isolated-scroll.js b/server/sonar-web/src/main/js/components/common/jquery-isolated-scroll.js
index e65a9c61541..e65a9c61541 100644
--- a/server/sonar-web/src/main/js/common/jquery-isolated-scroll.js
+++ b/server/sonar-web/src/main/js/components/common/jquery-isolated-scroll.js
diff --git a/server/sonar-web/src/main/js/common/modal-form.js b/server/sonar-web/src/main/js/components/common/modal-form.js
index 322610e28b4..8fca522d40d 100644
--- a/server/sonar-web/src/main/js/common/modal-form.js
+++ b/server/sonar-web/src/main/js/components/common/modal-form.js
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-define(['common/modals'], function (ModalView) {
+define(['components/common/modals'], function (ModalView) {
return ModalView.extend({
diff --git a/server/sonar-web/src/main/js/common/modals.js b/server/sonar-web/src/main/js/components/common/modals.js
index 243ddb04948..243ddb04948 100644
--- a/server/sonar-web/src/main/js/common/modals.js
+++ b/server/sonar-web/src/main/js/components/common/modals.js
diff --git a/server/sonar-web/src/main/js/common/processes.js b/server/sonar-web/src/main/js/components/common/processes.js
index a437192044e..a437192044e 100644
--- a/server/sonar-web/src/main/js/common/processes.js
+++ b/server/sonar-web/src/main/js/components/common/processes.js
diff --git a/server/sonar-web/src/main/js/common/select-list.js b/server/sonar-web/src/main/js/components/common/select-list.js
index d2ca6af8b27..d2ca6af8b27 100644
--- a/server/sonar-web/src/main/js/common/select-list.js
+++ b/server/sonar-web/src/main/js/components/common/select-list.js
diff --git a/server/sonar-web/src/main/js/common/selectable-collection-view.js b/server/sonar-web/src/main/js/components/common/selectable-collection-view.js
index b025ba925a5..b025ba925a5 100644
--- a/server/sonar-web/src/main/js/common/selectable-collection-view.js
+++ b/server/sonar-web/src/main/js/components/common/selectable-collection-view.js
diff --git a/server/sonar-web/src/main/hbs/common/_markdown-tips.hbs b/server/sonar-web/src/main/js/components/common/templates/_markdown-tips.hbs
index 51ebaa00ae5..51ebaa00ae5 100644
--- a/server/sonar-web/src/main/hbs/common/_markdown-tips.hbs
+++ b/server/sonar-web/src/main/js/components/common/templates/_markdown-tips.hbs
diff --git a/server/sonar-web/src/main/js/navigator/filters/ajax-select-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/ajax-select-filters.js
index c354b73b48b..36c07bbe947 100644
--- a/server/sonar-web/src/main/js/navigator/filters/ajax-select-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/ajax-select-filters.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'navigator/filters/choice-filters',
- 'templates/navigator'
+ './base-filters',
+ './choice-filters',
+ '../templates'
], function (BaseFilters, ChoiceFilters) {
var PAGE_SIZE = 100;
diff --git a/server/sonar-web/src/main/js/navigator/filters/base-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/base-filters.js
index e22b734e45c..e4298597794 100644
--- a/server/sonar-web/src/main/js/navigator/filters/base-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/base-filters.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/navigator'
+ '../templates'
], function () {
var Filter = Backbone.Model.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/checkbox-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/checkbox-filters.js
index 646c5d203ef..8c837802e24 100644
--- a/server/sonar-web/src/main/js/navigator/filters/checkbox-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/checkbox-filters.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'templates/navigator'
+ './base-filters',
+ '../templates'
], function (BaseFilters) {
return BaseFilters.BaseFilterView.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/choice-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/choice-filters.js
index 83899a15b80..31fc08656ba 100644
--- a/server/sonar-web/src/main/js/navigator/filters/choice-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/choice-filters.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'templates/navigator'
+ './base-filters',
+ '../templates'
], function (BaseFilters) {
var DetailsChoiceFilterView = BaseFilters.DetailsFilterView.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/favorite-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/favorite-filters.js
index 95292e9a082..a787a89fece 100644
--- a/server/sonar-web/src/main/js/navigator/filters/favorite-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/favorite-filters.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'navigator/filters/choice-filters',
- 'templates/navigator'
+ './base-filters',
+ './choice-filters',
+ '../templates'
], function (BaseFilters, ChoiceFilters) {
var DetailsFavoriteFilterView = BaseFilters.DetailsFilterView.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/filter-bar.js b/server/sonar-web/src/main/js/components/navigator/filters/filter-bar.js
index af8736aedbe..b87da53c1d6 100644
--- a/server/sonar-web/src/main/js/navigator/filters/filter-bar.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/filter-bar.js
@@ -19,11 +19,11 @@
*/
define(
[
- 'navigator/filters/base-filters',
- 'navigator/filters/more-criteria-filters',
- 'navigator/filters/favorite-filters'
+ './base-filters',
+ './more-criteria-filters',
+ './favorite-filters'
],
- function (BaseFilters) {
+ function (BaseFilters, MoreCriteriaFilters) {
return Marionette.CompositeView.extend({
itemViewContainer: '.navigator-filters-list',
@@ -136,7 +136,7 @@ define(
var disabledFilters = this.collection.where({ enabled: false });
if (disabledFilters.length > 0) {
this.moreCriteriaFilter = new BaseFilters.Filter({
- type: require('navigator/filters/more-criteria-filters').MoreCriteriaFilterView,
+ type: MoreCriteriaFilters.MoreCriteriaFilterView,
enabled: true,
optional: false,
filters: disabledFilters
@@ -147,7 +147,7 @@ define(
onAfterItemAdded: function (itemView) {
- if (itemView.model.get('type') === require('navigator/filters/favorite-filters').FavoriteFilterView) {
+ if (itemView.model.get('type') === MoreCriteriaFilters.FavoriteFilterView) {
jQuery('.navigator-header').addClass('navigator-header-favorite');
}
},
@@ -181,7 +181,7 @@ define(
changeEnabled: function () {
var disabledFilters = _.reject(this.collection.where({ enabled: false }), function (filter) {
- return filter.get('type') === require('navigator/filters/more-criteria-filters').MoreCriteriaFilterView;
+ return filter.get('type') === MoreCriteriaFilters.MoreCriteriaFilterView;
});
if (disabledFilters.length === 0) {
diff --git a/server/sonar-web/src/main/js/navigator/filters/metric-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/metric-filters.js
index d296a96259a..cef960f3238 100644
--- a/server/sonar-web/src/main/js/navigator/filters/metric-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/metric-filters.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'templates/navigator'
+ './base-filters',
+ '../templates'
], function (BaseFilters) {
var DetailsMetricFilterView = BaseFilters.DetailsFilterView.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/more-criteria-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/more-criteria-filters.js
index b13242a6668..f2a39f9a218 100644
--- a/server/sonar-web/src/main/js/navigator/filters/more-criteria-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/more-criteria-filters.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'navigator/filters/choice-filters',
- 'templates/navigator'
+ './base-filters',
+ './choice-filters',
+ '../templates'
], function (BaseFilters, ChoiceFilters) {
var DetailsMoreCriteriaFilterView = ChoiceFilters.DetailsChoiceFilterView.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/range-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/range-filters.js
index 3e13cb6efcc..e46d15594fd 100644
--- a/server/sonar-web/src/main/js/navigator/filters/range-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/range-filters.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'templates/navigator'
+ './base-filters',
+ '../templates'
], function (BaseFilters) {
var DetailsRangeFilterView = BaseFilters.DetailsFilterView.extend({
diff --git a/server/sonar-web/src/main/js/navigator/filters/string-filters.js b/server/sonar-web/src/main/js/components/navigator/filters/string-filters.js
index 41d76e81c35..c667ccc73e6 100644
--- a/server/sonar-web/src/main/js/navigator/filters/string-filters.js
+++ b/server/sonar-web/src/main/js/components/navigator/filters/string-filters.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'navigator/filters/base-filters',
- 'templates/navigator'
+ './base-filters',
+ '../templates'
], function (BaseFilters) {
var DetailsStringFilterView = BaseFilters.DetailsFilterView.extend({
diff --git a/server/sonar-web/src/main/hbs/navigator/ajax-select-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/ajax-select-filter.hbs
index 97f4be337e0..97f4be337e0 100644
--- a/server/sonar-web/src/main/hbs/navigator/ajax-select-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/ajax-select-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/base-details-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/base-details-filter.hbs
index 40114bbf8f2..40114bbf8f2 100644
--- a/server/sonar-web/src/main/hbs/navigator/base-details-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/base-details-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/base-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/base-filter.hbs
index b20fcf27979..b20fcf27979 100644
--- a/server/sonar-web/src/main/hbs/navigator/base-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/base-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/checkbox-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/checkbox-filter.hbs
index 158884dd47f..158884dd47f 100644
--- a/server/sonar-web/src/main/hbs/navigator/checkbox-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/checkbox-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/choice-filter-item.hbs b/server/sonar-web/src/main/js/components/navigator/templates/choice-filter-item.hbs
index b4d1a19bc1d..b4d1a19bc1d 100644
--- a/server/sonar-web/src/main/hbs/navigator/choice-filter-item.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/choice-filter-item.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/choice-filter-template.hbs b/server/sonar-web/src/main/js/components/navigator/templates/choice-filter-template.hbs
index e69de29bb2d..e69de29bb2d 100644
--- a/server/sonar-web/src/main/hbs/navigator/choice-filter-template.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/choice-filter-template.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/choice-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/choice-filter.hbs
index 12fd1f0c344..12fd1f0c344 100644
--- a/server/sonar-web/src/main/hbs/navigator/choice-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/choice-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/favorite-details-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/favorite-details-filter.hbs
index 2af8f2fc3b5..2af8f2fc3b5 100644
--- a/server/sonar-web/src/main/hbs/navigator/favorite-details-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/favorite-details-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/favorite-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/favorite-filter.hbs
index 52e00b0692f..52e00b0692f 100644
--- a/server/sonar-web/src/main/hbs/navigator/favorite-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/favorite-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/metric-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/metric-filter.hbs
index ae19cec0a7b..ae19cec0a7b 100644
--- a/server/sonar-web/src/main/hbs/navigator/metric-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/metric-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/more-criteria-details-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/more-criteria-details-filter.hbs
index c56b0e7023d..c56b0e7023d 100644
--- a/server/sonar-web/src/main/hbs/navigator/more-criteria-details-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/more-criteria-details-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/more-criteria-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/more-criteria-filter.hbs
index e6a677165cd..e6a677165cd 100644
--- a/server/sonar-web/src/main/hbs/navigator/more-criteria-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/more-criteria-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/range-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/range-filter.hbs
index a13fdff92e1..a13fdff92e1 100644
--- a/server/sonar-web/src/main/hbs/navigator/range-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/range-filter.hbs
diff --git a/server/sonar-web/src/main/hbs/navigator/string-filter.hbs b/server/sonar-web/src/main/js/components/navigator/templates/string-filter.hbs
index ab1978c8fa7..ab1978c8fa7 100644
--- a/server/sonar-web/src/main/hbs/navigator/string-filter.hbs
+++ b/server/sonar-web/src/main/js/components/navigator/templates/string-filter.hbs
diff --git a/server/sonar-web/src/main/js/source-viewer/header.js b/server/sonar-web/src/main/js/components/source-viewer/header.js
index 245c0b351ca..e241c886c09 100644
--- a/server/sonar-web/src/main/js/source-viewer/header.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/header.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'source-viewer/more-actions',
- 'source-viewer/measures-overlay',
- 'templates/source-viewer'
+ './more-actions',
+ './measures-overlay',
+ './templates'
], function (MoreActionsView, MeasuresOverlay) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/source-viewer/viewer.js b/server/sonar-web/src/main/js/components/source-viewer/main.js
index 128e2f077dd..07dfc55580d 100644
--- a/server/sonar-web/src/main/js/source-viewer/viewer.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/main.js
@@ -18,16 +18,16 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'source-viewer/source',
- 'issue/models/issue',
- 'issue/collections/issues',
- 'issue/issue-view',
- 'source-viewer/header',
- 'source-viewer/popups/scm-popup',
- 'source-viewer/popups/coverage-popup',
- 'source-viewer/popups/duplication-popup',
- 'source-viewer/popups/line-actions-popup',
- 'templates/source-viewer'
+ './source',
+ 'components/issue/models/issue',
+ 'components/issue/collections/issues',
+ 'components/issue/issue-view',
+ './header',
+ './popups/scm-popup',
+ './popups/coverage-popup',
+ './popups/duplication-popup',
+ './popups/line-actions-popup',
+ './templates'
],
function (Source,
Issue,
diff --git a/server/sonar-web/src/main/js/source-viewer/measures-overlay.js b/server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js
index eec15c61f47..f9f3b5cd9e5 100644
--- a/server/sonar-web/src/main/js/source-viewer/measures-overlay.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/modals',
- 'templates/source-viewer'
+ 'components/common/modals',
+ './templates'
], function (ModalView) {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/source-viewer/more-actions.js b/server/sonar-web/src/main/js/components/source-viewer/more-actions.js
index 0d84d93c468..c3e7698b8f9 100644
--- a/server/sonar-web/src/main/js/source-viewer/more-actions.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/more-actions.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'workspace/main',
- 'templates/source-viewer'
+ 'components/workspace/main',
+ './templates'
], function (Workspace) {
var $ = jQuery;
@@ -54,7 +54,7 @@ define([
openInWorkspace: function () {
var uuid = this.options.parent.model.id;
if (Workspace == null) {
- Workspace = require('workspace/main');
+ Workspace = require('components/workspace/main');
}
Workspace.openComponent({ uuid: uuid });
},
diff --git a/server/sonar-web/src/main/js/source-viewer/popups/coverage-popup.js b/server/sonar-web/src/main/js/components/source-viewer/popups/coverage-popup.js
index 556ec1636d0..d3247cdd9f0 100644
--- a/server/sonar-web/src/main/js/source-viewer/popups/coverage-popup.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/popups/coverage-popup.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/popup',
- 'workspace/main',
- 'templates/source-viewer'
+ 'components/common/popup',
+ 'components/workspace/main',
+ '../templates'
], function (Popup, Workspace) {
var $ = jQuery;
@@ -40,7 +40,7 @@ define([
goToFile: function (e) {
var uuid = $(e.currentTarget).data('uuid');
if (Workspace == null) {
- Workspace = require('workspace/main');
+ Workspace = require('components/workspace/main');
}
Workspace.openComponent({ uuid: uuid });
},
diff --git a/server/sonar-web/src/main/js/source-viewer/popups/duplication-popup.js b/server/sonar-web/src/main/js/components/source-viewer/popups/duplication-popup.js
index 73dbec36ed8..235d224770f 100644
--- a/server/sonar-web/src/main/js/source-viewer/popups/duplication-popup.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/popups/duplication-popup.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/popup',
- 'workspace/main',
- 'templates/source-viewer'
+ 'components/common/popup',
+ 'components/workspace/main',
+ '../templates'
], function (Popup, Workspace) {
var $ = jQuery;
@@ -36,7 +36,7 @@ define([
var uuid = $(e.currentTarget).data('uuid'),
line = $(e.currentTarget).data('line');
if (Workspace == null) {
- Workspace = require('workspace/main');
+ Workspace = require('components/workspace/main');
}
Workspace.openComponent({ uuid: uuid, line: line });
},
diff --git a/server/sonar-web/src/main/js/source-viewer/popups/line-actions-popup.js b/server/sonar-web/src/main/js/components/source-viewer/popups/line-actions-popup.js
index 1d456815dbc..0839f4339df 100644
--- a/server/sonar-web/src/main/js/source-viewer/popups/line-actions-popup.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/popups/line-actions-popup.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/popup',
- 'issue/manual-issue-view',
- 'templates/source-viewer'
+ 'components/common/popup',
+ 'components/issue/manual-issue-view',
+ '../templates'
], function (Popup, ManualIssueView) {
return Popup.extend({
diff --git a/server/sonar-web/src/main/js/source-viewer/popups/scm-popup.js b/server/sonar-web/src/main/js/components/source-viewer/popups/scm-popup.js
index 309a77bd071..bdbaea22f0f 100644
--- a/server/sonar-web/src/main/js/source-viewer/popups/scm-popup.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/popups/scm-popup.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'common/popup',
- 'templates/source-viewer'
+ 'components/common/popup',
+ '../templates'
], function (Popup) {
return Popup.extend({
diff --git a/server/sonar-web/src/main/js/source-viewer/source.js b/server/sonar-web/src/main/js/components/source-viewer/source.js
index 168a86bb9c2..168a86bb9c2 100644
--- a/server/sonar-web/src/main/js/source-viewer/source.js
+++ b/server/sonar-web/src/main/js/components/source-viewer/source.js
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-all.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-all.hbs
index ee5ff5358a6..ee5ff5358a6 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-all.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-all.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-coverage.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-coverage.hbs
index 72d2002690f..72d2002690f 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-coverage.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-coverage.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-duplications.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-duplications.hbs
index f6119c38fb6..f6119c38fb6 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-duplications.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-duplications.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-issues.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-issues.hbs
index 29f14e826df..29f14e826df 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-issues.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-issues.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-lines.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-lines.hbs
index f0c81d0349b..f0c81d0349b 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-lines.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-lines.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-test-cases.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-test-cases.hbs
index 30663571ef6..30663571ef6 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-test-cases.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-test-cases.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-tests.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-tests.hbs
index c9b33c392ac..c9b33c392ac 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/measures/_source-viewer-measures-tests.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/measures/_source-viewer-measures-tests.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-coverage-popup.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-coverage-popup.hbs
index 3c53b6c1867..3c53b6c1867 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-coverage-popup.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-coverage-popup.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-duplication-popup.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-duplication-popup.hbs
index 433825e60cf..433825e60cf 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-duplication-popup.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-duplication-popup.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-header.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-header.hbs
index bb726d9d5e6..bb726d9d5e6 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-header.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-header.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-line-options-popup.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-line-options-popup.hbs
index facf64020ea..facf64020ea 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-line-options-popup.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-line-options-popup.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-measures.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-measures.hbs
index 0a2288ceca2..0a2288ceca2 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-measures.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-measures.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-more-actions.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-more-actions.hbs
index c5a85413424..c5a85413424 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-more-actions.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-more-actions.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-scm-popup.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-scm-popup.hbs
index 768ea72341d..768ea72341d 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer-scm-popup.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer-scm-popup.hbs
diff --git a/server/sonar-web/src/main/hbs/source-viewer/source-viewer.hbs b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer.hbs
index 123d21e86a2..123d21e86a2 100644
--- a/server/sonar-web/src/main/hbs/source-viewer/source-viewer.hbs
+++ b/server/sonar-web/src/main/js/components/source-viewer/templates/source-viewer.hbs
diff --git a/server/sonar-web/src/main/js/workspace/main.js b/server/sonar-web/src/main/js/components/workspace/main.js
index 6a468b36a7f..8b4be12009a 100644
--- a/server/sonar-web/src/main/js/workspace/main.js
+++ b/server/sonar-web/src/main/js/components/workspace/main.js
@@ -18,11 +18,11 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'workspace/models/item',
- 'workspace/models/items',
- 'workspace/views/items-view',
- 'workspace/views/viewer-view',
- 'workspace/views/rule-view'
+ './models/item',
+ './models/items',
+ './views/items-view',
+ './views/viewer-view',
+ './views/rule-view'
], function (Item, Items, ItemsView, ViewerView, RuleView) {
var $ = jQuery,
diff --git a/server/sonar-web/src/main/js/workspace/models/item.js b/server/sonar-web/src/main/js/components/workspace/models/item.js
index 9bbe1db8110..9bbe1db8110 100644
--- a/server/sonar-web/src/main/js/workspace/models/item.js
+++ b/server/sonar-web/src/main/js/components/workspace/models/item.js
diff --git a/server/sonar-web/src/main/js/workspace/models/items.js b/server/sonar-web/src/main/js/components/workspace/models/items.js
index 7a4bde3bd02..dfed439bb52 100644
--- a/server/sonar-web/src/main/js/workspace/models/items.js
+++ b/server/sonar-web/src/main/js/components/workspace/models/items.js
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-define(['workspace/models/item'], function (Item) {
+define(['./item'], function (Item) {
var STORAGE_KEY = 'sonarqube-workspace';
diff --git a/server/sonar-web/src/main/hbs/workspace/workspace-item.hbs b/server/sonar-web/src/main/js/components/workspace/templates/workspace-item.hbs
index a98380cb682..a98380cb682 100644
--- a/server/sonar-web/src/main/hbs/workspace/workspace-item.hbs
+++ b/server/sonar-web/src/main/js/components/workspace/templates/workspace-item.hbs
diff --git a/server/sonar-web/src/main/hbs/workspace/workspace-items.hbs b/server/sonar-web/src/main/js/components/workspace/templates/workspace-items.hbs
index 6fe99c04b19..6fe99c04b19 100644
--- a/server/sonar-web/src/main/hbs/workspace/workspace-items.hbs
+++ b/server/sonar-web/src/main/js/components/workspace/templates/workspace-items.hbs
diff --git a/server/sonar-web/src/main/hbs/workspace/workspace-rule.hbs b/server/sonar-web/src/main/js/components/workspace/templates/workspace-rule.hbs
index 3f55d9e8d38..3f55d9e8d38 100644
--- a/server/sonar-web/src/main/hbs/workspace/workspace-rule.hbs
+++ b/server/sonar-web/src/main/js/components/workspace/templates/workspace-rule.hbs
diff --git a/server/sonar-web/src/main/hbs/workspace/workspace-viewer-header.hbs b/server/sonar-web/src/main/js/components/workspace/templates/workspace-viewer-header.hbs
index 409dcd3a6cf..409dcd3a6cf 100644
--- a/server/sonar-web/src/main/hbs/workspace/workspace-viewer-header.hbs
+++ b/server/sonar-web/src/main/js/components/workspace/templates/workspace-viewer-header.hbs
diff --git a/server/sonar-web/src/main/hbs/workspace/workspace-viewer.hbs b/server/sonar-web/src/main/js/components/workspace/templates/workspace-viewer.hbs
index 45515fbecb0..45515fbecb0 100644
--- a/server/sonar-web/src/main/hbs/workspace/workspace-viewer.hbs
+++ b/server/sonar-web/src/main/js/components/workspace/templates/workspace-viewer.hbs
diff --git a/server/sonar-web/src/main/js/workspace/views/base-viewer-view.js b/server/sonar-web/src/main/js/components/workspace/views/base-viewer-view.js
index 20396a7cb51..761b9887184 100644
--- a/server/sonar-web/src/main/js/workspace/views/base-viewer-view.js
+++ b/server/sonar-web/src/main/js/components/workspace/views/base-viewer-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'workspace/views/viewer-header-view'
+ './viewer-header-view'
], function (HeaderView) {
return Marionette.Layout.extend({
diff --git a/server/sonar-web/src/main/js/workspace/views/item-view.js b/server/sonar-web/src/main/js/components/workspace/views/item-view.js
index ad593a73905..17a67af8835 100644
--- a/server/sonar-web/src/main/js/workspace/views/item-view.js
+++ b/server/sonar-web/src/main/js/components/workspace/views/item-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/workspace'
+ '../templates'
], function () {
return Marionette.ItemView.extend({
diff --git a/server/sonar-web/src/main/js/workspace/views/items-view.js b/server/sonar-web/src/main/js/components/workspace/views/items-view.js
index e6c721bf089..a83eeb0f3e8 100644
--- a/server/sonar-web/src/main/js/workspace/views/items-view.js
+++ b/server/sonar-web/src/main/js/components/workspace/views/items-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'workspace/views/item-view',
- 'templates/workspace'
+ './item-view',
+ '../templates'
], function (ItemView) {
return Marionette.CompositeView.extend({
diff --git a/server/sonar-web/src/main/js/workspace/views/rule-view.js b/server/sonar-web/src/main/js/components/workspace/views/rule-view.js
index 2bb983ad1de..4b4a498244b 100644
--- a/server/sonar-web/src/main/js/workspace/views/rule-view.js
+++ b/server/sonar-web/src/main/js/components/workspace/views/rule-view.js
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'workspace/views/base-viewer-view',
- 'templates/workspace'
+ './base-viewer-view',
+ '../templates'
], function (BaseView) {
return BaseView.extend({
diff --git a/server/sonar-web/src/main/js/workspace/views/viewer-header-view.js b/server/sonar-web/src/main/js/components/workspace/views/viewer-header-view.js
index 4f15baf29b2..b0705fb724a 100644
--- a/server/sonar-web/src/main/js/workspace/views/viewer-header-view.js
+++ b/server/sonar-web/src/main/js/components/workspace/views/viewer-header-view.js
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'templates/workspace'
+ '../templates'
], function () {
var $ = jQuery;
diff --git a/server/sonar-web/src/main/js/workspace/views/viewer-view.js b/server/sonar-web/src/main/js/components/workspace/views/viewer-view.js
index 171186f6179..0de74ce1519 100644
--- a/server/sonar-web/src/main/js/workspace/views/viewer-view.js
+++ b/server/sonar-web/src/main/js/components/workspace/views/viewer-view.js
@@ -18,9 +18,9 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
define([
- 'workspace/views/base-viewer-view',
- 'source-viewer/viewer',
- 'templates/workspace'
+ './base-viewer-view',
+ 'components/source-viewer/main',
+ '../templates'
], function (BaseView, SourceViewer) {
return BaseView.extend({
@@ -33,7 +33,7 @@ define([
showViewer: function () {
if (SourceViewer == null) {
- SourceViewer = require('source-viewer/viewer');
+ SourceViewer = require('components/source-viewer/main');
}
var that = this,
viewer = new SourceViewer(),
diff --git a/server/sonar-web/src/main/js/application.js b/server/sonar-web/src/main/js/libs/application.js
index 2d16dd4ff5d..2d16dd4ff5d 100644
--- a/server/sonar-web/src/main/js/application.js
+++ b/server/sonar-web/src/main/js/libs/application.js
diff --git a/server/sonar-web/src/main/js/csv.js b/server/sonar-web/src/main/js/libs/csv.js
index d015f7c5a97..d015f7c5a97 100644
--- a/server/sonar-web/src/main/js/csv.js
+++ b/server/sonar-web/src/main/js/libs/csv.js
diff --git a/server/sonar-web/src/main/js/dashboard.js b/server/sonar-web/src/main/js/libs/dashboard.js
index cafb8ea81a6..cafb8ea81a6 100644
--- a/server/sonar-web/src/main/js/dashboard.js
+++ b/server/sonar-web/src/main/js/libs/dashboard.js
diff --git a/server/sonar-web/src/main/js/graphics/barchart.js b/server/sonar-web/src/main/js/libs/graphics/barchart.js
index c107a68661b..c107a68661b 100644
--- a/server/sonar-web/src/main/js/graphics/barchart.js
+++ b/server/sonar-web/src/main/js/libs/graphics/barchart.js
diff --git a/server/sonar-web/src/main/js/graphics/pie-chart.js b/server/sonar-web/src/main/js/libs/graphics/pie-chart.js
index d7b62bb54ca..d7b62bb54ca 100644
--- a/server/sonar-web/src/main/js/graphics/pie-chart.js
+++ b/server/sonar-web/src/main/js/libs/graphics/pie-chart.js
diff --git a/server/sonar-web/src/main/js/recent-history.js b/server/sonar-web/src/main/js/libs/recent-history.js
index f2c17912911..f2c17912911 100644
--- a/server/sonar-web/src/main/js/recent-history.js
+++ b/server/sonar-web/src/main/js/libs/recent-history.js
diff --git a/server/sonar-web/src/main/js/libs/require.js b/server/sonar-web/src/main/js/libs/require.js
new file mode 100644
index 00000000000..7bf4ea9146d
--- /dev/null
+++ b/server/sonar-web/src/main/js/libs/require.js
@@ -0,0 +1,2083 @@
+/** vim: et:ts=4:sw=4:sts=4
+ * @license RequireJS 2.1.17 Copyright (c) 2010-2015, The Dojo Foundation All Rights Reserved.
+ * Available via the MIT or new BSD license.
+ * see: http://github.com/jrburke/requirejs for details
+ */
+//Not using strict: uneven strict support in browsers, #392, and causes
+//problems with requirejs.exec()/transpiler plugins that may not be strict.
+/*jslint regexp: true, nomen: true, sloppy: true */
+/*global window, navigator, document, importScripts, setTimeout, opera */
+
+var requirejs, require, define;
+(function (global) {
+ var req, s, head, baseElement, dataMain, src,
+ interactiveScript, currentlyAddingScript, mainScript, subPath,
+ version = '2.1.17',
+ commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,
+ cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
+ jsSuffixRegExp = /\.js$/,
+ currDirRegExp = /^\.\//,
+ op = Object.prototype,
+ ostring = op.toString,
+ hasOwn = op.hasOwnProperty,
+ ap = Array.prototype,
+ apsp = ap.splice,
+ isBrowser = !!(typeof window !== 'undefined' && typeof navigator !== 'undefined' && window.document),
+ isWebWorker = !isBrowser && typeof importScripts !== 'undefined',
+ //PS3 indicates loaded and complete, but need to wait for complete
+ //specifically. Sequence is 'loading', 'loaded', execution,
+ // then 'complete'. The UA check is unfortunate, but not sure how
+ //to feature test w/o causing perf issues.
+ readyRegExp = isBrowser && navigator.platform === 'PLAYSTATION 3' ?
+ /^complete$/ : /^(complete|loaded)$/,
+ defContextName = '_',
+ //Oh the tragedy, detecting opera. See the usage of isOpera for reason.
+ isOpera = typeof opera !== 'undefined' && opera.toString() === '[object Opera]',
+ contexts = {},
+ cfg = {},
+ globalDefQueue = [],
+ useInteractive = false;
+
+ function isFunction(it) {
+ return ostring.call(it) === '[object Function]';
+ }
+
+ function isArray(it) {
+ return ostring.call(it) === '[object Array]';
+ }
+
+ /**
+ * Helper function for iterating over an array. If the func returns
+ * a true value, it will break out of the loop.
+ */
+ function each(ary, func) {
+ if (ary) {
+ var i;
+ for (i = 0; i < ary.length; i += 1) {
+ if (ary[i] && func(ary[i], i, ary)) {
+ break;
+ }
+ }
+ }
+ }
+
+ /**
+ * Helper function for iterating over an array backwards. If the func
+ * returns a true value, it will break out of the loop.
+ */
+ function eachReverse(ary, func) {
+ if (ary) {
+ var i;
+ for (i = ary.length - 1; i > -1; i -= 1) {
+ if (ary[i] && func(ary[i], i, ary)) {
+ break;
+ }
+ }
+ }
+ }
+
+ function hasProp(obj, prop) {
+ return hasOwn.call(obj, prop);
+ }
+
+ function getOwn(obj, prop) {
+ return hasProp(obj, prop) && obj[prop];
+ }
+
+ /**
+ * Cycles over properties in an object and calls a function for each
+ * property value. If the function returns a truthy value, then the
+ * iteration is stopped.
+ */
+ function eachProp(obj, func) {
+ var prop;
+ for (prop in obj) {
+ if (hasProp(obj, prop)) {
+ if (func(obj[prop], prop)) {
+ break;
+ }
+ }
+ }
+ }
+
+ /**
+ * Simple function to mix in properties from source into target,
+ * but only if target does not already have a property of the same name.
+ */
+ function mixin(target, source, force, deepStringMixin) {
+ if (source) {
+ eachProp(source, function (value, prop) {
+ if (force || !hasProp(target, prop)) {
+ if (deepStringMixin && typeof value === 'object' && value &&
+ !isArray(value) && !isFunction(value) &&
+ !(value instanceof RegExp)) {
+
+ if (!target[prop]) {
+ target[prop] = {};
+ }
+ mixin(target[prop], value, force, deepStringMixin);
+ } else {
+ target[prop] = value;
+ }
+ }
+ });
+ }
+ return target;
+ }
+
+ //Similar to Function.prototype.bind, but the 'this' object is specified
+ //first, since it is easier to read/figure out what 'this' will be.
+ function bind(obj, fn) {
+ return function () {
+ return fn.apply(obj, arguments);
+ };
+ }
+
+ function scripts() {
+ return document.getElementsByTagName('script');
+ }
+
+ function defaultOnError(err) {
+ throw err;
+ }
+
+ //Allow getting a global that is expressed in
+ //dot notation, like 'a.b.c'.
+ function getGlobal(value) {
+ if (!value) {
+ return value;
+ }
+ var g = global;
+ each(value.split('.'), function (part) {
+ g = g[part];
+ });
+ return g;
+ }
+
+ /**
+ * Constructs an error with a pointer to an URL with more information.
+ * @param {String} id the error ID that maps to an ID on a web page.
+ * @param {String} message human readable error.
+ * @param {Error} [err] the original error, if there is one.
+ *
+ * @returns {Error}
+ */
+ function makeError(id, msg, err, requireModules) {
+ var e = new Error(msg + '\nhttp://requirejs.org/docs/errors.html#' + id);
+ e.requireType = id;
+ e.requireModules = requireModules;
+ if (err) {
+ e.originalError = err;
+ }
+ return e;
+ }
+
+ if (typeof define !== 'undefined') {
+ //If a define is already in play via another AMD loader,
+ //do not overwrite.
+ return;
+ }
+
+ if (typeof requirejs !== 'undefined') {
+ if (isFunction(requirejs)) {
+ //Do not overwrite an existing requirejs instance.
+ return;
+ }
+ cfg = requirejs;
+ requirejs = undefined;
+ }
+
+ //Allow for a require config object
+ if (typeof require !== 'undefined' && !isFunction(require)) {
+ //assume it is a config object.
+ cfg = require;
+ require = undefined;
+ }
+
+ function newContext(contextName) {
+ var inCheckLoaded, Module, context, handlers,
+ checkLoadedTimeoutId,
+ config = {
+ //Defaults. Do not set a default for map
+ //config to speed up normalize(), which
+ //will run faster if there is no default.
+ waitSeconds: 7,
+ baseUrl: './',
+ paths: {},
+ bundles: {},
+ pkgs: {},
+ shim: {},
+ config: {}
+ },
+ registry = {},
+ //registry of just enabled modules, to speed
+ //cycle breaking code when lots of modules
+ //are registered, but not activated.
+ enabledRegistry = {},
+ undefEvents = {},
+ defQueue = [],
+ defined = {},
+ urlFetched = {},
+ bundlesMap = {},
+ requireCounter = 1,
+ unnormalizedCounter = 1;
+
+ /**
+ * Trims the . and .. from an array of path segments.
+ * It will keep a leading path segment if a .. will become
+ * the first path segment, to help with module name lookups,
+ * which act like paths, but can be remapped. But the end result,
+ * all paths that use this function should look normalized.
+ * NOTE: this method MODIFIES the input array.
+ * @param {Array} ary the array of path segments.
+ */
+ function trimDots(ary) {
+ var i, part;
+ for (i = 0; i < ary.length; i++) {
+ part = ary[i];
+ if (part === '.') {
+ ary.splice(i, 1);
+ i -= 1;
+ } else if (part === '..') {
+ // If at the start, or previous value is still ..,
+ // keep them so that when converted to a path it may
+ // still work when converted to a path, even though
+ // as an ID it is less than ideal. In larger point
+ // releases, may be better to just kick out an error.
+ if (i === 0 || (i === 1 && ary[2] === '..') || ary[i - 1] === '..') {
+ continue;
+ } else if (i > 0) {
+ ary.splice(i - 1, 2);
+ i -= 2;
+ }
+ }
+ }
+ }
+
+ /**
+ * Given a relative module name, like ./something, normalize it to
+ * a real name that can be mapped to a path.
+ * @param {String} name the relative name
+ * @param {String} baseName a real name that the name arg is relative
+ * to.
+ * @param {Boolean} applyMap apply the map config to the value. Should
+ * only be done if this normalization is for a dependency ID.
+ * @returns {String} normalized name
+ */
+ function normalize(name, baseName, applyMap) {
+ var pkgMain, mapValue, nameParts, i, j, nameSegment, lastIndex,
+ foundMap, foundI, foundStarMap, starI, normalizedBaseParts,
+ baseParts = (baseName && baseName.split('/')),
+ map = config.map,
+ starMap = map && map['*'];
+
+ //Adjust any relative paths.
+ if (name) {
+ name = name.split('/');
+ lastIndex = name.length - 1;
+
+ // If wanting node ID compatibility, strip .js from end
+ // of IDs. Have to do this here, and not in nameToUrl
+ // because node allows either .js or non .js to map
+ // to same file.
+ if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) {
+ name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, '');
+ }
+
+ // Starts with a '.' so need the baseName
+ if (name[0].charAt(0) === '.' && baseParts) {
+ //Convert baseName to array, and lop off the last part,
+ //so that . matches that 'directory' and not name of the baseName's
+ //module. For instance, baseName of 'one/two/three', maps to
+ //'one/two/three.js', but we want the directory, 'one/two' for
+ //this normalization.
+ normalizedBaseParts = baseParts.slice(0, baseParts.length - 1);
+ name = normalizedBaseParts.concat(name);
+ }
+
+ trimDots(name);
+ name = name.join('/');
+ }
+
+ //Apply map config if available.
+ if (applyMap && map && (baseParts || starMap)) {
+ nameParts = name.split('/');
+
+ outerLoop: for (i = nameParts.length; i > 0; i -= 1) {
+ nameSegment = nameParts.slice(0, i).join('/');
+
+ if (baseParts) {
+ //Find the longest baseName segment match in the config.
+ //So, do joins on the biggest to smallest lengths of baseParts.
+ for (j = baseParts.length; j > 0; j -= 1) {
+ mapValue = getOwn(map, baseParts.slice(0, j).join('/'));
+
+ //baseName segment has config, find if it has one for
+ //this name.
+ if (mapValue) {
+ mapValue = getOwn(mapValue, nameSegment);
+ if (mapValue) {
+ //Match, update name to the new value.
+ foundMap = mapValue;
+ foundI = i;
+ break outerLoop;
+ }
+ }
+ }
+ }
+
+ //Check for a star map match, but just hold on to it,
+ //if there is a shorter segment match later in a matching
+ //config, then favor over this star map.
+ if (!foundStarMap && starMap && getOwn(starMap, nameSegment)) {
+ foundStarMap = getOwn(starMap, nameSegment);
+ starI = i;
+ }
+ }
+
+ if (!foundMap && foundStarMap) {
+ foundMap = foundStarMap;
+ foundI = starI;
+ }
+
+ if (foundMap) {
+ nameParts.splice(0, foundI, foundMap);
+ name = nameParts.join('/');
+ }
+ }
+
+ // If the name points to a package's name, use
+ // the package main instead.
+ pkgMain = getOwn(config.pkgs, name);
+
+ return pkgMain ? pkgMain : name;
+ }
+
+ function removeScript(name) {
+ if (isBrowser) {
+ each(scripts(), function (scriptNode) {
+ if (scriptNode.getAttribute('data-requiremodule') === name &&
+ scriptNode.getAttribute('data-requirecontext') === context.contextName) {
+ scriptNode.parentNode.removeChild(scriptNode);
+ return true;
+ }
+ });
+ }
+ }
+
+ function hasPathFallback(id) {
+ var pathConfig = getOwn(config.paths, id);
+ if (pathConfig && isArray(pathConfig) && pathConfig.length > 1) {
+ //Pop off the first array value, since it failed, and
+ //retry
+ pathConfig.shift();
+ context.require.undef(id);
+
+ //Custom require that does not do map translation, since
+ //ID is "absolute", already mapped/resolved.
+ context.makeRequire(null, {
+ skipMap: true
+ })([id]);
+
+ return true;
+ }
+ }
+
+ //Turns a plugin!resource to [plugin, resource]
+ //with the plugin being undefined if the name
+ //did not have a plugin prefix.
+ function splitPrefix(name) {
+ var prefix,
+ index = name ? name.indexOf('!') : -1;
+ if (index > -1) {
+ prefix = name.substring(0, index);
+ name = name.substring(index + 1, name.length);
+ }
+ return [prefix, name];
+ }
+
+ /**
+ * Creates a module mapping that includes plugin prefix, module
+ * name, and path. If parentModuleMap is provided it will
+ * also normalize the name via require.normalize()
+ *
+ * @param {String} name the module name
+ * @param {String} [parentModuleMap] parent module map
+ * for the module name, used to resolve relative names.
+ * @param {Boolean} isNormalized: is the ID already normalized.
+ * This is true if this call is done for a define() module ID.
+ * @param {Boolean} applyMap: apply the map config to the ID.
+ * Should only be true if this map is for a dependency.
+ *
+ * @returns {Object}
+ */
+ function makeModuleMap(name, parentModuleMap, isNormalized, applyMap) {
+ var url, pluginModule, suffix, nameParts,
+ prefix = null,
+ parentName = parentModuleMap ? parentModuleMap.name : null,
+ originalName = name,
+ isDefine = true,
+ normalizedName = '';
+
+ //If no name, then it means it is a require call, generate an
+ //internal name.
+ if (!name) {
+ isDefine = false;
+ name = '_@r' + (requireCounter += 1);
+ }
+
+ nameParts = splitPrefix(name);
+ prefix = nameParts[0];
+ name = nameParts[1];
+
+ if (prefix) {
+ prefix = normalize(prefix, parentName, applyMap);
+ pluginModule = getOwn(defined, prefix);
+ }
+
+ //Account for relative paths if there is a base name.
+ if (name) {
+ if (prefix) {
+ if (pluginModule && pluginModule.normalize) {
+ //Plugin is loaded, use its normalize method.
+ normalizedName = pluginModule.normalize(name, function (name) {
+ return normalize(name, parentName, applyMap);
+ });
+ } else {
+ // If nested plugin references, then do not try to
+ // normalize, as it will not normalize correctly. This
+ // places a restriction on resourceIds, and the longer
+ // term solution is not to normalize until plugins are
+ // loaded and all normalizations to allow for async
+ // loading of a loader plugin. But for now, fixes the
+ // common uses. Details in #1131
+ normalizedName = name.indexOf('!') === -1 ?
+ normalize(name, parentName, applyMap) :
+ name;
+ }
+ } else {
+ //A regular module.
+ normalizedName = normalize(name, parentName, applyMap);
+
+ //Normalized name may be a plugin ID due to map config
+ //application in normalize. The map config values must
+ //already be normalized, so do not need to redo that part.
+ nameParts = splitPrefix(normalizedName);
+ prefix = nameParts[0];
+ normalizedName = nameParts[1];
+ isNormalized = true;
+
+ url = context.nameToUrl(normalizedName);
+ }
+ }
+
+ //If the id is a plugin id that cannot be determined if it needs
+ //normalization, stamp it with a unique ID so two matching relative
+ //ids that may conflict can be separate.
+ suffix = prefix && !pluginModule && !isNormalized ?
+ '_unnormalized' + (unnormalizedCounter += 1) :
+ '';
+
+ return {
+ prefix: prefix,
+ name: normalizedName,
+ parentMap: parentModuleMap,
+ unnormalized: !!suffix,
+ url: url,
+ originalName: originalName,
+ isDefine: isDefine,
+ id: (prefix ?
+ prefix + '!' + normalizedName :
+ normalizedName) + suffix
+ };
+ }
+
+ function getModule(depMap) {
+ var id = depMap.id,
+ mod = getOwn(registry, id);
+
+ if (!mod) {
+ mod = registry[id] = new context.Module(depMap);
+ }
+
+ return mod;
+ }
+
+ function on(depMap, name, fn) {
+ var id = depMap.id,
+ mod = getOwn(registry, id);
+
+ if (hasProp(defined, id) &&
+ (!mod || mod.defineEmitComplete)) {
+ if (name === 'defined') {
+ fn(defined[id]);
+ }
+ } else {
+ mod = getModule(depMap);
+ if (mod.error && name === 'error') {
+ fn(mod.error);
+ } else {
+ mod.on(name, fn);
+ }
+ }
+ }
+
+ function onError(err, errback) {
+ var ids = err.requireModules,
+ notified = false;
+
+ if (errback) {
+ errback(err);
+ } else {
+ each(ids, function (id) {
+ var mod = getOwn(registry, id);
+ if (mod) {
+ //Set error on module, so it skips timeout checks.
+ mod.error = err;
+ if (mod.events.error) {
+ notified = true;
+ mod.emit('error', err);
+ }
+ }
+ });
+
+ if (!notified) {
+ req.onError(err);
+ }
+ }
+ }
+
+ /**
+ * Internal method to transfer globalQueue items to this context's
+ * defQueue.
+ */
+ function takeGlobalQueue() {
+ //Push all the globalDefQueue items into the context's defQueue
+ if (globalDefQueue.length) {
+ //Array splice in the values since the context code has a
+ //local var ref to defQueue, so cannot just reassign the one
+ //on context.
+ apsp.apply(defQueue,
+ [defQueue.length, 0].concat(globalDefQueue));
+ globalDefQueue = [];
+ }
+ }
+
+ handlers = {
+ 'require': function (mod) {
+ if (mod.require) {
+ return mod.require;
+ } else {
+ return (mod.require = context.makeRequire(mod.map));
+ }
+ },
+ 'exports': function (mod) {
+ mod.usingExports = true;
+ if (mod.map.isDefine) {
+ if (mod.exports) {
+ return (defined[mod.map.id] = mod.exports);
+ } else {
+ return (mod.exports = defined[mod.map.id] = {});
+ }
+ }
+ },
+ 'module': function (mod) {
+ if (mod.module) {
+ return mod.module;
+ } else {
+ return (mod.module = {
+ id: mod.map.id,
+ uri: mod.map.url,
+ config: function () {
+ return getOwn(config.config, mod.map.id) || {};
+ },
+ exports: mod.exports || (mod.exports = {})
+ });
+ }
+ }
+ };
+
+ function cleanRegistry(id) {
+ //Clean up machinery used for waiting modules.
+ delete registry[id];
+ delete enabledRegistry[id];
+ }
+
+ function breakCycle(mod, traced, processed) {
+ var id = mod.map.id;
+
+ if (mod.error) {
+ mod.emit('error', mod.error);
+ } else {
+ traced[id] = true;
+ each(mod.depMaps, function (depMap, i) {
+ var depId = depMap.id,
+ dep = getOwn(registry, depId);
+
+ //Only force things that have not completed
+ //being defined, so still in the registry,
+ //and only if it has not been matched up
+ //in the module already.
+ if (dep && !mod.depMatched[i] && !processed[depId]) {
+ if (getOwn(traced, depId)) {
+ mod.defineDep(i, defined[depId]);
+ mod.check(); //pass false?
+ } else {
+ breakCycle(dep, traced, processed);
+ }
+ }
+ });
+ processed[id] = true;
+ }
+ }
+
+ function checkLoaded() {
+ var err, usingPathFallback,
+ waitInterval = config.waitSeconds * 1000,
+ //It is possible to disable the wait interval by using waitSeconds of 0.
+ expired = waitInterval && (context.startTime + waitInterval) < new Date().getTime(),
+ noLoads = [],
+ reqCalls = [],
+ stillLoading = false,
+ needCycleCheck = true;
+
+ //Do not bother if this call was a result of a cycle break.
+ if (inCheckLoaded) {
+ return;
+ }
+
+ inCheckLoaded = true;
+
+ //Figure out the state of all the modules.
+ eachProp(enabledRegistry, function (mod) {
+ var map = mod.map,
+ modId = map.id;
+
+ //Skip things that are not enabled or in error state.
+ if (!mod.enabled) {
+ return;
+ }
+
+ if (!map.isDefine) {
+ reqCalls.push(mod);
+ }
+
+ if (!mod.error) {
+ //If the module should be executed, and it has not
+ //been inited and time is up, remember it.
+ if (!mod.inited && expired) {
+ if (hasPathFallback(modId)) {
+ usingPathFallback = true;
+ stillLoading = true;
+ } else {
+ noLoads.push(modId);
+ removeScript(modId);
+ }
+ } else if (!mod.inited && mod.fetched && map.isDefine) {
+ stillLoading = true;
+ if (!map.prefix) {
+ //No reason to keep looking for unfinished
+ //loading. If the only stillLoading is a
+ //plugin resource though, keep going,
+ //because it may be that a plugin resource
+ //is waiting on a non-plugin cycle.
+ return (needCycleCheck = false);
+ }
+ }
+ }
+ });
+
+ if (expired && noLoads.length) {
+ //If wait time expired, throw error of unloaded modules.
+ err = makeError('timeout', 'Load timeout for modules: ' + noLoads, null, noLoads);
+ err.contextName = context.contextName;
+ return onError(err);
+ }
+
+ //Not expired, check for a cycle.
+ if (needCycleCheck) {
+ each(reqCalls, function (mod) {
+ breakCycle(mod, {}, {});
+ });
+ }
+
+ //If still waiting on loads, and the waiting load is something
+ //other than a plugin resource, or there are still outstanding
+ //scripts, then just try back later.
+ if ((!expired || usingPathFallback) && stillLoading) {
+ //Something is still waiting to load. Wait for it, but only
+ //if a timeout is not already in effect.
+ if ((isBrowser || isWebWorker) && !checkLoadedTimeoutId) {
+ checkLoadedTimeoutId = setTimeout(function () {
+ checkLoadedTimeoutId = 0;
+ checkLoaded();
+ }, 50);
+ }
+ }
+
+ inCheckLoaded = false;
+ }
+
+ Module = function (map) {
+ this.events = getOwn(undefEvents, map.id) || {};
+ this.map = map;
+ this.shim = getOwn(config.shim, map.id);
+ this.depExports = [];
+ this.depMaps = [];
+ this.depMatched = [];
+ this.pluginMaps = {};
+ this.depCount = 0;
+
+ /* this.exports this.factory
+ this.depMaps = [],
+ this.enabled, this.fetched
+ */
+ };
+
+ Module.prototype = {
+ init: function (depMaps, factory, errback, options) {
+ options = options || {};
+
+ //Do not do more inits if already done. Can happen if there
+ //are multiple define calls for the same module. That is not
+ //a normal, common case, but it is also not unexpected.
+ if (this.inited) {
+ return;
+ }
+
+ this.factory = factory;
+
+ if (errback) {
+ //Register for errors on this module.
+ this.on('error', errback);
+ } else if (this.events.error) {
+ //If no errback already, but there are error listeners
+ //on this module, set up an errback to pass to the deps.
+ errback = bind(this, function (err) {
+ this.emit('error', err);
+ });
+ }
+
+ //Do a copy of the dependency array, so that
+ //source inputs are not modified. For example
+ //"shim" deps are passed in here directly, and
+ //doing a direct modification of the depMaps array
+ //would affect that config.
+ this.depMaps = depMaps && depMaps.slice(0);
+
+ this.errback = errback;
+
+ //Indicate this module has be initialized
+ this.inited = true;
+
+ this.ignore = options.ignore;
+
+ //Could have option to init this module in enabled mode,
+ //or could have been previously marked as enabled. However,
+ //the dependencies are not known until init is called. So
+ //if enabled previously, now trigger dependencies as enabled.
+ if (options.enabled || this.enabled) {
+ //Enable this module and dependencies.
+ //Will call this.check()
+ this.enable();
+ } else {
+ this.check();
+ }
+ },
+
+ defineDep: function (i, depExports) {
+ //Because of cycles, defined callback for a given
+ //export can be called more than once.
+ if (!this.depMatched[i]) {
+ this.depMatched[i] = true;
+ this.depCount -= 1;
+ this.depExports[i] = depExports;
+ }
+ },
+
+ fetch: function () {
+ if (this.fetched) {
+ return;
+ }
+ this.fetched = true;
+
+ context.startTime = (new Date()).getTime();
+
+ var map = this.map;
+
+ //If the manager is for a plugin managed resource,
+ //ask the plugin to load it now.
+ if (this.shim) {
+ context.makeRequire(this.map, {
+ enableBuildCallback: true
+ })(this.shim.deps || [], bind(this, function () {
+ return map.prefix ? this.callPlugin() : this.load();
+ }));
+ } else {
+ //Regular dependency.
+ return map.prefix ? this.callPlugin() : this.load();
+ }
+ },
+
+ load: function () {
+ var url = this.map.url;
+
+ //Regular dependency.
+ if (!urlFetched[url]) {
+ urlFetched[url] = true;
+ context.load(this.map.id, url);
+ }
+ },
+
+ /**
+ * Checks if the module is ready to define itself, and if so,
+ * define it.
+ */
+ check: function () {
+ if (!this.enabled || this.enabling) {
+ return;
+ }
+
+ var err, cjsModule,
+ id = this.map.id,
+ depExports = this.depExports,
+ exports = this.exports,
+ factory = this.factory;
+
+ if (!this.inited) {
+ this.fetch();
+ } else if (this.error) {
+ this.emit('error', this.error);
+ } else if (!this.defining) {
+ //The factory could trigger another require call
+ //that would result in checking this module to
+ //define itself again. If already in the process
+ //of doing that, skip this work.
+ this.defining = true;
+
+ if (this.depCount < 1 && !this.defined) {
+ if (isFunction(factory)) {
+ //If there is an error listener, favor passing
+ //to that instead of throwing an error. However,
+ //only do it for define()'d modules. require
+ //errbacks should not be called for failures in
+ //their callbacks (#699). However if a global
+ //onError is set, use that.
+ if ((this.events.error && this.map.isDefine) ||
+ req.onError !== defaultOnError) {
+ try {
+ exports = context.execCb(id, factory, depExports, exports);
+ } catch (e) {
+ err = e;
+ }
+ } else {
+ exports = context.execCb(id, factory, depExports, exports);
+ }
+
+ // Favor return value over exports. If node/cjs in play,
+ // then will not have a return value anyway. Favor
+ // module.exports assignment over exports object.
+ if (this.map.isDefine && exports === undefined) {
+ cjsModule = this.module;
+ if (cjsModule) {
+ exports = cjsModule.exports;
+ } else if (this.usingExports) {
+ //exports already set the defined value.
+ exports = this.exports;
+ }
+ }
+
+ if (err) {
+ err.requireMap = this.map;
+ err.requireModules = this.map.isDefine ? [this.map.id] : null;
+ err.requireType = this.map.isDefine ? 'define' : 'require';
+ return onError((this.error = err));
+ }
+
+ } else {
+ //Just a literal value
+ exports = factory;
+ }
+
+ this.exports = exports;
+
+ if (this.map.isDefine && !this.ignore) {
+ defined[id] = exports;
+
+ if (req.onResourceLoad) {
+ req.onResourceLoad(context, this.map, this.depMaps);
+ }
+ }
+
+ //Clean up
+ cleanRegistry(id);
+
+ this.defined = true;
+ }
+
+ //Finished the define stage. Allow calling check again
+ //to allow define notifications below in the case of a
+ //cycle.
+ this.defining = false;
+
+ if (this.defined && !this.defineEmitted) {
+ this.defineEmitted = true;
+ this.emit('defined', this.exports);
+ this.defineEmitComplete = true;
+ }
+
+ }
+ },
+
+ callPlugin: function () {
+ var map = this.map,
+ id = map.id,
+ //Map already normalized the prefix.
+ pluginMap = makeModuleMap(map.prefix);
+
+ //Mark this as a dependency for this plugin, so it
+ //can be traced for cycles.
+ this.depMaps.push(pluginMap);
+
+ on(pluginMap, 'defined', bind(this, function (plugin) {
+ var load, normalizedMap, normalizedMod,
+ bundleId = getOwn(bundlesMap, this.map.id),
+ name = this.map.name,
+ parentName = this.map.parentMap ? this.map.parentMap.name : null,
+ localRequire = context.makeRequire(map.parentMap, {
+ enableBuildCallback: true
+ });
+
+ //If current map is not normalized, wait for that
+ //normalized name to load instead of continuing.
+ if (this.map.unnormalized) {
+ //Normalize the ID if the plugin allows it.
+ if (plugin.normalize) {
+ name = plugin.normalize(name, function (name) {
+ return normalize(name, parentName, true);
+ }) || '';
+ }
+
+ //prefix and name should already be normalized, no need
+ //for applying map config again either.
+ normalizedMap = makeModuleMap(map.prefix + '!' + name,
+ this.map.parentMap);
+ on(normalizedMap,
+ 'defined', bind(this, function (value) {
+ this.init([], function () { return value; }, null, {
+ enabled: true,
+ ignore: true
+ });
+ }));
+
+ normalizedMod = getOwn(registry, normalizedMap.id);
+ if (normalizedMod) {
+ //Mark this as a dependency for this plugin, so it
+ //can be traced for cycles.
+ this.depMaps.push(normalizedMap);
+
+ if (this.events.error) {
+ normalizedMod.on('error', bind(this, function (err) {
+ this.emit('error', err);
+ }));
+ }
+ normalizedMod.enable();
+ }
+
+ return;
+ }
+
+ //If a paths config, then just load that file instead to
+ //resolve the plugin, as it is built into that paths layer.
+ if (bundleId) {
+ this.map.url = context.nameToUrl(bundleId);
+ this.load();
+ return;
+ }
+
+ load = bind(this, function (value) {
+ this.init([], function () { return value; }, null, {
+ enabled: true
+ });
+ });
+
+ load.error = bind(this, function (err) {
+ this.inited = true;
+ this.error = err;
+ err.requireModules = [id];
+
+ //Remove temp unnormalized modules for this module,
+ //since they will never be resolved otherwise now.
+ eachProp(registry, function (mod) {
+ if (mod.map.id.indexOf(id + '_unnormalized') === 0) {
+ cleanRegistry(mod.map.id);
+ }
+ });
+
+ onError(err);
+ });
+
+ //Allow plugins to load other code without having to know the
+ //context or how to 'complete' the load.
+ load.fromText = bind(this, function (text, textAlt) {
+ /*jslint evil: true */
+ var moduleName = map.name,
+ moduleMap = makeModuleMap(moduleName),
+ hasInteractive = useInteractive;
+
+ //As of 2.1.0, support just passing the text, to reinforce
+ //fromText only being called once per resource. Still
+ //support old style of passing moduleName but discard
+ //that moduleName in favor of the internal ref.
+ if (textAlt) {
+ text = textAlt;
+ }
+
+ //Turn off interactive script matching for IE for any define
+ //calls in the text, then turn it back on at the end.
+ if (hasInteractive) {
+ useInteractive = false;
+ }
+
+ //Prime the system by creating a module instance for
+ //it.
+ getModule(moduleMap);
+
+ //Transfer any config to this other module.
+ if (hasProp(config.config, id)) {
+ config.config[moduleName] = config.config[id];
+ }
+
+ try {
+ req.exec(text);
+ } catch (e) {
+ return onError(makeError('fromtexteval',
+ 'fromText eval for ' + id +
+ ' failed: ' + e,
+ e,
+ [id]));
+ }
+
+ if (hasInteractive) {
+ useInteractive = true;
+ }
+
+ //Mark this as a dependency for the plugin
+ //resource
+ this.depMaps.push(moduleMap);
+
+ //Support anonymous modules.
+ context.completeLoad(moduleName);
+
+ //Bind the value of that module to the value for this
+ //resource ID.
+ localRequire([moduleName], load);
+ });
+
+ //Use parentName here since the plugin's name is not reliable,
+ //could be some weird string with no path that actually wants to
+ //reference the parentName's path.
+ plugin.load(map.name, localRequire, load, config);
+ }));
+
+ context.enable(pluginMap, this);
+ this.pluginMaps[pluginMap.id] = pluginMap;
+ },
+
+ enable: function () {
+ enabledRegistry[this.map.id] = this;
+ this.enabled = true;
+
+ //Set flag mentioning that the module is enabling,
+ //so that immediate calls to the defined callbacks
+ //for dependencies do not trigger inadvertent load
+ //with the depCount still being zero.
+ this.enabling = true;
+
+ //Enable each dependency
+ each(this.depMaps, bind(this, function (depMap, i) {
+ var id, mod, handler;
+
+ if (typeof depMap === 'string') {
+ //Dependency needs to be converted to a depMap
+ //and wired up to this module.
+ depMap = makeModuleMap(depMap,
+ (this.map.isDefine ? this.map : this.map.parentMap),
+ false,
+ !this.skipMap);
+ this.depMaps[i] = depMap;
+
+ handler = getOwn(handlers, depMap.id);
+
+ if (handler) {
+ this.depExports[i] = handler(this);
+ return;
+ }
+
+ this.depCount += 1;
+
+ on(depMap, 'defined', bind(this, function (depExports) {
+ this.defineDep(i, depExports);
+ this.check();
+ }));
+
+ if (this.errback) {
+ on(depMap, 'error', bind(this, this.errback));
+ } else if (this.events.error) {
+ // No direct errback on this module, but something
+ // else is listening for errors, so be sure to
+ // propagate the error correctly.
+ on(depMap, 'error', bind(this, function(err) {
+ this.emit('error', err);
+ }));
+ }
+ }
+
+ id = depMap.id;
+ mod = registry[id];
+
+ //Skip special modules like 'require', 'exports', 'module'
+ //Also, don't call enable if it is already enabled,
+ //important in circular dependency cases.
+ if (!hasProp(handlers, id) && mod && !mod.enabled) {
+ context.enable(depMap, this);
+ }
+ }));
+
+ //Enable each plugin that is used in
+ //a dependency
+ eachProp(this.pluginMaps, bind(this, function (pluginMap) {
+ var mod = getOwn(registry, pluginMap.id);
+ if (mod && !mod.enabled) {
+ context.enable(pluginMap, this);
+ }
+ }));
+
+ this.enabling = false;
+
+ this.check();
+ },
+
+ on: function (name, cb) {
+ var cbs = this.events[name];
+ if (!cbs) {
+ cbs = this.events[name] = [];
+ }
+ cbs.push(cb);
+ },
+
+ emit: function (name, evt) {
+ each(this.events[name], function (cb) {
+ cb(evt);
+ });
+ if (name === 'error') {
+ //Now that the error handler was triggered, remove
+ //the listeners, since this broken Module instance
+ //can stay around for a while in the registry.
+ delete this.events[name];
+ }
+ }
+ };
+
+ function callGetModule(args) {
+ //Skip modules already defined.
+ if (!hasProp(defined, args[0])) {
+ getModule(makeModuleMap(args[0], null, true)).init(args[1], args[2]);
+ }
+ }
+
+ function removeListener(node, func, name, ieName) {
+ //Favor detachEvent because of IE9
+ //issue, see attachEvent/addEventListener comment elsewhere
+ //in this file.
+ if (node.detachEvent && !isOpera) {
+ //Probably IE. If not it will throw an error, which will be
+ //useful to know.
+ if (ieName) {
+ node.detachEvent(ieName, func);
+ }
+ } else {
+ node.removeEventListener(name, func, false);
+ }
+ }
+
+ /**
+ * Given an event from a script node, get the requirejs info from it,
+ * and then removes the event listeners on the node.
+ * @param {Event} evt
+ * @returns {Object}
+ */
+ function getScriptData(evt) {
+ //Using currentTarget instead of target for Firefox 2.0's sake. Not
+ //all old browsers will be supported, but this one was easy enough
+ //to support and still makes sense.
+ var node = evt.currentTarget || evt.srcElement;
+
+ //Remove the listeners once here.
+ removeListener(node, context.onScriptLoad, 'load', 'onreadystatechange');
+ removeListener(node, context.onScriptError, 'error');
+
+ return {
+ node: node,
+ id: node && node.getAttribute('data-requiremodule')
+ };
+ }
+
+ function intakeDefines() {
+ var args;
+
+ //Any defined modules in the global queue, intake them now.
+ takeGlobalQueue();
+
+ //Make sure any remaining defQueue items get properly processed.
+ while (defQueue.length) {
+ args = defQueue.shift();
+ if (args[0] === null) {
+ return onError(makeError('mismatch', 'Mismatched anonymous define() module: ' + args[args.length - 1]));
+ } else {
+ //args are id, deps, factory. Should be normalized by the
+ //define() function.
+ callGetModule(args);
+ }
+ }
+ }
+
+ context = {
+ config: config,
+ contextName: contextName,
+ registry: registry,
+ defined: defined,
+ urlFetched: urlFetched,
+ defQueue: defQueue,
+ Module: Module,
+ makeModuleMap: makeModuleMap,
+ nextTick: req.nextTick,
+ onError: onError,
+
+ /**
+ * Set a configuration for the context.
+ * @param {Object} cfg config object to integrate.
+ */
+ configure: function (cfg) {
+ //Make sure the baseUrl ends in a slash.
+ if (cfg.baseUrl) {
+ if (cfg.baseUrl.charAt(cfg.baseUrl.length - 1) !== '/') {
+ cfg.baseUrl += '/';
+ }
+ }
+
+ //Save off the paths since they require special processing,
+ //they are additive.
+ var shim = config.shim,
+ objs = {
+ paths: true,
+ bundles: true,
+ config: true,
+ map: true
+ };
+
+ eachProp(cfg, function (value, prop) {
+ if (objs[prop]) {
+ if (!config[prop]) {
+ config[prop] = {};
+ }
+ mixin(config[prop], value, true, true);
+ } else {
+ config[prop] = value;
+ }
+ });
+
+ //Reverse map the bundles
+ if (cfg.bundles) {
+ eachProp(cfg.bundles, function (value, prop) {
+ each(value, function (v) {
+ if (v !== prop) {
+ bundlesMap[v] = prop;
+ }
+ });
+ });
+ }
+
+ //Merge shim
+ if (cfg.shim) {
+ eachProp(cfg.shim, function (value, id) {
+ //Normalize the structure
+ if (isArray(value)) {
+ value = {
+ deps: value
+ };
+ }
+ if ((value.exports || value.init) && !value.exportsFn) {
+ value.exportsFn = context.makeShimExports(value);
+ }
+ shim[id] = value;
+ });
+ config.shim = shim;
+ }
+
+ //Adjust packages if necessary.
+ if (cfg.packages) {
+ each(cfg.packages, function (pkgObj) {
+ var location, name;
+
+ pkgObj = typeof pkgObj === 'string' ? { name: pkgObj } : pkgObj;
+
+ name = pkgObj.name;
+ location = pkgObj.location;
+ if (location) {
+ config.paths[name] = pkgObj.location;
+ }
+
+ //Save pointer to main module ID for pkg name.
+ //Remove leading dot in main, so main paths are normalized,
+ //and remove any trailing .js, since different package
+ //envs have different conventions: some use a module name,
+ //some use a file name.
+ config.pkgs[name] = pkgObj.name + '/' + (pkgObj.main || 'main')
+ .replace(currDirRegExp, '')
+ .replace(jsSuffixRegExp, '');
+ });
+ }
+
+ //If there are any "waiting to execute" modules in the registry,
+ //update the maps for them, since their info, like URLs to load,
+ //may have changed.
+ eachProp(registry, function (mod, id) {
+ //If module already has init called, since it is too
+ //late to modify them, and ignore unnormalized ones
+ //since they are transient.
+ if (!mod.inited && !mod.map.unnormalized) {
+ mod.map = makeModuleMap(id);
+ }
+ });
+
+ //If a deps array or a config callback is specified, then call
+ //require with those args. This is useful when require is defined as a
+ //config object before require.js is loaded.
+ if (cfg.deps || cfg.callback) {
+ context.require(cfg.deps || [], cfg.callback);
+ }
+ },
+
+ makeShimExports: function (value) {
+ function fn() {
+ var ret;
+ if (value.init) {
+ ret = value.init.apply(global, arguments);
+ }
+ return ret || (value.exports && getGlobal(value.exports));
+ }
+ return fn;
+ },
+
+ makeRequire: function (relMap, options) {
+ options = options || {};
+
+ function localRequire(deps, callback, errback) {
+ var id, map, requireMod;
+
+ if (options.enableBuildCallback && callback && isFunction(callback)) {
+ callback.__requireJsBuild = true;
+ }
+
+ if (typeof deps === 'string') {
+ if (isFunction(callback)) {
+ //Invalid call
+ return onError(makeError('requireargs', 'Invalid require call'), errback);
+ }
+
+ //If require|exports|module are requested, get the
+ //value for them from the special handlers. Caveat:
+ //this only works while module is being defined.
+ if (relMap && hasProp(handlers, deps)) {
+ return handlers[deps](registry[relMap.id]);
+ }
+
+ //Synchronous access to one module. If require.get is
+ //available (as in the Node adapter), prefer that.
+ if (req.get) {
+ return req.get(context, deps, relMap, localRequire);
+ }
+
+ //Normalize module name, if it contains . or ..
+ map = makeModuleMap(deps, relMap, false, true);
+ id = map.id;
+
+ if (!hasProp(defined, id)) {
+ return onError(makeError('notloaded', 'Module name "' +
+ id +
+ '" has not been loaded yet for context: ' +
+ contextName +
+ (relMap ? '' : '. Use require([])')));
+ }
+ return defined[id];
+ }
+
+ //Grab defines waiting in the global queue.
+ intakeDefines();
+
+ //Mark all the dependencies as needing to be loaded.
+ context.nextTick(function () {
+ //Some defines could have been added since the
+ //require call, collect them.
+ intakeDefines();
+
+ requireMod = getModule(makeModuleMap(null, relMap));
+
+ //Store if map config should be applied to this require
+ //call for dependencies.
+ requireMod.skipMap = options.skipMap;
+
+ requireMod.init(deps, callback, errback, {
+ enabled: true
+ });
+
+ checkLoaded();
+ });
+
+ return localRequire;
+ }
+
+ mixin(localRequire, {
+ isBrowser: isBrowser,
+
+ /**
+ * Converts a module name + .extension into an URL path.
+ * *Requires* the use of a module name. It does not support using
+ * plain URLs like nameToUrl.
+ */
+ toUrl: function (moduleNamePlusExt) {
+ var ext,
+ index = moduleNamePlusExt.lastIndexOf('.'),
+ segment = moduleNamePlusExt.split('/')[0],
+ isRelative = segment === '.' || segment === '..';
+
+ //Have a file extension alias, and it is not the
+ //dots from a relative path.
+ if (index !== -1 && (!isRelative || index > 1)) {
+ ext = moduleNamePlusExt.substring(index, moduleNamePlusExt.length);
+ moduleNamePlusExt = moduleNamePlusExt.substring(0, index);
+ }
+
+ return context.nameToUrl(normalize(moduleNamePlusExt,
+ relMap && relMap.id, true), ext, true);
+ },
+
+ defined: function (id) {
+ return hasProp(defined, makeModuleMap(id, relMap, false, true).id);
+ },
+
+ specified: function (id) {
+ id = makeModuleMap(id, relMap, false, true).id;
+ return hasProp(defined, id) || hasProp(registry, id);
+ }
+ });
+
+ //Only allow undef on top level require calls
+ if (!relMap) {
+ localRequire.undef = function (id) {
+ //Bind any waiting define() calls to this context,
+ //fix for #408
+ takeGlobalQueue();
+
+ var map = makeModuleMap(id, relMap, true),
+ mod = getOwn(registry, id);
+
+ removeScript(id);
+
+ delete defined[id];
+ delete urlFetched[map.url];
+ delete undefEvents[id];
+
+ //Clean queued defines too. Go backwards
+ //in array so that the splices do not
+ //mess up the iteration.
+ eachReverse(defQueue, function(args, i) {
+ if(args[0] === id) {
+ defQueue.splice(i, 1);
+ }
+ });
+
+ if (mod) {
+ //Hold on to listeners in case the
+ //module will be attempted to be reloaded
+ //using a different config.
+ if (mod.events.defined) {
+ undefEvents[id] = mod.events;
+ }
+
+ cleanRegistry(id);
+ }
+ };
+ }
+
+ return localRequire;
+ },
+
+ /**
+ * Called to enable a module if it is still in the registry
+ * awaiting enablement. A second arg, parent, the parent module,
+ * is passed in for context, when this method is overridden by
+ * the optimizer. Not shown here to keep code compact.
+ */
+ enable: function (depMap) {
+ var mod = getOwn(registry, depMap.id);
+ if (mod) {
+ getModule(depMap).enable();
+ }
+ },
+
+ /**
+ * Internal method used by environment adapters to complete a load event.
+ * A load event could be a script load or just a load pass from a synchronous
+ * load call.
+ * @param {String} moduleName the name of the module to potentially complete.
+ */
+ completeLoad: function (moduleName) {
+ var found, args, mod,
+ shim = getOwn(config.shim, moduleName) || {},
+ shExports = shim.exports;
+
+ takeGlobalQueue();
+
+ while (defQueue.length) {
+ args = defQueue.shift();
+ if (args[0] === null) {
+ args[0] = moduleName;
+ //If already found an anonymous module and bound it
+ //to this name, then this is some other anon module
+ //waiting for its completeLoad to fire.
+ if (found) {
+ break;
+ }
+ found = true;
+ } else if (args[0] === moduleName) {
+ //Found matching define call for this script!
+ found = true;
+ }
+
+ callGetModule(args);
+ }
+
+ //Do this after the cycle of callGetModule in case the result
+ //of those calls/init calls changes the registry.
+ mod = getOwn(registry, moduleName);
+
+ if (!found && !hasProp(defined, moduleName) && mod && !mod.inited) {
+ if (config.enforceDefine && (!shExports || !getGlobal(shExports))) {
+ if (hasPathFallback(moduleName)) {
+ return;
+ } else {
+ return onError(makeError('nodefine',
+ 'No define call for ' + moduleName,
+ null,
+ [moduleName]));
+ }
+ } else {
+ //A script that does not call define(), so just simulate
+ //the call for it.
+ callGetModule([moduleName, (shim.deps || []), shim.exportsFn]);
+ }
+ }
+
+ checkLoaded();
+ },
+
+ /**
+ * Converts a module name to a file path. Supports cases where
+ * moduleName may actually be just an URL.
+ * Note that it **does not** call normalize on the moduleName,
+ * it is assumed to have already been normalized. This is an
+ * internal API, not a public one. Use toUrl for the public API.
+ */
+ nameToUrl: function (moduleName, ext, skipExt) {
+ var paths, syms, i, parentModule, url,
+ parentPath, bundleId,
+ pkgMain = getOwn(config.pkgs, moduleName);
+
+ if (pkgMain) {
+ moduleName = pkgMain;
+ }
+
+ bundleId = getOwn(bundlesMap, moduleName);
+
+ if (bundleId) {
+ return context.nameToUrl(bundleId, ext, skipExt);
+ }
+
+ //If a colon is in the URL, it indicates a protocol is used and it is just
+ //an URL to a file, or if it starts with a slash, contains a query arg (i.e. ?)
+ //or ends with .js, then assume the user meant to use an url and not a module id.
+ //The slash is important for protocol-less URLs as well as full paths.
+ if (req.jsExtRegExp.test(moduleName)) {
+ //Just a plain path, not module name lookup, so just return it.
+ //Add extension if it is included. This is a bit wonky, only non-.js things pass
+ //an extension, this method probably needs to be reworked.
+ url = moduleName + (ext || '');
+ } else {
+ //A module that needs to be converted to a path.
+ paths = config.paths;
+
+ syms = moduleName.split('/');
+ //For each module name segment, see if there is a path
+ //registered for it. Start with most specific name
+ //and work up from it.
+ for (i = syms.length; i > 0; i -= 1) {
+ parentModule = syms.slice(0, i).join('/');
+
+ parentPath = getOwn(paths, parentModule);
+ if (parentPath) {
+ //If an array, it means there are a few choices,
+ //Choose the one that is desired
+ if (isArray(parentPath)) {
+ parentPath = parentPath[0];
+ }
+ syms.splice(0, i, parentPath);
+ break;
+ }
+ }
+
+ //Join the path parts together, then figure out if baseUrl is needed.
+ url = syms.join('/');
+ url += (ext || (/^data\:|\?/.test(url) || skipExt ? '' : '.js'));
+ url = (url.charAt(0) === '/' || url.match(/^[\w\+\.\-]+:/) ? '' : config.baseUrl) + url;
+ }
+
+ return config.urlArgs ? url +
+ ((url.indexOf('?') === -1 ? '?' : '&') +
+ config.urlArgs) : url;
+ },
+
+ //Delegates to req.load. Broken out as a separate function to
+ //allow overriding in the optimizer.
+ load: function (id, url) {
+ req.load(context, id, url);
+ },
+
+ /**
+ * Executes a module callback function. Broken out as a separate function
+ * solely to allow the build system to sequence the files in the built
+ * layer in the right sequence.
+ *
+ * @private
+ */
+ execCb: function (name, callback, args, exports) {
+ return callback.apply(exports, args);
+ },
+
+ /**
+ * callback for script loads, used to check status of loading.
+ *
+ * @param {Event} evt the event from the browser for the script
+ * that was loaded.
+ */
+ onScriptLoad: function (evt) {
+ //Using currentTarget instead of target for Firefox 2.0's sake. Not
+ //all old browsers will be supported, but this one was easy enough
+ //to support and still makes sense.
+ if (evt.type === 'load' ||
+ (readyRegExp.test((evt.currentTarget || evt.srcElement).readyState))) {
+ //Reset interactive script so a script node is not held onto for
+ //to long.
+ interactiveScript = null;
+
+ //Pull out the name of the module and the context.
+ var data = getScriptData(evt);
+ context.completeLoad(data.id);
+ }
+ },
+
+ /**
+ * Callback for script errors.
+ */
+ onScriptError: function (evt) {
+ var data = getScriptData(evt);
+ if (!hasPathFallback(data.id)) {
+ return onError(makeError('scripterror', 'Script error for: ' + data.id, evt, [data.id]));
+ }
+ }
+ };
+
+ context.require = context.makeRequire();
+ return context;
+ }
+
+ /**
+ * Main entry point.
+ *
+ * If the only argument to require is a string, then the module that
+ * is represented by that string is fetched for the appropriate context.
+ *
+ * If the first argument is an array, then it will be treated as an array
+ * of dependency string names to fetch. An optional function callback can
+ * be specified to execute when all of those dependencies are available.
+ *
+ * Make a local req variable to help Caja compliance (it assumes things
+ * on a require that are not standardized), and to give a short
+ * name for minification/local scope use.
+ */
+ req = requirejs = function (deps, callback, errback, optional) {
+
+ //Find the right context, use default
+ var context, config,
+ contextName = defContextName;
+
+ // Determine if have config object in the call.
+ if (!isArray(deps) && typeof deps !== 'string') {
+ // deps is a config object
+ config = deps;
+ if (isArray(callback)) {
+ // Adjust args if there are dependencies
+ deps = callback;
+ callback = errback;
+ errback = optional;
+ } else {
+ deps = [];
+ }
+ }
+
+ if (config && config.context) {
+ contextName = config.context;
+ }
+
+ context = getOwn(contexts, contextName);
+ if (!context) {
+ context = contexts[contextName] = req.s.newContext(contextName);
+ }
+
+ if (config) {
+ context.configure(config);
+ }
+
+ return context.require(deps, callback, errback);
+ };
+
+ /**
+ * Support require.config() to make it easier to cooperate with other
+ * AMD loaders on globally agreed names.
+ */
+ req.config = function (config) {
+ return req(config);
+ };
+
+ /**
+ * Execute something after the current tick
+ * of the event loop. Override for other envs
+ * that have a better solution than setTimeout.
+ * @param {Function} fn function to execute later.
+ */
+ req.nextTick = typeof setTimeout !== 'undefined' ? function (fn) {
+ setTimeout(fn, 4);
+ } : function (fn) { fn(); };
+
+ /**
+ * Export require as a global, but only if it does not already exist.
+ */
+ if (!require) {
+ require = req;
+ }
+
+ req.version = version;
+
+ //Used to filter out dependencies that are already paths.
+ req.jsExtRegExp = /^\/|:|\?|\.js$/;
+ req.isBrowser = isBrowser;
+ s = req.s = {
+ contexts: contexts,
+ newContext: newContext
+ };
+
+ //Create default context.
+ req({});
+
+ //Exports some context-sensitive methods on global require.
+ each([
+ 'toUrl',
+ 'undef',
+ 'defined',
+ 'specified'
+ ], function (prop) {
+ //Reference from contexts instead of early binding to default context,
+ //so that during builds, the latest instance of the default context
+ //with its config gets used.
+ req[prop] = function () {
+ var ctx = contexts[defContextName];
+ return ctx.require[prop].apply(ctx, arguments);
+ };
+ });
+
+ if (isBrowser) {
+ head = s.head = document.getElementsByTagName('head')[0];
+ //If BASE tag is in play, using appendChild is a problem for IE6.
+ //When that browser dies, this can be removed. Details in this jQuery bug:
+ //http://dev.jquery.com/ticket/2709
+ baseElement = document.getElementsByTagName('base')[0];
+ if (baseElement) {
+ head = s.head = baseElement.parentNode;
+ }
+ }
+
+ /**
+ * Any errors that require explicitly generates will be passed to this
+ * function. Intercept/override it if you want custom error handling.
+ * @param {Error} err the error object.
+ */
+ req.onError = defaultOnError;
+
+ /**
+ * Creates the node for the load command. Only used in browser envs.
+ */
+ req.createNode = function (config, moduleName, url) {
+ var node = config.xhtml ?
+ document.createElementNS('http://www.w3.org/1999/xhtml', 'html:script') :
+ document.createElement('script');
+ node.type = config.scriptType || 'text/javascript';
+ node.charset = 'utf-8';
+ node.async = true;
+ return node;
+ };
+
+ /**
+ * Does the request to load a module for the browser case.
+ * Make this a separate function to allow other environments
+ * to override it.
+ *
+ * @param {Object} context the require context to find state.
+ * @param {String} moduleName the name of the module.
+ * @param {Object} url the URL to the module.
+ */
+ req.load = function (context, moduleName, url) {
+ var config = (context && context.config) || {},
+ node;
+ if (isBrowser) {
+ //In the browser so use a script tag
+ node = req.createNode(config, moduleName, url);
+
+ node.setAttribute('data-requirecontext', context.contextName);
+ node.setAttribute('data-requiremodule', moduleName);
+
+ //Set up load listener. Test attachEvent first because IE9 has
+ //a subtle issue in its addEventListener and script onload firings
+ //that do not match the behavior of all other browsers with
+ //addEventListener support, which fire the onload event for a
+ //script right after the script execution. See:
+ //https://connect.microsoft.com/IE/feedback/details/648057/script-onload-event-is-not-fired-immediately-after-script-execution
+ //UNFORTUNATELY Opera implements attachEvent but does not follow the script
+ //script execution mode.
+ if (node.attachEvent &&
+ //Check if node.attachEvent is artificially added by custom script or
+ //natively supported by browser
+ //read https://github.com/jrburke/requirejs/issues/187
+ //if we can NOT find [native code] then it must NOT natively supported.
+ //in IE8, node.attachEvent does not have toString()
+ //Note the test for "[native code" with no closing brace, see:
+ //https://github.com/jrburke/requirejs/issues/273
+ !(node.attachEvent.toString && node.attachEvent.toString().indexOf('[native code') < 0) &&
+ !isOpera) {
+ //Probably IE. IE (at least 6-8) do not fire
+ //script onload right after executing the script, so
+ //we cannot tie the anonymous define call to a name.
+ //However, IE reports the script as being in 'interactive'
+ //readyState at the time of the define call.
+ useInteractive = true;
+
+ node.attachEvent('onreadystatechange', context.onScriptLoad);
+ //It would be great to add an error handler here to catch
+ //404s in IE9+. However, onreadystatechange will fire before
+ //the error handler, so that does not help. If addEventListener
+ //is used, then IE will fire error before load, but we cannot
+ //use that pathway given the connect.microsoft.com issue
+ //mentioned above about not doing the 'script execute,
+ //then fire the script load event listener before execute
+ //next script' that other browsers do.
+ //Best hope: IE10 fixes the issues,
+ //and then destroys all installs of IE 6-9.
+ //node.attachEvent('onerror', context.onScriptError);
+ } else {
+ node.addEventListener('load', context.onScriptLoad, false);
+ node.addEventListener('error', context.onScriptError, false);
+ }
+ node.src = url;
+
+ //For some cache cases in IE 6-8, the script executes before the end
+ //of the appendChild execution, so to tie an anonymous define
+ //call to the module name (which is stored on the node), hold on
+ //to a reference to this node, but clear after the DOM insertion.
+ currentlyAddingScript = node;
+ if (baseElement) {
+ head.insertBefore(node, baseElement);
+ } else {
+ head.appendChild(node);
+ }
+ currentlyAddingScript = null;
+
+ return node;
+ } else if (isWebWorker) {
+ try {
+ //In a web worker, use importScripts. This is not a very
+ //efficient use of importScripts, importScripts will block until
+ //its script is downloaded and evaluated. However, if web workers
+ //are in play, the expectation that a build has been done so that
+ //only one script needs to be loaded anyway. This may need to be
+ //reevaluated if other use cases become common.
+ importScripts(url);
+
+ //Account for anonymous modules
+ context.completeLoad(moduleName);
+ } catch (e) {
+ context.onError(makeError('importscripts',
+ 'importScripts failed for ' +
+ moduleName + ' at ' + url,
+ e,
+ [moduleName]));
+ }
+ }
+ };
+
+ function getInteractiveScript() {
+ if (interactiveScript && interactiveScript.readyState === 'interactive') {
+ return interactiveScript;
+ }
+
+ eachReverse(scripts(), function (script) {
+ if (script.readyState === 'interactive') {
+ return (interactiveScript = script);
+ }
+ });
+ return interactiveScript;
+ }
+
+ //Look for a data-main script attribute, which could also adjust the baseUrl.
+ if (isBrowser && !cfg.skipDataMain) {
+ //Figure out baseUrl. Get it from the script tag with require.js in it.
+ eachReverse(scripts(), function (script) {
+ //Set the 'head' where we can append children by
+ //using the script's parent.
+ if (!head) {
+ head = script.parentNode;
+ }
+
+ //Look for a data-main attribute to set main script for the page
+ //to load. If it is there, the path to data main becomes the
+ //baseUrl, if it is not already set.
+ dataMain = script.getAttribute('data-main');
+ if (dataMain) {
+ //Preserve dataMain in case it is a path (i.e. contains '?')
+ mainScript = dataMain;
+
+ //Set final baseUrl if there is not already an explicit one.
+ if (!cfg.baseUrl) {
+ //Pull off the directory of data-main for use as the
+ //baseUrl.
+ src = mainScript.split('/');
+ mainScript = src.pop();
+ subPath = src.length ? src.join('/') + '/' : './';
+
+ cfg.baseUrl = subPath;
+ }
+
+ //Strip off any trailing .js since mainScript is now
+ //like a module name.
+ mainScript = mainScript.replace(jsSuffixRegExp, '');
+
+ //If mainScript is still a path, fall back to dataMain
+ if (req.jsExtRegExp.test(mainScript)) {
+ mainScript = dataMain;
+ }
+
+ //Put the data-main script in the files to load.
+ cfg.deps = cfg.deps ? cfg.deps.concat(mainScript) : [mainScript];
+
+ return true;
+ }
+ });
+ }
+
+ /**
+ * The function that handles definitions of modules. Differs from
+ * require() in that a string for the module should be the first argument,
+ * and the function to execute after dependencies are loaded should
+ * return a value to define the module corresponding to the first argument's
+ * name.
+ */
+ define = function (name, deps, callback) {
+ var node, context;
+
+ //Allow for anonymous modules
+ if (typeof name !== 'string') {
+ //Adjust args appropriately
+ callback = deps;
+ deps = name;
+ name = null;
+ }
+
+ //This module may not have dependencies
+ if (!isArray(deps)) {
+ callback = deps;
+ deps = null;
+ }
+
+ //If no name, and callback is a function, then figure out if it a
+ //CommonJS thing with dependencies.
+ if (!deps && isFunction(callback)) {
+ deps = [];
+ //Remove comments from the callback string,
+ //look for require calls, and pull them into the dependencies,
+ //but only if there are function args.
+ if (callback.length) {
+ callback
+ .toString()
+ .replace(commentRegExp, '')
+ .replace(cjsRequireRegExp, function (match, dep) {
+ deps.push(dep);
+ });
+
+ //May be a CommonJS thing even without require calls, but still
+ //could use exports, and module. Avoid doing exports and module
+ //work though if it just needs require.
+ //REQUIRES the function to expect the CommonJS variables in the
+ //order listed below.
+ deps = (callback.length === 1 ? ['require'] : ['require', 'exports', 'module']).concat(deps);
+ }
+ }
+
+ //If in IE 6-8 and hit an anonymous define() call, do the interactive
+ //work.
+ if (useInteractive) {
+ node = currentlyAddingScript || getInteractiveScript();
+ if (node) {
+ if (!name) {
+ name = node.getAttribute('data-requiremodule');
+ }
+ context = contexts[node.getAttribute('data-requirecontext')];
+ }
+ }
+
+ //Always save off evaluating the def call until the script onload handler.
+ //This allows multiple modules to be in a file without prematurely
+ //tracing dependencies, and allows for anonymous module support,
+ //where the module name is not known until the script onload event
+ //occurs. If no context, use the global queue, and get it processed
+ //in the onscript load callback.
+ (context ? context.defQueue : globalDefQueue).push([name, deps, callback]);
+ };
+
+ define.amd = {
+ jQuery: true
+ };
+
+
+ /**
+ * Executes the text. Normally just uses eval, but can be modified
+ * to use a better, environment-specific call. Only used for transpiling
+ * loader plugins, not for plain JS modules.
+ * @param {String} text the text to execute/evaluate.
+ */
+ req.exec = function (text) {
+ /*jslint evil: true */
+ return eval(text);
+ };
+
+ //Set up with config info.
+ req(cfg);
+}(this));
diff --git a/server/sonar-web/src/main/js/select2-jquery-ui-fix.js b/server/sonar-web/src/main/js/libs/select2-jquery-ui-fix.js
index b57d696ec65..b57d696ec65 100644
--- a/server/sonar-web/src/main/js/select2-jquery-ui-fix.js
+++ b/server/sonar-web/src/main/js/libs/select2-jquery-ui-fix.js
diff --git a/server/sonar-web/src/main/js/sortable.js b/server/sonar-web/src/main/js/libs/sortable.js
index b9100ed585d..b9100ed585d 100644
--- a/server/sonar-web/src/main/js/sortable.js
+++ b/server/sonar-web/src/main/js/libs/sortable.js
diff --git a/server/sonar-web/src/main/js/third-party/backbone.js b/server/sonar-web/src/main/js/libs/third-party/backbone.js
index b1508ff0e46..b1508ff0e46 100644
--- a/server/sonar-web/src/main/js/third-party/backbone.js
+++ b/server/sonar-web/src/main/js/libs/third-party/backbone.js
diff --git a/server/sonar-web/src/main/js/third-party/backbone.marionette.js b/server/sonar-web/src/main/js/libs/third-party/backbone.marionette.js
index feb9eb4c48f..feb9eb4c48f 100644
--- a/server/sonar-web/src/main/js/third-party/backbone.marionette.js
+++ b/server/sonar-web/src/main/js/libs/third-party/backbone.marionette.js
diff --git a/server/sonar-web/src/main/js/third-party/bootstrap/dropdown.js b/server/sonar-web/src/main/js/libs/third-party/bootstrap/dropdown.js
index 0cb01b301ac..0cb01b301ac 100644
--- a/server/sonar-web/src/main/js/third-party/bootstrap/dropdown.js
+++ b/server/sonar-web/src/main/js/libs/third-party/bootstrap/dropdown.js
diff --git a/server/sonar-web/src/main/js/third-party/bootstrap/tooltip.js b/server/sonar-web/src/main/js/libs/third-party/bootstrap/tooltip.js
index 4377ec8344a..4377ec8344a 100644
--- a/server/sonar-web/src/main/js/third-party/bootstrap/tooltip.js
+++ b/server/sonar-web/src/main/js/libs/third-party/bootstrap/tooltip.js
diff --git a/server/sonar-web/src/main/js/third-party/d3.js b/server/sonar-web/src/main/js/libs/third-party/d3.js
index 4aa628f2a4f..4aa628f2a4f 100644
--- a/server/sonar-web/src/main/js/third-party/d3.js
+++ b/server/sonar-web/src/main/js/libs/third-party/d3.js
diff --git a/server/sonar-web/src/main/js/third-party/handlebars.js b/server/sonar-web/src/main/js/libs/third-party/handlebars.js
index 2ba83724f1b..2ba83724f1b 100644
--- a/server/sonar-web/src/main/js/third-party/handlebars.js
+++ b/server/sonar-web/src/main/js/libs/third-party/handlebars.js
diff --git a/server/sonar-web/src/main/js/third-party/jquery-ui.js b/server/sonar-web/src/main/js/libs/third-party/jquery-ui.js
index 937458da8c9..937458da8c9 100755
--- a/server/sonar-web/src/main/js/third-party/jquery-ui.js
+++ b/server/sonar-web/src/main/js/libs/third-party/jquery-ui.js
diff --git a/server/sonar-web/src/main/js/third-party/jquery.js b/server/sonar-web/src/main/js/libs/third-party/jquery.js
index b36ce5f6f08..b36ce5f6f08 100644
--- a/server/sonar-web/src/main/js/third-party/jquery.js
+++ b/server/sonar-web/src/main/js/libs/third-party/jquery.js
diff --git a/server/sonar-web/src/main/js/third-party/jquery.mockjax.js b/server/sonar-web/src/main/js/libs/third-party/jquery.mockjax.js
index e9d08ae45a3..e9d08ae45a3 100644
--- a/server/sonar-web/src/main/js/third-party/jquery.mockjax.js
+++ b/server/sonar-web/src/main/js/libs/third-party/jquery.mockjax.js
diff --git a/server/sonar-web/src/main/js/third-party/keymaster.js b/server/sonar-web/src/main/js/libs/third-party/keymaster.js
index 44b315aae6c..44b315aae6c 100644
--- a/server/sonar-web/src/main/js/third-party/keymaster.js
+++ b/server/sonar-web/src/main/js/libs/third-party/keymaster.js
diff --git a/server/sonar-web/src/main/js/third-party/latinize.js b/server/sonar-web/src/main/js/libs/third-party/latinize.js
index 64d27d025f2..64d27d025f2 100644
--- a/server/sonar-web/src/main/js/third-party/latinize.js
+++ b/server/sonar-web/src/main/js/libs/third-party/latinize.js
diff --git a/server/sonar-web/src/main/js/third-party/moment.js b/server/sonar-web/src/main/js/libs/third-party/moment.js
index f804c906981..f804c906981 100644
--- a/server/sonar-web/src/main/js/third-party/moment.js
+++ b/server/sonar-web/src/main/js/libs/third-party/moment.js
diff --git a/server/sonar-web/src/main/js/third-party/numeral-languages.js b/server/sonar-web/src/main/js/libs/third-party/numeral-languages.js
index d53841393e5..d53841393e5 100755
--- a/server/sonar-web/src/main/js/third-party/numeral-languages.js
+++ b/server/sonar-web/src/main/js/libs/third-party/numeral-languages.js
diff --git a/server/sonar-web/src/main/js/third-party/numeral.js b/server/sonar-web/src/main/js/libs/third-party/numeral.js
index d67c0ce6efb..d67c0ce6efb 100755
--- a/server/sonar-web/src/main/js/third-party/numeral.js
+++ b/server/sonar-web/src/main/js/libs/third-party/numeral.js
diff --git a/server/sonar-web/src/main/js/third-party/select2.js b/server/sonar-web/src/main/js/libs/third-party/select2.js
index 3815411846e..3815411846e 100644
--- a/server/sonar-web/src/main/js/third-party/select2.js
+++ b/server/sonar-web/src/main/js/libs/third-party/select2.js
diff --git a/server/sonar-web/src/main/js/third-party/underscore.js b/server/sonar-web/src/main/js/libs/third-party/underscore.js
index cf5d7044640..cf5d7044640 100644
--- a/server/sonar-web/src/main/js/third-party/underscore.js
+++ b/server/sonar-web/src/main/js/libs/third-party/underscore.js
diff --git a/server/sonar-web/src/main/js/translate.js b/server/sonar-web/src/main/js/libs/translate.js
index 6317c610bb6..6317c610bb6 100644
--- a/server/sonar-web/src/main/js/translate.js
+++ b/server/sonar-web/src/main/js/libs/translate.js
diff --git a/server/sonar-web/src/main/js/widgets/bubble-chart.js b/server/sonar-web/src/main/js/libs/widgets/bubble-chart.js
index fc166404423..fc166404423 100644
--- a/server/sonar-web/src/main/js/widgets/bubble-chart.js
+++ b/server/sonar-web/src/main/js/libs/widgets/bubble-chart.js
diff --git a/server/sonar-web/src/main/js/widgets/pie-chart.js b/server/sonar-web/src/main/js/libs/widgets/pie-chart.js
index a88f0941c55..a88f0941c55 100644
--- a/server/sonar-web/src/main/js/widgets/pie-chart.js
+++ b/server/sonar-web/src/main/js/libs/widgets/pie-chart.js
diff --git a/server/sonar-web/src/main/js/widgets/stack-area.js b/server/sonar-web/src/main/js/libs/widgets/stack-area.js
index 993828be5bf..993828be5bf 100644
--- a/server/sonar-web/src/main/js/widgets/stack-area.js
+++ b/server/sonar-web/src/main/js/libs/widgets/stack-area.js
diff --git a/server/sonar-web/src/main/js/widgets/timeline.js b/server/sonar-web/src/main/js/libs/widgets/timeline.js
index 5b871e5994e..5b871e5994e 100644
--- a/server/sonar-web/src/main/js/widgets/timeline.js
+++ b/server/sonar-web/src/main/js/libs/widgets/timeline.js
diff --git a/server/sonar-web/src/main/js/widgets/widget.js b/server/sonar-web/src/main/js/libs/widgets/widget.js
index cd30319f885..cd30319f885 100644
--- a/server/sonar-web/src/main/js/widgets/widget.js
+++ b/server/sonar-web/src/main/js/libs/widgets/widget.js
diff --git a/server/sonar-web/src/main/js/require.js b/server/sonar-web/src/main/js/require.js
deleted file mode 100644
index b6b5e6d94c0..00000000000
--- a/server/sonar-web/src/main/js/require.js
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * SonarQube, open source software quality management tool.
- * Copyright (C) 2008-2014 SonarSource
- * mailto:contact AT sonarsource DOT com
- *
- * SonarQube is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * SonarQube is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-/*
- RequireJS 2.1.10 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved.
- Available via the MIT or new BSD license.
- see: http://github.com/jrburke/requirejs for details
-*/
-var requirejs,require,define;
-(function(ca){function G(b){return"[object Function]"===N.call(b)}function H(b){return"[object Array]"===N.call(b)}function v(b,c){if(b){var d;for(d=0;d<b.length&&(!b[d]||!c(b[d],d,b));d+=1);}}function U(b,c){if(b){var d;for(d=b.length-1;-1<d&&(!b[d]||!c(b[d],d,b));d-=1);}}function s(b,c){return ga.call(b,c)}function j(b,c){return s(b,c)&&b[c]}function B(b,c){for(var d in b)if(s(b,d)&&c(b[d],d))break}function V(b,c,d,g){c&&B(c,function(c,h){if(d||!s(b,h))g&&"object"===typeof c&&c&&!H(c)&&!G(c)&&!(c instanceof
-RegExp)?(b[h]||(b[h]={}),V(b[h],c,d,g)):b[h]=c});return b}function t(b,c){return function(){return c.apply(b,arguments)}}function da(b){throw b;}function ea(b){if(!b)return b;var c=ca;v(b.split("."),function(b){c=c[b]});return c}function C(b,c,d,g){c=Error(c+"\nhttp://requirejs.org/docs/errors.html#"+b);c.requireType=b;c.requireModules=g;d&&(c.originalError=d);return c}function ha(b){function c(a,e,b){var f,n,c,d,g,h,i,I=e&&e.split("/");n=I;var m=l.map,k=m&&m["*"];if(a&&"."===a.charAt(0))if(e){n=
-I.slice(0,I.length-1);a=a.split("/");e=a.length-1;l.nodeIdCompat&&R.test(a[e])&&(a[e]=a[e].replace(R,""));n=a=n.concat(a);d=n.length;for(e=0;e<d;e++)if(c=n[e],"."===c)n.splice(e,1),e-=1;else if(".."===c)if(1===e&&(".."===n[2]||".."===n[0]))break;else 0<e&&(n.splice(e-1,2),e-=2);a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if(b&&m&&(I||k)){n=a.split("/");e=n.length;a:for(;0<e;e-=1){d=n.slice(0,e).join("/");if(I)for(c=I.length;0<c;c-=1)if(b=j(m,I.slice(0,c).join("/")))if(b=j(b,d)){f=b;
-g=e;break a}!h&&(k&&j(k,d))&&(h=j(k,d),i=e)}!f&&h&&(f=h,g=i);f&&(n.splice(0,g,f),a=n.join("/"))}return(f=j(l.pkgs,a))?f:a}function d(a){z&&v(document.getElementsByTagName("script"),function(e){if(e.getAttribute("data-requiremodule")===a&&e.getAttribute("data-requirecontext")===i.contextName)return e.parentNode.removeChild(e),!0})}function g(a){var e=j(l.paths,a);if(e&&H(e)&&1<e.length)return e.shift(),i.require.undef(a),i.require([a]),!0}function u(a){var e,b=a?a.indexOf("!"):-1;-1<b&&(e=a.substring(0,
-b),a=a.substring(b+1,a.length));return[e,a]}function m(a,e,b,f){var n,d,g=null,h=e?e.name:null,l=a,m=!0,k="";a||(m=!1,a="_@r"+(N+=1));a=u(a);g=a[0];a=a[1];g&&(g=c(g,h,f),d=j(p,g));a&&(g?k=d&&d.normalize?d.normalize(a,function(a){return c(a,h,f)}):c(a,h,f):(k=c(a,h,f),a=u(k),g=a[0],k=a[1],b=!0,n=i.nameToUrl(k)));b=g&&!d&&!b?"_unnormalized"+(Q+=1):"";return{prefix:g,name:k,parentMap:e,unnormalized:!!b,url:n,originalName:l,isDefine:m,id:(g?g+"!"+k:k)+b}}function q(a){var e=a.id,b=j(k,e);b||(b=k[e]=new i.Module(a));
-return b}function r(a,e,b){var f=a.id,n=j(k,f);if(s(p,f)&&(!n||n.defineEmitComplete))"defined"===e&&b(p[f]);else if(n=q(a),n.error&&"error"===e)b(n.error);else n.on(e,b)}function w(a,e){var b=a.requireModules,f=!1;if(e)e(a);else if(v(b,function(e){if(e=j(k,e))e.error=a,e.events.error&&(f=!0,e.emit("error",a))}),!f)h.onError(a)}function x(){S.length&&(ia.apply(A,[A.length,0].concat(S)),S=[])}function y(a){delete k[a];delete W[a]}function F(a,e,b){var f=a.map.id;a.error?a.emit("error",a.error):(e[f]=
-!0,v(a.depMaps,function(f,c){var d=f.id,g=j(k,d);g&&(!a.depMatched[c]&&!b[d])&&(j(e,d)?(a.defineDep(c,p[d]),a.check()):F(g,e,b))}),b[f]=!0)}function D(){var a,e,b=(a=1E3*l.waitSeconds)&&i.startTime+a<(new Date).getTime(),f=[],c=[],h=!1,k=!0;if(!X){X=!0;B(W,function(a){var i=a.map,m=i.id;if(a.enabled&&(i.isDefine||c.push(a),!a.error))if(!a.inited&&b)g(m)?h=e=!0:(f.push(m),d(m));else if(!a.inited&&(a.fetched&&i.isDefine)&&(h=!0,!i.prefix))return k=!1});if(b&&f.length)return a=C("timeout","Load timeout for modules: "+
-f,null,f),a.contextName=i.contextName,w(a);k&&v(c,function(a){F(a,{},{})});if((!b||e)&&h)if((z||fa)&&!Y)Y=setTimeout(function(){Y=0;D()},50);X=!1}}function E(a){s(p,a[0])||q(m(a[0],null,!0)).init(a[1],a[2])}function L(a){var a=a.currentTarget||a.srcElement,e=i.onScriptLoad;a.detachEvent&&!Z?a.detachEvent("onreadystatechange",e):a.removeEventListener("load",e,!1);e=i.onScriptError;(!a.detachEvent||Z)&&a.removeEventListener("error",e,!1);return{node:a,id:a&&a.getAttribute("data-requiremodule")}}function M(){var a;
-for(x();A.length;){a=A.shift();if(null===a[0])return w(C("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));E(a)}}var X,$,i,K,Y,l={waitSeconds:7,baseUrl:"./",paths:{},bundles:{},pkgs:{},shim:{},config:{}},k={},W={},aa={},A=[],p={},T={},ba={},N=1,Q=1;K={require:function(a){return a.require?a.require:a.require=i.makeRequire(a.map)},exports:function(a){a.usingExports=!0;if(a.map.isDefine)return a.exports?a.exports:a.exports=p[a.map.id]={}},module:function(a){return a.module?a.module:
-a.module={id:a.map.id,uri:a.map.url,config:function(){return j(l.config,a.map.id)||{}},exports:K.exports(a)}}};$=function(a){this.events=j(aa,a.id)||{};this.map=a;this.shim=j(l.shim,a.id);this.depExports=[];this.depMaps=[];this.depMatched=[];this.pluginMaps={};this.depCount=0};$.prototype={init:function(a,e,b,f){f=f||{};if(!this.inited){this.factory=e;if(b)this.on("error",b);else this.events.error&&(b=t(this,function(a){this.emit("error",a)}));this.depMaps=a&&a.slice(0);this.errback=b;this.inited=
-!0;this.ignore=f.ignore;f.enabled||this.enabled?this.enable():this.check()}},defineDep:function(a,e){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=e)},fetch:function(){if(!this.fetched){this.fetched=!0;i.startTime=(new Date).getTime();var a=this.map;if(this.shim)i.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],t(this,function(){return a.prefix?this.callPlugin():this.load()}));else return a.prefix?this.callPlugin():this.load()}},load:function(){var a=
-this.map.url;T[a]||(T[a]=!0,i.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,e,b=this.map.id;e=this.depExports;var f=this.exports,c=this.factory;if(this.inited)if(this.error)this.emit("error",this.error);else{if(!this.defining){this.defining=!0;if(1>this.depCount&&!this.defined){if(G(c)){if(this.events.error&&this.map.isDefine||h.onError!==da)try{f=i.execCb(b,c,e,f)}catch(d){a=d}else f=i.execCb(b,c,e,f);this.map.isDefine&&void 0===f&&((e=this.module)?f=e.exports:this.usingExports&&
-(f=this.exports));if(a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",w(this.error=a)}else f=c;this.exports=f;if(this.map.isDefine&&!this.ignore&&(p[b]=f,h.onResourceLoad))h.onResourceLoad(i,this.map,this.depMaps);y(b);this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=
-this.map,b=a.id,d=m(a.prefix);this.depMaps.push(d);r(d,"defined",t(this,function(f){var d,g;g=j(ba,this.map.id);var J=this.map.name,u=this.map.parentMap?this.map.parentMap.name:null,p=i.makeRequire(a.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(f.normalize&&(J=f.normalize(J,function(a){return c(a,u,!0)})||""),f=m(a.prefix+"!"+J,this.map.parentMap),r(f,"defined",t(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),g=j(k,f.id)){this.depMaps.push(f);
-if(this.events.error)g.on("error",t(this,function(a){this.emit("error",a)}));g.enable()}}else g?(this.map.url=i.nameToUrl(g),this.load()):(d=t(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),d.error=t(this,function(a){this.inited=!0;this.error=a;a.requireModules=[b];B(k,function(a){0===a.map.id.indexOf(b+"_unnormalized")&&y(a.map.id)});w(a)}),d.fromText=t(this,function(f,c){var g=a.name,J=m(g),k=O;c&&(f=c);k&&(O=!1);q(J);s(l.config,b)&&(l.config[g]=l.config[b]);try{h.exec(f)}catch(j){return w(C("fromtexteval",
-"fromText eval for "+b+" failed: "+j,j,[b]))}k&&(O=!0);this.depMaps.push(J);i.completeLoad(g);p([g],d)}),f.load(a.name,p,d,l))}));i.enable(d,this);this.pluginMaps[d.id]=d},enable:function(){W[this.map.id]=this;this.enabling=this.enabled=!0;v(this.depMaps,t(this,function(a,b){var c,f;if("string"===typeof a){a=m(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap);this.depMaps[b]=a;if(c=j(K,a.id)){this.depExports[b]=c(this);return}this.depCount+=1;r(a,"defined",t(this,function(a){this.defineDep(b,
-a);this.check()}));this.errback&&r(a,"error",t(this,this.errback))}c=a.id;f=k[c];!s(K,c)&&(f&&!f.enabled)&&i.enable(a,this)}));B(this.pluginMaps,t(this,function(a){var b=j(k,a.id);b&&!b.enabled&&i.enable(a,this)}));this.enabling=!1;this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]);c.push(b)},emit:function(a,b){v(this.events[a],function(a){a(b)});"error"===a&&delete this.events[a]}};i={config:l,contextName:b,registry:k,defined:p,urlFetched:T,defQueue:A,Module:$,makeModuleMap:m,
-nextTick:h.nextTick,onError:w,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");var b=l.shim,c={paths:!0,bundles:!0,config:!0,map:!0};B(a,function(a,b){c[b]?(l[b]||(l[b]={}),V(l[b],a,!0,!0)):l[b]=a});a.bundles&&B(a.bundles,function(a,b){v(a,function(a){a!==b&&(ba[a]=b)})});a.shim&&(B(a.shim,function(a,c){H(a)&&(a={deps:a});if((a.exports||a.init)&&!a.exportsFn)a.exportsFn=i.makeShimExports(a);b[c]=a}),l.shim=b);a.packages&&v(a.packages,function(a){var b,
-a="string"===typeof a?{name:a}:a;b=a.name;a.location&&(l.paths[b]=a.location);l.pkgs[b]=a.name+"/"+(a.main||"main").replace(ja,"").replace(R,"")});B(k,function(a,b){!a.inited&&!a.map.unnormalized&&(a.map=m(b))});if(a.deps||a.callback)i.require(a.deps||[],a.callback)},makeShimExports:function(a){return function(){var b;a.init&&(b=a.init.apply(ca,arguments));return b||a.exports&&ea(a.exports)}},makeRequire:function(a,e){function g(f,c,d){var j,l;e.enableBuildCallback&&(c&&G(c))&&(c.__requireJsBuild=
-!0);if("string"===typeof f){if(G(c))return w(C("requireargs","Invalid require call"),d);if(a&&s(K,f))return K[f](k[a.id]);if(h.get)return h.get(i,f,a,g);j=m(f,a,!1,!0);j=j.id;return!s(p,j)?w(C("notloaded",'Module name "'+j+'" has not been loaded yet for context: '+b+(a?"":". Use require([])"))):p[j]}M();i.nextTick(function(){M();l=q(m(null,a));l.skipMap=e.skipMap;l.init(f,c,d,{enabled:!0});D()});return g}e=e||{};V(g,{isBrowser:z,toUrl:function(b){var e,d=b.lastIndexOf("."),g=b.split("/")[0];if(-1!==
-d&&(!("."===g||".."===g)||1<d))e=b.substring(d,b.length),b=b.substring(0,d);return i.nameToUrl(c(b,a&&a.id,!0),e,!0)},defined:function(b){return s(p,m(b,a,!1,!0).id)},specified:function(b){b=m(b,a,!1,!0).id;return s(p,b)||s(k,b)}});a||(g.undef=function(b){x();var c=m(b,a,!0),e=j(k,b);d(b);delete p[b];delete T[c.url];delete aa[b];U(A,function(a,c){a[0]===b&&A.splice(c,1)});e&&(e.events.defined&&(aa[b]=e.events),y(b))});return g},enable:function(a){j(k,a.id)&&q(a).enable()},completeLoad:function(a){var b,
-c,f=j(l.shim,a)||{},d=f.exports;for(x();A.length;){c=A.shift();if(null===c[0]){c[0]=a;if(b)break;b=!0}else c[0]===a&&(b=!0);E(c)}c=j(k,a);if(!b&&!s(p,a)&&c&&!c.inited){if(l.enforceDefine&&(!d||!ea(d)))return g(a)?void 0:w(C("nodefine","No define call for "+a,null,[a]));E([a,f.deps||[],f.exportsFn])}D()},nameToUrl:function(a,b,c){var f,d,g;(f=j(l.pkgs,a))&&(a=f);if(f=j(ba,a))return i.nameToUrl(f,b,c);if(h.jsExtRegExp.test(a))f=a+(b||"");else{f=l.paths;a=a.split("/");for(d=a.length;0<d;d-=1)if(g=a.slice(0,
-d).join("/"),g=j(f,g)){H(g)&&(g=g[0]);a.splice(0,d,g);break}f=a.join("/");f+=b||(/^data\:|\?/.test(f)||c?"":".js");f=("/"===f.charAt(0)||f.match(/^[\w\+\.\-]+:/)?"":l.baseUrl)+f}return l.urlArgs?f+((-1===f.indexOf("?")?"?":"&")+l.urlArgs):f},load:function(a,b){h.load(i,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||ka.test((a.currentTarget||a.srcElement).readyState))P=null,a=L(a),i.completeLoad(a.id)},onScriptError:function(a){var b=L(a);if(!g(b.id))return w(C("scripterror",
-"Script error for: "+b.id,a,[b.id]))}};i.require=i.makeRequire();return i}var h,x,y,D,L,E,P,M,q,Q,la=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,ma=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,R=/\.js$/,ja=/^\.\//;x=Object.prototype;var N=x.toString,ga=x.hasOwnProperty,ia=Array.prototype.splice,z=!!("undefined"!==typeof window&&"undefined"!==typeof navigator&&window.document),fa=!z&&"undefined"!==typeof importScripts,ka=z&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,
-Z="undefined"!==typeof opera&&"[object Opera]"===opera.toString(),F={},r={},S=[],O=!1;if("undefined"===typeof define){if("undefined"!==typeof requirejs){if(G(requirejs))return;r=requirejs;requirejs=void 0}"undefined"!==typeof require&&!G(require)&&(r=require,require=void 0);h=requirejs=function(b,c,d,g){var u,m="_";!H(b)&&"string"!==typeof b&&(u=b,H(c)?(b=c,c=d,d=g):b=[]);u&&u.context&&(m=u.context);(g=j(F,m))||(g=F[m]=h.s.newContext(m));u&&g.configure(u);return g.require(b,c,d)};h.config=function(b){return h(b)};
-h.nextTick="undefined"!==typeof setTimeout?function(b){setTimeout(b,4)}:function(b){b()};require||(require=h);h.version="2.1.10";h.jsExtRegExp=/^\/|:|\?|\.js$/;h.isBrowser=z;x=h.s={contexts:F,newContext:ha};h({});v(["toUrl","undef","defined","specified"],function(b){h[b]=function(){var c=F._;return c.require[b].apply(c,arguments)}});if(z&&(y=x.head=document.getElementsByTagName("head")[0],D=document.getElementsByTagName("base")[0]))y=x.head=D.parentNode;h.onError=da;h.createNode=function(b){var c=
-b.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");c.type=b.scriptType||"text/javascript";c.charset="utf-8";c.async=!0;return c};h.load=function(b,c,d){var g=b&&b.config||{};if(z)return g=h.createNode(g,c,d),g.setAttribute("data-requirecontext",b.contextName),g.setAttribute("data-requiremodule",c),g.attachEvent&&!(g.attachEvent.toString&&0>g.attachEvent.toString().indexOf("[native code"))&&!Z?(O=!0,g.attachEvent("onreadystatechange",b.onScriptLoad)):
-(g.addEventListener("load",b.onScriptLoad,!1),g.addEventListener("error",b.onScriptError,!1)),g.src=d,M=g,D?y.insertBefore(g,D):y.appendChild(g),M=null,g;if(fa)try{importScripts(d),b.completeLoad(c)}catch(j){b.onError(C("importscripts","importScripts failed for "+c+" at "+d,j,[c]))}};z&&!r.skipDataMain&&U(document.getElementsByTagName("script"),function(b){y||(y=b.parentNode);if(L=b.getAttribute("data-main"))return q=L,r.baseUrl||(E=q.split("/"),q=E.pop(),Q=E.length?E.join("/")+"/":"./",r.baseUrl=
-Q),q=q.replace(R,""),h.jsExtRegExp.test(q)&&(q=L),r.deps=r.deps?r.deps.concat(q):[q],!0});define=function(b,c,d){var g,h;"string"!==typeof b&&(d=c,c=b,b=null);H(c)||(d=c,c=null);!c&&G(d)&&(c=[],d.length&&(d.toString().replace(la,"").replace(ma,function(b,d){c.push(d)}),c=(1===d.length?["require"]:["require","exports","module"]).concat(c)));if(O){if(!(g=M))P&&"interactive"===P.readyState||U(document.getElementsByTagName("script"),function(b){if("interactive"===b.readyState)return P=b}),g=P;g&&(b||
-(b=g.getAttribute("data-requiremodule")),h=F[g.getAttribute("data-requirecontext")])}(h?h.defQueue:S).push([b,c,d])};define.amd={jQuery:!0};h.exec=function(b){return eval(b)};h(r)}})(this);
diff --git a/server/sonar-web/src/main/hbs/widgets/_widget-issue-filter-limit.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/_widget-issue-filter-limit.hbs
index 6da82834180..6da82834180 100644
--- a/server/sonar-web/src/main/hbs/widgets/_widget-issue-filter-limit.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/_widget-issue-filter-limit.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/_widget-issue-filter-total.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/_widget-issue-filter-total.hbs
index 03fb4134f4a..03fb4134f4a 100644
--- a/server/sonar-web/src/main/hbs/widgets/_widget-issue-filter-total.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/_widget-issue-filter-total.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-action-plans.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-action-plans.hbs
index 07c9b17f40c..07c9b17f40c 100644
--- a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-action-plans.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-action-plans.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-assignees.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-assignees.hbs
index 494104f3ee9..494104f3ee9 100644
--- a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-assignees.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-assignees.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-resolutions.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-resolutions.hbs
index 50827ba41bb..50827ba41bb 100644
--- a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-resolutions.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-resolutions.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-severities.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-severities.hbs
index 3ca50c03da5..3ca50c03da5 100644
--- a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-severities.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-severities.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-statuses.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-statuses.hbs
index 70d5a57c765..70d5a57c765 100644
--- a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter-statuses.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter-statuses.hbs
diff --git a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter.hbs b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter.hbs
index dc78bba0232..dc78bba0232 100644
--- a/server/sonar-web/src/main/hbs/widgets/widget-issue-filter.hbs
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/templates/widget-issue-filter.hbs
diff --git a/server/sonar-web/src/main/js/widgets/issue-filter.js b/server/sonar-web/src/main/js/widgets/issue-filter/widget.js
index cea0f151b50..2fb96c7d2e7 100644
--- a/server/sonar-web/src/main/js/widgets/issue-filter.js
+++ b/server/sonar-web/src/main/js/widgets/issue-filter/widget.js
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-define(['templates/widgets'], function () {
+define(['./templates'], function () {
var $ = jQuery,
FACET_LIMIT = 15,
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/analysis_reports/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/analysis_reports/index.html.erb
index 299a2477dd4..ed62d9a203e 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/analysis_reports/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/analysis_reports/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['analysis-reports/app']);</script>
+ <script>require(['apps/analysis-reports/app']);</script>
<% end %>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/api_documentation/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/api_documentation/index.html.erb
index c46a284b206..7bfd62ed9f8 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/api_documentation/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/api_documentation/index.html.erb
@@ -1,6 +1,6 @@
<div id="api-documentation" class="search-navigator sticky"></div>
<script>
- require(['api-documentation/app'], function (App) {
+ require(['apps/api-documentation/app'], function (App) {
App.start({ el: '#api-documentation' });
});
</script>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/coding_rules/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/coding_rules/index.html.erb
index a7d9e3027b1..0f07b74d78a 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/coding_rules/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/coding_rules/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['coding-rules/app']);</script>
+ <script>require(['apps/coding-rules/app']);</script>
<% end %>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/component/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/component/index.html.erb
index f9f2b8941a9..3711e3ebb46 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/component/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/component/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['source-viewer/app']);</script>
+ <script>require(['apps/source-viewer/app']);</script>
<% end %>
<div id="source-viewer"></div>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/component_issues/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/component_issues/index.html.erb
index a4a615f8d48..f5d868da748 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/component_issues/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/component_issues/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['issues/app-context']);</script>
+ <script>require(['apps/issues/app-context']);</script>
<% end %>
<div class="issues search-navigator"></div>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/dashboard/no_dashboard.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/dashboard/no_dashboard.html.erb
index ecef10c64d7..9e5e7efc3db 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/dashboard/no_dashboard.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/dashboard/no_dashboard.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['source-viewer/app']);</script>
+ <script>require(['apps/source-viewer/app']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/drilldown/measures.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/drilldown/measures.html.erb
index 4c90ff7e1cc..a074dfb2ae1 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/drilldown/measures.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/drilldown/measures.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['drilldown/app']);</script>
+ <script>require(['apps/drilldown/app']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/groups/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/groups/index.html.erb
index 4f491935685..fbf1a00fa7e 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/groups/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/groups/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['common/select-list']);</script>
+ <script>require(['components/common/select-list']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/issues/search.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/issues/search.html.erb
index 5741c2c169a..e3fc653252b 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/issues/search.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/issues/search.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['issues/app-new']);</script>
+ <script>require(['apps/issues/app-new']);</script>
<% end %>
<div class="issues search-navigator"></div>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_head.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_head.html.erb
index f4c66cc01b4..7c8dd530efa 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_head.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_head.html.erb
@@ -36,9 +36,6 @@
$j(document).ready(function () {$j('.open-modal').modal()});
moment.lang(window.pageLang);
numeral.language(window.pageLang);
- </script>
- <script src="<%= ApplicationController.root_context -%>/js/require.js?v=<%= sonar_version -%>"></script>
- <script>
requirejs.config({
baseUrl: baseUrl + '/js',
urlArgs: 'v=<%= sonar_version -%>'
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_navbar.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_navbar.html.erb
index fd8d74e7348..21e492f553c 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_navbar.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/layouts/_navbar.html.erb
@@ -1,5 +1,5 @@
<%= render 'layouts/navbar_conf' -%>
<%= render 'layouts/recent_history' -%>
<script>
- require(['nav/app']);
+ require(['apps/nav/app']);
</script>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/markdown/help.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/markdown/help.html.erb
index 7c85dbec572..662ff4366d1 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/markdown/help.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/markdown/help.html.erb
@@ -1,6 +1,6 @@
<div id="markdown-full-help"></div>
<script>
- require(['markdown/app'], function (App) {
+ require(['apps/markdown/app'], function (App) {
App.start({ el: '#markdown-full-help' });
});
</script>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/measures/search.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/measures/search.html.erb
index bbdaaeb8b22..6d112e7e909 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/measures/search.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/measures/search.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['measures/app']);</script>
+ <script>require(['apps/measures/app']);</script>
<% end %>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/permission_templates/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/permission_templates/index.html.erb
index c246e348b57..8f7b4840298 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/permission_templates/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/permission_templates/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['common/select-list']);</script>
+ <script>require(['components/common/select-list']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/profiles/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/profiles/index.html.erb
index 3084e764ef1..da8d581d78a 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/profiles/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/profiles/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['quality-profiles/app']);</script>
+ <script>require(['apps/quality-profiles/app']);</script>
<% end %>
<div class="search-navigator" id="quality-profiles"></div>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/project_roles/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/project_roles/index.html.erb
index 2d9a8ce8a7f..b8cbab776b0 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/project_roles/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/project_roles/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['common/select-list']);</script>
+ <script>require(['components/common/select-list']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/quality_gates/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/quality_gates/index.html.erb
index 181ab0efae2..588f7c3ba25 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/quality_gates/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/quality_gates/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['quality-gate/app']);</script>
+ <script>require(['apps/quality-gate/app']);</script>
<% end %>
<div class="search-navigator" id="quality-gates"></div>
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/global.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/global.html.erb
index 8aac9062c44..947f288de71 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/global.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/global.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['common/select-list']);</script>
+ <script>require(['components/common/select-list']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/projects.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/projects.html.erb
index abc5db3d9d7..b383932b5a5 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/projects.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/roles/projects.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['common/select-list']);</script>
+ <script>require(['components/common/select-list']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/main/webapp/WEB-INF/app/views/users/index.html.erb b/server/sonar-web/src/main/webapp/WEB-INF/app/views/users/index.html.erb
index e1038037331..59ac4c82243 100644
--- a/server/sonar-web/src/main/webapp/WEB-INF/app/views/users/index.html.erb
+++ b/server/sonar-web/src/main/webapp/WEB-INF/app/views/users/index.html.erb
@@ -1,5 +1,5 @@
<% content_for :script do %>
- <script>require(['common/select-list']);</script>
+ <script>require(['components/common/select-list']);</script>
<% end %>
<div class="page">
diff --git a/server/sonar-web/src/test/js/api-documentation-spec.js b/server/sonar-web/src/test/js/api-documentation-spec.js
index 587bff3a72a..215d5c4e469 100644
--- a/server/sonar-web/src/test/js/api-documentation-spec.js
+++ b/server/sonar-web/src/test/js/api-documentation-spec.js
@@ -37,7 +37,7 @@ casper.test.begin(testName('Should Show List'), 12, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/api-documentation/app.js'], function (App) {
+ require(['apps/api-documentation/app'], function (App) {
App.start({ el: '#api-documentation' });
});
});
@@ -94,7 +94,7 @@ casper.test.begin(testName('Should Show Actions'), 10, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/api-documentation/app.js'], function (App) {
+ require(['apps/api-documentation/app'], function (App) {
App.start({ el: '#api-documentation' });
});
});
@@ -142,7 +142,7 @@ casper.test.begin(testName('Should Show Example Response'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/api-documentation/app.js'], function (App) {
+ require(['apps/api-documentation/app'], function (App) {
App.start({ el: '#api-documentation' });
});
});
@@ -182,7 +182,7 @@ casper.test.begin(testName('Web Service Permalink'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/api-documentation/app.js'], function (App) {
+ require(['apps/api-documentation/app'], function (App) {
App.start({ el: '#api-documentation' });
});
});
@@ -216,7 +216,7 @@ casper.test.begin(testName('Action Permalink'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/api-documentation/app.js'], function (App) {
+ require(['apps/api-documentation/app'], function (App) {
App.start({ el: '#api-documentation' });
});
});
diff --git a/server/sonar-web/src/test/js/coding-rules-page-active-severity-facet.js b/server/sonar-web/src/test/js/coding-rules-page-active-severity-facet.js
index 9651b9da30a..995bcc50e32 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-active-severity-facet.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-active-severity-facet.js
@@ -42,7 +42,7 @@ casper.test.begin('coding-rules-page-active-severity-facet', 7, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-available-since.js b/server/sonar-web/src/test/js/coding-rules-page-available-since.js
index 9457b01a4d8..7ebd9ec5e86 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-available-since.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-available-since.js
@@ -40,7 +40,7 @@ casper.test.begin('coding-rules-page-available-since', 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-bulk-change.js b/server/sonar-web/src/test/js/coding-rules-page-bulk-change.js
index 1bb77b479fb..a1f358d7de0 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-bulk-change.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-bulk-change.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Activate', 'Success'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -106,7 +106,7 @@ casper.test.begin(testName('Activate', 'Failed'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -170,7 +170,7 @@ casper.test.begin(testName('Filter Profiles by Language'), 4, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -224,7 +224,7 @@ casper.test.begin(testName('Change Selected Profile'), 4, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-facets.js b/server/sonar-web/src/test/js/coding-rules-page-facets.js
index e310eff294a..89e9d6335ca 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-facets.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-facets.js
@@ -52,7 +52,7 @@ casper.test.begin(testName('Characteristic'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -129,7 +129,7 @@ casper.test.begin(testName('Characteristic', 'Disable'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -233,7 +233,7 @@ casper.test.begin(testName('Template'), 4, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -302,7 +302,7 @@ casper.test.begin(testName('Language'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-header.js b/server/sonar-web/src/test/js/coding-rules-page-header.js
index 0cd140a460e..991469ac464 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-header.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-header.js
@@ -39,7 +39,7 @@ casper.test.begin(testName('Reload'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -83,7 +83,7 @@ casper.test.begin(testName('New Search'), 3, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -131,7 +131,7 @@ casper.test.begin(testName('Go Back'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-inheritance-facet.js b/server/sonar-web/src/test/js/coding-rules-page-inheritance-facet.js
index c8c03e2d001..f2d0c43907d 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-inheritance-facet.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-inheritance-facet.js
@@ -45,7 +45,7 @@ casper.test.begin('coding-rules-page-inheritance-facet', 11, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-list-actions.js b/server/sonar-web/src/test/js/coding-rules-page-list-actions.js
index fa93ee71fef..8296bf7ddcd 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-list-actions.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-list-actions.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Show Activation Details'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -92,7 +92,7 @@ casper.test.begin(testName('Activate'), 9, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -158,7 +158,7 @@ casper.test.begin(testName('Deactivate'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-no-available-profiles-for-activation.js b/server/sonar-web/src/test/js/coding-rules-page-no-available-profiles-for-activation.js
index 9dce234cda6..207a4a32eb3 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-no-available-profiles-for-activation.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-no-available-profiles-for-activation.js
@@ -40,7 +40,7 @@ casper.test.begin('coding-rules-page-no-available-profiles-for-activation', 2, f
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-quality-profile-facet.js b/server/sonar-web/src/test/js/coding-rules-page-quality-profile-facet.js
index 1abe773522f..22d457d4376 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-quality-profile-facet.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-quality-profile-facet.js
@@ -42,7 +42,7 @@ casper.test.begin('coding-rules-page-quality-profile-facet', 6, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-query-facet.js b/server/sonar-web/src/test/js/coding-rules-page-query-facet.js
index de0f78b9b31..13590c3e7e4 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-query-facet.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-query-facet.js
@@ -39,7 +39,7 @@ casper.test.begin('coding-rules-page-query-facet', 3, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-rule-should-have-permalink.js b/server/sonar-web/src/test/js/coding-rules-page-rule-should-have-permalink.js
index 5f09d634260..313b505486f 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-rule-should-have-permalink.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-rule-should-have-permalink.js
@@ -40,7 +40,7 @@ casper.test.begin('coding-rules-page-rule-permalink', 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-activate-profile.js b/server/sonar-web/src/test/js/coding-rules-page-should-activate-profile.js
index 05883c4974b..d6f2a74939b 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-activate-profile.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-activate-profile.js
@@ -41,7 +41,7 @@ casper.test.begin('coding-rules-page-should-activate-profile', 5, function (test
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-create-custom-rules.js b/server/sonar-web/src/test/js/coding-rules-page-should-create-custom-rules.js
index 0e1bd000778..e3d3e58e74b 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-create-custom-rules.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-create-custom-rules.js
@@ -44,7 +44,7 @@ casper.test.begin(testName('Create'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
@@ -104,7 +104,7 @@ casper.test.begin(testName('Reactivate'), 3, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-create-manual-rules.js b/server/sonar-web/src/test/js/coding-rules-page-should-create-manual-rules.js
index b57fed7c582..dcb9c458c42 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-create-manual-rules.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-create-manual-rules.js
@@ -42,7 +42,7 @@ casper.test.begin(testName('Create'), 3, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
@@ -96,7 +96,7 @@ casper.test.begin(testName('Reactivate'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-delete-custom-rules.js b/server/sonar-web/src/test/js/coding-rules-page-should-delete-custom-rules.js
index 0b2e3c94f7a..c24d8eacd8e 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-delete-custom-rules.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-delete-custom-rules.js
@@ -43,7 +43,7 @@ casper.test.begin('coding-rules-page-should-delete-custom-rules', 2, function (t
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-delete-manual-rules.js b/server/sonar-web/src/test/js/coding-rules-page-should-delete-manual-rules.js
index 6bff769883d..e0d06efcae5 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-delete-manual-rules.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-delete-manual-rules.js
@@ -41,7 +41,7 @@ casper.test.begin('coding-rules-page-should-delete-manual-rules', 1, function (t
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-custom-rules.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-custom-rules.js
index 6e5648a4749..248c1eec766 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-custom-rules.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-custom-rules.js
@@ -42,7 +42,7 @@ casper.test.begin('coding-rules-page-should-show-custom-rules', 3, function (tes
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-deprecated-label.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-deprecated-label.js
index 7fa5d1ad3aa..677b93b2a8d 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-deprecated-label.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-deprecated-label.js
@@ -38,7 +38,7 @@ casper.test.begin('coding-rules-page-should-show-deprecated-label', 1, function
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-details.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-details.js
index 7d6b1044400..fd71afeacf8 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-details.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-details.js
@@ -40,7 +40,7 @@ casper.test.begin('coding-rules-page-should-show-details', 20, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-empty-list.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-empty-list.js
index aee19e7d61e..fbc7d271028 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-empty-list.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-empty-list.js
@@ -38,7 +38,7 @@ casper.test.begin('coding-rules-page-should-show-empty-list', 3, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-facets.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-facets.js
index 105ae4edeec..c24f6f56f6d 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-facets.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-facets.js
@@ -38,7 +38,7 @@ casper.test.begin('coding-rules-page-should-show-facets', 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-rule-issues.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-rule-issues.js
index cb370329372..d41482af0b0 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-rule-issues.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-rule-issues.js
@@ -40,7 +40,7 @@ casper.test.begin('coding-rules-page-should-show-rule-issues', 5, function (test
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-rule.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-rule.js
index 9a2f36edc33..3ae6d7c00b3 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-rule.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-rule.js
@@ -38,7 +38,7 @@ casper.test.begin('coding-rules-page-should-show-rule', 7, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-should-show-rules.js b/server/sonar-web/src/test/js/coding-rules-page-should-show-rules.js
index b4935930133..5c21c5612a2 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-should-show-rules.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-should-show-rules.js
@@ -38,7 +38,7 @@ casper.test.begin('coding-rules-page-should-show-rules', 4, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/coding-rules-page-spec.js b/server/sonar-web/src/test/js/coding-rules-page-spec.js
index 37e78197596..64d21655a06 100644
--- a/server/sonar-web/src/test/js/coding-rules-page-spec.js
+++ b/server/sonar-web/src/test/js/coding-rules-page-spec.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Move Between Rules From Detailed View'), 3, function
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
@@ -100,7 +100,7 @@ casper.test.begin(testName('Filter Similar Rules'), 3, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/coding-rules/app.js']);
+ require(['apps/coding-rules/app']);
});
})
diff --git a/server/sonar-web/src/test/js/global-issue-filter-widget.js b/server/sonar-web/src/test/js/global-issue-filter-widget.js
index 48e79ca87ba..f4d92282615 100644
--- a/server/sonar-web/src/test/js/global-issue-filter-widget.js
+++ b/server/sonar-web/src/test/js/global-issue-filter-widget.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Unresolved Issues By Severity'), 13, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -99,7 +99,7 @@ casper.test.begin(testName('Red Issues By Severity'), 9, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -153,7 +153,7 @@ casper.test.begin(testName('All Issues By Status'), 9, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -208,7 +208,7 @@ casper.test.begin(testName('Unresolved Issues By Status'), 9, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -262,7 +262,7 @@ casper.test.begin(testName('All Issues By Resolution'), 10, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -318,7 +318,7 @@ casper.test.begin(testName('Unresolved Issues By Resolution'), 5, function (test
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -369,7 +369,7 @@ casper.test.begin(testName('Unresolved Issues By Rule'), 15, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -432,7 +432,7 @@ casper.test.begin(testName('Unresolved Issues By Project'), 15, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -495,7 +495,7 @@ casper.test.begin(testName('Unresolved Issues By Assignee'), 15, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -558,7 +558,7 @@ casper.test.begin(testName('Unresolved Unassigned Issues By Assignee'), 6, funct
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -612,7 +612,7 @@ casper.test.begin(testName('Unresolved Issues By Reporter'), 12, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -672,7 +672,7 @@ casper.test.begin(testName('Unresolved Issues By Language'), 15, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -735,7 +735,7 @@ casper.test.begin(testName('Unresolved Issues By Action Plan'), 15, function (te
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -798,7 +798,7 @@ casper.test.begin(testName('Unresolved Unplanned Issues By Action Plan'), 6, fun
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -852,7 +852,7 @@ casper.test.begin(testName('Unresolved Issues By Date'), 18, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -920,7 +920,7 @@ casper.test.begin(testName('Unresolved Issues on a Limited Period By Date'), 12,
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
diff --git a/server/sonar-web/src/test/js/issues-page-should-open-issue-permalink.js b/server/sonar-web/src/test/js/issues-page-should-open-issue-permalink.js
index b8983274ffc..e2c6841100b 100644
--- a/server/sonar-web/src/test/js/issues-page-should-open-issue-permalink.js
+++ b/server/sonar-web/src/test/js/issues-page-should-open-issue-permalink.js
@@ -45,7 +45,7 @@ casper.test.begin('issues-page-should-open-issue-permalink', 3, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
diff --git a/server/sonar-web/src/test/js/issues-page-spec.js b/server/sonar-web/src/test/js/issues-page-spec.js
index 89286655883..f7cb2ea6f74 100644
--- a/server/sonar-web/src/test/js/issues-page-spec.js
+++ b/server/sonar-web/src/test/js/issues-page-spec.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Base'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -104,7 +104,7 @@ casper.test.begin(testName('Issue Box', 'Check Elements'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -154,7 +154,7 @@ casper.test.begin(testName('Issue Box', 'Tags'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -205,7 +205,7 @@ casper.test.begin(testName('Issue Box', 'Transitions'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -247,7 +247,7 @@ casper.test.begin(testName('Issue Box', 'Rule'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -293,7 +293,7 @@ casper.test.begin(testName('File-Level Issues'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -332,7 +332,7 @@ casper.test.begin(testName('Severity Facet'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -372,7 +372,7 @@ casper.test.begin(testName('Bulk Change'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
@@ -411,7 +411,7 @@ casper.test.begin(testName('Filter Similar Issues'), 12, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/issues/app-new.js']);
+ require(['apps/issues/app-new']);
});
})
diff --git a/server/sonar-web/src/test/js/markdown-spec.js b/server/sonar-web/src/test/js/markdown-spec.js
index ded3ed6e97d..fa9bedfd530 100644
--- a/server/sonar-web/src/test/js/markdown-spec.js
+++ b/server/sonar-web/src/test/js/markdown-spec.js
@@ -36,7 +36,7 @@ casper.test.begin(testName(), 8, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/markdown/app.js'], function (App) {
+ require(['apps/markdown/app'], function (App) {
App.start({ el: 'body' });
});
});
diff --git a/server/sonar-web/src/test/js/nav-spec.js b/server/sonar-web/src/test/js/nav-spec.js
index f5c21461e27..2300df4053a 100644
--- a/server/sonar-web/src/test/js/nav-spec.js
+++ b/server/sonar-web/src/test/js/nav-spec.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Global Spaces'), 8, function (test) {
casper.evaluate(function () {
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -87,7 +87,7 @@ casper.test.begin(testName('Global Dashboards'), 12, function (test) {
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -141,7 +141,7 @@ casper.test.begin(testName('Global Plugin Pages'), 12, function (test) {
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -193,7 +193,7 @@ casper.test.begin(testName('Login'), 3, function (test) {
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -238,7 +238,7 @@ casper.test.begin(testName('Search'), 24, function (test) {
window.localStorage.setItem('sonar_recent_history',
'[{"key":"localhistoryproject","name":"Local History Project","icon":"trk"}]');
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -333,7 +333,7 @@ casper.test.begin(testName('Context'), function (test) {
window.navbarOptions = new Backbone.Model();
window.navbarOptions.set({ space: 'component', componentKey: 'org.codehaus.sonar-plugins.java:java' });
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
diff --git a/server/sonar-web/src/test/js/project-issue-filter-widget.js b/server/sonar-web/src/test/js/project-issue-filter-widget.js
index 0d248807d8b..083065c01e3 100644
--- a/server/sonar-web/src/test/js/project-issue-filter-widget.js
+++ b/server/sonar-web/src/test/js/project-issue-filter-widget.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Unresolved Issues By Severity'), 13, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -101,7 +101,7 @@ casper.test.begin(testName('Unresolved Issues By Date'), 18, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -171,7 +171,7 @@ casper.test.begin(testName('Unresolved Issues By Severity With Differential Peri
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
@@ -234,7 +234,7 @@ casper.test.begin(testName('Unresolved Issues By Severity With IGNORED Different
.then(function () {
casper.evaluate(function () {
- require(['/js/widgets/issue-filter.js'], function (IssueFilter) {
+ require(['widgets/issue-filter/widget'], function (IssueFilter) {
window.requestMessages().done(function () {
new IssueFilter({
el: '#issue-filter-widget',
diff --git a/server/sonar-web/src/test/js/quality-gates-spec.js b/server/sonar-web/src/test/js/quality-gates-spec.js
index b892b5527a3..ec78d267a17 100644
--- a/server/sonar-web/src/test/js/quality-gates-spec.js
+++ b/server/sonar-web/src/test/js/quality-gates-spec.js
@@ -39,7 +39,7 @@ casper.test.begin('Quality Gates', function suite (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-gate/app.js']);
+ require(['apps/quality-gate/app']);
});
})
diff --git a/server/sonar-web/src/test/js/quality-profiles.js b/server/sonar-web/src/test/js/quality-profiles.js
index 56aa831f751..2200aa97b67 100644
--- a/server/sonar-web/src/test/js/quality-profiles.js
+++ b/server/sonar-web/src/test/js/quality-profiles.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('Should Show List'), 9, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -85,7 +85,7 @@ casper.test.begin(testName('Should Filter List By Language'), 15, function (test
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -154,7 +154,7 @@ casper.test.begin(testName('Should Show Details'), 10, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -209,7 +209,7 @@ casper.test.begin(testName('Should Show Details', 'Admin'), 10, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -263,7 +263,7 @@ casper.test.begin(testName('Should Show Inheritance Details'), 10, function (tes
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -317,7 +317,7 @@ casper.test.begin(testName('Should Show Selected Projects'), 2, function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -365,7 +365,7 @@ casper.test.begin(testName('Should Move Between Profiles'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -421,7 +421,7 @@ casper.test.begin(testName('Copy Profile'), 5, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -484,7 +484,7 @@ casper.test.begin(testName('Rename Profile'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -547,7 +547,7 @@ casper.test.begin(testName('Make Profile Default'), 4, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -604,7 +604,7 @@ casper.test.begin(testName('Delete Profile'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -662,7 +662,7 @@ casper.test.begin(testName('Create Profile'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -718,7 +718,7 @@ casper.test.begin(testName('Restore Profile'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -768,7 +768,7 @@ casper.test.begin(testName('Importers'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -833,7 +833,7 @@ casper.test.begin(testName('Restore Built-in Profiles'), 3, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -893,7 +893,7 @@ casper.test.begin(testName('Change Parent'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
jQuery.ajaxSetup({ dataType: 'json' });
});
})
@@ -954,7 +954,7 @@ casper.test.begin(testName('Permalink'), 9, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -1006,7 +1006,7 @@ casper.test.begin(testName('Changelog'), 22, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -1098,7 +1098,7 @@ casper.test.begin(testName('Changelog Permalink'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -1145,7 +1145,7 @@ casper.test.begin(testName('Comparison'), 12, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
@@ -1204,7 +1204,7 @@ casper.test.begin(testName('Comparison Permalink'), 4, function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/quality-profiles/app.js']);
+ require(['apps/quality-profiles/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-coverage.js b/server/sonar-web/src/test/js/source-viewer-coverage.js
index 264dfae6a5a..9f15220e5bf 100644
--- a/server/sonar-web/src/test/js/source-viewer-coverage.js
+++ b/server/sonar-web/src/test/js/source-viewer-coverage.js
@@ -44,7 +44,7 @@ casper.test.begin(testName(), 12, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-create-manual-issue.js b/server/sonar-web/src/test/js/source-viewer-create-manual-issue.js
index ad382aff6ce..ace652101fd 100644
--- a/server/sonar-web/src/test/js/source-viewer-create-manual-issue.js
+++ b/server/sonar-web/src/test/js/source-viewer-create-manual-issue.js
@@ -43,7 +43,7 @@ casper.test.begin(testName('source-viewer-create-manual-issue'), function (test)
.then(function () {
casper.evaluate(function () {
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-duplications.js b/server/sonar-web/src/test/js/source-viewer-duplications.js
index 809ed6ee6e1..e24fabfca75 100644
--- a/server/sonar-web/src/test/js/source-viewer-duplications.js
+++ b/server/sonar-web/src/test/js/source-viewer-duplications.js
@@ -42,7 +42,7 @@ casper.test.begin(testName(), 5, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -99,7 +99,7 @@ casper.test.begin(testName('In Removed Component'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-favorite-spec.js b/server/sonar-web/src/test/js/source-viewer-favorite-spec.js
index 50f1cb8f9db..3bc39b656ef 100644
--- a/server/sonar-web/src/test/js/source-viewer-favorite-spec.js
+++ b/server/sonar-web/src/test/js/source-viewer-favorite-spec.js
@@ -41,7 +41,7 @@ casper.test.begin(testName('Mark as Favorite'), function (test) {
.then(function () {
casper.evaluate(function () {
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -84,7 +84,7 @@ casper.test.begin(testName('Don\'t Show Favorite If Not Logged In'), function (t
.then(function () {
casper.evaluate(function () {
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-issues.js b/server/sonar-web/src/test/js/source-viewer-issues.js
index 46a2605277d..29808d1741c 100644
--- a/server/sonar-web/src/test/js/source-viewer-issues.js
+++ b/server/sonar-web/src/test/js/source-viewer-issues.js
@@ -44,7 +44,7 @@ casper.test.begin(testName(), 16, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-scm.js b/server/sonar-web/src/test/js/source-viewer-scm.js
index 047e08a9309..200419bbd9b 100644
--- a/server/sonar-web/src/test/js/source-viewer-scm.js
+++ b/server/sonar-web/src/test/js/source-viewer-scm.js
@@ -42,7 +42,7 @@ casper.test.begin(testName('SCM'), 4, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-should-not-show-source-if-no-permission.js b/server/sonar-web/src/test/js/source-viewer-should-not-show-source-if-no-permission.js
index 5cbec7ccd41..2c7de6dbb0c 100644
--- a/server/sonar-web/src/test/js/source-viewer-should-not-show-source-if-no-permission.js
+++ b/server/sonar-web/src/test/js/source-viewer-should-not-show-source-if-no-permission.js
@@ -40,7 +40,7 @@ casper.test.begin(testName('source-viewer-should-not-show-source-if-no-permissio
.then(function () {
casper.evaluate(function () {
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/source-viewer-spec.js b/server/sonar-web/src/test/js/source-viewer-spec.js
index 17a361e915c..523e08cb3c4 100644
--- a/server/sonar-web/src/test/js/source-viewer-spec.js
+++ b/server/sonar-web/src/test/js/source-viewer-spec.js
@@ -41,7 +41,7 @@ casper.test.begin(testName('Base'), 14, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -92,7 +92,7 @@ casper.test.begin(testName('Decoration'), 8, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -148,7 +148,7 @@ casper.test.begin(testName('Test File'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -183,7 +183,7 @@ casper.test.begin(testName('Highlight Usages'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -227,7 +227,7 @@ casper.test.begin(testName('Line Permalink'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -270,7 +270,7 @@ casper.test.begin(testName('Link to Raw'), 1, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -316,7 +316,7 @@ casper.test.begin(testName('Details'), 15, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -387,7 +387,7 @@ casper.test.begin(testName('Details', 'Tests'), 39, function (test) {
.then(function () {
casper.evaluate(function () {
window.file = { uuid: 'uuid', key: 'key' };
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
diff --git a/server/sonar-web/src/test/js/workspace.js b/server/sonar-web/src/test/js/workspace.js
index 47ce6bd3839..ee2dc2b3aa4 100644
--- a/server/sonar-web/src/test/js/workspace.js
+++ b/server/sonar-web/src/test/js/workspace.js
@@ -41,7 +41,7 @@ casper.test.begin(testName('Open From Component Viewer'), 8, function (test) {
.then(function () {
casper.evaluate(function () {
window.localStorage.removeItem('sonarqube-workspace');
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -103,7 +103,7 @@ casper.test.begin(testName('Load From Local Storage'), 7, function (test) {
'[{"uuid":"12345","type":"component","name":"Cache.java","q":"FIL"}]');
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -156,7 +156,7 @@ casper.test.begin(testName('Close From Nav'), 2, function (test) {
'[{"uuid":"12345","type":"component","name":"Cache.java","q":"FIL"}]');
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
@@ -198,7 +198,7 @@ casper.test.begin(testName('Minimize'), 2, function (test) {
.then(function () {
casper.evaluate(function () {
window.localStorage.removeItem('sonarqube-workspace');
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -246,7 +246,7 @@ casper.test.begin(testName('Full Screen'), 6, function (test) {
.then(function () {
casper.evaluate(function () {
window.localStorage.removeItem('sonarqube-workspace');
- require(['/js/source-viewer/app.js']);
+ require(['apps/source-viewer/app']);
});
})
@@ -302,7 +302,7 @@ casper.test.begin(testName('Rule'), 3, function (test) {
'[{"key":"common-java:InsufficientBranchCoverage","type":"rule"}]');
window.SS.isUserAdmin = false;
window.navbarOptions = new Backbone.Model();
- require(['/js/nav/app.js']);
+ require(['apps/nav/app']);
});
})
diff --git a/server/sonar-web/src/test/server-coverage.js b/server/sonar-web/src/test/server-coverage.js
index 953d08bac14..a6a46527f57 100644
--- a/server/sonar-web/src/test/server-coverage.js
+++ b/server/sonar-web/src/test/server-coverage.js
@@ -35,7 +35,7 @@ app.set('view engine', 'jade');
// Coverage
-var staticPath = path.join(__dirname, '../main/webapp');
+var staticPath = path.join(__dirname, '../../build');
im.hookLoader(staticPath);
app.use(im.createClientHandler(staticPath, {
matcher: function (req) {
diff --git a/server/sonar-web/src/test/server.js b/server/sonar-web/src/test/server.js
index 2d099f0d1d4..01f952d0dd0 100644
--- a/server/sonar-web/src/test/server.js
+++ b/server/sonar-web/src/test/server.js
@@ -29,7 +29,7 @@ app.set('view engine', 'jade');
// Static
-var staticPath = path.join(__dirname, '../main/webapp');
+var staticPath = path.join(__dirname, '../../build');
app.use('/js', express.static(path.join(staticPath, 'js')));
app.use('/css', express.static(path.join(staticPath, 'css')));
diff --git a/server/sonar-web/src/test/views/layouts/main.jade b/server/sonar-web/src/test/views/layouts/main.jade
index c53ddbdcaa4..47f6027f828 100644
--- a/server/sonar-web/src/test/views/layouts/main.jade
+++ b/server/sonar-web/src/test/views/layouts/main.jade
@@ -3,52 +3,49 @@ html
meta(http-equiv='Content-Type', content='text/html; charset=UTF-8')
link(href='/css/sonar.css', rel='stylesheet', media='all')
- script(src='/js/translate.js')
- script(src='/js/third-party/jquery.js')
- script(src='/js/third-party/jquery-ui.js')
- script(src='/js/third-party/d3.js')
- script(src='/js/third-party/latinize.js')
- script(src='/js/third-party/underscore.js')
- script(src='/js/third-party/backbone.js')
- script(src='/js/third-party/backbone.marionette.js')
- script(src='/js/third-party/handlebars.js')
- script(src='/js/third-party/underscore.js')
- script(src='/js/third-party/select2.js')
- script(src='/js/third-party/keymaster.js')
- script(src='/js/third-party/moment.js')
- script(src='/js/third-party/numeral.js')
- script(src='/js/third-party/numeral-languages.js')
- script(src='/js/third-party/bootstrap/tooltip.js')
- script(src='/js/third-party/bootstrap/dropdown.js')
- script(src='/js/select2-jquery-ui-fix.js')
- script(src='/js/widgets/base.js')
- script(src='/js/widgets/widget.js')
- script(src='/js/widgets/bubble-chart.js')
- script(src='/js/widgets/timeline.js')
- script(src='/js/widgets/stack-area.js')
- script(src='/js/widgets/pie-chart.js')
- script(src='/js/widgets/histogram.js')
- script(src='/js/widgets/word-cloud.js')
- script(src='/js/widgets/tag-cloud.js')
- script(src='/js/widgets/treemap.js')
- script(src='/js/graphics/pie-chart.js')
- script(src='/js/graphics/barchart.js')
- script(src='/js/sortable.js')
- script(src='/js/common/inputs.js')
- script(src='/js/common/dialogs.js')
- script(src='/js/common/processes.js')
- script(src='/js/common/jquery-isolated-scroll.js')
- script(src='/js/common/handlebars-extensions.js')
- script(src='/js/application.js')
- script(src='/js/csv.js')
- script(src='/js/dashboard.js')
- script(src='/js/recent-history.js')
+ script(src='/js/libs/translate.js')
+ script(src='/js/libs/third-party/jquery.js')
+ script(src='/js/libs/third-party/jquery-ui.js')
+ script(src='/js/libs/third-party/d3.js')
+ script(src='/js/libs/third-party/latinize.js')
+ script(src='/js/libs/third-party/underscore.js')
+ script(src='/js/libs/third-party/backbone.js')
+ script(src='/js/libs/third-party/backbone.marionette.js')
+ script(src='/js/libs/third-party/handlebars.js')
+ script(src='/js/libs/third-party/underscore.js')
+ script(src='/js/libs/third-party/select2.js')
+ script(src='/js/libs/third-party/keymaster.js')
+ script(src='/js/libs/third-party/moment.js')
+ script(src='/js/libs/third-party/numeral.js')
+ script(src='/js/libs/third-party/numeral-languages.js')
+ script(src='/js/libs/third-party/bootstrap/tooltip.js')
+ script(src='/js/libs/third-party/bootstrap/dropdown.js')
+ script(src='/js/libs/select2-jquery-ui-fix.js')
+ script(src='/js/libs/widgets/base.js')
+ script(src='/js/libs/widgets/widget.js')
+ script(src='/js/libs/widgets/bubble-chart.js')
+ script(src='/js/libs/widgets/timeline.js')
+ script(src='/js/libs/widgets/stack-area.js')
+ script(src='/js/libs/widgets/pie-chart.js')
+ script(src='/js/libs/widgets/histogram.js')
+ script(src='/js/libs/widgets/word-cloud.js')
+ script(src='/js/libs/widgets/tag-cloud.js')
+ script(src='/js/libs/widgets/treemap.js')
+ script(src='/js/libs/graphics/pie-chart.js')
+ script(src='/js/libs/graphics/barchart.js')
+ script(src='/js/libs/sortable.js')
+ script(src='/js/components/common/inputs.js')
+ script(src='/js/components/common/dialogs.js')
+ script(src='/js/components/common/processes.js')
+ script(src='/js/components/common/jquery-isolated-scroll.js')
+ script(src='/js/components/common/handlebars-extensions.js')
+ script(src='/js/libs/application.js')
+ script(src='/js/libs/csv.js')
+ script(src='/js/libs/dashboard.js')
+ script(src='/js/libs/recent-history.js')
+ script(src='/js/libs/require.js')
- script(src='/js/require.js')
- script.
- requirejs.config({ baseUrl: '/js' });
-
- script(src='/js/third-party/jquery.mockjax.js')
+ script(src='/js/libs/third-party/jquery.mockjax.js')
script.
var baseUrl = '';
var $j = jQuery.noConflict();
@@ -56,6 +53,9 @@ html
jQuery.mockjaxSettings.contentType = 'text/json';
jQuery.mockjaxSettings.responseTime = 50;
jQuery(document).ready(function () { $j('.open-modal').modal(); });
+
+ script.
+ requirejs.config({ baseUrl: baseUrl + '/js' });
block header
body
#body