)]}'
{
  "commit": "74ea24f7dcfe4a3b5dbb624e7e926c147668f3da",
  "tree": "8490134bc5e9a75bdb7bffb7a0854ea66403263f",
  "parents": [
    "c21247a0ebba7c59be69e938964ecdf75f10917c"
  ],
  "author": {
    "name": "zplata",
    "email": "hello@rive.app",
    "time": "Mon Oct 09 23:14:13 2023 +0000"
  },
  "committer": {
    "name": "zplata",
    "email": "hello@rive.app",
    "time": "Mon Oct 09 23:14:13 2023 +0000"
  },
  "message": "feat: add count and query APIs for events and text runs at the Artboard level, and expose in WASM\n\nWill add some tests, but want to get validation before I go much further that this is the approach we want to take to expose Events and Text Runs for a given artboard at the `rive::Artboard` level, similar to the APIs for getting the linear animation/state machine from an `Artboard`. Adding to `ArtboardImporter` seemed most appropriate but not sure there\u0027s any caveats or better ways to plumb through adding the events/runs. Maybe @luigi-rosso @philter ?\n\nDecided on exposing `textValueRunCount()`/`textValueRunAt()` and `eventCount()`/`eventAt()` APIs on the Artboard at the cpp level to follow existing patterns. This should make it simple for other runtimes to adopt too. Another alternative is just doing an empty `find\u003crive::TextValueRun\u003e()`/`find\u003crive::Event\u003e()` call at each runtime level which looks like it returns a list of all the objects.\n\nTODO:\n- [x] Add tests\n- [x] Check WASM size before/after new bindings\n\nDiffs\u003d\n22077beda feat: add count and query APIs for events and text runs at the Artboard level, and expose in WASM (#6043)\n\nCo-authored-by: Zachary Plata \u003cplata.zach@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "aec9b2c2577acc510e7c9ff2fef20d5c01e3a5cc",
      "old_mode": 33188,
      "old_path": ".rive_head",
      "new_id": "8da8b8d65cb336d72facc923c01acb69943f484e",
      "new_mode": 33188,
      "new_path": ".rive_head"
    },
    {
      "type": "modify",
      "old_id": "b53430c872c5138ec5e9e9f2202334960f8ade4c",
      "old_mode": 33188,
      "old_path": "include/rive/artboard.hpp",
      "new_id": "e21e34a3c0cf5fdceba82caa8aa049b8dd3c51f1",
      "new_mode": 33188,
      "new_path": "include/rive/artboard.hpp"
    },
    {
      "type": "modify",
      "old_id": "743c6c537299c72b7b2f259a2e2090e6e793f89b",
      "old_mode": 33188,
      "old_path": "include/rive/event.hpp",
      "new_id": "906f5629e5fe9a65afad18a07d95d6c133166cd3",
      "new_mode": 33188,
      "new_path": "include/rive/event.hpp"
    },
    {
      "type": "modify",
      "old_id": "a6fc95528ba8d1baa607992aec2ba220e5c27df1",
      "old_mode": 33188,
      "old_path": "include/rive/importers/artboard_importer.hpp",
      "new_id": "b9fba12b8ca932e786d91fe2bcd4f857a57e2250",
      "new_mode": 33188,
      "new_path": "include/rive/importers/artboard_importer.hpp"
    },
    {
      "type": "modify",
      "old_id": "3bdca17ba001854ad5b7118fb6fc0de0b485f0bb",
      "old_mode": 33188,
      "old_path": "include/rive/text/text_value_run.hpp",
      "new_id": "0807b349fce50eb8661625538ce07b073e20acf4",
      "new_mode": 33188,
      "new_path": "include/rive/text/text_value_run.hpp"
    },
    {
      "type": "modify",
      "old_id": "8b3721552f372724adecf85d49cf80bb6029ac39",
      "old_mode": 33188,
      "old_path": "src/artboard.cpp",
      "new_id": "457143b510d71f2336a19db71a99160648d83a97",
      "new_mode": 33188,
      "new_path": "src/artboard.cpp"
    },
    {
      "type": "modify",
      "old_id": "84be0eee16350aec484c5f16a6768668ec7f60a8",
      "old_mode": 33188,
      "old_path": "src/event.cpp",
      "new_id": "39dade4e3de6be2bd238d6e163b144079f1a19a0",
      "new_mode": 33188,
      "new_path": "src/event.cpp"
    },
    {
      "type": "modify",
      "old_id": "db008ba8d0f06b31b6aec5ec1b00a3c8940ff3ff",
      "old_mode": 33188,
      "old_path": "src/importers/artboard_importer.cpp",
      "new_id": "ccb524c33a85fe03f8552f478f73043d71f91da1",
      "new_mode": 33188,
      "new_path": "src/importers/artboard_importer.cpp"
    },
    {
      "type": "modify",
      "old_id": "f46c83b155e8de6c73535dd97b0f254d667b514d",
      "old_mode": 33188,
      "old_path": "src/text/text_value_run.cpp",
      "new_id": "5093ca264c20e01e3df314e34f15673d2ee73c9c",
      "new_mode": 33188,
      "new_path": "src/text/text_value_run.cpp"
    },
    {
      "type": "modify",
      "old_id": "b801a031aa14c7b30743acbdaebf1391590c544b",
      "old_mode": 33188,
      "old_path": "test/state_machine_event_test.cpp",
      "new_id": "1b06681a0df4e45491a5648671fed24858263425",
      "new_mode": 33188,
      "new_path": "test/state_machine_event_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "701fcb2a6ef56f8c88e76935cb3a3bfb29d385e8",
      "old_mode": 33188,
      "old_path": "test/text_test.cpp",
      "new_id": "c009a055d97c1795d75985f338191bc6906144cf",
      "new_mode": 33188,
      "new_path": "test/text_test.cpp"
    }
  ]
}
