// Copyright 2020 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

module.exports = function main(
  line = 'tampa, 106, january, null, null, 08-17-2019'
) {
  // [START composer_transform_csv_to_json]

  function transformCSVtoJSON(line) {
    const values = line.split(',');
    const properties = [
      'location',
      'average_temperature',
      'month',
      'inches_of_rain',
      'is_current',
      'latest_measurement',
    ];
    const weatherInCity = {};

    for (let count = 0; count < values.length; count++) {
      if (values[count] !== 'null') {
        weatherInCity[properties[count]] = values[count];
      }
    }

    const jsonString = JSON.stringify(weatherInCity);
    return jsonString;
  }

  // [END composer_transform_csv_to_json]

  return transformCSVtoJSON(line);
};

@@ -582,16 +582,168 @@
 cense.%0A%0A
+//Note to maintainers: Skipping these lint rules%0A//Is required to make code run in Dataflow%0A/* eslint-disable func-style */%0A/* eslint-disable no-var */%0A
 module.e
@@ -912,21 +912,19 @@
 ) %7B%0A    
-const
+var
  values 
@@ -946,21 +946,19 @@
 ');%0A    
-const
+var
  propert
@@ -1110,21 +1110,19 @@
  %5D;%0A    
-const
+var
  weather
@@ -1148,11 +1148,11 @@
 or (
-let
+var
  cou

revert #2383 for composer code (#2531)