query.editor.html 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. <div class="tight-form-container-no-item-borders">
  2. <div class="tight-form">
  3. <ul class="tight-form-list pull-right">
  4. <li ng-show="parserError" class="tight-form-item">
  5. <a bs-tooltip="parserError" style="color: rgb(229, 189, 28)" role="menuitem">
  6. <i class="fa fa-warning"></i>
  7. </a>
  8. </li>
  9. <li class="tight-form-item">
  10. <a class="pointer" tabindex="1" ng-click="toggleQueryMode()">
  11. <i class="fa fa-pencil"></i>
  12. </a>
  13. </li>
  14. <li class="tight-form-item">
  15. <div class="dropdown">
  16. <a class="pointer dropdown-toggle"
  17. data-toggle="dropdown"
  18. tabindex="1">
  19. <i class="fa fa-bars"></i>
  20. </a>
  21. <ul class="dropdown-menu pull-right" role="menu">
  22. <li role="menuitem">
  23. <a tabindex="1"
  24. ng-click="duplicate()">
  25. Duplicate
  26. </a>
  27. </li>
  28. <li role="menuitem">
  29. <a tabindex="1"
  30. ng-click="moveMetricQuery($index, $index-1)">
  31. Move up
  32. </a>
  33. </li>
  34. <li role="menuitem">
  35. <a tabindex="1"
  36. ng-click="moveMetricQuery($index, $index+1)">
  37. Move down
  38. </a>
  39. </li>
  40. </ul>
  41. </div>
  42. </li>
  43. <li class="tight-form-item last">
  44. <a class="pointer" tabindex="1" ng-click="removeDataQuery(target)">
  45. <i class="fa fa-remove"></i>
  46. </a>
  47. </li>
  48. </ul>
  49. <ul class="tight-form-list">
  50. <li class="tight-form-item" style="min-width: 15px; text-align: center">
  51. {{target.refId}}
  52. </li>
  53. <li>
  54. <a class="tight-form-item"
  55. ng-click="target.hide = !target.hide; get_data();"
  56. role="menuitem">
  57. <i class="fa fa-eye"></i>
  58. </a>
  59. </li>
  60. </ul>
  61. <input type="text" class="tight-form-clear-input" style="width: 80%" ng-model="target.query" give-focus="target.rawQuery" spellcheck='false' ng-model-onblur ng-change="get_data()" ng-show="target.rawQuery"/>
  62. <ul class="tight-form-list" role="menu" ng-hide="target.rawQuery">
  63. <li class="tight-form-item query-keyword" style="width: 75px;">
  64. SELECT
  65. </li>
  66. <li class="dropdown" ng-repeat="field in target.fields">
  67. <span influxdb-func-editor field="field" get-fields="getFields()" on-change="fieldChanged(field)" class="tight-form-item">
  68. </span>
  69. </li>
  70. <li>
  71. <metric-segment segment="addFieldSegment" get-alt-segments="getFieldSegments()" on-value-changed="addField()"></metric-segment>
  72. </li>
  73. </ul>
  74. <div class="clearfix"></div>
  75. </div>
  76. <div class="tight-form" ng-hide="target.rawQuery">
  77. <ul class="tight-form-list">
  78. <li class="tight-form-item query-keyword tight-form-align" style="width: 75px;">
  79. FROM
  80. </li>
  81. <li>
  82. <metric-segment segment="measurementSegment" get-alt-segments="getMeasurements()" on-value-changed="measurementChanged()"></metric-segment>
  83. </li>
  84. </ul>
  85. <div class="clearfix"></div>
  86. </div>
  87. <div class="tight-form" ng-hide="target.rawQuery">
  88. <ul class="tight-form-list">
  89. <li class="tight-form-item query-keyword tight-form-align" style="width: 75px;">
  90. WHERE
  91. </li>
  92. <li ng-repeat="segment in tagSegments">
  93. <metric-segment segment="segment" get-alt-segments="getTagsOrValues(segment, $index)" on-value-changed="tagSegmentUpdated(segment, $index)"></metric-segment>
  94. </li>
  95. </ul>
  96. <div class="clearfix"></div>
  97. </div>
  98. <div class="tight-form">
  99. <ul class="tight-form-list" ng-hide="target.rawQuery">
  100. <li class="tight-form-item query-keyword tight-form-align">
  101. GROUP BY
  102. </li>
  103. <li class="tight-form-item">
  104. time($interval)
  105. </li>
  106. <li ng-repeat="segment in groupBySegments">
  107. <metric-segment segment="segment" get-alt-segments="getGroupByTagSegments(segment, 0)" on-value-changed="groupByTagUpdated(segment, $index)"></metric-segment>
  108. </li>
  109. <li class="dropdown">
  110. <a class="tight-form-item pointer" data-toggle="dropdown" bs-tooltip="'Insert missing values, important when stacking'" data-placement="right">
  111. <span ng-show="target.fill">
  112. fill ({{target.fill}})
  113. </span>
  114. <span ng-show="!target.fill">
  115. no fill
  116. </span>
  117. </a>
  118. <ul class="dropdown-menu">
  119. <li><a ng-click="target.fill = ''">no fill</a></li>
  120. <li><a ng-click="target.fill = '0'">fill (0)</a></li>
  121. <li><a ng-click="target.fill = 'null'">fill (null)</a></li>
  122. <li><a ng-click="target.fill = 'none'">fill (none)</a></li>
  123. <li><a ng-click="target.fill = 'previous'">fill (previous)</a></li>
  124. </ul>
  125. </li>
  126. </ul>
  127. <ul class="tight-form-list pull-right">
  128. <li class="tight-form-item">
  129. Alias pattern
  130. </li>
  131. <li>
  132. <input type="text" class="input-medium tight-form-input"
  133. ng-model="target.alias" spellcheck='false' placeholder="alias"
  134. ng-model-onblur ng-change="get_data()"></input>
  135. </li>
  136. </ul>
  137. <div class="clearfix"></div>
  138. </div>
  139. </div>
  140. </div>