dotdata_widgets 0.1.10 → 0.2.0

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 (203) hide show
  1. package/README.md +71 -104
  2. package/css/widget.css +1 -1
  3. package/dist/index.js +5 -5
  4. package/dist/index.js.map +1 -1
  5. package/lib/components/ActionFooter.js +21 -0
  6. package/lib/components/WithLabel.js +20 -0
  7. package/lib/components/column-analytic-type-icons/analytic-type-category.js +13 -0
  8. package/lib/components/column-analytic-type-icons/analytic-type-datatime.js +13 -0
  9. package/lib/components/column-analytic-type-icons/analytic-type-geo-latitude.js +13 -0
  10. package/lib/components/column-analytic-type-icons/analytic-type-geo-longitude.js +13 -0
  11. package/lib/components/column-analytic-type-icons/analytic-type-numeric.js +13 -0
  12. package/lib/components/column-analytic-type-icons/index.js +22 -0
  13. package/lib/components/{input → column-source-type-icons}/index.js +1 -1
  14. package/lib/components/column-source-type-icons/source-type-int.js +16 -0
  15. package/lib/feature/feature-details/FeatureCorrelatedFeaturesTable.js +1 -1
  16. package/lib/feature/feature-likes/{feature-likes.js → FeatureLikes.js} +3 -6
  17. package/lib/feature/feature-likes/index.js +1 -1
  18. package/lib/feature/feature-user-explanation/FeatureUserExplanation.js +14 -0
  19. package/lib/feature/feature-user-explanation/FeatureUserExplanationDisplay.js +23 -0
  20. package/lib/feature/feature-user-explanation/explanation-to-user-explanation.js +58 -0
  21. package/lib/{feature-descriptor/domains-descriptors-tree/context → feature/feature-user-explanation}/index.js +3 -2
  22. package/lib/feature-descriptor/domains-descriptions-tree/index.js +1 -0
  23. package/lib/feature-descriptor/domains-descriptions-tree/models/domains-descriptions-tree.model.js +2 -2
  24. package/lib/feature-descriptor/feature-descriptor-editor/AggregationEditor.js +206 -109
  25. package/lib/feature-descriptor/feature-descriptor-editor/FeatureDescriptorEditor.js +32 -21
  26. package/lib/feature-descriptor/feature-descriptor-editor/FilterEditor.js +69 -61
  27. package/lib/feature-descriptor/feature-descriptor-editor/JoinEditor.js +50 -0
  28. package/lib/feature-descriptor/feature-descriptor-editor/components/EditorTemplateRenderer.js +14 -0
  29. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/AggregationTypeSelection.js +11 -11
  30. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/ColumnEditor.js +15 -0
  31. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/DistanceEditor.js +30 -13
  32. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/LastKEditor.js +17 -0
  33. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/TemporalChangeEditor.js +19 -16
  34. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/TopicEditor.js +16 -0
  35. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/index.js +8 -7
  36. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/BooleanField.js +31 -0
  37. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/ChipField.js +27 -0
  38. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/ColumnField.js +47 -0
  39. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/NumberField.js +12 -20
  40. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/StringField.js +12 -20
  41. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/TableColumnField.js +30 -0
  42. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/TableField.js +17 -0
  43. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/_InlineEditorField.js +48 -0
  44. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/index.js +10 -7
  45. package/lib/feature-descriptor/feature-descriptor-editor/components/filter/FilterTypeSelection.js +14 -11
  46. package/lib/feature-descriptor/feature-descriptor-editor/components/filter/index.js +3 -5
  47. package/lib/feature-descriptor/feature-descriptor-editor/components/index.js +7 -8
  48. package/lib/feature-descriptor/feature-descriptor-editor/components/join/JoinConditionEditor.js +96 -0
  49. package/lib/feature-descriptor/feature-descriptor-editor/components/join/JoinConditionTypeSelection.js +15 -0
  50. package/lib/feature-descriptor/feature-descriptor-editor/components/join/JoinTableColumnSelector.js +15 -0
  51. package/lib/feature-descriptor/{domains-descriptors-tree/components → feature-descriptor-editor/components/join}/index.js +2 -1
  52. package/lib/feature-descriptor/feature-descriptor-editor/context/feature-descriptor-editor-context.js +38 -0
  53. package/lib/feature-descriptor/feature-descriptor-editor/context/feature-descriptor-editor.js +46 -0
  54. package/lib/feature-descriptor/{domains-descriptors-tree/models → feature-descriptor-editor/context}/index.js +2 -1
  55. package/lib/feature-descriptor/feature-descriptor-editor/index.js +5 -5
  56. package/lib/feature-descriptor/feature-descriptor-editor/models/aggregation-draft.js +351 -0
  57. package/lib/feature-descriptor/feature-descriptor-editor/models/common-field-draft.js +13 -0
  58. package/lib/feature-descriptor/feature-descriptor-editor/models/feature-descriptor-editor.js +29 -0
  59. package/lib/feature-descriptor/feature-descriptor-editor/models/filter-draft.js +79 -0
  60. package/lib/feature-descriptor/{context → feature-descriptor-editor/models}/index.js +4 -1
  61. package/lib/feature-descriptor/feature-descriptor-editor/models/join-draft.js +78 -0
  62. package/lib/models/column/column.js +59 -0
  63. package/lib/models/column/field.js +2 -4
  64. package/lib/models/column/index.js +3 -0
  65. package/lib/models/column/table-columns.js +27 -0
  66. package/lib/models/column/table.js +2 -4
  67. package/lib/models/feature/feature.js +13 -0
  68. package/lib/models/feature-descriptor/fd_data/aggregation.js +86 -46
  69. package/lib/models/feature-descriptor/fd_data/filter.js +32 -20
  70. package/lib/models/feature-descriptor/fd_data/index.js +5 -7
  71. package/lib/models/feature-descriptor/fd_data/join.js +20 -4
  72. package/lib/models/feature-descriptor/fd_data/utils.js +25 -0
  73. package/lib/models/feature-descriptor/feature-descriptor.js +2 -4
  74. package/lib/models/feature-descriptor/index.js +4 -6
  75. package/lib/utils/crypto.js +28 -0
  76. package/lib/utils/index.js +2 -0
  77. package/lib/utils/redux/action.js +35 -0
  78. package/lib/utils/redux/index.js +10 -0
  79. package/lib/{feature-descriptor/feature-descriptor-editor/components/field-widgets/widget-interface.js → utils/redux/models.js} +1 -1
  80. package/lib/utils/redux/reducer.js +30 -0
  81. package/lib/{feature-descriptor/feature-descriptor-editor/components/widgets/widget-interface.js → utils/types.js} +1 -1
  82. package/lib/utils/widget-api.js +47 -0
  83. package/lib/widgets/FeatureLeaderboardWidget.js +12 -2
  84. package/lib/widgets/FeatureSpaceWidget.js +1 -0
  85. package/lib/widgets/feature-leaderboard/FeatureLeaderboardView.js +40 -8
  86. package/lib/widgets/feature-leaderboard/components/{leaderboard-feature-likes.js → LeaderboardFeatureLikes.js} +4 -4
  87. package/lib/widgets/feature-leaderboard/leaderboard-entry/FeatureLeaderboardEntryDrawer.js +88 -0
  88. package/lib/widgets/feature-leaderboard/leaderboard-entry/FeatureLeaderboardEntryFeatureEditor.js +31 -0
  89. package/lib/widgets/feature-leaderboard/leaderboard-entry/FeatureLeaderboardEntryHeader.js +15 -0
  90. package/lib/widgets/feature-leaderboard/leaderboard-entry/FeatureLeaderboardUserExplanation.js +28 -0
  91. package/lib/widgets/feature-space/FeatureSpaceView.js +6 -6
  92. package/package.json +8 -10
  93. package/lib/components/input/input.js +0 -14
  94. package/lib/feature-descriptor/context/fd-domains-descriptions-selection.context.js +0 -37
  95. package/lib/feature-descriptor/domains-descriptors-tree/components/column-tree-item.js +0 -16
  96. package/lib/feature-descriptor/domains-descriptors-tree/components/descriptions-tree-item.js +0 -50
  97. package/lib/feature-descriptor/domains-descriptors-tree/components/tree-item-label.js +0 -56
  98. package/lib/feature-descriptor/domains-descriptors-tree/components/type-tree-item.js +0 -19
  99. package/lib/feature-descriptor/domains-descriptors-tree/config/index.js +0 -2
  100. package/lib/feature-descriptor/domains-descriptors-tree/context/domains-descriptions-tree-config-context.js +0 -43
  101. package/lib/feature-descriptor/domains-descriptors-tree/context/domains-descriptions-tree-context-provider.js +0 -53
  102. package/lib/feature-descriptor/domains-descriptors-tree/context/domains-descriptions-tree-item-selection-context.js +0 -56
  103. package/lib/feature-descriptor/domains-descriptors-tree/domains-descriptions-tree.js +0 -44
  104. package/lib/feature-descriptor/domains-descriptors-tree/index.js +0 -21
  105. package/lib/feature-descriptor/domains-descriptors-tree/models/domains-descriptions-tree.model.js +0 -37
  106. package/lib/feature-descriptor/domains-descriptors-tree/utils/create-domain-predicate.js +0 -16
  107. package/lib/feature-descriptor/domains-descriptors-tree/utils/filter-domains-descriptions-tree.js +0 -23
  108. package/lib/feature-descriptor/domains-descriptors-tree/utils/index.js +0 -19
  109. package/lib/feature-descriptor/feature-descriptor-editor/components/ItemSelection.js +0 -14
  110. package/lib/feature-descriptor/feature-descriptor-editor/components/StringAutocomplete.js +0 -13
  111. package/lib/feature-descriptor/feature-descriptor-editor/components/ValueInput.js +0 -2
  112. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/AggregationSelection.js +0 -15
  113. package/lib/feature-descriptor/feature-descriptor-editor/components/aggregations/aggregation-context.js +0 -37
  114. package/lib/feature-descriptor/feature-descriptor-editor/components/explainer.js +0 -15
  115. package/lib/feature-descriptor/feature-descriptor-editor/components/fd-operation-context.js +0 -19
  116. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/FieldLabel.js +0 -17
  117. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/ItemSelection.js +0 -20
  118. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/StringSelectionField.js +0 -24
  119. package/lib/feature-descriptor/feature-descriptor-editor/components/field-widgets/ValueInput.js +0 -19
  120. package/lib/feature-descriptor/feature-descriptor-editor/components/widgets/ItemSelection.js +0 -20
  121. package/lib/feature-descriptor/feature-descriptor-editor/components/widgets/Label.js +0 -2
  122. package/lib/feature-descriptor/feature-descriptor-editor/components/widgets/ValueInput.js +0 -19
  123. package/lib/feature-descriptor/feature-descriptor-editor/components/widgets/index.js +0 -19
  124. package/lib/feature-descriptor/feature-details/FeatureCorrelatedFeaturesTable.js +0 -22
  125. package/lib/feature-descriptor/feature-details/FeatureDistributionChart.js +0 -218
  126. package/lib/feature-descriptor/feature-details/FeatureStatisticsTable.js +0 -44
  127. package/lib/feature-descriptor/feature-details/index.js +0 -20
  128. package/lib/feature-descriptor/feature-explanation/FeatureExplanation.js +0 -48
  129. package/lib/feature-descriptor/feature-explanation/components/ColoredExplanationBlock.js +0 -36
  130. package/lib/feature-descriptor/feature-explanation/components/ColumnExplanationBlock.js +0 -12
  131. package/lib/feature-descriptor/feature-explanation/components/DataSlotExplanationBlock.js +0 -12
  132. package/lib/feature-descriptor/feature-explanation/components/PetExplanationBlock.js +0 -11
  133. package/lib/feature-descriptor/feature-explanation/components/TextExplanationBlock.js +0 -10
  134. package/lib/feature-descriptor/feature-explanation/components/TextWithDataSlotContextExplanationBlock.js +0 -10
  135. package/lib/feature-descriptor/feature-explanation/components/TopicExplanationBlock.js +0 -10
  136. package/lib/feature-descriptor/feature-explanation/components/UnknownExplanationBlock.js +0 -10
  137. package/lib/feature-descriptors-domain/context/feature-domain-descriptions-selection.context.js +0 -37
  138. package/lib/feature-descriptors-domain/context/feature-domain-selection.context.js +0 -37
  139. package/lib/feature-descriptors-domain/context/index.js +0 -19
  140. package/lib/feature-descriptors-domain/exploration-path/exploration-path-header.js +0 -21
  141. package/lib/feature-descriptors-domain/exploration-path/exploration-path-join-list.js +0 -16
  142. package/lib/feature-descriptors-domain/exploration-path/index.js +0 -19
  143. package/lib/feature-descriptors-domain/fd-grouped-domain-tree.js +0 -81
  144. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/components/column-tree-item.js +0 -17
  145. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/components/descriptions-tree-item.js +0 -49
  146. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/components/index.js +0 -18
  147. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/components/selection-indicator-with-label.js +0 -40
  148. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/components/type-tree-item.js +0 -16
  149. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/feature-descriptor-domain-descriptions-context.js +0 -43
  150. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/feature-descriptor-domain-descriptions-tree.js +0 -57
  151. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions/index.js +0 -18
  152. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/column-tree-item.js +0 -17
  153. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/description-tree-item.js +0 -2
  154. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/descriptions-tree-item.js +0 -49
  155. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/index.js +0 -18
  156. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/selection-indicator-with-label.js +0 -19
  157. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/tree-item-label.js +0 -15
  158. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/tree-level-item.js +0 -54
  159. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/components/type-tree-item.js +0 -16
  160. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/feature-descriptor-domain-descriptions-tree.js +0 -55
  161. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/feature-descriptor-domain-descriptions-tree.model.js +0 -2
  162. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/index.js +0 -18
  163. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/utils/filter-domain-descriptions.js +0 -21
  164. package/lib/feature-descriptors-domain/feature-descriptor-domain-descriptions-tree/utils/index.js +0 -18
  165. package/lib/feature-descriptors-domain/feature-descriptor-grouped-domain-tree.js +0 -87
  166. package/lib/feature-descriptors-domain/feature-domain-descriptions/components/column-tree-item.js +0 -16
  167. package/lib/feature-descriptors-domain/feature-domain-descriptions/components/descriptions-tree-item.js +0 -50
  168. package/lib/feature-descriptors-domain/feature-domain-descriptions/components/index.js +0 -18
  169. package/lib/feature-descriptors-domain/feature-domain-descriptions/components/selection-indicator-with-label.js +0 -67
  170. package/lib/feature-descriptors-domain/feature-domain-descriptions/components/type-tree-item.js +0 -19
  171. package/lib/feature-descriptors-domain/feature-domain-descriptions/feature-domain-descriptions-context.js +0 -37
  172. package/lib/feature-descriptors-domain/feature-domain-descriptions/feature-domain-descriptions-tree.js +0 -51
  173. package/lib/feature-descriptors-domain/feature-domain-descriptions/index.js +0 -18
  174. package/lib/feature-descriptors-domain/feature-exploration-path/exploration-path-header.js +0 -38
  175. package/lib/feature-descriptors-domain/feature-exploration-path/exploration-path-join-list.js +0 -36
  176. package/lib/feature-descriptors-domain/feature-exploration-path/index.js +0 -19
  177. package/lib/feature-descriptors-domain/grouped-domains-descriptions-list.js +0 -58
  178. package/lib/feature-descriptors-domain/selected-feature-domain-context.js +0 -2
  179. package/lib/feature-descriptors-domain/utils/filter-domain-descriptions.js +0 -23
  180. package/lib/feature-descriptors-domain/utils/filter-grouped-domain-descriptions.js +0 -23
  181. package/lib/feature-descriptors-domain/utils/index.js +0 -18
  182. package/lib/models/feature/feature-leaderboard.js +0 -3
  183. package/lib/models/feature-descriptor/feature-descriptors-domain.js +0 -3
  184. package/lib/models/feature-descriptors-domain/fd-domain-description.js +0 -9
  185. package/lib/models/feature-descriptors-domain/fd-grouped-domain-descriptions.js +0 -3
  186. package/lib/models/feature-descriptors-domain/index.js +0 -19
  187. package/lib/models/feature-space/feature-space-description.js +0 -3
  188. package/lib/models/index.js +0 -2
  189. package/lib/utils/model-transform-hook.js +0 -21
  190. package/lib/utils/set.js +0 -14
  191. package/lib/utils/widget/index.js +0 -19
  192. package/lib/utils/widget/widget-model-context.js +0 -38
  193. package/lib/utils/widget/widget-model.js +0 -30
  194. package/lib/widgets/feature-leaderboard/FeatureLeaderboardEntries.js +0 -18
  195. package/lib/widgets/feature-leaderboard/entry-item/FeatureLeaderboardEntryDetails.js +0 -23
  196. package/lib/widgets/feature-leaderboard/entry-item/FeatureLeaderboardEntryHeader.js +0 -35
  197. package/lib/widgets/feature-leaderboard/entry-item/FeatureLeaderboardEntryItem.js +0 -22
  198. package/lib/widgets/feature-leaderboard/leaderboard-entry/FeatureLeaderboardEntry.js +0 -19
  199. package/lib/widgets/feature-leaderboard/leaderboard-entry/FeatureLeaderboardEntryRow.js +0 -23
  200. package/lib/widgets/feature-leaderboard/leaderboard-overview/overview-metric-slider.js +0 -2
  201. package/lib/widgets/feature-space/FeatureSpaceDomain.js +0 -75
  202. package/lib/widgets/feature-space/FeatureSpaceDomainDescriptions.js +0 -80
  203. package/lib/widgets/feature-space/FeatureSpaceDomainsDescriptions.js +0 -88
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ActionFooter = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const material_1 = require("@mui/material");
9
+ const ActionFooter = (props) => {
10
+ return (react_1.default.createElement("div", { className: "action-footer", style: {
11
+ display: 'flex',
12
+ alignItems: 'center',
13
+ justifyContent: 'end',
14
+ gap: '10px',
15
+ } },
16
+ props.tertiaryButton && (react_1.default.createElement(material_1.Button, { variant: "text", disabled: props.tertiaryButton.isDisabled, onClick: () => { var _a; return (_a = props.onTertiaryButtonClick) === null || _a === void 0 ? void 0 : _a.call(props); } }, props.tertiaryButton.label)),
17
+ props.secondaryButton && (react_1.default.createElement(material_1.Button, { variant: "outlined", disabled: props.secondaryButton.isDisabled, onClick: () => { var _a; return (_a = props.onSecondaryButtonClick) === null || _a === void 0 ? void 0 : _a.call(props); } }, props.secondaryButton.label)),
18
+ props.primaryButton && (react_1.default.createElement(material_1.Button, { variant: "contained", color: "primary", disabled: props.primaryButton.isDisabled, onClick: () => { var _a; return (_a = props.onPrimaryButtonClick) === null || _a === void 0 ? void 0 : _a.call(props); } }, props.primaryButton.label))));
19
+ };
20
+ exports.ActionFooter = ActionFooter;
21
+ //# sourceMappingURL=ActionFooter.js.map
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.WithLabel = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const WithLabel = (props) => {
9
+ const isString = typeof props.label === 'string';
10
+ return (react_1.default.createElement("div", null,
11
+ isString ? (react_1.default.createElement("p", { style: {
12
+ fontWeight: 'bold',
13
+ fontSize: '13px',
14
+ height: '16px',
15
+ whiteSpace: 'nowrap',
16
+ } }, props.label)) : (react_1.default.createElement("p", null, props.label)),
17
+ react_1.default.createElement("div", null, props.children)));
18
+ };
19
+ exports.WithLabel = WithLabel;
20
+ //# sourceMappingURL=WithLabel.js.map
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AnalyticTypeCategory = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const AnalyticTypeCategory = (props = { size: 24 }) => (react_1.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: props.size, height: props.size, viewBox: "0 0 24 24" },
9
+ react_1.default.createElement("g", { fill: "none", "fill-rule": "evenodd" },
10
+ react_1.default.createElement("rect", { width: "24", height: "24", fill: "#3663C1", rx: "2" }),
11
+ react_1.default.createElement("path", { fill: "#FFF", d: "M8.632 14.24v.704c0 .352-.067.685-.2 1a2.766 2.766 0 0 1-.552.84c-.235.245-.51.44-.824.584a2.412 2.412 0 0 1-1.016.216c-.31 0-.624-.043-.944-.128a2.233 2.233 0 0 1-.864-.448 2.477 2.477 0 0 1-.632-.824c-.165-.336-.248-.765-.248-1.288V8.624c0-.373.064-.72.192-1.04A2.448 2.448 0 0 1 4.928 6.2c.325-.133.685-.2 1.08-.2.768 0 1.392.25 1.872.752.235.245.419.536.552.872.133.336.2.701.2 1.096v.64H7v-.544c0-.32-.09-.597-.272-.832a.881.881 0 0 0-.736-.352c-.405 0-.675.125-.808.376-.133.25-.2.568-.2.952v5.824c0 .33.072.608.216.832.144.224.403.336.776.336.107 0 .221-.019.344-.056.123-.037.237-.099.344-.184a.976.976 0 0 0 .24-.352c.064-.15.096-.336.096-.56v-.56h1.632zm2.4 3.248V7.632H9.144V6.096h5.408v1.536h-1.888v9.856h-1.632zm4.144-8.704c0-.459.08-.864.24-1.216a2.57 2.57 0 0 1 1.512-1.392c.325-.117.653-.176.984-.176.33 0 .659.059.984.176a2.9 2.9 0 0 1 .888.512c.256.235.464.528.624.88.16.352.24.757.24 1.216v.576h-1.632v-.576c0-.395-.11-.685-.328-.872a1.157 1.157 0 0 0-.776-.28c-.299 0-.557.093-.776.28-.219.187-.328.477-.328.872V14.8c0 .395.11.685.328.872.219.187.477.28.776.28.299 0 .557-.093.776-.28.219-.187.328-.477.328-.872v-2.144H17.72v-1.44h2.928V14.8c0 .48-.08.89-.24 1.232-.16.341-.368.624-.624.848-.267.235-.563.41-.888.528a2.882 2.882 0 0 1-.984.176c-.33 0-.659-.059-.984-.176a2.567 2.567 0 0 1-.872-.528 2.443 2.443 0 0 1-.64-.848c-.16-.341-.24-.752-.24-1.232V8.784z" }))));
12
+ exports.AnalyticTypeCategory = AnalyticTypeCategory;
13
+ //# sourceMappingURL=analytic-type-category.js.map
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AnalyticTypeDatatime = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const AnalyticTypeDatatime = (props = { size: 24 }) => (react_1.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: props.size, height: props.size, viewBox: "0 0 24 24" },
9
+ react_1.default.createElement("g", { fill: "none", "fill-rule": "evenodd" },
10
+ react_1.default.createElement("rect", { width: "24", height: "24", fill: "#3663C1", rx: "2" }),
11
+ react_1.default.createElement("path", { fill: "#FFF", d: "M6.704 17.392V6H9.12c.939 0 1.65.256 2.136.768.485.512.728 1.237.728 2.176v5.328c0 1.067-.259 1.853-.776 2.36-.517.507-1.261.76-2.232.76H6.704zm1.632-9.856v8.32h.752c.459 0 .784-.115.976-.344.192-.23.288-.59.288-1.08V8.944c0-.448-.09-.795-.272-1.04-.181-.245-.512-.368-.992-.368h-.752zm6.256 9.856V7.536h-1.888V6h5.408v1.536h-1.888v9.856h-1.632z" }))));
12
+ exports.AnalyticTypeDatatime = AnalyticTypeDatatime;
13
+ //# sourceMappingURL=analytic-type-datatime.js.map
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AnalyticTypeGeoLatitude = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const AnalyticTypeGeoLatitude = (props = { size: 24 }) => (react_1.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: props.size, height: props.size, viewBox: "0 0 24 24" },
9
+ react_1.default.createElement("g", { fill: "none", "fill-rule": "evenodd" },
10
+ react_1.default.createElement("rect", { width: "24", height: "24", fill: "#3663C1", rx: "2" }),
11
+ react_1.default.createElement("path", { fill: "#FFF", d: "M6.304 8.784c0-.459.08-.864.24-1.216a2.57 2.57 0 0 1 1.512-1.392C8.381 6.059 8.709 6 9.04 6c.33 0 .659.059.984.176a2.9 2.9 0 0 1 .888.512c.256.235.464.528.624.88.16.352.24.757.24 1.216v.576h-1.632v-.576c0-.395-.11-.685-.328-.872a1.157 1.157 0 0 0-.776-.28c-.299 0-.557.093-.776.28-.219.187-.328.477-.328.872V14.8c0 .395.11.685.328.872.219.187.477.28.776.28.299 0 .557-.093.776-.28.219-.187.328-.477.328-.872v-2.144H8.848v-1.44h2.928V14.8c0 .48-.08.89-.24 1.232-.16.341-.368.624-.624.848-.267.235-.563.41-.888.528a2.882 2.882 0 0 1-.984.176c-.33 0-.659-.059-.984-.176a2.567 2.567 0 0 1-.872-.528 2.443 2.443 0 0 1-.64-.848c-.16-.341-.24-.752-.24-1.232V8.784zm6.912 8.704V6.096h1.632v9.76h3.232v1.632h-4.864z" }))));
12
+ exports.AnalyticTypeGeoLatitude = AnalyticTypeGeoLatitude;
13
+ //# sourceMappingURL=analytic-type-geo-latitude.js.map
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AnalyticTypeGeoLongitude = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const AnalyticTypeGeoLongitude = (props = { size: 24 }) => (react_1.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: props.size, height: props.size, viewBox: "0 0 24 24" },
9
+ react_1.default.createElement("g", { fill: "none", "fill-rule": "evenodd" },
10
+ react_1.default.createElement("rect", { width: "24", height: "24", fill: "#3663C1", rx: "2" }),
11
+ react_1.default.createElement("path", { fill: "#FFF", d: "M6.304 8.784c0-.459.08-.864.24-1.216a2.57 2.57 0 0 1 1.512-1.392C8.381 6.059 8.709 6 9.04 6c.33 0 .659.059.984.176a2.9 2.9 0 0 1 .888.512c.256.235.464.528.624.88.16.352.24.757.24 1.216v.576h-1.632v-.576c0-.395-.11-.685-.328-.872a1.157 1.157 0 0 0-.776-.28c-.299 0-.557.093-.776.28-.219.187-.328.477-.328.872V14.8c0 .395.11.685.328.872.219.187.477.28.776.28.299 0 .557-.093.776-.28.219-.187.328-.477.328-.872v-2.144H8.848v-1.44h2.928V14.8c0 .48-.08.89-.24 1.232-.16.341-.368.624-.624.848-.267.235-.563.41-.888.528a2.882 2.882 0 0 1-.984.176c-.33 0-.659-.059-.984-.176a2.567 2.567 0 0 1-.872-.528 2.443 2.443 0 0 1-.64-.848c-.16-.341-.24-.752-.24-1.232V8.784zm6.912 8.704V6.096h1.632v9.76h3.232v1.632h-4.864z" }))));
12
+ exports.AnalyticTypeGeoLongitude = AnalyticTypeGeoLongitude;
13
+ //# sourceMappingURL=analytic-type-geo-longitude.js.map
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AnalyticTypeNumeric = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const AnalyticTypeNumeric = (props = { size: 24 }) => (react_1.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: props.size, height: props.size, viewBox: "0 0 24 24" },
9
+ react_1.default.createElement("g", { fill: "none", "fill-rule": "evenodd" },
10
+ react_1.default.createElement("rect", { width: "24", height: "24", fill: "#3663C1", rx: "2" }),
11
+ react_1.default.createElement("path", { fill: "#FFF", d: "M1.296 17.392V6h1.568l2.464 6.864h.032V6h1.632v11.392H5.456L2.96 10.544h-.032v6.848H1.296zM13.744 6v8.832c0 .373-.067.717-.2 1.032a2.715 2.715 0 0 1-1.416 1.416c-.32.139-.661.208-1.024.208s-.701-.07-1.016-.208a2.743 2.743 0 0 1-.84-.576 2.743 2.743 0 0 1-.576-.84 2.53 2.53 0 0 1-.208-1.032V6h1.632v8.672c0 .405.096.704.288.896a.977.977 0 0 0 .72.288.977.977 0 0 0 .72-.288c.192-.192.288-.49.288-.896V6h1.632zm1.536 11.392V6h1.568l2.096 6.032h.032L21.056 6h1.584v11.392h-1.632v-6.928h-.032L19.36 15.36h-.816l-1.6-4.896h-.032v6.928H15.28z" }))));
12
+ exports.AnalyticTypeNumeric = AnalyticTypeNumeric;
13
+ //# sourceMappingURL=analytic-type-numeric.js.map
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./analytic-type-category"), exports);
18
+ __exportStar(require("./analytic-type-datatime"), exports);
19
+ __exportStar(require("./analytic-type-geo-latitude"), exports);
20
+ __exportStar(require("./analytic-type-geo-longitude"), exports);
21
+ __exportStar(require("./analytic-type-numeric"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./input"), exports);
17
+ __exportStar(require("./source-type-int"), exports);
18
18
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SourceTypeInt = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const SourceTypeInt = (props = { size: 24 }) => (react_1.default.createElement("svg", { viewBox: "0 0 24 24", width: props.size, height: props.size },
9
+ react_1.default.createElement("g", null,
10
+ react_1.default.createElement("rect", { width: "24", height: "24", fill: "#575757", rx: "3", x: "0", y: "0" }),
11
+ react_1.default.createElement("text", { fill: "rgb(255, 255, 255)", style: {
12
+ fontSize: '11px',
13
+ fontWeight: '700'
14
+ }, x: "3", y: "16" }))));
15
+ exports.SourceTypeInt = SourceTypeInt;
16
+ //# sourceMappingURL=source-type-int.js.map
@@ -10,7 +10,7 @@ const _utils_1 = require("../../utils");
10
10
  const FeatureCorrelatedFeaturesTable = ({ correlatedFeatures }) => {
11
11
  return (react_1.default.createElement("table", { className: "table", style: { width: '100%' } },
12
12
  react_1.default.createElement("tr", null,
13
- react_1.default.createElement("th", { className: "label-bold" }, "Name"),
13
+ react_1.default.createElement("th", { className: "label-bold" }, "Feature ID"),
14
14
  react_1.default.createElement("th", { className: "label-bold" }, "Correlation"),
15
15
  react_1.default.createElement("th", { className: "label-bold" }, "Explanation")),
16
16
  correlatedFeatures.map(([{ id, explanation }, correlation]) => (react_1.default.createElement("tr", null,
@@ -17,17 +17,14 @@ var FeatureLike;
17
17
  FeatureLike[FeatureLike["Disliked"] = 2] = "Disliked";
18
18
  })(FeatureLike = exports.FeatureLike || (exports.FeatureLike = {}));
19
19
  const neutralStyle = {
20
- cursor: 'pointer',
21
20
  fontSize: '18px',
22
- color: 'var( --c-grey-600)',
21
+ color: 'var(--c-grey-600)',
23
22
  };
24
23
  const likedStyle = {
25
- cursor: 'pointer',
26
24
  fontSize: '18px',
27
- color: 'var( --c-green-600)',
25
+ color: 'var(--c-green-600)',
28
26
  };
29
27
  const dislikedStyle = {
30
- cursor: 'pointer',
31
28
  fontSize: '18px',
32
29
  color: 'var(--c-red-600)',
33
30
  };
@@ -41,4 +38,4 @@ const FeatureLikes = ({ liked, toggleIsLiked, toggleIsDisliked }) => {
41
38
  react_1.default.createElement(material_1.IconButton, { color: "primary", size: "small", onClick: toggleIsDisliked }, [FeatureLike.Neutral, FeatureLike.Liked].includes(liked) ? (react_1.default.createElement(ThumbDownOffAlt_1.default, { sx: neutralStyle })) : (react_1.default.createElement(ThumbDownAlt_1.default, { sx: dislikedStyle })))));
42
39
  };
43
40
  exports.FeatureLikes = FeatureLikes;
44
- //# sourceMappingURL=feature-likes.js.map
41
+ //# sourceMappingURL=FeatureLikes.js.map
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./feature-likes"), exports);
17
+ __exportStar(require("./FeatureLikes"), exports);
18
18
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FeatureUserExplanation = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const material_1 = require("@mui/material");
9
+ const FeatureUserExplanation = (props) => {
10
+ return (react_1.default.createElement(material_1.FormControl, { style: { width: '100%' } },
11
+ react_1.default.createElement(material_1.TextField, { hiddenLabel: true, margin: "dense", placeholder: "User explanation", style: { width: '100%', marginTop: 0 }, value: props.userExplanation, variant: "standard", size: "small", onChange: e => props.onUserExplanationChange(e.target.value) })));
12
+ };
13
+ exports.FeatureUserExplanation = FeatureUserExplanation;
14
+ //# sourceMappingURL=FeatureUserExplanation.js.map
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FeatureUserExplanationDisplay = exports.UserExplanationSeparator = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const dompurify_1 = __importDefault(require("dompurify"));
9
+ exports.UserExplanationSeparator = '**';
10
+ const separator = exports.UserExplanationSeparator.split('')
11
+ .map(x => `\\${x}`)
12
+ .join('');
13
+ const FeatureUserExplanationDisplay = (props) => {
14
+ const html = react_1.default.useMemo(() => {
15
+ const styledText = props.userExplanation.replaceAll(new RegExp(`${separator}(.*?)${separator}`, 'gm'), x => `<span style="color: var(--c-blue-700); font-weight: 500;">${x.replaceAll(exports.UserExplanationSeparator, '')}</span>`);
16
+ return dompurify_1.default.sanitize(styledText);
17
+ }, [props.userExplanation]);
18
+ return (react_1.default.createElement("span", { dangerouslySetInnerHTML: {
19
+ __html: html,
20
+ } }));
21
+ };
22
+ exports.FeatureUserExplanationDisplay = FeatureUserExplanationDisplay;
23
+ //# sourceMappingURL=FeatureUserExplanationDisplay.js.map
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.explanationToUserExplanation = void 0;
4
+ const feature_explanation_1 = require("../../models/feature-explanation");
5
+ const FeatureUserExplanationDisplay_1 = require("./FeatureUserExplanationDisplay");
6
+ function explanationToUserExplanation(tokens) {
7
+ return explanationBlockToString(tokens).flat(Infinity).join('');
8
+ }
9
+ exports.explanationToUserExplanation = explanationToUserExplanation;
10
+ function explanationBlockToString(tokens) {
11
+ return tokens.map(block => {
12
+ const textWrapper = ColorizeUserExplanation(block);
13
+ if (feature_explanation_1.FeatureExplanationBlock.isTextExplanationBlock(block)) {
14
+ return textWrapper(block.text);
15
+ }
16
+ else if (feature_explanation_1.FeatureExplanationBlock.isColumnExplanationBlock(block)) {
17
+ return textWrapper(block.columnName);
18
+ }
19
+ else if (feature_explanation_1.FeatureExplanationBlock.isDataSlotExplanationBlock(block)) {
20
+ return textWrapper(block.dataSlotName);
21
+ }
22
+ else if (feature_explanation_1.FeatureExplanationBlock.isPetExplanationBlock(block)) {
23
+ return textWrapper(block.stringRepresentation);
24
+ }
25
+ else if (feature_explanation_1.FeatureExplanationBlock.isTextWithDataSlotContextExplanationBlock(block)) {
26
+ return textWrapper(block.text);
27
+ }
28
+ else if (feature_explanation_1.FeatureExplanationBlock.isTopicExplanationBlock(block)) {
29
+ return textWrapper(block.name);
30
+ }
31
+ else if (feature_explanation_1.FeatureExplanationBlock.isOperatorExplanationBlock(block)) {
32
+ return explanationBlockToString(block.tokens.map(token => (Object.assign(Object.assign({}, token), { pathType: block.type }))));
33
+ }
34
+ else {
35
+ return '...';
36
+ }
37
+ });
38
+ }
39
+ function ColorizeUserExplanation(block) {
40
+ const wrap = (text) => `${FeatureUserExplanationDisplay_1.UserExplanationSeparator}` + text + `${FeatureUserExplanationDisplay_1.UserExplanationSeparator}`;
41
+ return (text) => {
42
+ if (block.type === feature_explanation_1.FeatureExplanationBlock.Type.DataSlot) {
43
+ return wrap(text);
44
+ }
45
+ else if (block.type === feature_explanation_1.FeatureExplanationBlock.Type.Column ||
46
+ block.type === feature_explanation_1.FeatureExplanationBlock.Type.PredictionExecutionTime) {
47
+ const pathType = block.pathType;
48
+ if ([
49
+ feature_explanation_1.FeatureExplanationBlock.Type.Filter,
50
+ feature_explanation_1.FeatureExplanationBlock.Type.Reduce,
51
+ ].includes(pathType)) {
52
+ return wrap(text);
53
+ }
54
+ }
55
+ return text;
56
+ };
57
+ }
58
+ //# sourceMappingURL=explanation-to-user-explanation.js.map
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./domains-descriptions-tree-item-selection-context"), exports);
18
- __exportStar(require("./domains-descriptions-tree-config-context"), exports);
17
+ __exportStar(require("./FeatureUserExplanation"), exports);
18
+ __exportStar(require("./FeatureUserExplanationDisplay"), exports);
19
+ __exportStar(require("./explanation-to-user-explanation"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -18,4 +18,5 @@ __exportStar(require("./domains-descriptions-tree"), exports);
18
18
  __exportStar(require("./models"), exports);
19
19
  __exportStar(require("./context"), exports);
20
20
  __exportStar(require("./utils"), exports);
21
+ __exportStar(require("./config"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -4,7 +4,7 @@ exports.DescriptionsTree = void 0;
4
4
  const _utils_1 = require("../../../utils");
5
5
  var DescriptionsTree;
6
6
  (function (DescriptionsTree) {
7
- function appendGroupId(groups, prefix) {
7
+ function appendNodeId(groups, prefix) {
8
8
  const id = DescriptionsTree.createGroupId(prefix);
9
9
  return {
10
10
  types: groups.types.map((type, typeIdx) => {
@@ -20,7 +20,7 @@ var DescriptionsTree;
20
20
  }),
21
21
  };
22
22
  }
23
- DescriptionsTree.appendGroupId = appendGroupId;
23
+ DescriptionsTree.appendNodeId = appendNodeId;
24
24
  function createGroupId(prefix) {
25
25
  return (props) => {
26
26
  return [