kepler.gl 3.1.7 → 3.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/dist/src/actions/src/ui-state-actions.d.ts +0 -16
  2. package/dist/src/actions/src/vis-state-actions.d.ts +26 -0
  3. package/dist/src/ai-assistant/src/constants.d.ts +2 -5
  4. package/dist/src/ai-assistant/src/tools/geo-tools.d.ts +76 -25
  5. package/dist/src/ai-assistant/src/tools/tools.d.ts +76 -25
  6. package/dist/src/components/src/side-panel/add-by-dataset-button.d.ts +0 -1
  7. package/dist/src/duckdb/src/table/duckdb-table-utils.d.ts +8 -9
  8. package/dist/src/localization/src/translations/ca.d.ts +2 -0
  9. package/dist/src/localization/src/translations/cn.d.ts +2 -0
  10. package/dist/src/localization/src/translations/en.d.ts +2 -0
  11. package/dist/src/localization/src/translations/es.d.ts +2 -0
  12. package/dist/src/localization/src/translations/fi.d.ts +2 -0
  13. package/dist/src/localization/src/translations/ja.d.ts +2 -0
  14. package/dist/src/localization/src/translations/pt.d.ts +2 -0
  15. package/dist/src/localization/src/translations/ru.d.ts +2 -0
  16. package/dist/src/reducers/src/ui-state-updaters.d.ts +0 -10
  17. package/dist/src/reducers/src/vis-state-updaters.d.ts +16 -1
  18. package/dist/src/reducers/src/vis-state.d.ts +4 -0
  19. package/dist/src/schemas/src/vis-state-schema.d.ts +1 -0
  20. package/package.json +2 -2
  21. package/src/actions/dist/ui-state-actions.d.ts +0 -16
  22. package/src/actions/dist/ui-state-actions.js +2 -17
  23. package/src/actions/dist/vis-state-actions.d.ts +26 -0
  24. package/src/actions/dist/vis-state-actions.js +25 -1
  25. package/src/actions/package.json +8 -8
  26. package/src/actions/src/ui-state-actions.ts +0 -22
  27. package/src/actions/src/vis-state-actions.ts +30 -0
  28. package/src/ai-assistant/dist/components/ai-assistant-component.js +63 -4
  29. package/src/ai-assistant/dist/components/ai-assistant-config.js +55 -17
  30. package/src/ai-assistant/dist/constants.d.ts +2 -5
  31. package/src/ai-assistant/dist/constants.js +3 -21
  32. package/src/ai-assistant/dist/reducers/index.js +2 -2
  33. package/src/ai-assistant/dist/tools/geo-tools.d.ts +76 -25
  34. package/src/ai-assistant/dist/tools/geo-tools.js +44 -8
  35. package/src/ai-assistant/dist/tools/lisa-tool.js +17 -6
  36. package/src/ai-assistant/dist/tools/tools.d.ts +76 -25
  37. package/src/ai-assistant/package.json +19 -14
  38. package/src/ai-assistant/src/components/ai-assistant-component.tsx +34 -4
  39. package/src/ai-assistant/src/components/ai-assistant-config.tsx +64 -18
  40. package/src/ai-assistant/src/config/models.json +5 -24
  41. package/src/ai-assistant/src/constants.ts +21 -26
  42. package/src/ai-assistant/src/reducers/index.ts +1 -1
  43. package/src/ai-assistant/src/tools/geo-tools.tsx +70 -9
  44. package/src/ai-assistant/src/tools/lisa-tool.tsx +15 -4
  45. package/src/cloud-providers/package.json +2 -2
  46. package/src/common-utils/package.json +3 -3
  47. package/src/components/dist/kepler-gl.js +2 -2
  48. package/src/components/dist/map/map-popover.js +2 -2
  49. package/src/components/dist/map-container.js +2 -2
  50. package/src/components/dist/side-panel/add-by-dataset-button.d.ts +0 -1
  51. package/src/components/dist/side-panel/add-by-dataset-button.js +1 -3
  52. package/src/components/dist/side-panel/filter-panel/add-filter-button.js +1 -2
  53. package/src/components/dist/side-panel/layer-panel/add-layer-button.js +1 -2
  54. package/src/components/dist/side-panel/layer-panel/custom-picker.js +18 -5
  55. package/src/components/package.json +15 -15
  56. package/src/components/src/kepler-gl.tsx +1 -1
  57. package/src/components/src/map/map-popover.tsx +1 -1
  58. package/src/components/src/map-container.tsx +1 -1
  59. package/src/components/src/side-panel/add-by-dataset-button.tsx +0 -3
  60. package/src/components/src/side-panel/filter-panel/add-filter-button.tsx +0 -1
  61. package/src/components/src/side-panel/layer-panel/add-layer-button.tsx +0 -1
  62. package/src/components/src/side-panel/layer-panel/custom-picker.tsx +15 -1
  63. package/src/constants/dist/default-settings.js +1 -1
  64. package/src/constants/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/e6/16/9fd3750f7cfc51cf980ec6937f88e24e5b03b144d0439efabdec6a028ce7442883abce42b76f97bffa8d37bfb65c10508e48d68a2b019c4b750a48374080 +1 -0
  65. package/src/constants/node_modules/.cache/terser-webpack-plugin/index-v5/b6/51/9b3488269917e0404a46b4db6235f226deef2d5b5b5ffb7414dafaa60b52 +2 -0
  66. package/src/constants/package.json +2 -2
  67. package/src/constants/umd/keplergl.min.js +1 -1
  68. package/src/deckgl-arrow-layers/package.json +2 -2
  69. package/src/deckgl-layers/package.json +4 -4
  70. package/src/duckdb/dist/components/sql-panel.js +34 -33
  71. package/src/duckdb/dist/table/duckdb-table-utils.d.ts +8 -9
  72. package/src/duckdb/dist/table/duckdb-table-utils.js +21 -23
  73. package/src/duckdb/dist/table/duckdb-table.js +20 -17
  74. package/src/duckdb/package.json +6 -6
  75. package/src/duckdb/src/components/sql-panel.tsx +3 -5
  76. package/src/duckdb/src/table/duckdb-table-utils.ts +19 -18
  77. package/src/duckdb/src/table/duckdb-table.ts +7 -4
  78. package/src/effects/package.json +5 -5
  79. package/src/layers/dist/geojson-layer/geojson-layer.js +5 -2
  80. package/src/layers/package.json +9 -9
  81. package/src/layers/src/geojson-layer/geojson-layer.ts +4 -1
  82. package/src/localization/dist/translations/ca.d.ts +2 -0
  83. package/src/localization/dist/translations/ca.js +3 -1
  84. package/src/localization/dist/translations/cn.d.ts +2 -0
  85. package/src/localization/dist/translations/cn.js +3 -1
  86. package/src/localization/dist/translations/en.d.ts +2 -0
  87. package/src/localization/dist/translations/en.js +4 -2
  88. package/src/localization/dist/translations/es.d.ts +2 -0
  89. package/src/localization/dist/translations/es.js +3 -1
  90. package/src/localization/dist/translations/fi.d.ts +2 -0
  91. package/src/localization/dist/translations/fi.js +3 -1
  92. package/src/localization/dist/translations/ja.d.ts +2 -0
  93. package/src/localization/dist/translations/ja.js +3 -1
  94. package/src/localization/dist/translations/pt.d.ts +2 -0
  95. package/src/localization/dist/translations/pt.js +3 -1
  96. package/src/localization/dist/translations/ru.d.ts +2 -0
  97. package/src/localization/dist/translations/ru.js +3 -1
  98. package/src/localization/package.json +1 -1
  99. package/src/localization/src/translations/ca.ts +2 -0
  100. package/src/localization/src/translations/cn.ts +2 -0
  101. package/src/localization/src/translations/en.ts +4 -2
  102. package/src/localization/src/translations/es.ts +2 -0
  103. package/src/localization/src/translations/fi.ts +2 -0
  104. package/src/localization/src/translations/ja.ts +2 -0
  105. package/src/localization/src/translations/pt.ts +2 -0
  106. package/src/localization/src/translations/ru.ts +2 -0
  107. package/src/processors/dist/file-handler.js +13 -14
  108. package/src/processors/package.json +7 -7
  109. package/src/processors/src/file-handler.ts +0 -1
  110. package/src/reducers/dist/combined-updaters.js +4 -2
  111. package/src/reducers/dist/ui-state-updaters.d.ts +0 -10
  112. package/src/reducers/dist/ui-state-updaters.js +2 -22
  113. package/src/reducers/dist/ui-state.js +2 -2
  114. package/src/reducers/dist/vis-state-updaters.d.ts +16 -1
  115. package/src/reducers/dist/vis-state-updaters.js +79 -45
  116. package/src/reducers/dist/vis-state.d.ts +4 -0
  117. package/src/reducers/dist/vis-state.js +2 -2
  118. package/src/reducers/package.json +16 -16
  119. package/src/reducers/src/combined-updaters.ts +1 -0
  120. package/src/reducers/src/ui-state-updaters.ts +0 -24
  121. package/src/reducers/src/ui-state.ts +1 -3
  122. package/src/reducers/src/vis-state-updaters.ts +74 -22
  123. package/src/reducers/src/vis-state.ts +3 -1
  124. package/src/schemas/dist/vis-state-schema.d.ts +1 -0
  125. package/src/schemas/dist/vis-state-schema.js +1 -1
  126. package/src/schemas/package.json +7 -7
  127. package/src/schemas/src/vis-state-schema.ts +1 -0
  128. package/src/styles/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/f9/fc/86ccce4fa2c3e73042785814bc24476cb7cc9531d16a7c2ecb66bfc154f7b35d7416d852faa175d172da177931675cd2ba82e3b7898e8f4bf499921b00c2 +1 -0
  129. package/src/styles/node_modules/.cache/terser-webpack-plugin/index-v5/ba/31/d609a3a75657c3640471d5a925a4a64689ea3853d9379bdcd675dba816a2 +2 -0
  130. package/src/styles/package.json +2 -2
  131. package/src/styles/umd/keplergl.min.js +1 -1
  132. package/src/table/package.json +5 -5
  133. package/src/tasks/package.json +2 -2
  134. package/src/types/package.json +1 -1
  135. package/src/utils/package.json +4 -4
  136. package/umd/keplergl.min.js +1350 -1312
@@ -17,7 +17,7 @@ var initialConfig = {
17
17
  provider: 'openai',
18
18
  model: 'gpt-4o',
19
19
  apiKey: '',
20
- baseUrl: 'http://localhost:11434',
20
+ baseUrl: 'http://localhost:11434/api',
21
21
  temperature: 0.0,
22
22
  topP: 1.0
23
23
  };
@@ -62,4 +62,4 @@ function setMapBoundaryHandler(state, action) {
62
62
  })
63
63
  });
64
64
  }
65
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVkdXhBY3Rpb25zIiwicmVxdWlyZSIsIl9hY3Rpb25zIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJpbml0aWFsQ29uZmlnIiwiaXNSZWFkeSIsInByb3ZpZGVyIiwibW9kZWwiLCJhcGlLZXkiLCJiYXNlVXJsIiwidGVtcGVyYXR1cmUiLCJ0b3BQIiwiaW5pdGlhbFN0YXRlIiwiY29uZmlnIiwibWVzc2FnZXMiLCJzY3JlZW5zaG90VG9Bc2siLCJzdGFydFNjcmVlbkNhcHR1cmUiLCJzY3JlZW5DYXB0dXJlZCIsImFpQXNzaXN0YW50UmVkdWNlciIsImV4cG9ydHMiLCJoYW5kbGVBY3Rpb25zIiwiVVBEQVRFX0FJX0FTU0lTVEFOVF9DT05GSUciLCJ1cGRhdGVBaUFzc2lzdGFudENvbmZpZ0hhbmRsZXIiLCJVUERBVEVfQUlfQVNTSVNUQU5UX01FU1NBR0VTIiwidXBkYXRlQWlBc3Npc3RhbnRNZXNzYWdlc0hhbmRsZXIiLCJTRVRfU1RBUlRfU0NSRUVOX0NBUFRVUkUiLCJzZXRTdGFydFNjcmVlbkNhcHR1cmVIYW5kbGVyIiwiU0VUX1NDUkVFTl9DQVBUVVJFRCIsInNldFNjcmVlbkNhcHR1cmVkSGFuZGxlciIsIlNFVF9NQVBfQk9VTkRBUlkiLCJzZXRNYXBCb3VuZGFyeUhhbmRsZXIiLCJzdGF0ZSIsImFjdGlvbiIsInBheWxvYWQiLCJrZXBsZXJHbCIsIm1hcEJvdW5kYXJ5Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlZHVjZXJzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7QWN0aW9uLCBoYW5kbGVBY3Rpb25zfSBmcm9tICdyZWR1eC1hY3Rpb25zJztcbmltcG9ydCB7XG4gIFVQREFURV9BSV9BU1NJU1RBTlRfQ09ORklHLFxuICBVUERBVEVfQUlfQVNTSVNUQU5UX01FU1NBR0VTLFxuICBTRVRfU1RBUlRfU0NSRUVOX0NBUFRVUkUsXG4gIFNFVF9TQ1JFRU5fQ0FQVFVSRUQsXG4gIFNFVF9NQVBfQk9VTkRBUllcbn0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQge01lc3NhZ2VNb2RlbH0gZnJvbSAnQG9wZW5hc3Npc3RhbnQvY29yZSc7XG5cbmV4cG9ydCB0eXBlIEFpQXNzaXN0YW50Q29uZmlnID0ge1xuICBpc1JlYWR5OiBib29sZWFuO1xuICBwcm92aWRlcjogc3RyaW5nO1xuICBtb2RlbDogc3RyaW5nO1xuICBhcGlLZXk6IHN0cmluZztcbiAgYmFzZVVybD86IHN0cmluZztcbiAgdGVtcGVyYXR1cmU6IG51bWJlcjtcbiAgdG9wUDogbnVtYmVyO1xuICBtYXBib3hUb2tlbj86IHN0cmluZztcbn07XG5cbi8vIEluaXRpYWwgc3RhdGUgZm9yIHRoZSByZWR1Y2VyXG5jb25zdCBpbml0aWFsQ29uZmlnOiBBaUFzc2lzdGFudENvbmZpZyA9IHtcbiAgaXNSZWFkeTogZmFsc2UsXG4gIHByb3ZpZGVyOiAnb3BlbmFpJyxcbiAgbW9kZWw6ICdncHQtNG8nLFxuICBhcGlLZXk6ICcnLFxuICBiYXNlVXJsOiAnaHR0cDovL2xvY2FsaG9zdDoxMTQzNCcsXG4gIHRlbXBlcmF0dXJlOiAwLjAsXG4gIHRvcFA6IDEuMFxufTtcblxuZXhwb3J0IHR5cGUgQWlBc3Npc3RhbnRTdGF0ZSA9IHtcbiAgY29uZmlnOiBBaUFzc2lzdGFudENvbmZpZztcbiAgbWVzc2FnZXM6IE1lc3NhZ2VNb2RlbFtdO1xuICBzY3JlZW5zaG90VG9Bc2s6IHtcbiAgICBzdGFydFNjcmVlbkNhcHR1cmU6IGJvb2xlYW47XG4gICAgc2NyZWVuQ2FwdHVyZWQ6IHN0cmluZztcbiAgfTtcbiAga2VwbGVyR2w/OiB7XG4gICAgbWFwQm91bmRhcnk/OiB7XG4gICAgICBudzogW251bWJlciwgbnVtYmVyXTtcbiAgICAgIHNlOiBbbnVtYmVyLCBudW1iZXJdO1xuICAgIH07XG4gIH07XG59O1xuXG5jb25zdCBpbml0aWFsU3RhdGU6IEFpQXNzaXN0YW50U3RhdGUgPSB7XG4gIGNvbmZpZzogaW5pdGlhbENvbmZpZyxcbiAgbWVzc2FnZXM6IFtdLFxuICBzY3JlZW5zaG90VG9Bc2s6IHtcbiAgICBzdGFydFNjcmVlbkNhcHR1cmU6IGZhbHNlLFxuICAgIHNjcmVlbkNhcHR1cmVkOiAnJ1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgYWlBc3Npc3RhbnRSZWR1Y2VyID0gaGFuZGxlQWN0aW9uczxBaUFzc2lzdGFudFN0YXRlLCBhbnk+KFxuICB7XG4gICAgW1VQREFURV9BSV9BU1NJU1RBTlRfQ09ORklHXTogdXBkYXRlQWlBc3Npc3RhbnRDb25maWdIYW5kbGVyLFxuICAgIFtVUERBVEVfQUlfQVNTSVNUQU5UX01FU1NBR0VTXTogdXBkYXRlQWlBc3Npc3RhbnRNZXNzYWdlc0hhbmRsZXIsXG4gICAgW1NFVF9TVEFSVF9TQ1JFRU5fQ0FQVFVSRV06IHNldFN0YXJ0U2NyZWVuQ2FwdHVyZUhhbmRsZXIsXG4gICAgW1NFVF9TQ1JFRU5fQ0FQVFVSRURdOiBzZXRTY3JlZW5DYXB0dXJlZEhhbmRsZXIsXG4gICAgW1NFVF9NQVBfQk9VTkRBUlldOiBzZXRNYXBCb3VuZGFyeUhhbmRsZXJcbiAgfSxcbiAgaW5pdGlhbFN0YXRlXG4pO1xuXG5mdW5jdGlvbiB1cGRhdGVBaUFzc2lzdGFudENvbmZpZ0hhbmRsZXIoXG4gIHN0YXRlOiBBaUFzc2lzdGFudFN0YXRlLFxuICBhY3Rpb246IEFjdGlvbjxBaUFzc2lzdGFudENvbmZpZz5cbikge1xuICByZXR1cm4ge1xuICAgIC4uLnN0YXRlLFxuICAgIGNvbmZpZzogey4uLnN0YXRlLmNvbmZpZywgLi4uYWN0aW9uLnBheWxvYWR9XG4gIH07XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZUFpQXNzaXN0YW50TWVzc2FnZXNIYW5kbGVyKHN0YXRlOiBBaUFzc2lzdGFudFN0YXRlLCBhY3Rpb246IEFjdGlvbjxNZXNzYWdlTW9kZWxbXT4pIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICBtZXNzYWdlczogYWN0aW9uLnBheWxvYWRcbiAgfTtcbn1cblxuZnVuY3Rpb24gc2V0U3RhcnRTY3JlZW5DYXB0dXJlSGFuZGxlcihzdGF0ZTogQWlBc3Npc3RhbnRTdGF0ZSwgYWN0aW9uOiBBY3Rpb248Ym9vbGVhbj4pIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICBzY3JlZW5zaG90VG9Bc2s6IHtzdGFydFNjcmVlbkNhcHR1cmU6IGFjdGlvbi5wYXlsb2FkLCBzY3JlZW5DYXB0dXJlZDogJyd9XG4gIH07XG59XG5cbmZ1bmN0aW9uIHNldFNjcmVlbkNhcHR1cmVkSGFuZGxlcihzdGF0ZTogQWlBc3Npc3RhbnRTdGF0ZSwgYWN0aW9uOiBBY3Rpb248c3RyaW5nPikge1xuICByZXR1cm4ge1xuICAgIC4uLnN0YXRlLFxuICAgIHNjcmVlbnNob3RUb0Fzazogey4uLnN0YXRlLnNjcmVlbnNob3RUb0Fzaywgc2NyZWVuQ2FwdHVyZWQ6IGFjdGlvbi5wYXlsb2FkfVxuICB9O1xufVxuXG5mdW5jdGlvbiBzZXRNYXBCb3VuZGFyeUhhbmRsZXIoXG4gIHN0YXRlOiBBaUFzc2lzdGFudFN0YXRlLFxuICBhY3Rpb246IEFjdGlvbjx7bnc6IFtudW1iZXIsIG51bWJlcl07IHNlOiBbbnVtYmVyLCBudW1iZXJdfT5cbikge1xuICByZXR1cm4ge1xuICAgIC4uLnN0YXRlLFxuICAgIGtlcGxlckdsOiB7XG4gICAgICAuLi5zdGF0ZS5rZXBsZXJHbCxc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
65
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVkdXhBY3Rpb25zIiwicmVxdWlyZSIsIl9hY3Rpb25zIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJpbml0aWFsQ29uZmlnIiwiaXNSZWFkeSIsInByb3ZpZGVyIiwibW9kZWwiLCJhcGlLZXkiLCJiYXNlVXJsIiwidGVtcGVyYXR1cmUiLCJ0b3BQIiwiaW5pdGlhbFN0YXRlIiwiY29uZmlnIiwibWVzc2FnZXMiLCJzY3JlZW5zaG90VG9Bc2siLCJzdGFydFNjcmVlbkNhcHR1cmUiLCJzY3JlZW5DYXB0dXJlZCIsImFpQXNzaXN0YW50UmVkdWNlciIsImV4cG9ydHMiLCJoYW5kbGVBY3Rpb25zIiwiVVBEQVRFX0FJX0FTU0lTVEFOVF9DT05GSUciLCJ1cGRhdGVBaUFzc2lzdGFudENvbmZpZ0hhbmRsZXIiLCJVUERBVEVfQUlfQVNTSVNUQU5UX01FU1NBR0VTIiwidXBkYXRlQWlBc3Npc3RhbnRNZXNzYWdlc0hhbmRsZXIiLCJTRVRfU1RBUlRfU0NSRUVOX0NBUFRVUkUiLCJzZXRTdGFydFNjcmVlbkNhcHR1cmVIYW5kbGVyIiwiU0VUX1NDUkVFTl9DQVBUVVJFRCIsInNldFNjcmVlbkNhcHR1cmVkSGFuZGxlciIsIlNFVF9NQVBfQk9VTkRBUlkiLCJzZXRNYXBCb3VuZGFyeUhhbmRsZXIiLCJzdGF0ZSIsImFjdGlvbiIsInBheWxvYWQiLCJrZXBsZXJHbCIsIm1hcEJvdW5kYXJ5Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlZHVjZXJzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7QWN0aW9uLCBoYW5kbGVBY3Rpb25zfSBmcm9tICdyZWR1eC1hY3Rpb25zJztcbmltcG9ydCB7XG4gIFVQREFURV9BSV9BU1NJU1RBTlRfQ09ORklHLFxuICBVUERBVEVfQUlfQVNTSVNUQU5UX01FU1NBR0VTLFxuICBTRVRfU1RBUlRfU0NSRUVOX0NBUFRVUkUsXG4gIFNFVF9TQ1JFRU5fQ0FQVFVSRUQsXG4gIFNFVF9NQVBfQk9VTkRBUllcbn0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQge01lc3NhZ2VNb2RlbH0gZnJvbSAnQG9wZW5hc3Npc3RhbnQvY29yZSc7XG5cbmV4cG9ydCB0eXBlIEFpQXNzaXN0YW50Q29uZmlnID0ge1xuICBpc1JlYWR5OiBib29sZWFuO1xuICBwcm92aWRlcjogc3RyaW5nO1xuICBtb2RlbDogc3RyaW5nO1xuICBhcGlLZXk6IHN0cmluZztcbiAgYmFzZVVybD86IHN0cmluZztcbiAgdGVtcGVyYXR1cmU6IG51bWJlcjtcbiAgdG9wUDogbnVtYmVyO1xuICBtYXBib3hUb2tlbj86IHN0cmluZztcbn07XG5cbi8vIEluaXRpYWwgc3RhdGUgZm9yIHRoZSByZWR1Y2VyXG5jb25zdCBpbml0aWFsQ29uZmlnOiBBaUFzc2lzdGFudENvbmZpZyA9IHtcbiAgaXNSZWFkeTogZmFsc2UsXG4gIHByb3ZpZGVyOiAnb3BlbmFpJyxcbiAgbW9kZWw6ICdncHQtNG8nLFxuICBhcGlLZXk6ICcnLFxuICBiYXNlVXJsOiAnaHR0cDovL2xvY2FsaG9zdDoxMTQzNC9hcGknLFxuICB0ZW1wZXJhdHVyZTogMC4wLFxuICB0b3BQOiAxLjBcbn07XG5cbmV4cG9ydCB0eXBlIEFpQXNzaXN0YW50U3RhdGUgPSB7XG4gIGNvbmZpZzogQWlBc3Npc3RhbnRDb25maWc7XG4gIG1lc3NhZ2VzOiBNZXNzYWdlTW9kZWxbXTtcbiAgc2NyZWVuc2hvdFRvQXNrOiB7XG4gICAgc3RhcnRTY3JlZW5DYXB0dXJlOiBib29sZWFuO1xuICAgIHNjcmVlbkNhcHR1cmVkOiBzdHJpbmc7XG4gIH07XG4gIGtlcGxlckdsPzoge1xuICAgIG1hcEJvdW5kYXJ5Pzoge1xuICAgICAgbnc6IFtudW1iZXIsIG51bWJlcl07XG4gICAgICBzZTogW251bWJlciwgbnVtYmVyXTtcbiAgICB9O1xuICB9O1xufTtcblxuY29uc3QgaW5pdGlhbFN0YXRlOiBBaUFzc2lzdGFudFN0YXRlID0ge1xuICBjb25maWc6IGluaXRpYWxDb25maWcsXG4gIG1lc3NhZ2VzOiBbXSxcbiAgc2NyZWVuc2hvdFRvQXNrOiB7XG4gICAgc3RhcnRTY3JlZW5DYXB0dXJlOiBmYWxzZSxcbiAgICBzY3JlZW5DYXB0dXJlZDogJydcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGFpQXNzaXN0YW50UmVkdWNlciA9IGhhbmRsZUFjdGlvbnM8QWlBc3Npc3RhbnRTdGF0ZSwgYW55PihcbiAge1xuICAgIFtVUERBVEVfQUlfQVNTSVNUQU5UX0NPTkZJR106IHVwZGF0ZUFpQXNzaXN0YW50Q29uZmlnSGFuZGxlcixcbiAgICBbVVBEQVRFX0FJX0FTU0lTVEFOVF9NRVNTQUdFU106IHVwZGF0ZUFpQXNzaXN0YW50TWVzc2FnZXNIYW5kbGVyLFxuICAgIFtTRVRfU1RBUlRfU0NSRUVOX0NBUFRVUkVdOiBzZXRTdGFydFNjcmVlbkNhcHR1cmVIYW5kbGVyLFxuICAgIFtTRVRfU0NSRUVOX0NBUFRVUkVEXTogc2V0U2NyZWVuQ2FwdHVyZWRIYW5kbGVyLFxuICAgIFtTRVRfTUFQX0JPVU5EQVJZXTogc2V0TWFwQm91bmRhcnlIYW5kbGVyXG4gIH0sXG4gIGluaXRpYWxTdGF0ZVxuKTtcblxuZnVuY3Rpb24gdXBkYXRlQWlBc3Npc3RhbnRDb25maWdIYW5kbGVyKFxuICBzdGF0ZTogQWlBc3Npc3RhbnRTdGF0ZSxcbiAgYWN0aW9uOiBBY3Rpb248QWlBc3Npc3RhbnRDb25maWc+XG4pIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICBjb25maWc6IHsuLi5zdGF0ZS5jb25maWcsIC4uLmFjdGlvbi5wYXlsb2FkfVxuICB9O1xufVxuXG5mdW5jdGlvbiB1cGRhdGVBaUFzc2lzdGFudE1lc3NhZ2VzSGFuZGxlcihzdGF0ZTogQWlBc3Npc3RhbnRTdGF0ZSwgYWN0aW9uOiBBY3Rpb248TWVzc2FnZU1vZGVsW10+KSB7XG4gIHJldHVybiB7XG4gICAgLi4uc3RhdGUsXG4gICAgbWVzc2FnZXM6IGFjdGlvbi5wYXlsb2FkXG4gIH07XG59XG5cbmZ1bmN0aW9uIHNldFN0YXJ0U2NyZWVuQ2FwdHVyZUhhbmRsZXIoc3RhdGU6IEFpQXNzaXN0YW50U3RhdGUsIGFjdGlvbjogQWN0aW9uPGJvb2xlYW4+KSB7XG4gIHJldHVybiB7XG4gICAgLi4uc3RhdGUsXG4gICAgc2NyZWVuc2hvdFRvQXNrOiB7c3RhcnRTY3JlZW5DYXB0dXJlOiBhY3Rpb24ucGF5bG9hZCwgc2NyZWVuQ2FwdHVyZWQ6ICcnfVxuICB9O1xufVxuXG5mdW5jdGlvbiBzZXRTY3JlZW5DYXB0dXJlZEhhbmRsZXIoc3RhdGU6IEFpQXNzaXN0YW50U3RhdGUsIGFjdGlvbjogQWN0aW9uPHN0cmluZz4pIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICBzY3JlZW5zaG90VG9Bc2s6IHsuLi5zdGF0ZS5zY3JlZW5zaG90VG9Bc2ssIHNjcmVlbkNhcHR1cmVkOiBhY3Rpb24ucGF5bG9hZH1cbiAgfTtcbn1cblxuZnVuY3Rpb24gc2V0TWFwQm91bmRhcnlIYW5kbGVyKFxuICBzdGF0ZTogQWlBc3Npc3RhbnRTdGF0ZSxcbiAgYWN0aW9uOiBBY3Rpb248e253OiBbbnVtYmVyLCBudW1iZXJdOyBzZTogW251bWJlciwgbnVtYmVyXX0+XG4pIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICBrZXBsZXJHbDoge1xuICAgICAgLi4uc3RhdGUua2VwbGVy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
@@ -21,31 +21,72 @@ export declare function getGeoTools(aiAssistant: AiAssistantState, datasets: Dat
21
21
  execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/geoda").SpatialJoinFunctionArgs, import("@openassistant/geoda").SpatialJoinLlmResult, import("@openassistant/geoda").SpatialJoinAdditionalData, import("@openassistant/geoda").SpatialJoinFunctionContext>;
22
22
  priority?: number | undefined;
23
23
  };
24
- buffer: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").BufferFunctionArgs, import("@openassistant/geoda").BufferLlmResult, import("@openassistant/geoda").BufferAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
25
- centroid: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").CentroidFunctionArgs, import("@openassistant/geoda").CentroidLlmResult, import("@openassistant/geoda").CentroidAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
26
- dissolve: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").DissolveFunctionArgs, import("@openassistant/geoda").DissolveLlmResult, import("@openassistant/geoda").DissolveAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
27
- length: import("@openassistant/utils").ExtendedTool<import("zod").ZodObject<{
28
- geojson: import("zod").ZodOptional<import("zod").ZodString>;
29
- datasetName: import("zod").ZodOptional<import("zod").ZodString>;
30
- distanceUnit: import("zod").ZodDefault<import("zod").ZodEnum<["KM", "Mile"]>>;
31
- }, "strip", import("zod").ZodTypeAny, {
32
- distanceUnit: "KM" | "Mile";
33
- datasetName?: string | undefined;
34
- geojson?: string | undefined;
35
- }, {
36
- datasetName?: string | undefined;
37
- geojson?: string | undefined;
38
- distanceUnit?: "KM" | "Mile" | undefined;
39
- }>, {
40
- success: boolean;
41
- result: string;
42
- lengths: number[];
43
- distanceUnit: "KM" | "Mile";
44
- }, never, {
45
- getGeometries: () => void;
46
- }>;
47
- area: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").AreaFunctionArgs, import("@openassistant/geoda").AreaLlmResult, import("@openassistant/geoda").AreaAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
48
- perimeter: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").PerimeterFunctionArgs, import("@openassistant/geoda").PerimeterLlmResult, import("@openassistant/geoda").PerimeterAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
24
+ bufferTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").BufferFunctionArgs, import("@openassistant/geoda").BufferLlmResult, import("@openassistant/geoda").BufferAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
25
+ centroidTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").CentroidFunctionArgs, import("@openassistant/geoda").CentroidLlmResult, import("@openassistant/geoda").CentroidAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
26
+ dissolveTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").DissolveFunctionArgs, import("@openassistant/geoda").DissolveLlmResult, import("@openassistant/geoda").DissolveAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
27
+ lengthTool: {
28
+ context: {
29
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
30
+ };
31
+ description: string;
32
+ parameters: import("zod").ZodObject<{
33
+ geojson: import("zod").ZodOptional<import("zod").ZodString>;
34
+ datasetName: import("zod").ZodOptional<import("zod").ZodString>;
35
+ distanceUnit: import("zod").ZodDefault<import("zod").ZodEnum<["KM", "Mile"]>>;
36
+ }, "strip", import("zod").ZodTypeAny, {
37
+ distanceUnit: "KM" | "Mile";
38
+ datasetName?: string | undefined;
39
+ geojson?: string | undefined;
40
+ }, {
41
+ datasetName?: string | undefined;
42
+ geojson?: string | undefined;
43
+ distanceUnit?: "KM" | "Mile" | undefined;
44
+ }>;
45
+ execute: import("@openassistant/utils").ExecuteFunction<import("zod").ZodObject<{
46
+ geojson: import("zod").ZodOptional<import("zod").ZodString>;
47
+ datasetName: import("zod").ZodOptional<import("zod").ZodString>;
48
+ distanceUnit: import("zod").ZodDefault<import("zod").ZodEnum<["KM", "Mile"]>>;
49
+ }, "strip", import("zod").ZodTypeAny, {
50
+ distanceUnit: "KM" | "Mile";
51
+ datasetName?: string | undefined;
52
+ geojson?: string | undefined;
53
+ }, {
54
+ datasetName?: string | undefined;
55
+ geojson?: string | undefined;
56
+ distanceUnit?: "KM" | "Mile" | undefined;
57
+ }>, {
58
+ success: boolean;
59
+ result: string;
60
+ lengths: number[];
61
+ distanceUnit: "KM" | "Mile";
62
+ }, never, {
63
+ getGeometries: () => void;
64
+ }>;
65
+ component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
66
+ priority?: number | undefined;
67
+ };
68
+ areaTool: {
69
+ context: {
70
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
71
+ getValues?: import("@openassistant/geoda").GetValues | undefined;
72
+ };
73
+ description: string;
74
+ parameters: import("@openassistant/geoda").AreaFunctionArgs;
75
+ execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/geoda").AreaFunctionArgs, import("@openassistant/geoda").AreaLlmResult, import("@openassistant/geoda").AreaAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
76
+ component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
77
+ priority?: number | undefined;
78
+ };
79
+ perimeterTool: {
80
+ context: {
81
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
82
+ getValues?: import("@openassistant/geoda").GetValues | undefined;
83
+ };
84
+ description: string;
85
+ parameters: import("@openassistant/geoda").PerimeterFunctionArgs;
86
+ execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/geoda").PerimeterFunctionArgs, import("@openassistant/geoda").PerimeterLlmResult, import("@openassistant/geoda").PerimeterAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
87
+ component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
88
+ priority?: number | undefined;
89
+ };
49
90
  getUsStateGeojson: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GetUsStateGeojsonFunctionArgs, import("@openassistant/osm").GetUsStateGeojsonLlmResult, import("@openassistant/osm").GetUsStateGeojsonAdditionalData, object>;
50
91
  getUsCountyGeojson: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GetUsCountyGeojsonFunctionArgs, import("@openassistant/osm").GetUsCountyGeojsonLlmResult, import("@openassistant/osm").GetUsCountyGeojsonAdditionalData, object>;
51
92
  getUsZipcodeGeojson: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GetUsZipcodeGeojsonFunctionArgs, import("@openassistant/osm").GetUsZipcodeGeojsonLlmResult, import("@openassistant/osm").GetUsZipcodeGeojsonAdditionalData, object>;
@@ -53,6 +94,16 @@ export declare function getGeoTools(aiAssistant: AiAssistantState, datasets: Dat
53
94
  geocoding: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GeocodingFunctionArgs, import("@openassistant/osm").GeocodingLlmResult, import("@openassistant/osm").GeocodingAdditionalData, object>;
54
95
  routing: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").RoutingFunctionArgs, import("@openassistant/osm").RoutingLlmResult, import("@openassistant/osm").RoutingAdditionalData, import("@openassistant/osm/dist/register-tools").OsmToolContext>;
55
96
  isochrone: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").IsochroneFunctionArgs, import("@openassistant/osm").IsochroneLlmResult, import("@openassistant/osm").IsochroneAdditionalData, import("@openassistant/osm/dist/register-tools").OsmToolContext>;
97
+ roads: {
98
+ context: {
99
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
100
+ };
101
+ description: string;
102
+ parameters: import("@openassistant/osm").RoadsFunctionArgs;
103
+ execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/osm").RoadsFunctionArgs, import("@openassistant/osm").RoadsLlmResult, import("@openassistant/osm").RoadsAdditionalData, import("@openassistant/osm").RoadsToolContext>;
104
+ component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
105
+ priority?: number | undefined;
106
+ };
56
107
  };
57
108
  /**
58
109
  * Use SpatialJoinToolComponent to add the join result to kepler.gl
@@ -125,6 +125,41 @@ function getGeoTools(aiAssistant, datasets, layers, layerData) {
125
125
  getMapboxToken: getMapboxToken
126
126
  })
127
127
  });
128
+ var bufferTool = _objectSpread(_objectSpread({}, _geoda.buffer), {}, {
129
+ context: _objectSpread(_objectSpread({}, _geoda.buffer.context), {}, {
130
+ getGeometries: getGeometries
131
+ })
132
+ });
133
+ var centroidTool = _objectSpread(_objectSpread({}, _geoda.centroid), {}, {
134
+ context: _objectSpread(_objectSpread({}, _geoda.centroid.context), {}, {
135
+ getGeometries: getGeometries
136
+ })
137
+ });
138
+ var dissolveTool = _objectSpread(_objectSpread({}, _geoda.dissolve), {}, {
139
+ context: _objectSpread(_objectSpread({}, _geoda.dissolve.context), {}, {
140
+ getGeometries: getGeometries
141
+ })
142
+ });
143
+ var lengthTool = _objectSpread(_objectSpread({}, _geoda.length), {}, {
144
+ context: _objectSpread(_objectSpread({}, _geoda.length.context), {}, {
145
+ getGeometries: getGeometries
146
+ })
147
+ });
148
+ var areaTool = _objectSpread(_objectSpread({}, _geoda.area), {}, {
149
+ context: _objectSpread(_objectSpread({}, _geoda.area.context), {}, {
150
+ getGeometries: getGeometries
151
+ })
152
+ });
153
+ var perimeterTool = _objectSpread(_objectSpread({}, _geoda.perimeter), {}, {
154
+ context: _objectSpread(_objectSpread({}, _geoda.perimeter.context), {}, {
155
+ getGeometries: getGeometries
156
+ })
157
+ });
158
+ var roadsTool = _objectSpread(_objectSpread({}, _osm.roads), {}, {
159
+ context: _objectSpread(_objectSpread({}, _osm.roads.context), {}, {
160
+ getGeometries: getGeometries
161
+ })
162
+ });
128
163
  return {
129
164
  classifyTool: classifyTool,
130
165
  weightsTool: weightsTool,
@@ -133,19 +168,20 @@ function getGeoTools(aiAssistant, datasets, layers, layerData) {
133
168
  lisaTool: lisaTool,
134
169
  spatialJoinTool: spatialJoinTool,
135
170
  spatialFilterTool: spatialFilterTool,
136
- buffer: _geoda.buffer,
137
- centroid: _geoda.centroid,
138
- dissolve: _geoda.dissolve,
139
- length: _geoda.length,
140
- area: _geoda.area,
141
- perimeter: _geoda.perimeter,
171
+ bufferTool: bufferTool,
172
+ centroidTool: centroidTool,
173
+ dissolveTool: dissolveTool,
174
+ lengthTool: lengthTool,
175
+ areaTool: areaTool,
176
+ perimeterTool: perimeterTool,
142
177
  getUsStateGeojson: _osm.getUsStateGeojson,
143
178
  getUsCountyGeojson: _osm.getUsCountyGeojson,
144
179
  getUsZipcodeGeojson: _osm.getUsZipcodeGeojson,
145
180
  queryUSZipcodes: _osm.queryUSZipcodes,
146
181
  geocoding: _osm.geocoding,
147
182
  routing: routingTool,
148
- isochrone: isochroneTool
183
+ isochrone: isochroneTool,
184
+ roads: roadsTool
149
185
  };
150
186
  }
151
187
 
@@ -198,4 +234,4 @@ function CustomSpatialJoinToolComponent(props) {
198
234
  }, []);
199
235
  return /*#__PURE__*/_react["default"].createElement(_geoda.SpatialJoinToolComponent, props);
200
236
  }
201
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9nZW9kYSIsIl9vc20iLCJfcHJvY2Vzc29ycyIsIl9hY3Rpb25zIiwiX2xpc2FUb29sIiwiX3V0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZ2V0R2VvVG9vbHMiLCJhaUFzc2lzdGFudCIsImRhdGFzZXRzIiwibGF5ZXJzIiwibGF5ZXJEYXRhIiwiZ2V0VmFsdWVzIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwiZGF0YXNldE5hbWUiLCJ2YXJpYWJsZU5hbWUiLCJ2YWx1ZXMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiZ2V0VmFsdWVzRnJvbURhdGFzZXQiLCJhYnJ1cHQiLCJzdG9wIiwiX3giLCJfeDIiLCJnZXRHZW9tZXRyaWVzIiwiX3JlZjIiLCJfY2FsbGVlMiIsImdlb21zIiwiZ2VvanNvbiIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImdldEdlb21ldHJpZXNGcm9tRGF0YXNldCIsImdldENhY2hlZERhdGEiLCJmZWF0dXJlcyIsIl94MyIsImdldE1hcGJveFRva2VuIiwiY29uZmlnIiwibWFwYm94VG9rZW4iLCJFcnJvciIsImNsYXNzaWZ5VG9vbCIsImRhdGFDbGFzc2lmeSIsImNvbnRleHQiLCJ3ZWlnaHRzVG9vbCIsInNwYXRpYWxXZWlnaHRzIiwiZ2xvYmFsTW9yYW5Ub29sIiwiZ2xvYmFsTW9yYW4iLCJyZWdyZXNzaW9uVG9vbCIsInNwYXRpYWxSZWdyZXNzaW9uIiwibGlzYVRvb2wiLCJsaXNhIiwiY29tcG9uZW50IiwiTGlzYVRvb2xDb21wb25lbnQiLCJzcGF0aWFsSm9pblRvb2wiLCJzcGF0aWFsSm9pbiIsIkN1c3RvbVNwYXRpYWxKb2luVG9vbENvbXBvbmVudCIsInNwYXRpYWxGaWx0ZXJUb29sIiwic3BhdGlhbEZpbHRlciIsInJvdXRpbmdUb29sIiwicm91dGluZyIsImlzb2Nocm9uZVRvb2wiLCJpc29jaHJvbmUiLCJidWZmZXIiLCJjZW50cm9pZCIsImRpc3NvbHZlIiwiYXJlYSIsInBlcmltZXRlciIsImdldFVzU3RhdGVHZW9qc29uIiwiZ2V0VXNDb3VudHlHZW9qc29uIiwiZ2V0VXNaaXBjb2RlR2VvanNvbiIsInF1ZXJ5VVNaaXBjb2RlcyIsImdlb2NvZGluZyIsInByb3BzIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsInVzZUVmZmVjdCIsImFkZEpvaW5lZERhdGFzZXRUb01hcCIsIl9hZGRKb2luZWREYXRhc2V0VG9NYXAiLCJfY2FsbGVlMyIsInBhcnNlZERhdGEiLCJfY2FsbGVlMyQiLCJfY29udGV4dDMiLCJqb2luZWREYXRhc2V0SWQiLCJqb2luZWREYXRhc2V0IiwicHJvY2Vzc0ZpbGVEYXRhIiwiY29udGVudCIsImRhdGEiLCJmaWxlTmFtZSIsImZpbGVDYWNoZSIsInNlbnQiLCJhZGREYXRhVG9NYXAiLCJvcHRpb25zIiwiYXV0b0NyZWF0ZUxheWVycyIsImNlbnRlck1hcCIsImNyZWF0ZUVsZW1lbnQiLCJTcGF0aWFsSm9pblRvb2xDb21wb25lbnQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdG9vbHMvZ2VvLXRvb2xzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3R9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7dXNlRGlzcGF0Y2h9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7XG4gIGRhdGFDbGFzc2lmeSxcbiAgRGF0YUNsYXNzaWZ5VG9vbCxcbiAgc3BhdGlhbFdlaWdodHMsXG4gIFNwYXRpYWxXZWlnaHRzVG9vbCxcbiAgZ2xvYmFsTW9yYW4sXG4gIEdsb2JhbE1vcmFuVG9vbCxcbiAgc3BhdGlhbFJlZ3Jlc3Npb24sXG4gIFNwYXRpYWxSZWdyZXNzaW9uVG9vbCxcbiAgbGlzYSxcbiAgTGlzYVRvb2wsXG4gIHNwYXRpYWxKb2luLFxuICBTcGF0aWFsSm9pblRvb2wsXG4gIHNwYXRpYWxGaWx0ZXIsXG4gIFNwYXRpYWxKb2luVG9vbENvbXBvbmVudCxcbiAgYnVmZmVyLFxuICBjZW50cm9pZCxcbiAgZGlzc29sdmUsXG4gIGxlbmd0aCxcbiAgYXJlYSxcbiAgcGVyaW1ldGVyXG59IGZyb20gJ0BvcGVuYXNzaXN0YW50L2dlb2RhJztcbmltcG9ydCB7XG4gIGdldFVzU3RhdGVHZW9qc29uLFxuICBnZXRVc0NvdW50eUdlb2pzb24sXG4gIGdldFVzWmlwY29kZUdlb2pzb24sXG4gIHF1ZXJ5VVNaaXBjb2RlcyxcbiAgZ2VvY29kaW5nLFxuICByb3V0aW5nLFxuICBpc29jaHJvbmUsXG4gIGdldENhY2hlZERhdGEsXG4gIElzb2Nocm9uZVRvb2wsXG4gIFJvdXRpbmdUb29sXG59IGZyb20gJ0BvcGVuYXNzaXN0YW50L29zbSc7XG5pbXBvcnQge0RhdGFzZXRzfSBmcm9tICdAa2VwbGVyLmdsL3RhYmxlJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7cHJvY2Vzc0ZpbGVEYXRhfSBmcm9tICdAa2VwbGVyLmdsL3Byb2Nlc3NvcnMnO1xuaW1wb3J0IHthZGREYXRhVG9NYXB9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5cbmltcG9ydCB7TGlzYVRvb2xDb21wb25lbnR9IGZyb20gJy4vbGlzYS10b29sJztcbmltcG9ydCB7Z2V0R2VvbWV0cmllc0Zyb21EYXRhc2V0LCBnZXRWYWx1ZXNGcm9tRGF0YXNldH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQge0FpQXNzaXN0YW50U3RhdGV9IGZyb20gJy4uL3JlZHVjZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdlb1Rvb2xzKFxuICBhaUFzc2lzdGFudDogQWlBc3Npc3RhbnRTdGF0ZSxcbiAgZGF0YXNldHM6IERhdGFzZXRzLFxuICBsYXllcnM6IExheWVyW10sXG4gIGxheWVyRGF0YTogYW55W11cbikge1xuICAvLyBjb250ZXh0IGZvciBnZW8gdG9vbHNcbiAgY29uc3QgZ2V0VmFsdWVzID0gYXN5bmMgKGRhdGFzZXROYW1lOiBzdHJpbmcsIHZhcmlhYmxlTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgdmFsdWVzID0gZ2V0VmFsdWVzRnJvbURhdGFzZXQoZGF0YXNldHMsIGxheWVycywgZGF0YXNldE5hbWUsIHZhcmlhYmxlTmFtZSk7XG4gICAgcmV0dXJuIHZhbHVlcyBhcyBudW1iZXJbXTtcbiAgfTtcblxuICBjb25zdCBnZXRHZW9tZXRyaWVzID0gYXN5bmMgKGRhdGFzZXROYW1lOiBzdHJpbmcpID0+IHtcbiAgICBsZXQgZ2VvbXMgPSBnZXRHZW9tZXRyaWVzRnJvbURhdGFzZXQoZGF0YXNldHMsIGxheWVycywgbGF5ZXJEYXRhLCBkYXRhc2V0TmFtZSk7XG4gICAgaWYgKGdlb21zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgLy8gZ2V0IHRoZSBnZW9tcyBmcm9tIHRoZSBjYWNoZVxuICAgICAgY29uc3QgZ2VvanNvbiA9IGdldENhY2hlZERhdGEoZGF0YXNldE5hbWUpO1xuICAgICAgaWYgKGdlb2pzb24gJiYgJ2ZlYXR1cmVzJyBpbiBnZW9qc29uKSB7XG4gICAgICAgIGdlb21zID0gZ2VvanNvbi5mZWF0dXJlcztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGdlb21zO1xuICB9O1xuXG4gIGNvbnN0IGdldE1hcGJveFRva2VuID0gKCkgPT4ge1xuICAgIGlmIChhaUFzc2lzdGFudC5jb25maWcubWFwYm94VG9rZW4pIHtcbiAgICAgIHJldHVybiBhaUFzc2lzdGFudC5jb25maWcubWFwYm94VG9rZW47XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignTWFwYm94IHRva2VuIGlzIG5vdCBwcm92aWRlZCcpO1xuICB9O1xuXG4gIC8vIGdlbyB0b29sc1xuICBjb25zdCBjbGFzc2lmeVRvb2w6IERhdGFDbGFzc2lmeVRvb2wgPSB7XG4gICAgLi4uZGF0YUNsYXNzaWZ5LFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmRhdGFDbGFzc2lmeS5jb250ZXh0LFxuICAgICAgZ2V0VmFsdWVzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHdlaWdodHNUb29sOiBTcGF0aWFsV2VpZ2h0c1Rvb2wgPSB7XG4gICAgLi4uc3BhdGlhbFdlaWdodHMsXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uc3BhdGlhbFdlaWdodHMuY29udGV4dCxcbiAgICAgIGdldEdlb21ldHJpZXNcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZ2xvYmFsTW9yYW5Ub29sOiBHbG9iYWxNb3JhblRvb2wgPSB7XG4gICAgLi4uZ2xvYmFsTW9yYW4sXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uZ2xvYmFsTW9yYW4uY29udGV4dCxcbiAgICAgIGdldFZhbHVlc1xuICAgIH1cbiAgfTtcblxuICBjb25zdCByZWdyZXNzaW9uVG9vbDogU3BhdGlhbFJlZ3Jlc3Npb25Ub29sID0ge1xuICAgIC4uLnNwYXRpYWxSZWdyZXNzaW9uLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLnNwYXRpYWxSZWdyZXNzaW9uLmNvbnRleHQsXG4gICAgICBnZXRWYWx1ZXNcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgbGlzYVRvb2w6IExpc2FUb29sID0ge1xuICAgIC4uLmxpc2EsXG4gICAgY29udGV4dDoge1xuICAgICAgLi4ubGlzYS5jb250ZXh0LFxuICAgICAgZ2V0VmFsdWVzXG4gICAgfSxcbiAgICBjb21wb25lbnQ6IExpc2FUb29sQ29tcG9uZW50XG4gIH07XG5cbiAgY29uc3Qgc3BhdGlhbEpvaW5Ub29sOiBTcGF0aWFsSm9pblRvb2wgPSB7XG4gICAgLi4uc3BhdGlhbEpvaW4sXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uc3BhdGlhbEpvaW4uY29udGV4dCxcbiAgICAgIGdldFZhbHVlcyxcbiAgICAgIGdldEdlb21ldHJpZXNcbiAgICB9LFxuICAgIGNvbXBvbmVudDogQ3VzdG9tU3BhdGlhbEpvaW5Ub29sQ29tcG9uZW50XG4gIH07XG5cbiAgY29uc3Qgc3BhdGlhbEZpbHRlclRvb2wgPSB7XG4gICAgLi4uc3BhdGlhbEZpbHRlcixcbiAgICBjb250ZXh0OiB7XG4gICAgICAuLi5zcGF0aWFsRmlsdGVyLmNvbnRleHQsXG4gICAgICBnZXRWYWx1ZXMsXG4gICAgICBnZXRHZW9tZXRyaWVzXG4gICAgfSxcbiAgICBjb21wb25lbnQ6IEN1c3RvbVNwYXRpYWxKb2luVG9vbENvbXBvbmVudFxuICB9O1xuXG4gIGNvbnN0IHJvdXRpbmdUb29sOiBSb3V0aW5nVG9vbCA9IHtcbiAgICAuLi5yb3V0aW5nLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLnJvdXRpbmcuY29udGV4dCxcbiAgICAgIGdldE1hcGJveFRva2VuXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGlzb2Nocm9uZVRvb2w6IElzb2Nocm9uZVRvb2wgPSB7XG4gICAgLi4uaXNvY2hyb25lLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmlzb2Nocm9uZS5jb250ZXh0LFxuICAgICAgZ2V0TWFwYm94VG9rZW5cbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBjbGFzc2lmeVRvb2wsXG4gICAgd2VpZ2h0c1Rvb2wsXG4gICAgZ2xvYmFsTW9yYW5Ub29sLFxuICAgIHJlZ3Jlc3Npb25Ub29sLFxuICAgIGxpc2FUb29sLFxuICAgIHNwYXRpYWxKb2luVG9vbCxcbiAgICBzcGF0aWFsRmlsdGVyVG9vbCxcbiAgICBidWZmZXIsXG4gICAgY2VudHJvaWQsXG4gICAgZGlzc29sdmUsXG4gICAgbGVuZ3RoLFxuICAgIGFyZWEsXG4gICAgcGVyaW1ldGVyLFxuICAgIGdldFVzU3RhdGVHZW9qc29uLFxuICAgIGdldFVzQ291bnR5R2VvanNvbixcbiAgICBnZXRVc1ppcGNvZGVHZW9qc29uLFxuICAgIHF1ZXJ5VVNaaXBjb2RlcyxcbiAgICBnZW9jb2RpbmcsXG4gICAgcm91dGluZzogcm91dGluZ1Rvb2wsXG4gICAgaXNvY2hyb25lOiBpc29jaHJvbmVUb29sXG4gIH07XG59XG5cbi8qKlxuICogVXNlIFNwYXRpYWxKb2luVG9vbENvbXBvbmVudCB0byBhZGQgdGhlIGpvaW4gcmVzdWx0IHRvIGtlcGxlci5nbFxuICovXG5mdW5jdGlvbiBDdXN0b21TcGF0aWFsSm9pblRvb2xDb21wb25lbnQocHJvcHMpIHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXN5bmMgZnVuY3Rpb24gYWRkSm9pbmVkRGF0YXNldFRvTWFwKCkge1xuICAgICAgaWYgKHByb3BzLmpvaW5lZERhdGFzZXRJZCAmJiBwcm9wcy5qb2luZWREYXRhc2V0KSB7XG4gICAgICAgIC8vIGFkZCB0aGUgam9pbmVkIGRhdGFzZXQgdG8ga2VwbGVyLmdsXG4gICAgICAgIGNvbnN0IHBhcnNlZERhdGEgPSBhd2FpdCBwcm9jZXNzRmlsZURhdGEoe1xuICAgICAgICAgIGNvbnRlbnQ6IHtcbiAgICAgICAgICAgIGRhdGE6IHByb3BzLmpvaW5lZERhdGFzZXQsXG4gICAgICAgICAgICBmaWxlTmFtZTogcHJvcHMuam9pbmVkRGF0YXNldElkXG4gICAgICAgICAgfSxcbiAgICAgICAgICBmaWxlQ2FjaGU6IFtdXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgIGFkZERhdGFUb01hcCh7ZGF0YXNldHM6IHBhcnNlZERhdGEsIG9wdGlvbnM6IHthdXRvQ3JlYXRlTGF5ZXJzOiB0cnVlLCBjZW50ZXJNYXA6IGZhbHNlfX0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIGFkZEpvaW5lZERhdGFzZXRUb01hcCgpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgfSwgW10pO1xuXG4gIHJldHVybiA8U3BhdGlhbEpvaW5Ub29sQ29tcG9uZW50IHsuLi5wcm9wc30gLz47XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBRixPQUFBO0FBc0JBLElBQUFHLElBQUEsR0FBQUgsT0FBQTtBQWNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUVBLElBQUFNLFNBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLE1BQUEsR0FBQVAsT0FBQTtBQUF1RSxTQUFBUSx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVYsd0JBQUFVLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFHLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLE9BQUFRLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWQsQ0FBQSxvQkFBQWMsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsQ0FBQSxTQUFBRyxDQUFBLEdBQUFQLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBYixDQUFBLEVBQUFjLENBQUEsVUFBQUcsQ0FBQSxLQUFBQSxDQUFBLENBQUFWLEdBQUEsSUFBQVUsQ0FBQSxDQUFBQyxHQUFBLElBQUFQLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSixDQUFBLEVBQUFNLENBQUEsRUFBQUcsQ0FBQSxJQUFBVCxDQUFBLENBQUFNLENBQUEsSUFBQWQsQ0FBQSxDQUFBYyxDQUFBLFlBQUFOLENBQUEsY0FBQVIsQ0FBQSxFQUFBRyxDQUFBLElBQUFBLENBQUEsQ0FBQWUsR0FBQSxDQUFBbEIsQ0FBQSxFQUFBUSxDQUFBLEdBQUFBLENBQUE7QUFBQSxTQUFBVyxRQUFBbkIsQ0FBQSxFQUFBRSxDQUFBLFFBQUFDLENBQUEsR0FBQVEsTUFBQSxDQUFBUyxJQUFBLENBQUFwQixDQUFBLE9BQUFXLE1BQUEsQ0FBQVUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBWCxNQUFBLENBQUFVLHFCQUFBLENBQUFyQixDQUFBLEdBQUFFLENBQUEsS0FBQW9CLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFyQixDQUFBLFdBQUFTLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBRSxDQUFBLEVBQUFzQixVQUFBLE9BQUFyQixDQUFBLENBQUFzQixJQUFBLENBQUFDLEtBQUEsQ0FBQXZCLENBQUEsRUFBQW1CLENBQUEsWUFBQW5CLENBQUE7QUFBQSxTQUFBd0IsY0FBQTNCLENBQUEsYUFBQUUsQ0FBQSxNQUFBQSxDQUFBLEdBQUEwQixTQUFBLENBQUFDLE1BQUEsRUFBQTNCLENBQUEsVUFBQUMsQ0FBQSxXQUFBeUIsU0FBQSxDQUFBMUIsQ0FBQSxJQUFBMEIsU0FBQSxDQUFBMUIsQ0FBQSxRQUFBQSxDQUFBLE9BQUFpQixPQUFBLENBQUFSLE1BQUEsQ0FBQVIsQ0FBQSxPQUFBMkIsT0FBQSxXQUFBNUIsQ0FBQSxRQUFBNkIsZ0JBQUEsYUFBQS9CLENBQUEsRUFBQUUsQ0FBQSxFQUFBQyxDQUFBLENBQUFELENBQUEsU0FBQVMsTUFBQSxDQUFBcUIseUJBQUEsR0FBQXJCLE1BQUEsQ0FBQXNCLGdCQUFBLENBQUFqQyxDQUFBLEVBQUFXLE1BQUEsQ0FBQXFCLHlCQUFBLENBQUE3QixDQUFBLEtBQUFnQixPQUFBLENBQUFSLE1BQUEsQ0FBQVIsQ0FBQSxHQUFBMkIsT0FBQSxXQUFBNUIsQ0FBQSxJQUFBUyxNQUFBLENBQUFDLGNBQUEsQ0FBQVosQ0FBQSxFQUFBRSxDQUFBLEVBQUFTLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVYsQ0FBQSxFQUFBRCxDQUFBLGlCQUFBRixDQUFBLElBN0N2RTtBQUNBO0FBK0NPLFNBQVNrQyxXQUFXQSxDQUN6QkMsV0FBNkIsRUFDN0JDLFFBQWtCLEVBQ2xCQyxNQUFlLEVBQ2ZDLFNBQWdCLEVBQ2hCO0VBQ0E7RUFDQSxJQUFNQyxTQUFTO0lBQUEsSUFBQUMsSUFBQSxPQUFBQyxrQkFBQSwyQkFBQUMsWUFBQSxZQUFBQyxJQUFBLENBQUcsU0FBQUMsUUFBT0MsV0FBbUIsRUFBRUMsWUFBb0I7TUFBQSxJQUFBQyxNQUFBO01BQUEsT0FBQUwsWUFBQSxZQUFBTSxJQUFBLFVBQUFDLFNBQUFDLFFBQUE7UUFBQSxrQkFBQUEsUUFBQSxDQUFBQyxJQUFBLEdBQUFELFFBQUEsQ0FBQUUsSUFBQTtVQUFBO1lBQzFETCxNQUFNLEdBQUcsSUFBQU0sMkJBQW9CLEVBQUNqQixRQUFRLEVBQUVDLE1BQU0sRUFBRVEsV0FBVyxFQUFFQyxZQUFZLENBQUM7WUFBQSxPQUFBSSxRQUFBLENBQUFJLE1BQUEsV0FDekVQLE1BQU07VUFBQTtVQUFBO1lBQUEsT0FBQUcsUUFBQSxDQUFBSyxJQUFBO1FBQUE7TUFBQSxHQUFBWCxPQUFBO0lBQUEsQ0FDZDtJQUFBLGdCQUhLTCxTQUFTQSxDQUFBaUIsRUFBQSxFQUFBQyxHQUFBO01BQUEsT0FBQWpCLElBQUEsQ0FBQWQsS0FBQSxPQUFBRSxTQUFBO0lBQUE7RUFBQSxHQUdkO0VBRUQsSUFBTThCLGFBQWE7SUFBQSxJQUFBQyxLQUFBLE9BQUFsQixrQkFBQSwyQkFBQUMsWUFBQSxZQUFBQyxJQUFBLENBQUcsU0FBQWlCLFNBQU9mLFdBQW1CO01BQUEsSUFBQWdCLEtBQUEsRUFBQUMsT0FBQTtNQUFBLE9BQUFwQixZQUFBLFlBQUFNLElBQUEsVUFBQWUsVUFBQUMsU0FBQTtRQUFBLGtCQUFBQSxTQUFBLENBQUFiLElBQUEsR0FBQWEsU0FBQSxDQUFBWixJQUFBO1VBQUE7WUFDMUNTLEtBQUssR0FBRyxJQUFBSSwrQkFBd0IsRUFBQzdCLFFBQVEsRUFBRUMsTUFBTSxFQUFFQyxTQUFTLEVBQUVPLFdBQVcsQ0FBQztZQUM5RSxJQUFJZ0IsS0FBSyxDQUFDaEMsTUFBTSxLQUFLLENBQUMsRUFBRTtjQUN0QjtjQUNNaUMsT0FBTyxHQUFHLElBQUFJLGtCQUFhLEVBQUNyQixXQUFXLENBQUM7Y0FDMUMsSUFBSWlCLE9BQU8sSUFBSSxVQUFVLElBQUlBLE9BQU8sRUFBRTtnQkFDcENELEtBQUssR0FBR0MsT0FBTyxDQUFDSyxRQUFRO2NBQzFCO1lBQ0Y7WUFBQyxPQUFBSCxTQUFBLENBQUFWLE1BQUEsV0FDTU8sS0FBSztVQUFBO1VBQUE7WUFBQSxPQUFBRyxTQUFBLENBQUFULElBQUE7UUFBQTtNQUFBLEdBQUFLLFFBQUE7SUFBQSxDQUNiO0lBQUEsZ0JBVktGLGFBQWFBLENBQUFVLEdBQUE7TUFBQSxPQUFBVCxLQUFBLENBQUFqQyxLQUFBLE9BQUFFLFNBQUE7SUFBQTtFQUFBLEdBVWxCO0VBRUQsSUFBTXlDLGNBQWMsR0FBRyxTQUFqQkEsY0FBY0EsQ0FBQSxFQUFTO0lBQzNCLElBQUlsQyxXQUFXLENBQUNtQyxNQUFNLENBQUNDLFdBQVcsRUFBRTtNQUNsQyxPQUFPcEMsV0FBVyxDQUFDbUMsTUFBTSxDQUFDQyxXQUFXO0lBQ3ZDO0lBQ0EsTUFBTSxJQUFJQyxLQUFLLENBQUMsOEJBQThCLENBQUM7RUFDakQsQ0FBQzs7RUFFRDtFQUNBLElBQU1DLFlBQThCLEdBQUE5QyxhQUFBLENBQUFBLGFBQUEsS0FDL0IrQyxtQkFBWTtJQUNmQyxPQUFPLEVBQUFoRCxhQUFBLENBQUFBLGFBQUEsS0FDRitDLG1CQUFZLENBQUNDLE9BQU87TUFDdkJwQyxTQUFTLEVBQVRBO0lBQVM7RUFDVixFQUNGO0VBRUQsSUFBTXFDLFdBQStCLEdBQUFqRCxhQUFBLENBQUFBLGFBQUEsS0FDaENrRCxxQkFBYztJQUNqQkYsT0FBTyxFQUFBaEQsYUFBQSxDQUFBQSxhQUFBLEtBQ0ZrRCxxQkFBYyxDQUFDRixPQUFPO01BQ3pCakIsYUFBYSxFQUFiQTtJQUFhO0VBQ2QsRUFDRjtFQUVELElBQU1vQixlQUFnQyxHQUFBbkQsYUFBQSxDQUFBQSxhQUFBLEtBQ2pDb0Qsa0JBQVc7SUFDZEosT0FBTyxFQUFBaEQsYUFBQSxDQUFBQSxhQUFBLEtBQ0ZvRCxrQkFBVyxDQUFDSixPQUFPO01BQ3RCcEMsU0FBUyxFQUFUQTtJQUFTO0VBQ1YsRUFDRjtFQUVELElBQU15QyxjQUFxQyxHQUFBckQsYUFBQSxDQUFBQSxhQUFBLEtBQ3RDc0Qsd0JBQWlCO0lBQ3BCTixPQUFPLEVBQUFoRCxhQUFBLENBQUFBLGFBQUEsS0FDRnNELHdCQUFpQixDQUFDTixPQUFPO01BQzVCcEMsU0FBUyxFQUFUQTtJQUFTO0VBQ1YsRUFDRjtFQUVELElBQU0yQyxRQUFrQixHQUFBdkQsYUFBQSxDQUFBQSxhQUFBLEtBQ25Cd0QsV0FBSTtJQUNQUixPQUFPLEVBQUFoRCxhQUFBLENBQUFBLGFBQUEsS0FDRndELFdBQUksQ0FBQ1IsT0FBTztNQUNmcEMsU0FBUyxFQUFUQTtJQUFTLEVBQ1Y7SUFDRDZDLFNBQVMsRUFBRUM7RUFBaUIsRUFDN0I7RUFFRCxJQUFNQyxlQUFnQyxHQUFBM0QsYUFBQSxDQUFBQSxhQUFBLEtBQ2pDNEQsa0JBQVc7SUFDZFosT0FBTyxFQUFBaEQsYUFBQSxDQUFBQSxhQUFBLEtBQ0Y0RCxrQkFBVyxDQUFDWixPQUFPO01BQ3RCcEMsU0FBUyxFQUFUQSxTQUFTO01BQ1RtQixhQUFhLEVBQWJBO0lBQWEsRUFDZDtJQUNEMEIsU0FBUyxFQUFFSTtFQUE4QixFQUMxQztFQUVELElBQU1DLGlCQUFpQixHQUFBOUQsYUFBQSxDQUFBQSxhQUFBLEtBQ2xCK0Qsb0JBQWE7SUFDaEJmLE9BQU8sRUFBQWhELGFBQUEsQ0FBQUEsYUFBQSxLQUNGK0Qsb0JBQWEsQ0FBQ2YsT0FBTztNQUN4QnBDLFNBQVMsRUFBVEEsU0FBUztNQUNUbUIsYUFBYSxFQUFiQTtJQUFhLEVBQ2Q7SUFDRDBCLFNBQVMsRUFBRUk7RUFBOEIsRUFDMUM7RUFFRCxJQUFNRyxXQUF3QixHQUFBaEUsYUFBQSxDQUFBQSxhQUFBLEtBQ3pCaUUsWUFBTztJQUNWakIsT0FBTyxFQUFBaEQsYUFBQSxDQUFBQSxhQUFBLEtBQ0ZpRSxZQUFPLENBQUNqQixPQUFPO01BQ2xCTixjQUFjLEVBQWRBO0lBQWM7RUFDZixFQUNGO0VBRUQsSUFBTXdCLGFBQTRCLEdBQUFsRSxhQUFBLENBQUFBLGFBQUEsS0FDN0JtRSxjQUFTO0lBQ1puQixPQUFPLEVBQUFoRCxhQUFBLENBQUFBLGFBQUEsS0FDRm1FLGNBQVMsQ0FBQ25CLE9BQU87TUFDcEJOLGNBQWMsRUFBZEE7SUFBYztFQUNmLEVBQ0Y7RUFFRCxPQUFPO0lBQ0xJLFlBQVksRUFBWkEsWUFBWTtJQUNaRyxXQUFXLEVBQVhBLFdBQVc7SUFDWEUsZUFBZSxFQUFmQSxlQUFlO0lBQ2ZFLGNBQWMsRUFBZEEsY0FBYztJQUNkRSxRQUFRLEVBQVJBLFFBQVE7SUFDUkksZUFBZSxFQUFmQSxlQUFlO0lBQ2ZHLGlCQUFpQixFQUFqQkEsaUJBQWlCO0lBQ2pCTSxNQUFNLEVBQU5BLGFBQU07SUFDTkMsUUFBUSxFQUFSQSxlQUFRO0lBQ1JDLFFBQVEsRUFBUkEsZUFBUTtJQUNScEUsTUFBTSxFQUFOQSxhQUFNO0lBQ05xRSxJQUFJLEVBQUpBLFdBQUk7SUFDSkMsU0FBUyxFQUFUQSxnQkFBUztJQUNUQyxpQkFBaUIsRUFBakJBLHNCQUFpQjtJQUNqQkMsa0JBQWtCLEVBQWxCQSx1QkFBa0I7SUFDbEJDLG1CQUFtQixFQUFuQkEsd0JBQW1CO0lBQ25CQyxlQUFlLEVBQWZBLG9CQUFlO0lBQ2ZDLFNBQVMsRUFBVEEsY0FBUztJQUNUWixPQUFPLEVBQUVELFdBQVc7SUFDcEJHLFNBQVMsRUFBRUQ7RUFDYixDQUFDO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsU0FBU0wsOEJBQThCQSxDQUFDaUIsS0FBSyxFQUFFO0VBQzdDLElBQU1DLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFFOUIsSUFBQUMsZ0JBQVMsRUFBQyxZQUFNO0lBQUEsU0FDQ0MscUJBQXFCQSxDQUFBO01BQUEsT0FBQUMsc0JBQUEsQ0FBQXBGLEtBQUEsT0FBQUUsU0FBQTtJQUFBO0lBQUEsU0FBQWtGLHVCQUFBO01BQUFBLHNCQUFBLE9BQUFyRSxrQkFBQSwyQkFBQUMsWUFBQSxZQUFBQyxJQUFBLENBQXBDLFNBQUFvRSxTQUFBO1FBQUEsSUFBQUMsVUFBQTtRQUFBLE9BQUF0RSxZQUFBLFlBQUFNLElBQUEsVUFBQWlFLFVBQUFDLFNBQUE7VUFBQSxrQkFBQUEsU0FBQSxDQUFBL0QsSUFBQSxHQUFBK0QsU0FBQSxDQUFBOUQsSUFBQTtZQUFBO2NBQUEsTUFDTXFELEtBQUssQ0FBQ1UsZUFBZSxJQUFJVixLQUFLLENBQUNXLGFBQWE7Z0JBQUFGLFNBQUEsQ0FBQTlELElBQUE7Z0JBQUE7Y0FBQTtjQUFBOEQsU0FBQSxDQUFBOUQsSUFBQTtjQUFBLE9BRXJCLElBQUFpRSwyQkFBZSxFQUFDO2dCQUN2Q0MsT0FBTyxFQUFFO2tCQUNQQyxJQUFJLEVBQUVkLEtBQUssQ0FBQ1csYUFBYTtrQkFDekJJLFFBQVEsRUFBRWYsS0FBSyxDQUFDVTtnQkFDbEIsQ0FBQztnQkFDRE0sU0FBUyxFQUFFO2NBQ2IsQ0FBQyxDQUFDO1lBQUE7Y0FOSVQsVUFBVSxHQUFBRSxTQUFBLENBQUFRLElBQUE7Y0FRaEJoQixRQUFRLENBQ04sSUFBQWlCLHFCQUFZLEVBQUM7Z0JBQUN2RixRQUFRLEVBQUU0RSxVQUFVO2dCQUFFWSxPQUFPLEVBQUU7a0JBQUNDLGdCQUFnQixFQUFFLElBQUk7a0JBQUVDLFNBQVMsRUFBRTtnQkFBSztjQUFDLENBQUMsQ0FDMUYsQ0FBQztZQUFDO1lBQUE7Y0FBQSxPQUFBWixTQUFBLENBQUEzRCxJQUFBO1VBQUE7UUFBQSxHQUFBd0QsUUFBQTtNQUFBLENBRUw7TUFBQSxPQUFBRCxzQkFBQSxDQUFBcEYsS0FBQSxPQUFBRSxTQUFBO0lBQUE7SUFDRGlGLHFCQUFxQixDQUFDLENBQUM7SUFDdkI7RUFDRixDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU4sb0JBQU94SCxNQUFBLFlBQUEwSSxhQUFBLENBQUN0SSxNQUFBLENBQUF1SSx3QkFBd0IsRUFBS3ZCLEtBQVEsQ0FBQztBQUNoRCIsImlnbm9yZUxpc3QiOltdfQ==
237
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9nZW9kYSIsIl9vc20iLCJfcHJvY2Vzc29ycyIsIl9hY3Rpb25zIiwiX2xpc2FUb29sIiwiX3V0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZ2V0R2VvVG9vbHMiLCJhaUFzc2lzdGFudCIsImRhdGFzZXRzIiwibGF5ZXJzIiwibGF5ZXJEYXRhIiwiZ2V0VmFsdWVzIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwiZGF0YXNldE5hbWUiLCJ2YXJpYWJsZU5hbWUiLCJ2YWx1ZXMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiZ2V0VmFsdWVzRnJvbURhdGFzZXQiLCJhYnJ1cHQiLCJzdG9wIiwiX3giLCJfeDIiLCJnZXRHZW9tZXRyaWVzIiwiX3JlZjIiLCJfY2FsbGVlMiIsImdlb21zIiwiZ2VvanNvbiIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImdldEdlb21ldHJpZXNGcm9tRGF0YXNldCIsImdldENhY2hlZERhdGEiLCJmZWF0dXJlcyIsIl94MyIsImdldE1hcGJveFRva2VuIiwiY29uZmlnIiwibWFwYm94VG9rZW4iLCJFcnJvciIsImNsYXNzaWZ5VG9vbCIsImRhdGFDbGFzc2lmeSIsImNvbnRleHQiLCJ3ZWlnaHRzVG9vbCIsInNwYXRpYWxXZWlnaHRzIiwiZ2xvYmFsTW9yYW5Ub29sIiwiZ2xvYmFsTW9yYW4iLCJyZWdyZXNzaW9uVG9vbCIsInNwYXRpYWxSZWdyZXNzaW9uIiwibGlzYVRvb2wiLCJsaXNhIiwiY29tcG9uZW50IiwiTGlzYVRvb2xDb21wb25lbnQiLCJzcGF0aWFsSm9pblRvb2wiLCJzcGF0aWFsSm9pbiIsIkN1c3RvbVNwYXRpYWxKb2luVG9vbENvbXBvbmVudCIsInNwYXRpYWxGaWx0ZXJUb29sIiwic3BhdGlhbEZpbHRlciIsInJvdXRpbmdUb29sIiwicm91dGluZyIsImlzb2Nocm9uZVRvb2wiLCJpc29jaHJvbmUiLCJidWZmZXJUb29sIiwiYnVmZmVyIiwiY2VudHJvaWRUb29sIiwiY2VudHJvaWQiLCJkaXNzb2x2ZVRvb2wiLCJkaXNzb2x2ZSIsImxlbmd0aFRvb2wiLCJhcmVhVG9vbCIsImFyZWEiLCJwZXJpbWV0ZXJUb29sIiwicGVyaW1ldGVyIiwicm9hZHNUb29sIiwicm9hZHMiLCJnZXRVc1N0YXRlR2VvanNvbiIsImdldFVzQ291bnR5R2VvanNvbiIsImdldFVzWmlwY29kZUdlb2pzb24iLCJxdWVyeVVTWmlwY29kZXMiLCJnZW9jb2RpbmciLCJwcm9wcyIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJ1c2VFZmZlY3QiLCJhZGRKb2luZWREYXRhc2V0VG9NYXAiLCJfYWRkSm9pbmVkRGF0YXNldFRvTWFwIiwiX2NhbGxlZTMiLCJwYXJzZWREYXRhIiwiX2NhbGxlZTMkIiwiX2NvbnRleHQzIiwiam9pbmVkRGF0YXNldElkIiwiam9pbmVkRGF0YXNldCIsInByb2Nlc3NGaWxlRGF0YSIsImNvbnRlbnQiLCJkYXRhIiwiZmlsZU5hbWUiLCJmaWxlQ2FjaGUiLCJzZW50IiwiYWRkRGF0YVRvTWFwIiwib3B0aW9ucyIsImF1dG9DcmVhdGVMYXllcnMiLCJjZW50ZXJNYXAiLCJjcmVhdGVFbGVtZW50IiwiU3BhdGlhbEpvaW5Ub29sQ29tcG9uZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rvb2xzL2dlby10b29scy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7dXNlRWZmZWN0fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge3VzZURpc3BhdGNofSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQge1xuICBkYXRhQ2xhc3NpZnksXG4gIERhdGFDbGFzc2lmeVRvb2wsXG4gIHNwYXRpYWxXZWlnaHRzLFxuICBTcGF0aWFsV2VpZ2h0c1Rvb2wsXG4gIGdsb2JhbE1vcmFuLFxuICBHbG9iYWxNb3JhblRvb2wsXG4gIHNwYXRpYWxSZWdyZXNzaW9uLFxuICBTcGF0aWFsUmVncmVzc2lvblRvb2wsXG4gIGxpc2EsXG4gIExpc2FUb29sLFxuICBzcGF0aWFsSm9pbixcbiAgU3BhdGlhbEpvaW5Ub29sLFxuICBzcGF0aWFsRmlsdGVyLFxuICBTcGF0aWFsSm9pblRvb2xDb21wb25lbnQsXG4gIGJ1ZmZlcixcbiAgY2VudHJvaWQsXG4gIGRpc3NvbHZlLFxuICBsZW5ndGgsXG4gIGFyZWEsXG4gIHBlcmltZXRlcixcbiAgQnVmZmVyVG9vbCxcbiAgQ2VudHJvaWRUb29sLFxuICBEaXNzb2x2ZVRvb2xcbn0gZnJvbSAnQG9wZW5hc3Npc3RhbnQvZ2VvZGEnO1xuaW1wb3J0IHtcbiAgZ2V0VXNTdGF0ZUdlb2pzb24sXG4gIGdldFVzQ291bnR5R2VvanNvbixcbiAgZ2V0VXNaaXBjb2RlR2VvanNvbixcbiAgcXVlcnlVU1ppcGNvZGVzLFxuICBnZW9jb2RpbmcsXG4gIHJvdXRpbmcsXG4gIGlzb2Nocm9uZSxcbiAgZ2V0Q2FjaGVkRGF0YSxcbiAgSXNvY2hyb25lVG9vbCxcbiAgUm91dGluZ1Rvb2wsXG4gIHJvYWRzXG59IGZyb20gJ0BvcGVuYXNzaXN0YW50L29zbSc7XG5pbXBvcnQge0RhdGFzZXRzfSBmcm9tICdAa2VwbGVyLmdsL3RhYmxlJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7cHJvY2Vzc0ZpbGVEYXRhfSBmcm9tICdAa2VwbGVyLmdsL3Byb2Nlc3NvcnMnO1xuaW1wb3J0IHthZGREYXRhVG9NYXB9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5cbmltcG9ydCB7TGlzYVRvb2xDb21wb25lbnR9IGZyb20gJy4vbGlzYS10b29sJztcbmltcG9ydCB7Z2V0R2VvbWV0cmllc0Zyb21EYXRhc2V0LCBnZXRWYWx1ZXNGcm9tRGF0YXNldH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQge0FpQXNzaXN0YW50U3RhdGV9IGZyb20gJy4uL3JlZHVjZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdlb1Rvb2xzKFxuICBhaUFzc2lzdGFudDogQWlBc3Npc3RhbnRTdGF0ZSxcbiAgZGF0YXNldHM6IERhdGFzZXRzLFxuICBsYXllcnM6IExheWVyW10sXG4gIGxheWVyRGF0YTogYW55W11cbikge1xuICAvLyBjb250ZXh0IGZvciBnZW8gdG9vbHNcbiAgY29uc3QgZ2V0VmFsdWVzID0gYXN5bmMgKGRhdGFzZXROYW1lOiBzdHJpbmcsIHZhcmlhYmxlTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgdmFsdWVzID0gZ2V0VmFsdWVzRnJvbURhdGFzZXQoZGF0YXNldHMsIGxheWVycywgZGF0YXNldE5hbWUsIHZhcmlhYmxlTmFtZSk7XG4gICAgcmV0dXJuIHZhbHVlcyBhcyBudW1iZXJbXTtcbiAgfTtcblxuICBjb25zdCBnZXRHZW9tZXRyaWVzID0gYXN5bmMgKGRhdGFzZXROYW1lOiBzdHJpbmcpID0+IHtcbiAgICBsZXQgZ2VvbXMgPSBnZXRHZW9tZXRyaWVzRnJvbURhdGFzZXQoZGF0YXNldHMsIGxheWVycywgbGF5ZXJEYXRhLCBkYXRhc2V0TmFtZSk7XG4gICAgaWYgKGdlb21zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgLy8gZ2V0IHRoZSBnZW9tcyBmcm9tIHRoZSBjYWNoZVxuICAgICAgY29uc3QgZ2VvanNvbiA9IGdldENhY2hlZERhdGEoZGF0YXNldE5hbWUpO1xuICAgICAgaWYgKGdlb2pzb24gJiYgJ2ZlYXR1cmVzJyBpbiBnZW9qc29uKSB7XG4gICAgICAgIGdlb21zID0gZ2VvanNvbi5mZWF0dXJlcztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGdlb21zO1xuICB9O1xuXG4gIGNvbnN0IGdldE1hcGJveFRva2VuID0gKCkgPT4ge1xuICAgIGlmIChhaUFzc2lzdGFudC5jb25maWcubWFwYm94VG9rZW4pIHtcbiAgICAgIHJldHVybiBhaUFzc2lzdGFudC5jb25maWcubWFwYm94VG9rZW47XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignTWFwYm94IHRva2VuIGlzIG5vdCBwcm92aWRlZCcpO1xuICB9O1xuXG4gIC8vIGdlbyB0b29sc1xuICBjb25zdCBjbGFzc2lmeVRvb2w6IERhdGFDbGFzc2lmeVRvb2wgPSB7XG4gICAgLi4uZGF0YUNsYXNzaWZ5LFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmRhdGFDbGFzc2lmeS5jb250ZXh0LFxuICAgICAgZ2V0VmFsdWVzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHdlaWdodHNUb29sOiBTcGF0aWFsV2VpZ2h0c1Rvb2wgPSB7XG4gICAgLi4uc3BhdGlhbFdlaWdodHMsXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uc3BhdGlhbFdlaWdodHMuY29udGV4dCxcbiAgICAgIGdldEdlb21ldHJpZXNcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZ2xvYmFsTW9yYW5Ub29sOiBHbG9iYWxNb3JhblRvb2wgPSB7XG4gICAgLi4uZ2xvYmFsTW9yYW4sXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uZ2xvYmFsTW9yYW4uY29udGV4dCxcbiAgICAgIGdldFZhbHVlc1xuICAgIH1cbiAgfTtcblxuICBjb25zdCByZWdyZXNzaW9uVG9vbDogU3BhdGlhbFJlZ3Jlc3Npb25Ub29sID0ge1xuICAgIC4uLnNwYXRpYWxSZWdyZXNzaW9uLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLnNwYXRpYWxSZWdyZXNzaW9uLmNvbnRleHQsXG4gICAgICBnZXRWYWx1ZXNcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgbGlzYVRvb2w6IExpc2FUb29sID0ge1xuICAgIC4uLmxpc2EsXG4gICAgY29udGV4dDoge1xuICAgICAgLi4ubGlzYS5jb250ZXh0LFxuICAgICAgZ2V0VmFsdWVzXG4gICAgfSxcbiAgICBjb21wb25lbnQ6IExpc2FUb29sQ29tcG9uZW50XG4gIH07XG5cbiAgY29uc3Qgc3BhdGlhbEpvaW5Ub29sOiBTcGF0aWFsSm9pblRvb2wgPSB7XG4gICAgLi4uc3BhdGlhbEpvaW4sXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uc3BhdGlhbEpvaW4uY29udGV4dCxcbiAgICAgIGdldFZhbHVlcyxcbiAgICAgIGdldEdlb21ldHJpZXNcbiAgICB9LFxuICAgIGNvbXBvbmVudDogQ3VzdG9tU3BhdGlhbEpvaW5Ub29sQ29tcG9uZW50XG4gIH07XG5cbiAgY29uc3Qgc3BhdGlhbEZpbHRlclRvb2wgPSB7XG4gICAgLi4uc3BhdGlhbEZpbHRlcixcbiAgICBjb250ZXh0OiB7XG4gICAgICAuLi5zcGF0aWFsRmlsdGVyLmNvbnRleHQsXG4gICAgICBnZXRWYWx1ZXMsXG4gICAgICBnZXRHZW9tZXRyaWVzXG4gICAgfSxcbiAgICBjb21wb25lbnQ6IEN1c3RvbVNwYXRpYWxKb2luVG9vbENvbXBvbmVudFxuICB9O1xuXG4gIGNvbnN0IHJvdXRpbmdUb29sOiBSb3V0aW5nVG9vbCA9IHtcbiAgICAuLi5yb3V0aW5nLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLnJvdXRpbmcuY29udGV4dCxcbiAgICAgIGdldE1hcGJveFRva2VuXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGlzb2Nocm9uZVRvb2w6IElzb2Nocm9uZVRvb2wgPSB7XG4gICAgLi4uaXNvY2hyb25lLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmlzb2Nocm9uZS5jb250ZXh0LFxuICAgICAgZ2V0TWFwYm94VG9rZW5cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgYnVmZmVyVG9vbDogQnVmZmVyVG9vbCA9IHtcbiAgICAuLi5idWZmZXIsXG4gICAgY29udGV4dDoge1xuICAgICAgLi4uYnVmZmVyLmNvbnRleHQsXG4gICAgICBnZXRHZW9tZXRyaWVzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGNlbnRyb2lkVG9vbDogQ2VudHJvaWRUb29sID0ge1xuICAgIC4uLmNlbnRyb2lkLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmNlbnRyb2lkLmNvbnRleHQsXG4gICAgICBnZXRHZW9tZXRyaWVzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRpc3NvbHZlVG9vbDogRGlzc29sdmVUb29sID0ge1xuICAgIC4uLmRpc3NvbHZlLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmRpc3NvbHZlLmNvbnRleHQsXG4gICAgICBnZXRHZW9tZXRyaWVzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGxlbmd0aFRvb2wgPSB7XG4gICAgLi4ubGVuZ3RoLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmxlbmd0aC5jb250ZXh0LFxuICAgICAgZ2V0R2VvbWV0cmllc1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBhcmVhVG9vbCA9IHtcbiAgICAuLi5hcmVhLFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIC4uLmFyZWEuY29udGV4dCxcbiAgICAgIGdldEdlb21ldHJpZXNcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgcGVyaW1ldGVyVG9vbCA9IHtcbiAgICAuLi5wZXJpbWV0ZXIsXG4gICAgY29udGV4dDoge1xuICAgICAgLi4ucGVyaW1ldGVyLmNvbnRleHQsXG4gICAgICBnZXRHZW9tZXRyaWVzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHJvYWRzVG9vbCA9IHtcbiAgICAuLi5yb2FkcyxcbiAgICBjb250ZXh0OiB7XG4gICAgICAuLi5yb2Fkcy5jb250ZXh0LFxuICAgICAgZ2V0R2VvbWV0cmllc1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4ge1xuICAgIGNsYXNzaWZ5VG9vbCxcbiAgICB3ZWlnaHRzVG9vbCxcbiAgICBnbG9iYWxNb3JhblRvb2wsXG4gICAgcmVncmVzc2lvblRvb2wsXG4gICAgbGlzYVRvb2wsXG4gICAgc3BhdGlhbEpvaW5Ub29sLFxuICAgIHNwYXRpYWxGaWx0ZXJUb29sLFxuICAgIGJ1ZmZlclRvb2wsXG4gICAgY2VudHJvaWRUb29sLFxuICAgIGRpc3NvbHZlVG9vbCxcbiAgICBsZW5ndGhUb29sLFxuICAgIGFyZWFUb29sLFxuICAgIHBlcmltZXRlclRvb2wsXG4gICAgZ2V0VXNTdGF0ZUdlb2pzb24sXG4gICAgZ2V0VXNDb3VudHlHZW9qc29uLFxuICAgIGdldFVzWmlwY29kZUdlb2pzb24sXG4gICAgcXVlcnlVU1ppcGNvZGVzLFxuICAgIGdlb2NvZGluZyxcbiAgICByb3V0aW5nOiByb3V0aW5nVG9vbCxcbiAgICBpc29jaHJvbmU6IGlzb2Nocm9uZVRvb2wsXG4gICAgcm9hZHM6IHJvYWRzVG9vbFxuICB9O1xufVxuXG4vKipcbiAqIFVzZSBTcGF0aWFsSm9pblRvb2xDb21wb25lbnQgdG8gYWRkIHRoZSBqb2luIHJlc3VsdCB0byBrZXBsZXIuZ2xcbiAqL1xuZnVuY3Rpb24gQ3VzdG9tU3BhdGlhbEpvaW5Ub29sQ29tcG9uZW50KHByb3BzKSB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGFzeW5jIGZ1bmN0aW9uIGFkZEpvaW5lZERhdGFzZXRUb01hcCgpIHtcbiAgICAgIGlmIChwcm9wcy5qb2luZWREYXRhc2V0SWQgJiYgcHJvcHMuam9pbmVkRGF0YXNldCkge1xuICAgICAgICAvLyBhZGQgdGhlIGpvaW5lZCBkYXRhc2V0IHRvIGtlcGxlci5nbFxuICAgICAgICBjb25zdCBwYXJzZWREYXRhID0gYXdhaXQgcHJvY2Vzc0ZpbGVEYXRhKHtcbiAgICAgICAgICBjb250ZW50OiB7XG4gICAgICAgICAgICBkYXRhOiBwcm9wcy5qb2luZWREYXRhc2V0LFxuICAgICAgICAgICAgZmlsZU5hbWU6IHByb3BzLmpvaW5lZERhdGFzZXRJZFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZmlsZUNhY2hlOiBbXVxuICAgICAgICB9KTtcblxuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBhZGREYXRhVG9NYXAoe2RhdGFzZXRzOiBwYXJzZWREYXRhLCBvcHRpb25zOiB7YXV0b0NyZWF0ZUxheWVyczogdHJ1ZSwgY2VudGVyTWFwOiBmYWxzZX19KVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICBhZGRKb2luZWREYXRhc2V0VG9NYXAoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaG9va3MvZXhoYXVzdGl2ZS1kZXBzXG4gIH0sIFtdKTtcblxuICByZXR1cm4gPFNwYXRpYWxKb2luVG9vbENvbXBvbmVudCB7Li4ucHJvcHN9IC8+O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFdBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUYsT0FBQTtBQXlCQSxJQUFBRyxJQUFBLEdBQUFILE9BQUE7QUFlQSxJQUFBSSxXQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxRQUFBLEdBQUFMLE9BQUE7QUFFQSxJQUFBTSxTQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxNQUFBLEdBQUFQLE9BQUE7QUFBdUUsU0FBQVEseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQs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
@@ -99,6 +99,9 @@ function LisaToolComponent(_ref) {
99
99
  for (var i = 0; i < colors.length; i++) {
100
100
  colorLegends[colors[i]] = labels[i];
101
101
  }
102
+ var colorMap = colors.map(function (color, index) {
103
+ return [index, color];
104
+ });
102
105
  var newLayer = {
103
106
  id: layerId,
104
107
  type: layer.type,
@@ -110,17 +113,25 @@ function LisaToolComponent(_ref) {
110
113
  }, {}),
111
114
  colorScale: 'customOrdinal',
112
115
  colorField: colorField,
113
- strokeColorField: null,
116
+ strokeColorDomain: colorDomain,
117
+ strokeColorField: colorField,
118
+ strokeColorScale: 'customOrdinal',
114
119
  visConfig: _objectSpread(_objectSpread({}, layer.config.visConfig), {}, {
115
120
  colorRange: _objectSpread(_objectSpread({}, layer.config.visConfig.colorRange), {}, {
116
121
  colorDomain: colorDomain,
117
122
  colors: colors,
118
- colorMap: colors.map(function (color, index) {
119
- return [index, color];
120
- }),
123
+ colorMap: colorMap,
121
124
  colorLegends: colorLegends
122
125
  }),
123
- stroked: false
126
+ strokeColorRange: {
127
+ category: 'Custom',
128
+ name: 'custom',
129
+ colors: colors,
130
+ colorMap: colorMap
131
+ },
132
+ strokeOpacity: 1,
133
+ stroked: true,
134
+ strokedWidth: 0.5
124
135
  })
125
136
  })
126
137
  };
@@ -130,4 +141,4 @@ function LisaToolComponent(_ref) {
130
141
  }, [datasets]);
131
142
  return null;
132
143
  }
133
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3JlYWN0UmVkdXgiLCJfYWN0aW9ucyIsIl91dGlscyIsIl9sYXllckNyZWF0aW9uVG9vbCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiTGlzYVRvb2xDb21wb25lbnQiLCJfcmVmIiwiZGF0YXNldE5hbWUiLCJsaXNhRGF0YXNldE5hbWUiLCJzaWduaWZpY2FuY2VUaHJlc2hvbGQiLCJjbHVzdGVycyIsImxhZ1ZhbHVlcyIsInBWYWx1ZXMiLCJsaXNhVmFsdWVzIiwic2lnQ2F0ZWdvcmllcyIsIm5uIiwibGFiZWxzIiwiY29sb3JzIiwiZGF0YXNldHMiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiZGVtbyIsImtlcGxlckdsIiwibWFwIiwidmlzU3RhdGUiLCJsYXllcnMiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwidXNlRWZmZWN0IiwibGlzYURhdGEiLCJmaWxsQ29sb3IiLCJjbHVzdGVyIiwiaW5kZXgiLCJsYWJlbCIsIm5ld0RhdGFzZXQiLCJzYXZlQXNEYXRhc2V0IiwiYWRkRGF0YVRvTWFwIiwib3B0aW9ucyIsImF1dG9DcmVhdGVMYXllcnMiLCJjZW50ZXJNYXAiLCJkYXRhc2V0SWQiLCJmaW5kIiwiZGF0YUlkIiwibGF5ZXJJZCIsImNvbmNhdCIsImwiLCJpZCIsImxheWVyIiwiZ3Vlc3NEZWZhdWx0TGF5ZXIiLCJjb2xvckZpZWxkIiwibmFtZSIsInR5cGUiLCJjb2xvckRvbWFpbiIsIkFycmF5IiwiZnJvbSIsIl8iLCJpIiwiY29sb3JMZWdlbmRzIiwibmV3TGF5ZXIiLCJjb25maWciLCJjb2x1bW5zIiwicmVkdWNlIiwiYWNjIiwia2V5IiwidmFsdWUiLCJjb2xvclNjYWxlIiwic3Ryb2tlQ29sb3JGaWVsZCIsInZpc0NvbmZpZyIsImNvbG9yUmFuZ2UiLCJjb2xvck1hcCIsImNvbG9yIiwic3Ryb2tlZCIsImFkZExheWVyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rvb2xzL2xpc2EtdG9vbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHt1c2VFZmZlY3R9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7dXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQge2FkZERhdGFUb01hcCwgYWRkTGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5pbXBvcnQge3NhdmVBc0RhdGFzZXR9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHtndWVzc0RlZmF1bHRMYXllcn0gZnJvbSAnLi9rZXBsZXItdG9vbHMvbGF5ZXItY3JlYXRpb24tdG9vbCc7XG5pbXBvcnQge1N0YXRlfSBmcm9tICcuLi9jb21wb25lbnRzL2FpLWFzc2lzdGFudC1tYW5hZ2VyJztcblxuLyoqXG4gKiBVc2UgTGlzYVRvb2xDb21wb25lbnQgYWRkaW5nIExpc2EgcmVzdWx0IHRvIGtlcGxlci5nbFxuICovXG5leHBvcnQgZnVuY3Rpb24gTGlzYVRvb2xDb21wb25lbnQoe1xuICBkYXRhc2V0TmFtZSxcbiAgbGlzYURhdGFzZXROYW1lLFxuICBzaWduaWZpY2FuY2VUaHJlc2hvbGQsXG4gIGNsdXN0ZXJzLFxuICBsYWdWYWx1ZXMsXG4gIHBWYWx1ZXMsXG4gIGxpc2FWYWx1ZXMsXG4gIHNpZ0NhdGVnb3JpZXMsXG4gIG5uLFxuICBsYWJlbHMsXG4gIGNvbG9yc1xufSkge1xuICBjb25zdCBkYXRhc2V0cyA9IHVzZVNlbGVjdG9yKChzdGF0ZTogU3RhdGUpID0+IHN0YXRlLmRlbW8ua2VwbGVyR2wubWFwLnZpc1N0YXRlLmRhdGFzZXRzKTtcbiAgY29uc3QgbGF5ZXJzID0gdXNlU2VsZWN0b3IoKHN0YXRlOiBTdGF0ZSkgPT4gc3RhdGUuZGVtby5rZXBsZXJHbC5tYXAudmlzU3RhdGUubGF5ZXJzKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIC8vIHNhdmUgdGhlIHJlc3VsdCBmcm9tIGxpc2EgdG9vbCB0byBhIG5ldyBsaXNhIGRhdGFzZXRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBsaXNhRGF0YTogUmVjb3JkPHN0cmluZywgbnVtYmVyW10+ID0ge1xuICAgICAgY2x1c3RlcnMsXG4gICAgICBsYWdWYWx1ZXMsXG4gICAgICBwVmFsdWVzLFxuICAgICAgbGlzYVZhbHVlcyxcbiAgICAgIHNpZ0NhdGVnb3JpZXMsXG4gICAgICBubixcbiAgICAgIGZpbGxDb2xvcjogY2x1c3RlcnMubWFwKChjbHVzdGVyLCBpbmRleCkgPT5cbiAgICAgICAgcFZhbHVlc1tpbmRleF0gPCBzaWduaWZpY2FuY2VUaHJlc2hvbGQgPyBjb2xvcnNbY2x1c3Rlcl0gOiBjb2xvcnNbMF1cbiAgICAgICksXG4gICAgICBsYWJlbDogY2x1c3RlcnMubWFwKChjbHVzdGVyLCBpbmRleCkgPT5cbiAgICAgICAgcFZhbHVlc1tpbmRleF0gPCBzaWduaWZpY2FuY2VUaHJlc2hvbGQgPyBsYWJlbHNbY2x1c3Rlcl0gOiBsYWJlbHNbMF1cbiAgICAgIClcbiAgICB9O1xuICAgIC8vIGNyZWF0ZSBhIG5ldyBnZW9qc29uIGxheWVyIHVzaW5nIGNsdXN0ZXJzIHdpdGggb3JkaW5hbCBjb2xvciBzY2FsZSBhbmQgY3VzdG9tQ29sb3JTY2FsZSBhbmQgY29sb3JzXG4gICAgY29uc3QgbmV3RGF0YXNldCA9IHNhdmVBc0RhdGFzZXQoZGF0YXNldHMsIGxheWVycywgZGF0YXNldE5hbWUsIGxpc2FEYXRhc2V0TmFtZSwgbGlzYURhdGEpO1xuICAgIGlmIChuZXdEYXRhc2V0KSB7XG4gICAgICAvLyBhZGQgdGhlIG5ldyBkYXRhc2V0IHRvIHRoZSBtYXBcbiAgICAgIGRpc3BhdGNoKFxuICAgICAgICBhZGREYXRhVG9NYXAoe2RhdGFzZXRzOiBbbmV3RGF0YXNldF0sIG9wdGlvbnM6IHthdXRvQ3JlYXRlTGF5ZXJzOiBmYWxzZSwgY2VudGVyTWFwOiBmYWxzZX19KVxuICAgICAgKTtcbiAgICB9XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICB9LCBbXSk7XG5cbiAgLy8gY3JlYXRlIGEgTElTQSBsYXllciBmb3IgdGhlIG5ldyBsaXNhIGRhdGFzZXRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBkYXRhc2V0SWQgPSBPYmplY3Qua2V5cyhkYXRhc2V0cykuZmluZChcbiAgICAgIGRhdGFJZCA9PiBkYXRhc2V0c1tkYXRhSWRdLmxhYmVsID09PSBsaXNhRGF0YXNldE5hbWVcbiAgICApO1xuICAgIGlmICghZGF0YXNldElkKSByZXR1cm47XG5cbiAgICBjb25zdCBuZXdEYXRhc2V0ID0gZGF0YXNldHNbZGF0YXNldElkXTtcbiAgICBpZiAobmV3RGF0YXNldCkge1xuICAgICAgY29uc3QgbGF5ZXJJZCA9IGAke2xpc2FEYXRhc2V0TmFtZX1fbGlzYWA7XG4gICAgICAvLyBjaGVjayBpZiB0aGUgbGF5ZXIgYWxyZWFkeSBleGlzdHM/XG4gICAgICBpZiAobGF5ZXJzLmZpbmQobCA9PiBsLmlkID09PSBsYXllcklkKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICAvLyBhZGQgYSBuZXcgbGF5ZXIgZm9yIHRoZSBuZXcgZGF0YXNldFxuICAgICAgY29uc3QgbGF5ZXIgPSBndWVzc0RlZmF1bHRMYXllcihuZXdEYXRhc2V0LCAnZ2VvanNvbicpO1xuICAgICAgaWYgKCFsYXllcikgcmV0dXJuO1xuICAgICAgY29uc3QgY29sb3JGaWVsZCA9IHtcbiAgICAgICAgbmFtZTogJ2NsdXN0ZXJzJyxcbiAgICAgICAgdHlwZTogJ2ludGVnZXInXG4gICAgICB9O1xuICAgICAgY29uc3QgY29sb3JEb21haW4gPSBBcnJheS5mcm9tKHtsZW5ndGg6IGNvbG9ycy5sZW5ndGh9LCAoXywgaSkgPT4gaSk7XG4gICAgICBjb25zdCBjb2xvckxlZ2VuZHMgPSB7fTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29sb3JzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbG9yTGVnZW5kc1tjb2xvcnNbaV1dID0gbGFiZWxzW2ldO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3TGF5ZXIgPSB7XG4gICAgICAgIGlkOiBsYXllcklkLFxuICAgICAgICB0eXBlOiBsYXllci50eXBlLFxuICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAuLi5sYXllci5jb25maWcsXG4gICAgICAgICAgZGF0YUlkOiBkYXRhc2V0SWQsXG4gICAgICAgICAgY29sdW1uczogT2JqZWN0LmtleXMobGF5ZXIuY29uZmlnLmNvbHVtbnMpLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgICAgIGFjY1trZXldID0gbGF5ZXIuY29uZmlnLmNvbHVtbnNba2V5XS52YWx1ZTtcbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgfSwge30pLFxuICAgICAgICAgIGNvbG9yU2NhbGU6ICdjdXN0b21PcmRpbmFsJyxcbiAgICAgICAgICBjb2xvckZpZWxkLFxuICAgICAgICAgIHN0cm9rZUNvbG9yRmllbGQ6IG51bGwsXG4gICAgICAgICAgdmlzQ29uZmlnOiB7XG4gICAgICAgICAgICAuLi5sYXllci5jb25maWcudmlzQ29uZmlnLFxuICAgICAgICAgICAgY29sb3JSYW5nZToge1xuICAgICAgICAgICAgICAuLi5sYXllci5jb25maWcudmlzQ29uZmlnLmNvbG9yUmFuZ2UsXG4gICAgICAgICAgICAgIGNvbG9yRG9tYWluLFxuICAgICAgICAgICAgICBjb2xvcnM6IGNvbG9ycyxcbiAgICAgICAgICAgICAgY29sb3JNYXA6IGNvbG9ycy5tYXAoKGNvbG9yLCBpbmRleCkgPT4gW2luZGV4LCBjb2xvcl0pLFxuICAgICAgICAgICAgICBjb2xvckxlZ2VuZHNcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzdHJva2VkOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIGRpc3BhdGNoKGFkZExheWVyKG5ld0xheWVyLCBkYXRhc2V0SWQpKTtcbiAgICB9XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICB9LCBbZGF0YXNldHNdKTtcbiAgcmV0dXJuIG51bGw7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsUUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksa0JBQUEsR0FBQUosT0FBQTtBQUFxRSxTQUFBSyxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxVQUFBLE9BQUFQLENBQUEsQ0FBQVEsSUFBQSxDQUFBQyxLQUFBLENBQUFULENBQUEsRUFBQUksQ0FBQSxZQUFBSixDQUFBO0FBQUEsU0FB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
144
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3JlYWN0UmVkdXgiLCJfYWN0aW9ucyIsIl91dGlscyIsIl9sYXllckNyZWF0aW9uVG9vbCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiTGlzYVRvb2xDb21wb25lbnQiLCJfcmVmIiwiZGF0YXNldE5hbWUiLCJsaXNhRGF0YXNldE5hbWUiLCJzaWduaWZpY2FuY2VUaHJlc2hvbGQiLCJjbHVzdGVycyIsImxhZ1ZhbHVlcyIsInBWYWx1ZXMiLCJsaXNhVmFsdWVzIiwic2lnQ2F0ZWdvcmllcyIsIm5uIiwibGFiZWxzIiwiY29sb3JzIiwiZGF0YXNldHMiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiZGVtbyIsImtlcGxlckdsIiwibWFwIiwidmlzU3RhdGUiLCJsYXllcnMiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwidXNlRWZmZWN0IiwibGlzYURhdGEiLCJmaWxsQ29sb3IiLCJjbHVzdGVyIiwiaW5kZXgiLCJsYWJlbCIsIm5ld0RhdGFzZXQiLCJzYXZlQXNEYXRhc2V0IiwiYWRkRGF0YVRvTWFwIiwib3B0aW9ucyIsImF1dG9DcmVhdGVMYXllcnMiLCJjZW50ZXJNYXAiLCJkYXRhc2V0SWQiLCJmaW5kIiwiZGF0YUlkIiwibGF5ZXJJZCIsImNvbmNhdCIsImwiLCJpZCIsImxheWVyIiwiZ3Vlc3NEZWZhdWx0TGF5ZXIiLCJjb2xvckZpZWxkIiwibmFtZSIsInR5cGUiLCJjb2xvckRvbWFpbiIsIkFycmF5IiwiZnJvbSIsIl8iLCJpIiwiY29sb3JMZWdlbmRzIiwiY29sb3JNYXAiLCJjb2xvciIsIm5ld0xheWVyIiwiY29uZmlnIiwiY29sdW1ucyIsInJlZHVjZSIsImFjYyIsImtleSIsInZhbHVlIiwiY29sb3JTY2FsZSIsInN0cm9rZUNvbG9yRG9tYWluIiwic3Ryb2tlQ29sb3JGaWVsZCIsInN0cm9rZUNvbG9yU2NhbGUiLCJ2aXNDb25maWciLCJjb2xvclJhbmdlIiwic3Ryb2tlQ29sb3JSYW5nZSIsImNhdGVnb3J5Iiwic3Ryb2tlT3BhY2l0eSIsInN0cm9rZWQiLCJzdHJva2VkV2lkdGgiLCJhZGRMYXllciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b29scy9saXNhLXRvb2wudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7dXNlRWZmZWN0fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge3VzZURpc3BhdGNoLCB1c2VTZWxlY3Rvcn0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHthZGREYXRhVG9NYXAsIGFkZExheWVyfSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuaW1wb3J0IHtzYXZlQXNEYXRhc2V0fSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7Z3Vlc3NEZWZhdWx0TGF5ZXJ9IGZyb20gJy4va2VwbGVyLXRvb2xzL2xheWVyLWNyZWF0aW9uLXRvb2wnO1xuaW1wb3J0IHtTdGF0ZX0gZnJvbSAnLi4vY29tcG9uZW50cy9haS1hc3Npc3RhbnQtbWFuYWdlcic7XG5cbi8qKlxuICogVXNlIExpc2FUb29sQ29tcG9uZW50IGFkZGluZyBMaXNhIHJlc3VsdCB0byBrZXBsZXIuZ2xcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIExpc2FUb29sQ29tcG9uZW50KHtcbiAgZGF0YXNldE5hbWUsXG4gIGxpc2FEYXRhc2V0TmFtZSxcbiAgc2lnbmlmaWNhbmNlVGhyZXNob2xkLFxuICBjbHVzdGVycyxcbiAgbGFnVmFsdWVzLFxuICBwVmFsdWVzLFxuICBsaXNhVmFsdWVzLFxuICBzaWdDYXRlZ29yaWVzLFxuICBubixcbiAgbGFiZWxzLFxuICBjb2xvcnNcbn0pIHtcbiAgY29uc3QgZGF0YXNldHMgPSB1c2VTZWxlY3Rvcigoc3RhdGU6IFN0YXRlKSA9PiBzdGF0ZS5kZW1vLmtlcGxlckdsLm1hcC52aXNTdGF0ZS5kYXRhc2V0cyk7XG4gIGNvbnN0IGxheWVycyA9IHVzZVNlbGVjdG9yKChzdGF0ZTogU3RhdGUpID0+IHN0YXRlLmRlbW8ua2VwbGVyR2wubWFwLnZpc1N0YXRlLmxheWVycyk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcblxuICAvLyBzYXZlIHRoZSByZXN1bHQgZnJvbSBsaXNhIHRvb2wgdG8gYSBuZXcgbGlzYSBkYXRhc2V0XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgbGlzYURhdGE6IFJlY29yZDxzdHJpbmcsIG51bWJlcltdPiA9IHtcbiAgICAgIGNsdXN0ZXJzLFxuICAgICAgbGFnVmFsdWVzLFxuICAgICAgcFZhbHVlcyxcbiAgICAgIGxpc2FWYWx1ZXMsXG4gICAgICBzaWdDYXRlZ29yaWVzLFxuICAgICAgbm4sXG4gICAgICBmaWxsQ29sb3I6IGNsdXN0ZXJzLm1hcCgoY2x1c3RlciwgaW5kZXgpID0+XG4gICAgICAgIHBWYWx1ZXNbaW5kZXhdIDwgc2lnbmlmaWNhbmNlVGhyZXNob2xkID8gY29sb3JzW2NsdXN0ZXJdIDogY29sb3JzWzBdXG4gICAgICApLFxuICAgICAgbGFiZWw6IGNsdXN0ZXJzLm1hcCgoY2x1c3RlciwgaW5kZXgpID0+XG4gICAgICAgIHBWYWx1ZXNbaW5kZXhdIDwgc2lnbmlmaWNhbmNlVGhyZXNob2xkID8gbGFiZWxzW2NsdXN0ZXJdIDogbGFiZWxzWzBdXG4gICAgICApXG4gICAgfTtcbiAgICAvLyBjcmVhdGUgYSBuZXcgZ2VvanNvbiBsYXllciB1c2luZyBjbHVzdGVycyB3aXRoIG9yZGluYWwgY29sb3Igc2NhbGUgYW5kIGN1c3RvbUNvbG9yU2NhbGUgYW5kIGNvbG9yc1xuICAgIGNvbnN0IG5ld0RhdGFzZXQgPSBzYXZlQXNEYXRhc2V0KGRhdGFzZXRzLCBsYXllcnMsIGRhdGFzZXROYW1lLCBsaXNhRGF0YXNldE5hbWUsIGxpc2FEYXRhKTtcbiAgICBpZiAobmV3RGF0YXNldCkge1xuICAgICAgLy8gYWRkIHRoZSBuZXcgZGF0YXNldCB0byB0aGUgbWFwXG4gICAgICBkaXNwYXRjaChcbiAgICAgICAgYWRkRGF0YVRvTWFwKHtkYXRhc2V0czogW25ld0RhdGFzZXRdLCBvcHRpb25zOiB7YXV0b0NyZWF0ZUxheWVyczogZmFsc2UsIGNlbnRlck1hcDogZmFsc2V9fSlcbiAgICAgICk7XG4gICAgfVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgfSwgW10pO1xuXG4gIC8vIGNyZWF0ZSBhIExJU0EgbGF5ZXIgZm9yIHRoZSBuZXcgbGlzYSBkYXRhc2V0XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZGF0YXNldElkID0gT2JqZWN0LmtleXMoZGF0YXNldHMpLmZpbmQoXG4gICAgICBkYXRhSWQgPT4gZGF0YXNldHNbZGF0YUlkXS5sYWJlbCA9PT0gbGlzYURhdGFzZXROYW1lXG4gICAgKTtcbiAgICBpZiAoIWRhdGFzZXRJZCkgcmV0dXJuO1xuXG4gICAgY29uc3QgbmV3RGF0YXNldCA9IGRhdGFzZXRzW2RhdGFzZXRJZF07XG4gICAgaWYgKG5ld0RhdGFzZXQpIHtcbiAgICAgIGNvbnN0IGxheWVySWQgPSBgJHtsaXNhRGF0YXNldE5hbWV9X2xpc2FgO1xuICAgICAgLy8gY2hlY2sgaWYgdGhlIGxheWVyIGFscmVhZHkgZXhpc3RzP1xuICAgICAgaWYgKGxheWVycy5maW5kKGwgPT4gbC5pZCA9PT0gbGF5ZXJJZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgLy8gYWRkIGEgbmV3IGxheWVyIGZvciB0aGUgbmV3IGRhdGFzZXRcbiAgICAgIGNvbnN0IGxheWVyID0gZ3Vlc3NEZWZhdWx0TGF5ZXIobmV3RGF0YXNldCwgJ2dlb2pzb24nKTtcbiAgICAgIGlmICghbGF5ZXIpIHJldHVybjtcbiAgICAgIGNvbnN0IGNvbG9yRmllbGQgPSB7XG4gICAgICAgIG5hbWU6ICdjbHVzdGVycycsXG4gICAgICAgIHR5cGU6ICdpbnRlZ2VyJ1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGNvbG9yRG9tYWluID0gQXJyYXkuZnJvbSh7bGVuZ3RoOiBjb2xvcnMubGVuZ3RofSwgKF8sIGkpID0+IGkpO1xuICAgICAgY29uc3QgY29sb3JMZWdlbmRzID0ge307XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbG9ycy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb2xvckxlZ2VuZHNbY29sb3JzW2ldXSA9IGxhYmVsc1tpXTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGNvbG9yTWFwID0gY29sb3JzLm1hcCgoY29sb3IsIGluZGV4KSA9PiBbaW5kZXgsIGNvbG9yXSk7XG4gICAgICBjb25zdCBuZXdMYXllciA9IHtcbiAgICAgICAgaWQ6IGxheWVySWQsXG4gICAgICAgIHR5cGU6IGxheWVyLnR5cGUsXG4gICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgIC4uLmxheWVyLmNvbmZpZyxcbiAgICAgICAgICBkYXRhSWQ6IGRhdGFzZXRJZCxcbiAgICAgICAgICBjb2x1bW5zOiBPYmplY3Qua2V5cyhsYXllci5jb25maWcuY29sdW1ucykucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgICAgICAgYWNjW2tleV0gPSBsYXllci5jb25maWcuY29sdW1uc1trZXldLnZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICB9LCB7fSksXG4gICAgICAgICAgY29sb3JTY2FsZTogJ2N1c3RvbU9yZGluYWwnLFxuICAgICAgICAgIGNvbG9yRmllbGQsXG4gICAgICAgICAgc3Ryb2tlQ29sb3JEb21haW46IGNvbG9yRG9tYWluLFxuICAgICAgICAgIHN0cm9rZUNvbG9yRmllbGQ6IGNvbG9yRmllbGQsXG4gICAgICAgICAgc3Ryb2tlQ29sb3JTY2FsZTogJ2N1c3RvbU9yZGluYWwnLFxuICAgICAgICAgIHZpc0NvbmZpZzoge1xuICAgICAgICAgICAgLi4ubGF5ZXIuY29uZmlnLnZpc0NvbmZpZyxcbiAgICAgICAgICAgIGNvbG9yUmFuZ2U6IHtcbiAgICAgICAgICAgICAgLi4ubGF5ZXIuY29uZmlnLnZpc0NvbmZpZy5jb2xvclJhbmdlLFxuICAgICAgICAgICAgICBjb2xvckRvbWFpbixcbiAgICAgICAgICAgICAgY29sb3JzLFxuICAgICAgICAgICAgICBjb2xvck1hcCxcbiAgICAgICAgICAgICAgY29sb3JMZWdlbmRzXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3Ryb2tlQ29sb3JSYW5nZToge1xuICAgICAgICAgICAgICBjYXRlZ29yeTogJ0N1c3RvbScsXG4gICAgICAgICAgICAgIG5hbWU6ICdjdXN0b20nLFxuICAgICAgICAgICAgICBjb2xvcnMsXG4gICAgICAgICAgICAgIGNvbG9yTWFwXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0cm9rZWQ6IHRydWUsXG4gICAgICAgICAgICBzdHJva2VkV2lkdGg6IDAuNVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIGRpc3BhdGNoKGFkZExheWVyKG5ld0xheWVyLCBkYXRhc2V0SWQpKTtcbiAgICB9XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICB9LCBbZGF0YXNldHNdKTtcbiAgcmV0dXJuIG51bGw7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0Es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QUM7TUFDN0QsSUFBTUMsUUFBUSxHQUFHO1FBQ2ZkLEVBQUUsRUFBRUgsT0FBTztRQUNYUSxJQUFJLEVBQUVKLEtBQUssQ0FBQ0ksSUFBSTtRQUNoQlUsTUFBTSxFQUFBaEUsYUFBQSxDQUFBQSxhQUFBLEtBQ0RrRCxLQUFLLENBQUNjLE1BQU07VUFDZm5CLE1BQU0sRUFBRUYsU0FBUztVQUNqQnNCLE9BQU8sRUFBRTFFLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDMEQsS0FBSyxDQUFDYyxNQUFNLENBQUNDLE9BQU8sQ0FBQyxDQUFDQyxNQUFNLENBQUMsVUFBQ0MsR0FBRyxFQUFFQyxHQUFHLEVBQUs7WUFDOURELEdBQUcsQ0FBQ0MsR0FBRyxDQUFDLEdBQUdsQixLQUFLLENBQUNjLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDRyxHQUFHLENBQUMsQ0FBQ0MsS0FBSztZQUMxQyxPQUFPRixHQUFHO1VBQ1osQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1VBQ05HLFVBQVUsRUFBRSxlQUFlO1VBQzNCbEIsVUFBVSxFQUFWQSxVQUFVO1VBQ1ZtQixpQkFBaUIsRUFBRWhCLFdBQVc7VUFDOUJpQixnQkFBZ0IsRUFBRXBCLFVBQVU7VUFDNUJxQixnQkFBZ0IsRUFBRSxlQUFlO1VBQ2pDQyxTQUFTLEVBQUExRSxhQUFBLENBQUFBLGFBQUEsS0FDSmtELEtBQUssQ0FBQ2MsTUFBTSxDQUFDVSxTQUFTO1lBQ3pCQyxVQUFVLEVBQUEzRSxhQUFBLENBQUFBLGFBQUEsS0FDTGtELEtBQUssQ0FBQ2MsTUFBTSxDQUFDVSxTQUFTLENBQUNDLFVBQVU7Y0FDcENwQixXQUFXLEVBQVhBLFdBQVc7Y0FDWG5DLE1BQU0sRUFBTkEsTUFBTTtjQUNOeUMsUUFBUSxFQUFSQSxRQUFRO2NBQ1JELFlBQVksRUFBWkE7WUFBWSxFQUNiO1lBQ0RnQixnQkFBZ0IsRUFBRTtjQUNoQkMsUUFBUSxFQUFFLFFBQVE7Y0FDbEJ4QixJQUFJLEVBQUUsUUFBUTtjQUNkakMsTUFBTSxFQUFOQSxNQUFNO2NBQ055QyxRQUFRLEVBQVJBO1lBQ0YsQ0FBQztZQUNEaUIsYUFBYSxFQUFFLENBQUM7WUFDaEJDLE9BQU8sRUFBRSxJQUFJO1lBQ2JDLFlBQVksRUFBRTtVQUFHO1FBQ2xCO01BRUwsQ0FBQztNQUNEbkQsUUFBUSxDQUFDLElBQUFvRCxpQkFBUSxFQUFDbEIsUUFBUSxFQUFFcEIsU0FBUyxDQUFDLENBQUM7SUFDekM7SUFDQTtFQUNGLENBQUMsRUFBRSxDQUFDdEIsUUFBUSxDQUFDLENBQUM7RUFDZCxPQUFPLElBQUk7QUFDYiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -27,31 +27,72 @@ export declare function setupLLMTools({ visState, aiAssistant, dispatch }: {
27
27
  execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/geoda").SpatialJoinFunctionArgs, import("@openassistant/geoda").SpatialJoinLlmResult, import("@openassistant/geoda").SpatialJoinAdditionalData, import("@openassistant/geoda").SpatialJoinFunctionContext>;
28
28
  priority?: number | undefined;
29
29
  };
30
- buffer: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").BufferFunctionArgs, import("@openassistant/geoda").BufferLlmResult, import("@openassistant/geoda").BufferAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
31
- centroid: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").CentroidFunctionArgs, import("@openassistant/geoda").CentroidLlmResult, import("@openassistant/geoda").CentroidAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
32
- dissolve: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").DissolveFunctionArgs, import("@openassistant/geoda").DissolveLlmResult, import("@openassistant/geoda").DissolveAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
33
- length: import("@openassistant/utils").ExtendedTool<import("zod").ZodObject<{
34
- geojson: import("zod").ZodOptional<import("zod").ZodString>;
35
- datasetName: import("zod").ZodOptional<import("zod").ZodString>;
36
- distanceUnit: import("zod").ZodDefault<import("zod").ZodEnum<["KM", "Mile"]>>;
37
- }, "strip", import("zod").ZodTypeAny, {
38
- distanceUnit: "KM" | "Mile";
39
- datasetName?: string | undefined;
40
- geojson?: string | undefined;
41
- }, {
42
- datasetName?: string | undefined;
43
- geojson?: string | undefined;
44
- distanceUnit?: "KM" | "Mile" | undefined;
45
- }>, {
46
- success: boolean;
47
- result: string;
48
- lengths: number[];
49
- distanceUnit: "KM" | "Mile";
50
- }, never, {
51
- getGeometries: () => void;
52
- }>;
53
- area: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").AreaFunctionArgs, import("@openassistant/geoda").AreaLlmResult, import("@openassistant/geoda").AreaAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
54
- perimeter: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").PerimeterFunctionArgs, import("@openassistant/geoda").PerimeterLlmResult, import("@openassistant/geoda").PerimeterAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
30
+ bufferTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").BufferFunctionArgs, import("@openassistant/geoda").BufferLlmResult, import("@openassistant/geoda").BufferAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
31
+ centroidTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").CentroidFunctionArgs, import("@openassistant/geoda").CentroidLlmResult, import("@openassistant/geoda").CentroidAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
32
+ dissolveTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/geoda").DissolveFunctionArgs, import("@openassistant/geoda").DissolveLlmResult, import("@openassistant/geoda").DissolveAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
33
+ lengthTool: {
34
+ context: {
35
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
36
+ };
37
+ description: string;
38
+ parameters: import("zod").ZodObject<{
39
+ geojson: import("zod").ZodOptional<import("zod").ZodString>;
40
+ datasetName: import("zod").ZodOptional<import("zod").ZodString>;
41
+ distanceUnit: import("zod").ZodDefault<import("zod").ZodEnum<["KM", "Mile"]>>;
42
+ }, "strip", import("zod").ZodTypeAny, {
43
+ distanceUnit: "KM" | "Mile";
44
+ datasetName?: string | undefined;
45
+ geojson?: string | undefined;
46
+ }, {
47
+ datasetName?: string | undefined;
48
+ geojson?: string | undefined;
49
+ distanceUnit?: "KM" | "Mile" | undefined;
50
+ }>;
51
+ execute: import("@openassistant/utils").ExecuteFunction<import("zod").ZodObject<{
52
+ geojson: import("zod").ZodOptional<import("zod").ZodString>;
53
+ datasetName: import("zod").ZodOptional<import("zod").ZodString>;
54
+ distanceUnit: import("zod").ZodDefault<import("zod").ZodEnum<["KM", "Mile"]>>;
55
+ }, "strip", import("zod").ZodTypeAny, {
56
+ distanceUnit: "KM" | "Mile";
57
+ datasetName?: string | undefined;
58
+ geojson?: string | undefined;
59
+ }, {
60
+ datasetName?: string | undefined;
61
+ geojson?: string | undefined;
62
+ distanceUnit?: "KM" | "Mile" | undefined;
63
+ }>, {
64
+ success: boolean;
65
+ result: string;
66
+ lengths: number[];
67
+ distanceUnit: "KM" | "Mile";
68
+ }, never, {
69
+ getGeometries: () => void;
70
+ }>;
71
+ component?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
72
+ priority?: number | undefined;
73
+ };
74
+ areaTool: {
75
+ context: {
76
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
77
+ getValues?: import("@openassistant/geoda").GetValues | undefined;
78
+ };
79
+ description: string;
80
+ parameters: import("@openassistant/geoda").AreaFunctionArgs;
81
+ execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/geoda").AreaFunctionArgs, import("@openassistant/geoda").AreaLlmResult, import("@openassistant/geoda").AreaAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
82
+ component?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
83
+ priority?: number | undefined;
84
+ };
85
+ perimeterTool: {
86
+ context: {
87
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
88
+ getValues?: import("@openassistant/geoda").GetValues | undefined;
89
+ };
90
+ description: string;
91
+ parameters: import("@openassistant/geoda").PerimeterFunctionArgs;
92
+ execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/geoda").PerimeterFunctionArgs, import("@openassistant/geoda").PerimeterLlmResult, import("@openassistant/geoda").PerimeterAdditionalData, import("@openassistant/geoda").SpatialToolContext>;
93
+ component?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
94
+ priority?: number | undefined;
95
+ };
55
96
  getUsStateGeojson: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GetUsStateGeojsonFunctionArgs, import("@openassistant/osm").GetUsStateGeojsonLlmResult, import("@openassistant/osm").GetUsStateGeojsonAdditionalData, object>;
56
97
  getUsCountyGeojson: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GetUsCountyGeojsonFunctionArgs, import("@openassistant/osm").GetUsCountyGeojsonLlmResult, import("@openassistant/osm").GetUsCountyGeojsonAdditionalData, object>;
57
98
  getUsZipcodeGeojson: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GetUsZipcodeGeojsonFunctionArgs, import("@openassistant/osm").GetUsZipcodeGeojsonLlmResult, import("@openassistant/osm").GetUsZipcodeGeojsonAdditionalData, object>;
@@ -59,6 +100,16 @@ export declare function setupLLMTools({ visState, aiAssistant, dispatch }: {
59
100
  geocoding: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").GeocodingFunctionArgs, import("@openassistant/osm").GeocodingLlmResult, import("@openassistant/osm").GeocodingAdditionalData, object>;
60
101
  routing: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").RoutingFunctionArgs, import("@openassistant/osm").RoutingLlmResult, import("@openassistant/osm").RoutingAdditionalData, import("@openassistant/osm/dist/register-tools").OsmToolContext>;
61
102
  isochrone: import("@openassistant/utils").ExtendedTool<import("@openassistant/osm").IsochroneFunctionArgs, import("@openassistant/osm").IsochroneLlmResult, import("@openassistant/osm").IsochroneAdditionalData, import("@openassistant/osm/dist/register-tools").OsmToolContext>;
103
+ roads: {
104
+ context: {
105
+ getGeometries: (datasetName: string) => Promise<import("@geoda/core").SpatialGeometry>;
106
+ };
107
+ description: string;
108
+ parameters: import("@openassistant/osm").RoadsFunctionArgs;
109
+ execute: import("@openassistant/utils").ExecuteFunction<import("@openassistant/osm").RoadsFunctionArgs, import("@openassistant/osm").RoadsLlmResult, import("@openassistant/osm").RoadsAdditionalData, import("@openassistant/osm").RoadsToolContext>;
110
+ component?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
111
+ priority?: number | undefined;
112
+ };
62
113
  boxplotTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/echarts").BoxplotToolArgs, import("@openassistant/echarts").BoxplotLlmResult, import("@openassistant/echarts").BoxplotAdditionalData, import("@openassistant/echarts").EChartsToolContext>;
63
114
  bubbleChartTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/echarts").BubbleChartToolArgs, import("@openassistant/echarts").BubbleChartLlmResult, import("@openassistant/echarts").BubbleChartAdditionalData, import("@openassistant/echarts").EChartsToolContext>;
64
115
  histogramTool: import("@openassistant/utils").ExtendedTool<import("@openassistant/echarts").HistogramToolArgs, import("@openassistant/echarts").HistogramLlmResult, import("@openassistant/echarts").HistogramAdditionalData, import("@openassistant/echarts").EChartsToolContext>;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kepler.gl/ai-assistant",
3
3
  "author": "Xun Li<lixun910@gmail.com>",
4
- "version": "3.1.7",
4
+ "version": "3.1.8",
5
5
  "description": "kepler.gl AI assistant",
6
6
  "license": "MIT",
7
7
  "main": "dist/index.js",
@@ -30,21 +30,26 @@
30
30
  "umd"
31
31
  ],
32
32
  "dependencies": {
33
- "@kepler.gl/components": "3.1.7",
34
- "@kepler.gl/constants": "3.1.7",
35
- "@kepler.gl/layers": "3.1.7",
36
- "@kepler.gl/table": "3.1.7",
37
- "@kepler.gl/types": "3.1.7",
38
- "@kepler.gl/utils": "3.1.7",
39
- "@openassistant/core": "^0.4.0",
40
- "@openassistant/duckdb": "^0.4.0",
41
- "@openassistant/echarts": "^0.4.0",
42
- "@openassistant/geoda": "^0.4.0",
43
- "@openassistant/osm": "^0.4.0",
44
- "@openassistant/ui": "^0.4.0",
45
- "@openassistant/utils": "^0.4.0",
33
+ "@ai-sdk/anthropic": "^1.2.11",
34
+ "@ai-sdk/deepseek": "^0.2.14",
35
+ "@ai-sdk/google": "^1.2.18",
36
+ "@ai-sdk/xai": "^1.2.16",
37
+ "@kepler.gl/components": "3.1.8",
38
+ "@kepler.gl/constants": "3.1.8",
39
+ "@kepler.gl/layers": "3.1.8",
40
+ "@kepler.gl/table": "3.1.8",
41
+ "@kepler.gl/types": "3.1.8",
42
+ "@kepler.gl/utils": "3.1.8",
43
+ "@openassistant/core": "^0.4.4",
44
+ "@openassistant/duckdb": "^0.4.4",
45
+ "@openassistant/echarts": "^0.4.4",
46
+ "@openassistant/geoda": "^0.4.4",
47
+ "@openassistant/osm": "^0.4.4",
48
+ "@openassistant/ui": "^0.4.4",
49
+ "@openassistant/utils": "^0.4.4",
46
50
  "color-interpolate": "^1.0.5",
47
51
  "global": "^4.3.0",
52
+ "ollama-ai-provider": "^1.2.0",
48
53
  "react-intl": "^6.3.0",
49
54
  "usehooks-ts": "^3.1.0"
50
55
  },