<commit_before>define([
  'jquery',
  'rivets',
  'models/form',
  'views/jqm/form',
  'views/jqm/page',
  'views/jqm/element',
  'views/jqm/elements/hidden',
  'views/jqm/elements/text',
  'views/jqm/elements/textarea'
], function(
  $,
  rivets,
  Form,
  FormView,
  PageView,
  ElementView,
  HiddenElementView,
  TextElementView,
  TextAreaElementView
) {
  rivets.configure({
    prefix: 'rv',
    adapter: {
      subscribe: function(obj, keypath, callback) {
        console.log('rivets.subscribe', arguments);
        callback.wrapped = function(m, v) { callback(v) };
        obj.on('change:' + keypath, callback.wrapped);
      },
      unsubscribe: function(obj, keypath, callback) {
        console.log('rivets.unsubscribe', arguments);
        obj.off('change:' + keypath, callback.wrapped);
      },
      read: function(obj, keypath) {
        console.log('rivets.read', arguments);
        return obj.get(keypath);
      },
      publish: function(obj, keypath, value) {
        console.log('rivets.publish', arguments);
        obj.set(keypath, value);
      }
    }
  });

  return {
    Form: FormView,
    Page: PageView,
    Element: ElementView,
    HiddenElement: HiddenElementView,
    TextElement: TextElementView,
    TextAreaElement: TextAreaElementView
  };
});<commit_msg>simplify Rivets JS adapter code for Backbone JS, remove debug statements<commit_after>define([
  'jquery',
  'rivets',
  'models/form',
  'views/jqm/form',
  'views/jqm/page',
  'views/jqm/element',
  'views/jqm/elements/hidden',
  'views/jqm/elements/text',
  'views/jqm/elements/textarea'
], function(
  $,
  rivets,
  Form,
  FormView,
  PageView,
  ElementView,
  HiddenElementView,
  TextElementView,
  TextAreaElementView
) {
  rivets.configure({
    prefix: 'rv',
    adapter: {
      subscribe: function(obj, keypath, callback) {
        obj.on('change:' + keypath, callback);
      },
      unsubscribe: function(obj, keypath, callback) {
        obj.off('change:' + keypath, callback);
      },
      read: function(obj, keypath) {
        return obj.get(keypath);
      },
      publish: function(obj, keypath, value) {
        obj.set(keypath, value);
      }
    }
  });

  return {
    Form: FormView,
    Page: PageView,
    Element: ElementView,
    HiddenElement: HiddenElementView,
    TextElement: TextElementView,
    TextAreaElement: TextAreaElementView
  };
});
{'fraction_non_alphanumeric': 0.1429769392033543, 'fraction_numerical': 0.0, 'mean_word_length': 2.9700499168053245, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5851730', 'n_tokens_mistral': 825, 'n_tokens_neox': 784, 'n_words': 144}