@khanacademy/perseus 6.5.0 → 6.6.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.
package/dist/index.css CHANGED
@@ -3181,54 +3181,57 @@ body.mobile .perseus-matrix .math-output {
3181
3181
  .orderer.layout-vertical .draggable-box .placeholder {
3182
3182
  box-sizing: border-box;
3183
3183
  }
3184
- .perseus-widget-passage-container .perseus-widget-passage {
3184
+ [id^="perseus-widget-passage-container"] [id^="perseus-widget-passage"] {
3185
3185
  line-height: 20px;
3186
3186
  margin: 22px;
3187
3187
  position: relative;
3188
3188
  }
3189
- .perseus-widget-passage-container .perseus-widget-passage div.paragraph {
3189
+ [id^="perseus-widget-passage-container"] [id^="perseus-widget-passage"] div.paragraph {
3190
3190
  font-family: "minion-pro", KaTeX_Main, Times, "Times New Roman", serif;
3191
3191
  }
3192
- .perseus-widget-passage-container .katex {
3193
- line-height: 18px;
3194
- }
3195
- .perseus-widget-passage-container .passage-title div.paragraph {
3192
+ [id^="perseus-widget-passage-container"] [id^="perseus-widget-passage"] .passage-title div.paragraph {
3196
3193
  font-family: "Noto Serif", serif;
3197
3194
  font-weight: 700;
3198
3195
  font-size: 20px;
3199
3196
  line-height: 22px;
3200
3197
  margin: 0 0 10px;
3201
3198
  }
3202
- .perseus-widget-passage-container .passage-text div.paragraph {
3199
+ [id^="perseus-widget-passage-container"] [id^="perseus-widget-passage"] .passage-text div.paragraph {
3203
3200
  font-weight: 400;
3204
3201
  font-size: 16px;
3205
3202
  line-height: 20px;
3206
3203
  text-indent: 20px;
3207
3204
  margin: 0;
3208
3205
  }
3209
- .perseus-widget-passage-container .passage-text div.paragraph span {
3206
+ [id^="perseus-widget-passage-container"] [id^="perseus-widget-passage"] .passage-text div.paragraph span {
3210
3207
  text-indent: 0;
3211
3208
  }
3212
- .perseus-widget-passage-container .footnotes {
3209
+ [id^="perseus-widget-passage-container"] [id^="perseus-widget-passage"] .passage-text div.paragraph em {
3210
+ line-height: 0;
3211
+ }
3212
+ [id^="perseus-widget-passage-container"] .katex {
3213
+ line-height: 18px;
3214
+ }
3215
+ [id^="perseus-widget-passage-container"] .footnotes {
3213
3216
  margin-top: 22px;
3214
3217
  }
3215
- .perseus-widget-passage-container .footnotes div.paragraph {
3218
+ [id^="perseus-widget-passage-container"] .footnotes div.paragraph {
3216
3219
  font-size: 14px;
3217
3220
  margin: 0;
3218
3221
  }
3219
- .perseus-widget-passage-container .perseus-highlight {
3220
- background-color: #FFFABE;
3222
+ [id^="perseus-widget-passage-container"] .perseus-highlight {
3223
+ background-color: #fffabe;
3221
3224
  }
3222
- .perseus-widget-passage-container .perseus-review-highlight {
3223
- background-color: #EEE7B2;
3225
+ [id^="perseus-widget-passage-container"] .perseus-review-highlight {
3226
+ background-color: #eee7b2;
3224
3227
  }
3225
- .perseus-widget-passage-container .perseus-passage-square-label,
3226
- .perseus-widget-passage-container .perseus-passage-circle-label,
3227
- .perseus-widget-passage-container .perseus-passage-bracket-label {
3228
+ [id^="perseus-widget-passage-container"] .perseus-passage-square-label,
3229
+ [id^="perseus-widget-passage-container"] .perseus-passage-circle-label,
3230
+ [id^="perseus-widget-passage-container"] .perseus-passage-bracket-label {
3228
3231
  font-family: Times, "Times New Roman", serif;
3229
3232
  font-size: 16px;
3230
3233
  }
3231
- .perseus-widget-passage-container .line-numbers {
3234
+ [id^="perseus-widget-passage-container"] .line-numbers {
3232
3235
  font-size: 12px;
3233
3236
  font-style: italic;
3234
3237
  font-weight: 600;
@@ -3240,15 +3243,15 @@ body.mobile .perseus-matrix .math-output {
3240
3243
  left: -52px;
3241
3244
  width: 37px;
3242
3245
  }
3243
- .perseus-widget-passage-container .line-numbers span {
3246
+ [id^="perseus-widget-passage-container"] .line-numbers span {
3244
3247
  display: block;
3245
3248
  line-height: 20px;
3246
3249
  position: relative;
3247
3250
  top: 2px;
3248
3251
  visibility: hidden;
3249
3252
  }
3250
- .perseus-widget-passage-container .line-numbers span:nth-of-type(5n),
3251
- .perseus-widget-passage-container .line-numbers .line-marker {
3253
+ [id^="perseus-widget-passage-container"] .line-numbers span:nth-of-type(5n),
3254
+ [id^="perseus-widget-passage-container"] .line-numbers .line-marker {
3252
3255
  visibility: visible;
3253
3256
  }
3254
3257
  .perseus-widget-passage-editor .perseus-single-editor {
package/dist/index.d.ts CHANGED
@@ -89,7 +89,7 @@ export type { ILogger, LogErrorOptions, ErrorKind } from "./logging/log";
89
89
  export type { ServerItemRenderer as ServerItemRendererComponent } from "./server-item-renderer";
90
90
  export type { Alignment, APIOptions, APIOptionsWithDefaults, ChangeHandler, DeviceType, DomInsertCheckFn, EditorMode, FocusPath, Hint, ImageDict, ImageUploader, JiptLabelStore, JiptRenderer, KEScore, LinterContextProps, PerseusDependencies, PerseusScore, RendererInterface, Version, VideoData, VideoKind, WidgetDict, WidgetExports, WidgetInfo, } from "./types";
91
91
  export type { ParsedValue } from "./util";
92
- export type { MathFormat, InputNumberWidget, PerseusImageBackground, PerseusInteractiveGraphWidgetOptions, PerseusRadioWidgetOptions, PerseusRenderer, } from "./perseus-types";
92
+ export type { MathFormat, InputNumberWidget, PerseusImageBackground, PerseusInteractiveGraphWidgetOptions, PerseusRadioWidgetOptions, PerseusExpressionWidgetOptions, PerseusRenderer, } from "./perseus-types";
93
93
  export type { Coord } from "./interactive2/types";
94
94
  export type { MarkerType } from "./widgets/label-image/types";
95
95
  /**
package/dist/index.js CHANGED
@@ -17764,10 +17764,7 @@ class InteractionTracker {
17764
17764
 
17765
17765
  // @ts-expect-error [FEI-5003] - TS2564 - Property 'widgetType' has no initializer and is not definitely assigned in the constructor.
17766
17766
 
17767
- constructor(trackApi,
17768
- // original apiOptions.trackInteraction
17769
- widgetType, widgetID, setting // "" means track once
17770
- ) {
17767
+ constructor(trackApi, widgetType, widgetID, setting) {
17771
17768
  _defineProperty(this, "_tracked", void 0);
17772
17769
  _defineProperty(this, "setting", void 0);
17773
17770
  _defineProperty(this, "track", void 0);
@@ -17782,7 +17779,6 @@ class InteractionTracker {
17782
17779
  this.trackApi({
17783
17780
  type: this.widgetType,
17784
17781
  id: this.widgetID,
17785
- // @ts-expect-error [FEI-5003] - TS2698 - Spread types may only be created from object types.
17786
17782
  ...extraData
17787
17783
  });
17788
17784
  });
@@ -38175,10 +38171,11 @@ class Passage extends React__namespace.Component {
38175
38171
  const parsedContent = PassageMarkdown.parse(doubleQuoteParsedContent, parseState);
38176
38172
  // Check if the title has any non-empty text in it.
38177
38173
  const hasTitle = /\S/.test(this.props.passageTitle);
38174
+ const joinedTitle = joinString(this.props.passageTitle);
38178
38175
  return /*#__PURE__*/React__namespace.createElement("div", null, /*#__PURE__*/React__namespace.createElement("div", {
38179
- className: "perseus-widget-passage-container"
38176
+ id: "perseus-widget-passage-container" + joinedTitle
38180
38177
  }, this._renderInstructions(parseState), /*#__PURE__*/React__namespace.createElement("div", {
38181
- className: "perseus-widget-passage"
38178
+ id: "perseus-widget-passage" + joinedTitle
38182
38179
  }, hasTitle && /*#__PURE__*/React__namespace.createElement("h3", {
38183
38180
  className: "passage-title"
38184
38181
  }, /*#__PURE__*/React__namespace.createElement(Renderer, {
@@ -38209,6 +38206,8 @@ class Passage extends React__namespace.Component {
38209
38206
  }, i18n__namespace._("End of reading passage.")))));
38210
38207
  }
38211
38208
  }
38209
+
38210
+ // That's All, Folks! => -thats-all-folks
38212
38211
  _defineProperty(Passage, "defaultProps", {
38213
38212
  passageTitle: "",
38214
38213
  passageText: "",
@@ -38217,6 +38216,7 @@ _defineProperty(Passage, "defaultProps", {
38217
38216
  highlights: {},
38218
38217
  linterContext: PerseusLinter.linterContextDefault
38219
38218
  });
38219
+ const joinString = title => "-" + title.toLowerCase().replace(/[^\w\s]/gi, "").trim().split(/\s+/).join("-");
38220
38220
  var Passage$1 = {
38221
38221
  name: "passage",
38222
38222
  displayName: "Passage (SAT only)",
@@ -39339,17 +39339,6 @@ class Sequence extends React__namespace.Component {
39339
39339
  }));
39340
39340
  }
39341
39341
  }
39342
- _defineProperty(Sequence, "propTypes", {
39343
- ...propTypes,
39344
- apiOptions: ApiOptions.propTypes,
39345
- json: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({
39346
- content: PropTypes__default["default"].string,
39347
- images: PropTypes__default["default"].objectOf(PropTypes__default["default"].any),
39348
- widgets: PropTypes__default["default"].objectOf(PropTypes__default["default"].any)
39349
- })),
39350
- trackInteraction: PropTypes__default["default"].func.isRequired,
39351
- linterContext: PerseusLinter.linterContextProps
39352
- });
39353
39342
  _defineProperty(Sequence, "defaultProps", {
39354
39343
  json: [{
39355
39344
  content: "",
@@ -105,6 +105,7 @@ export type {
105
105
  PerseusImageBackground,
106
106
  PerseusInteractiveGraphWidgetOptions,
107
107
  PerseusRadioWidgetOptions,
108
+ PerseusExpressionWidgetOptions,
108
109
  PerseusRenderer,
109
110
  } from "./perseus-types";
110
111
  export type { Coord } from "./interactive2/types";