@pie-element/complex-rubric 2.4.1-next.17 → 2.4.1-next.6

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.
@@ -211,8 +211,6 @@ var ComplexRubricConfigureElement = /*#__PURE__*/function (_HTMLElement) {
211
211
 
212
212
  exports["default"] = ComplexRubricConfigureElement;
213
213
  (0, _defineProperty2["default"])(ComplexRubricConfigureElement, "createDefaultModel", function () {
214
- var _sensibleDefaults$mod, _sensibleDefaults$mod2, _sensibleDefaults$mod3;
215
-
216
214
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
217
215
  _ref$rubrics = _ref.rubrics;
218
216
 
@@ -228,13 +226,12 @@ exports["default"] = ComplexRubricConfigureElement;
228
226
  _ref$rubrics$multiTra = _ref$rubrics.multiTraitRubric,
229
227
  multiTraitRubric = _ref$rubrics$multiTra === void 0 ? {} : _ref$rubrics$multiTra,
230
228
  model = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
231
- var currentModel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
232
- var pieDefaults = (_defaults2["default"] === null || _defaults2["default"] === void 0 ? void 0 : _defaults2["default"].model) || {};
233
- return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, pieDefaults), currentModel), model), {}, {
229
+ var defaults = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
230
+ return _objectSpread(_objectSpread(_objectSpread({}, defaults), model), {}, {
234
231
  rubrics: {
235
- simpleRubric: _objectSpread(_objectSpread(_objectSpread({}, ((_defaults2["default"] === null || _defaults2["default"] === void 0 ? void 0 : (_sensibleDefaults$mod = _defaults2["default"].model) === null || _sensibleDefaults$mod === void 0 ? void 0 : _sensibleDefaults$mod.rubrics) || {}).simpleRubric), (currentModel.rubrics || {}).simpleRubric), simpleRubric),
236
- multiTraitRubric: _objectSpread(_objectSpread(_objectSpread({}, ((_defaults2["default"] === null || _defaults2["default"] === void 0 ? void 0 : (_sensibleDefaults$mod2 = _defaults2["default"].model) === null || _sensibleDefaults$mod2 === void 0 ? void 0 : _sensibleDefaults$mod2.rubrics) || {}).multiTraitRubric), (currentModel.rubrics || {}).multiTraitRubric), multiTraitRubric),
237
- rubricless: _objectSpread(_objectSpread(_objectSpread({}, ((_defaults2["default"] === null || _defaults2["default"] === void 0 ? void 0 : (_sensibleDefaults$mod3 = _defaults2["default"].model) === null || _sensibleDefaults$mod3 === void 0 ? void 0 : _sensibleDefaults$mod3.rubrics) || {}).rubricless), (currentModel.rubrics || {}).rubricless), rubricless)
232
+ simpleRubric: _objectSpread(_objectSpread({}, (defaults.rubrics || {}).simpleRubric), simpleRubric),
233
+ multiTraitRubric: _objectSpread(_objectSpread({}, (defaults.rubrics || {}).multiTraitRubric), multiTraitRubric),
234
+ rubricless: _objectSpread(_objectSpread({}, (defaults.rubrics || {}).rubricless), rubricless)
238
235
  }
239
236
  });
240
237
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["MODEL_UPDATED","ModelUpdatedEvent","TYPE","RUBRIC_TAG_NAME","MULTI_TRAIT_RUBRIC_TAG_NAME","ComplexSimpleRubricConfigure","RubricConfigure","ComplexMTRConfigure","MultiTraitRubricConfigure","defineComplexRubric","customElements","get","define","prepareCustomizationObject","config","model","configuration","sensibleDefaults","ComplexRubricConfigureElement","m","reset","_model","createDefaultModel","dispatchModelUpdated","_render","e","target","preventDefault","stopImmediatePropagation","id","getAttribute","update","rubrics","dispatchEvent","canUpdateModel","debug","log","_configuration","onConfigurationChanged","bind","resetValue","c","info","onModelChanged","addEventListener","onModelUpdated","removeEventListener","element","React","createElement","Main","ReactDOM","render","HTMLElement","simpleRubric","rubricless","multiTraitRubric","currentModel","pieDefaults"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,aAAa,GAAGC,sCAAkBC,IAAxC;AACA,IAAMC,eAAe,GAAG,kBAAxB;AACA,IAAMC,2BAA2B,GAAG,8BAApC;;IAEMC,4B;;;;;;;;;;;EAAqCC,e;;IAGrCC,mB;;;;;;;;;;;EAA4BC,gB;;AAGlC,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,GAAM;AAChC,MAAI,CAACC,cAAc,CAACC,GAAf,CAAmBR,eAAnB,CAAL,EAA0C;AACxCO,IAAAA,cAAc,CAACE,MAAf,CAAsBT,eAAtB,EAAuCE,4BAAvC;AACD;;AACD,MAAI,CAACK,cAAc,CAACC,GAAf,CAAmBP,2BAAnB,CAAL,EAAsD;AACpDM,IAAAA,cAAc,CAACE,MAAf,CAAsBR,2BAAtB,EAAmDG,mBAAnD;AACD;AACF,CAPD;;AASAE,mBAAmB;;AAEnB,IAAMI,0BAA0B,GAAG,SAA7BA,0BAA6B,CAACC,MAAD,EAASC,KAAT,EAAmB;AACpD,MAAMC,aAAa,GAAG,0BAASF,MAAT,EAAiBG,sBAAiBD,aAAlC,CAAtB;AAEA,SAAO;AACLA,IAAAA,aAAa,EAAbA,aADK;AAELD,IAAAA,KAAK,EAALA;AAFK,GAAP;AAID,CAPD;;IASqBG,6B;;;;;AAiCnB,2CAAc;AAAA;;AAAA;AACZ;AADY,uGAyBG,UAACC,CAAD,EAAIC,KAAJ,EAAc;AAC7B,YAAKC,MAAL,GAAcH,6BAA6B,CAACI,kBAA9B,CAAiDH,CAAjD,EAAoD,MAAKE,MAAzD,CAAd;;AAEA,YAAKE,oBAAL,CAA0BH,KAA1B;;AAEA,YAAKI,OAAL;AACD,KA/Ba;AAAA,uGAkDG,UAACC,CAAD,EAAO;AACtB,UAAIA,CAAC,CAACC,MAAF,mDAAJ,EAAuB;AACrB;AACD;;AAEDD,MAAAA,CAAC,CAACE,cAAF;AACAF,MAAAA,CAAC,CAACG,wBAAF;AAEA,UAAMC,EAAE,GAAGJ,CAAC,CAACC,MAAF,IAAYD,CAAC,CAACC,MAAF,CAASI,YAAT,CAAsB,IAAtB,CAAvB;;AAEA,UAAID,EAAJ,EAAQ;AACN,YAAIJ,CAAC,CAACM,MAAN,EAAc;AACZ,gBAAKV,MAAL,CAAYW,OAAZ,CAAoBH,EAApB,IAA0BJ,CAAC,CAACM,MAA5B;AACD;;AAED,cAAKE,aAAL,CAAmB,IAAIhC,qCAAJ,CAAsB,MAAKoB,MAA3B,CAAnB;AACD;AACF,KAnEa;AAEZ,UAAKa,cAAL,GAAsB,KAAtB;;AAEAC,sBAAMC,GAAN,CAAU,oBAAV;;AAEA,UAAKf,MAAL,GAAcH,6BAA6B,CAACI,kBAA9B,EAAd;AACA,UAAKe,cAAL,GAAsBpB,sBAAiBD,aAAvC;AAEA,UAAKsB,sBAAL,GAA8B,MAAKA,sBAAL,CAA4BC,IAA5B,gDAA9B;AATY;AAUb;;;;SAED,aAAUpB,CAAV,EAAa;AACX,WAAKE,MAAL,GAAcH,6BAA6B,CAACI,kBAA9B,CAAiDH,CAAjD,EAAoD,KAAKE,MAAzD,CAAd;AAEA,WAAKa,cAAL,GAAsB,IAAtB;;AACA,WAAKV,OAAL;AACD;;;WAED,8BAAqBJ,KAArB,EAA4B;AAC1B,UAAMoB,UAAU,GAAG,CAAC,CAACpB,KAArB;AAEA,WAAKa,aAAL,CAAmB,IAAIhC,qCAAJ,CAAsB,KAAKoB,MAA3B,EAAmCmB,UAAnC,CAAnB;AACD;;;SAUD,aAAkBC,CAAlB,EAAqB;AACnB,UAAMC,IAAI,GAAG7B,0BAA0B,CAAC4B,CAAD,EAAI,KAAKpB,MAAT,CAAvC;AACA,WAAKgB,cAAL,GAAsBK,IAAI,CAAC1B,aAA3B;;AAEA,WAAKQ,OAAL;AACD;;;WAED,gCAAuBiB,CAAvB,EAA0B;AACxB,WAAKJ,cAAL,GAAsBxB,0BAA0B,CAAC4B,CAAD,EAAI,KAAKpB,MAAT,CAA1B,CAA2CL,aAAjE;;AAEA,UAAI,KAAKK,MAAT,EAAiB;AACf,aAAKsB,cAAL,CAAoB,KAAKtB,MAAzB;AACD;;AAED,WAAKG,OAAL;AACD;;;WAqBD,6BAAoB;AAClB,WAAKoB,gBAAL,CAAsB5C,aAAtB,EAAqC,KAAK6C,cAA1C;;AACA,WAAKrB,OAAL;AACD;;;WAED,gCAAuB;AACrB,WAAKsB,mBAAL,CAAyB9C,aAAzB,EAAwC,KAAK6C,cAA7C;AACD;;;WAED,mBAAU;AACR,UAAIE,OAAO,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACtCnC,QAAAA,KAAK,EAAE,KAAKM,MAD0B;AAEtCL,QAAAA,aAAa,EAAE,KAAKqB,cAFkB;AAGtCM,QAAAA,cAAc,EAAE,KAAKA,cAHiB;AAItCL,QAAAA,sBAAsB,EAAE,KAAKA,sBAJS;AAKtCJ,QAAAA,cAAc,EAAE,KAAKA;AALiB,OAA1B,CAAd;;AAQAiB,2BAASC,MAAT,CAAgBL,OAAhB,EAAyB,IAAzB;AACD;;;kDAzHwDM,W;;;iCAAtCnC,6B,wBACS,YAO5B;AAAA;;AAAA,iFAHM,EAGN;AAAA,0BALIc,OAKJ;;AAAA,2CAL6E;AAAEsB,IAAAA,YAAY,EAAE,EAAhB;AAAoBC,IAAAA,UAAU,EAAE,EAAhC;AAAoCC,IAAAA,gBAAgB,EAAE;AAAtD,GAK7E;AAAA,2CALeF,YAKf;AAAA,MALeA,YAKf,sCAL8B,EAK9B;AAAA,2CALkCC,UAKlC;AAAA,MALkCA,UAKlC,sCAL+C,EAK/C;AAAA,2CALmDC,gBAKnD;AAAA,MALmDA,gBAKnD,sCALsE,EAKtE;AAAA,MAJOzC,KAIP;AAAA,MAFE0C,YAEF,uEAFiB,EAEjB;AACE,MAAMC,WAAW,GAAG,qGAAkB3C,KAAlB,KAA2B,EAA/C;AACA,qEACK2C,WADL,GAEKD,YAFL,GAGK1C,KAHL;AAIAiB,IAAAA,OAAO,EAAE;AACPsB,MAAAA,YAAY,gDACP,CAAC,8HAAkBvC,KAAlB,gFAAyBiB,OAAzB,KAAoC,EAArC,EAAyCsB,YADlC,GAEP,CAACG,YAAY,CAACzB,OAAb,IAAwB,EAAzB,EAA6BsB,YAFtB,GAGPA,YAHO,CADL;AAMPE,MAAAA,gBAAgB,gDACX,CAAC,+HAAkBzC,KAAlB,kFAAyBiB,OAAzB,KAAoC,EAArC,EAAyCwB,gBAD9B,GAEX,CAACC,YAAY,CAACzB,OAAb,IAAwB,EAAzB,EAA6BwB,gBAFlB,GAGXA,gBAHW,CANT;AAWPD,MAAAA,UAAU,gDACL,CAAC,+HAAkBxC,KAAlB,kFAAyBiB,OAAzB,KAAoC,EAArC,EAAyCuB,UADpC,GAEL,CAACE,YAAY,CAACzB,OAAb,IAAwB,EAAzB,EAA6BuB,UAFxB,GAGLA,UAHK;AAXH;AAJT;AAqBA,C","sourcesContent":["import { ModelUpdatedEvent } from '@pie-framework/pie-configure-events';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport RubricConfigure from '@pie-element/rubric/configure/lib';\nimport MultiTraitRubricConfigure from '@pie-element/multi-trait-rubric/configure/lib';\nimport debug from 'debug';\nimport defaults from 'lodash/defaults';\nimport Main from './main';\nimport sensibleDefaults from './defaults';\n\nconst MODEL_UPDATED = ModelUpdatedEvent.TYPE;\nconst RUBRIC_TAG_NAME = 'rubric-configure';\nconst MULTI_TRAIT_RUBRIC_TAG_NAME = 'multi-trait-rubric-configure';\n\nclass ComplexSimpleRubricConfigure extends RubricConfigure {\n}\n\nclass ComplexMTRConfigure extends MultiTraitRubricConfigure {\n}\n\nconst defineComplexRubric = () => {\n if (!customElements.get(RUBRIC_TAG_NAME)) {\n customElements.define(RUBRIC_TAG_NAME, ComplexSimpleRubricConfigure);\n }\n if (!customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {\n customElements.define(MULTI_TRAIT_RUBRIC_TAG_NAME, ComplexMTRConfigure);\n }\n};\n\ndefineComplexRubric();\n\nconst prepareCustomizationObject = (config, model) => {\n const configuration = defaults(config, sensibleDefaults.configuration);\n\n return {\n configuration,\n model,\n };\n};\n\nexport default class ComplexRubricConfigureElement extends HTMLElement {\n static createDefaultModel = (\n {\n rubrics: { simpleRubric = {}, rubricless = {}, multiTraitRubric = {} } = { simpleRubric: {}, rubricless: {}, multiTraitRubric: {} },\n ...model\n } = {},\n currentModel = {},\n ) =>\n {\n const pieDefaults = sensibleDefaults?.model || {}\n return {\n ...pieDefaults,\n ...currentModel,\n ...model,\n rubrics: {\n simpleRubric: {\n ...(sensibleDefaults?.model?.rubrics || {}).simpleRubric,\n ...(currentModel.rubrics || {}).simpleRubric,\n ...simpleRubric,\n },\n multiTraitRubric: {\n ...(sensibleDefaults?.model?.rubrics || {}).multiTraitRubric,\n ...(currentModel.rubrics || {}).multiTraitRubric,\n ...multiTraitRubric,\n },\n rubricless: {\n ...(sensibleDefaults?.model?.rubrics || {}).rubricless,\n ...(currentModel.rubrics || {}).rubricless,\n ...rubricless,\n },\n },\n }};\n\n constructor() {\n super();\n this.canUpdateModel = false;\n\n debug.log('constructor called');\n\n this._model = ComplexRubricConfigureElement.createDefaultModel();\n this._configuration = sensibleDefaults.configuration;\n\n this.onConfigurationChanged = this.onConfigurationChanged.bind(this);\n }\n\n set model(m) {\n this._model = ComplexRubricConfigureElement.createDefaultModel(m, this._model);\n\n this.canUpdateModel = true;\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged = (m, reset) => {\n this._model = ComplexRubricConfigureElement.createDefaultModel(m, this._model);\n\n this.dispatchModelUpdated(reset);\n\n this._render();\n };\n\n set configuration(c) {\n const info = prepareCustomizationObject(c, this._model);\n this._configuration = info.configuration;\n\n this._render();\n }\n\n onConfigurationChanged(c) {\n this._configuration = prepareCustomizationObject(c, this._model).configuration;\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this._render();\n }\n\n onModelUpdated = (e) => {\n if (e.target === this) {\n return;\n }\n\n e.preventDefault();\n e.stopImmediatePropagation();\n\n const id = e.target && e.target.getAttribute('id');\n\n if (id) {\n if (e.update) {\n this._model.rubrics[id] = e.update;\n }\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\n };\n\n connectedCallback() {\n this.addEventListener(MODEL_UPDATED, this.onModelUpdated);\n this._render();\n }\n\n disconnectedCallback() {\n this.removeEventListener(MODEL_UPDATED, this.onModelUpdated);\n }\n\n _render() {\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n canUpdateModel: this.canUpdateModel\n });\n\n ReactDOM.render(element, this);\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["MODEL_UPDATED","ModelUpdatedEvent","TYPE","RUBRIC_TAG_NAME","MULTI_TRAIT_RUBRIC_TAG_NAME","ComplexSimpleRubricConfigure","RubricConfigure","ComplexMTRConfigure","MultiTraitRubricConfigure","defineComplexRubric","customElements","get","define","prepareCustomizationObject","config","model","configuration","sensibleDefaults","ComplexRubricConfigureElement","m","reset","_model","createDefaultModel","dispatchModelUpdated","_render","e","target","preventDefault","stopImmediatePropagation","id","getAttribute","update","rubrics","dispatchEvent","canUpdateModel","debug","log","_configuration","onConfigurationChanged","bind","resetValue","c","info","onModelChanged","addEventListener","onModelUpdated","removeEventListener","element","React","createElement","Main","ReactDOM","render","HTMLElement","simpleRubric","rubricless","multiTraitRubric","defaults"],"mappings":"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","sourcesContent":["import { ModelUpdatedEvent } from '@pie-framework/pie-configure-events';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport RubricConfigure from '@pie-element/rubric/configure/lib';\nimport MultiTraitRubricConfigure from '@pie-element/multi-trait-rubric/configure/lib';\nimport debug from 'debug';\nimport defaults from 'lodash/defaults';\nimport Main from './main';\nimport sensibleDefaults from './defaults';\n\nconst MODEL_UPDATED = ModelUpdatedEvent.TYPE;\nconst RUBRIC_TAG_NAME = 'rubric-configure';\nconst MULTI_TRAIT_RUBRIC_TAG_NAME = 'multi-trait-rubric-configure';\n\nclass ComplexSimpleRubricConfigure extends RubricConfigure {\n}\n\nclass ComplexMTRConfigure extends MultiTraitRubricConfigure {\n}\n\nconst defineComplexRubric = () => {\n if (!customElements.get(RUBRIC_TAG_NAME)) {\n customElements.define(RUBRIC_TAG_NAME, ComplexSimpleRubricConfigure);\n }\n if (!customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {\n customElements.define(MULTI_TRAIT_RUBRIC_TAG_NAME, ComplexMTRConfigure);\n }\n};\n\ndefineComplexRubric();\n\nconst prepareCustomizationObject = (config, model) => {\n const configuration = defaults(config, sensibleDefaults.configuration);\n\n return {\n configuration,\n model,\n };\n};\n\nexport default class ComplexRubricConfigureElement extends HTMLElement {\n static createDefaultModel = (\n {\n rubrics: { simpleRubric = {}, rubricless = {}, multiTraitRubric = {} } = { simpleRubric: {}, rubricless: {}, multiTraitRubric: {} },\n ...model\n } = {},\n defaults = {},\n ) =>\n {\n return {\n ...defaults,\n ...model,\n rubrics: {\n simpleRubric: {\n ...(defaults.rubrics || {}).simpleRubric,\n ...simpleRubric,\n },\n multiTraitRubric: {\n ...(defaults.rubrics || {}).multiTraitRubric,\n ...multiTraitRubric,\n },\n rubricless: {\n ...(defaults.rubrics || {}).rubricless,\n ...rubricless,\n },\n },\n }};\n\n constructor() {\n super();\n this.canUpdateModel = false;\n\n debug.log('constructor called');\n\n this._model = ComplexRubricConfigureElement.createDefaultModel();\n this._configuration = sensibleDefaults.configuration;\n\n this.onConfigurationChanged = this.onConfigurationChanged.bind(this);\n }\n\n set model(m) {\n this._model = ComplexRubricConfigureElement.createDefaultModel(m, this._model);\n\n this.canUpdateModel = true;\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged = (m, reset) => {\n this._model = ComplexRubricConfigureElement.createDefaultModel(m, this._model);\n\n this.dispatchModelUpdated(reset);\n\n this._render();\n };\n\n set configuration(c) {\n const info = prepareCustomizationObject(c, this._model);\n this._configuration = info.configuration;\n\n this._render();\n }\n\n onConfigurationChanged(c) {\n this._configuration = prepareCustomizationObject(c, this._model).configuration;\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this._render();\n }\n\n onModelUpdated = (e) => {\n if (e.target === this) {\n return;\n }\n\n e.preventDefault();\n e.stopImmediatePropagation();\n\n const id = e.target && e.target.getAttribute('id');\n\n if (id) {\n if (e.update) {\n this._model.rubrics[id] = e.update;\n }\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\n };\n\n connectedCallback() {\n this.addEventListener(MODEL_UPDATED, this.onModelUpdated);\n this._render();\n }\n\n disconnectedCallback() {\n this.removeEventListener(MODEL_UPDATED, this.onModelUpdated);\n }\n\n _render() {\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n canUpdateModel: this.canUpdateModel\n });\n\n ReactDOM.render(element, this);\n }\n}\n"],"file":"index.js"}
@@ -44,28 +44,23 @@ export default class ComplexRubricConfigureElement extends HTMLElement {
44
44
  rubrics: { simpleRubric = {}, rubricless = {}, multiTraitRubric = {} } = { simpleRubric: {}, rubricless: {}, multiTraitRubric: {} },
45
45
  ...model
46
46
  } = {},
47
- currentModel = {},
47
+ defaults = {},
48
48
  ) =>
49
49
  {
50
- const pieDefaults = sensibleDefaults?.model || {}
51
50
  return {
52
- ...pieDefaults,
53
- ...currentModel,
54
- ...model,
51
+ ...defaults,
52
+ ...model,
55
53
  rubrics: {
56
54
  simpleRubric: {
57
- ...(sensibleDefaults?.model?.rubrics || {}).simpleRubric,
58
- ...(currentModel.rubrics || {}).simpleRubric,
55
+ ...(defaults.rubrics || {}).simpleRubric,
59
56
  ...simpleRubric,
60
57
  },
61
58
  multiTraitRubric: {
62
- ...(sensibleDefaults?.model?.rubrics || {}).multiTraitRubric,
63
- ...(currentModel.rubrics || {}).multiTraitRubric,
59
+ ...(defaults.rubrics || {}).multiTraitRubric,
64
60
  ...multiTraitRubric,
65
61
  },
66
62
  rubricless: {
67
- ...(sensibleDefaults?.model?.rubrics || {}).rubricless,
68
- ...(currentModel.rubrics || {}).rubricless,
63
+ ...(defaults.rubrics || {}).rubricless,
69
64
  ...rubricless,
70
65
  },
71
66
  },
@@ -2,6 +2,7 @@ exports.model = (id, element) => ({
2
2
  id,
3
3
  element,
4
4
  rubricType: 'simpleRubric',
5
+ rubricOptions: ['simpleRubric', 'multiTraitRubric'],
5
6
  rubrics: {
6
7
  simpleRubric: {
7
8
  points: ['nothing right', 'a teeny bit right', 'mostly right', 'bingo'],
@@ -233016,27 +233016,6 @@ const React = _dll_react;
233016
233016
  const ReactDOM = _dll_react_dom;
233017
233017
  const debug = _dll_debug;
233018
233018
  const {defaults: defaults} = _dll_lodash;
233019
- function _optionalChain(ops) {
233020
- let lastAccessLHS = undefined;
233021
- let value = ops[0];
233022
- let i = 1;
233023
- while (i < ops.length) {
233024
- const op = ops[i];
233025
- const fn = ops[i + 1];
233026
- i += 2;
233027
- if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) {
233028
- return undefined;
233029
- }
233030
- if (op === 'access' || op === 'optionalAccess') {
233031
- lastAccessLHS = value;
233032
- value = fn(value);
233033
- } else if (op === 'call' || op === 'optionalCall') {
233034
- value = fn((...args) => value.call(lastAccessLHS, ...args));
233035
- lastAccessLHS = undefined;
233036
- }
233037
- }
233038
- return value;
233039
- }
233040
233019
  const MODEL_UPDATED = ModelUpdatedEvent_1.TYPE;
233041
233020
  const RUBRIC_TAG_NAME = 'rubric-configure';
233042
233021
  const MULTI_TRAIT_RUBRIC_TAG_NAME = 'multi-trait-rubric-configure';
@@ -233064,26 +233043,21 @@ class ComplexRubricConfigureElement extends HTMLElement {
233064
233043
  simpleRubric: {},
233065
233044
  rubricless: {},
233066
233045
  multiTraitRubric: {}
233067
- }, ...model} = {}, currentModel = {}) => {
233068
- const pieDefaults = _optionalChain([sensibleDefaults, 'optionalAccess', _8 => _8.model]) || ({});
233046
+ }, ...model} = {}, defaults = {}) => {
233069
233047
  return {
233070
- ...pieDefaults,
233071
- ...currentModel,
233048
+ ...defaults,
233072
233049
  ...model,
233073
233050
  rubrics: {
233074
233051
  simpleRubric: {
233075
- ...(_optionalChain([sensibleDefaults, 'optionalAccess', _9 => _9.model, 'optionalAccess', _10 => _10.rubrics]) || ({})).simpleRubric,
233076
- ...(currentModel.rubrics || ({})).simpleRubric,
233052
+ ...(defaults.rubrics || ({})).simpleRubric,
233077
233053
  ...simpleRubric
233078
233054
  },
233079
233055
  multiTraitRubric: {
233080
- ...(_optionalChain([sensibleDefaults, 'optionalAccess', _11 => _11.model, 'optionalAccess', _12 => _12.rubrics]) || ({})).multiTraitRubric,
233081
- ...(currentModel.rubrics || ({})).multiTraitRubric,
233056
+ ...(defaults.rubrics || ({})).multiTraitRubric,
233082
233057
  ...multiTraitRubric
233083
233058
  },
233084
233059
  rubricless: {
233085
- ...(_optionalChain([sensibleDefaults, 'optionalAccess', _13 => _13.model, 'optionalAccess', _14 => _14.rubrics]) || ({})).rubricless,
233086
- ...(currentModel.rubrics || ({})).rubricless,
233060
+ ...(defaults.rubrics || ({})).rubricless,
233087
233061
  ...rubricless
233088
233062
  }
233089
233063
  }
package/module/demo.js CHANGED
@@ -8,6 +8,7 @@ generate.model = (id, element) => ({
8
8
  id,
9
9
  element,
10
10
  rubricType: 'simpleRubric',
11
+ rubricOptions: ['simpleRubric', 'multiTraitRubric'],
11
12
  rubrics: {
12
13
  simpleRubric: {
13
14
  points: ['nothing right', 'a teeny bit right', 'mostly right', 'bingo'],
@@ -6,6 +6,7 @@ generate.model = (id, element) => ({
6
6
  id,
7
7
  element,
8
8
  rubricType: 'simpleRubric',
9
+ rubricOptions: ['simpleRubric', 'multiTraitRubric'],
9
10
  rubrics: {
10
11
  simpleRubric: {
11
12
  points: ['nothing right', 'a teeny bit right', 'mostly right', 'bingo'],
package/package.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
2
  "name": "@pie-element/complex-rubric",
3
3
  "repository": "pie-framework/pie-elements",
4
- "version": "2.4.1-next.17+86385a32b",
4
+ "version": "2.4.1-next.6+58a2b4054",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
8
8
  "dependencies": {
9
9
  "@material-ui/core": "^3.9.2",
10
- "@pie-element/multi-trait-rubric": "^3.4.1-next.17+86385a32b",
11
- "@pie-element/rubric": "^3.3.1-next.17+86385a32b",
10
+ "@pie-element/multi-trait-rubric": "^3.4.1-next.6+58a2b4054",
11
+ "@pie-element/rubric": "^3.3.1-next.6+58a2b4054",
12
12
  "@pie-framework/pie-player-events": "^0.1.0",
13
13
  "classnames": "^2.2.5",
14
14
  "debug": "^4.1.1",
15
15
  "lodash": "^4.17.11",
16
16
  "prop-types": "^15.7.2"
17
17
  },
18
- "gitHead": "86385a32b0c5b7cd1d3137300444eae5be01957e",
18
+ "gitHead": "58a2b4054c992254766b1fe55211f61c2187acdd",
19
19
  "scripts": {
20
20
  "postpublish": "../../scripts/postpublish"
21
21
  },