PluginProbe
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses / 4.4.8
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses v4.4.8
4.4.8 4.4.7 4.4.6 4.4.5 4.4.4 4.4.3 4.4.2 4.4.1 4.4.0 4.3.9.1 4.3.9 4.3.8 4.3.7 4.1.6.9 4.1.6.9.1 4.1.6.9.2 4.1.6.9.3 4.1.6.9.4 4.1.7 4.1.7.1 4.1.7.2 4.1.7.3 4.1.7.3.1 4.1.7.3.2 4.2.0 All 139 releases
learnpress / assets / js / dist / blocks / course-title.js

course-title.js in LearnPress – WordPress LMS Plugin for Create and Sell Online Courses 4.4.8, at assets/js/dist/blocks/course-title.js

457 lines 19.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /******/ (() => { // webpackBootstrap
2 /******/ "use strict";
3 /******/ var __webpack_modules__ = ({
4
5 /***/ "./node_modules/@wordpress/icons/build-module/library/title.js"
6 /*!*********************************************************************!*\
7 !*** ./node_modules/@wordpress/icons/build-module/library/title.js ***!
8 \*********************************************************************/
9 (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
10
11 __webpack_require__.r(__webpack_exports__);
12 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
13 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
14 /* harmony export */ });
15 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/primitives */ "@wordpress/primitives");
16 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_0__);
17 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime");
18 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__);
19 /**
20 * WordPress dependencies
21 */
22
23
24 const title = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_0__.SVG, {
25 xmlns: "http://www.w3.org/2000/svg",
26 viewBox: "0 0 24 24",
27 children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_0__.Path, {
28 d: "m4 5.5h2v6.5h1.5v-6.5h2v-1.5h-5.5zm16 10.5h-16v-1.5h16zm-7 4h-9v-1.5h9z"
29 })
30 });
31 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (title);
32 //# sourceMappingURL=title.js.map
33
34 /***/ },
35
36 /***/ "./assets/src/apps/js/blocks/course-elements/course-title/edit.js"
37 /*!************************************************************************!*\
38 !*** ./assets/src/apps/js/blocks/course-elements/course-title/edit.js ***!
39 \************************************************************************/
40 (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
41
42 __webpack_require__.r(__webpack_exports__);
43 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
44 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
45 /* harmony export */ });
46 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
47 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
48 /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
49 /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__);
50 /* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor");
51 /* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__);
52 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
53 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__);
54 /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
55 /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__);
56
57
58
59
60
61 const Edit = props => {
62 const {
63 attributes,
64 setAttributes,
65 context
66 } = props;
67 const {
68 tag,
69 isLink,
70 target
71 } = attributes;
72 const blockProps = (0,_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.useBlockProps)();
73 const {
74 lpCourseData
75 } = context;
76 const tagOptions = [{
77 label: 'span',
78 value: 'span'
79 }, {
80 label: 'div',
81 value: 'div'
82 }, {
83 label: 'h1',
84 value: 'h1'
85 }, {
86 label: 'h2',
87 value: 'h2'
88 }, {
89 label: 'h3',
90 value: 'h3'
91 }, {
92 label: 'h4',
93 value: 'h4'
94 }, {
95 label: 'h5',
96 value: 'h5'
97 }, {
98 label: 'h6',
99 value: 'h6'
100 }];
101 const courseTitle = lpCourseData?.title || (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Course Title', 'learnpress');
102 const TagName = tag;
103 return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.InspectorControls, null, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.PanelBody, {
104 title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Settings', 'learnpress')
105 }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.SelectControl, {
106 label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Tag', 'learnpress'),
107 value: tag,
108 options: tagOptions,
109 onChange: value => setAttributes({
110 tag: value
111 })
112 }), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.ToggleControl
113 // Default text of WP so not need text-domain
114 , {
115 label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Make the title a link'),
116 checked: !!isLink,
117 onChange: value => {
118 props.setAttributes({
119 isLink: value
120 });
121 }
122 }), props.attributes.isLink ? (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.ToggleControl, {
123 label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Open is new tab', 'learnpress'),
124 checked: !!target,
125 onChange: value => {
126 props.setAttributes({
127 target: value
128 });
129 }
130 }) : '')), props.attributes.isLink ? (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(TagName, {
131 ...blockProps
132 }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("a", {
133 dangerouslySetInnerHTML: {
134 __html: courseTitle
135 }
136 })) : (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(TagName, {
137 ...blockProps,
138 dangerouslySetInnerHTML: {
139 __html: courseTitle
140 }
141 }));
142 };
143 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Edit);
144
145 /***/ },
146
147 /***/ "./assets/src/apps/js/blocks/course-elements/course-title/save.js"
148 /*!************************************************************************!*\
149 !*** ./assets/src/apps/js/blocks/course-elements/course-title/save.js ***!
150 \************************************************************************/
151 (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
152
153 __webpack_require__.r(__webpack_exports__);
154 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
155 /* harmony export */ save: () => (/* binding */ save)
156 /* harmony export */ });
157 const save = props => null;
158
159 /***/ },
160
161 /***/ "./assets/src/apps/js/blocks/utilBlock.js"
162 /*!************************************************!*\
163 !*** ./assets/src/apps/js/blocks/utilBlock.js ***!
164 \************************************************/
165 (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
166
167 __webpack_require__.r(__webpack_exports__);
168 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
169 /* harmony export */ checkTemplatesCanLoadBlock: () => (/* binding */ checkTemplatesCanLoadBlock)
170 /* harmony export */ });
171 /* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks");
172 /* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_0__);
173 /* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/data */ "@wordpress/data");
174 /* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_data__WEBPACK_IMPORTED_MODULE_1__);
175 /**
176 * Check if the block can be loaded in the current template.
177 *
178 * @since 4.2.8.4
179 * @version 1.0.0
180 */
181
182
183 let currentPostIdOld = null;
184 const checkTemplatesCanLoadBlock = (templates, metadata, callBack) => {
185 (0,_wordpress_data__WEBPACK_IMPORTED_MODULE_1__.subscribe)(() => {
186 const metaDataNew = {
187 ...metadata
188 };
189 const store = (0,_wordpress_data__WEBPACK_IMPORTED_MODULE_1__.select)('core/editor') || null;
190 if (!store || typeof store.getCurrentPostId !== 'function' || !store.getCurrentPostId()) {
191 return;
192 }
193 const currentPostId = store.getCurrentPostId();
194 if (currentPostId === null) {
195 return;
196 }
197 if (currentPostIdOld === currentPostId) {
198 return;
199 }
200 currentPostIdOld = currentPostId;
201 if ((0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_0__.getBlockType)(metaDataNew.name)) {
202 (0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_0__.unregisterBlockType)(metaDataNew.name);
203 if (templates.includes(currentPostId)) {
204 metaDataNew.ancestor = null;
205 callBack(metaDataNew);
206 } else {
207 if (!metaDataNew.ancestor) {
208 metaDataNew.ancestor = [];
209 }
210 callBack(metaDataNew);
211 }
212 }
213 });
214 };
215
216
217 /***/ },
218
219 /***/ "react"
220 /*!************************!*\
221 !*** external "React" ***!
222 \************************/
223 (module) {
224
225 module.exports = window["React"];
226
227 /***/ },
228
229 /***/ "react/jsx-runtime"
230 /*!**********************************!*\
231 !*** external "ReactJSXRuntime" ***!
232 \**********************************/
233 (module) {
234
235 module.exports = window["ReactJSXRuntime"];
236
237 /***/ },
238
239 /***/ "@wordpress/block-editor"
240 /*!*************************************!*\
241 !*** external ["wp","blockEditor"] ***!
242 \*************************************/
243 (module) {
244
245 module.exports = window["wp"]["blockEditor"];
246
247 /***/ },
248
249 /***/ "@wordpress/blocks"
250 /*!********************************!*\
251 !*** external ["wp","blocks"] ***!
252 \********************************/
253 (module) {
254
255 module.exports = window["wp"]["blocks"];
256
257 /***/ },
258
259 /***/ "@wordpress/components"
260 /*!************************************!*\
261 !*** external ["wp","components"] ***!
262 \************************************/
263 (module) {
264
265 module.exports = window["wp"]["components"];
266
267 /***/ },
268
269 /***/ "@wordpress/data"
270 /*!******************************!*\
271 !*** external ["wp","data"] ***!
272 \******************************/
273 (module) {
274
275 module.exports = window["wp"]["data"];
276
277 /***/ },
278
279 /***/ "@wordpress/element"
280 /*!*********************************!*\
281 !*** external ["wp","element"] ***!
282 \*********************************/
283 (module) {
284
285 module.exports = window["wp"]["element"];
286
287 /***/ },
288
289 /***/ "@wordpress/i18n"
290 /*!******************************!*\
291 !*** external ["wp","i18n"] ***!
292 \******************************/
293 (module) {
294
295 module.exports = window["wp"]["i18n"];
296
297 /***/ },
298
299 /***/ "@wordpress/primitives"
300 /*!************************************!*\
301 !*** external ["wp","primitives"] ***!
302 \************************************/
303 (module) {
304
305 module.exports = window["wp"]["primitives"];
306
307 /***/ },
308
309 /***/ "./assets/src/apps/js/blocks/course-elements/course-title/block.json"
310 /*!***************************************************************************!*\
311 !*** ./assets/src/apps/js/blocks/course-elements/course-title/block.json ***!
312 \***************************************************************************/
313 (module) {
314
315 module.exports = /*#__PURE__*/JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"learnpress/course-title","title":"Course Title","category":"learnpress-course-elements","description":"Course title.","textdomain":"learnpress","keywords":["course title","learnpress"],"ancestor":["learnpress/single-course","learnpress/course-item-template"],"attributes":{"tag":{"type":"string","default":"span"},"isLink":{"type":"boolean","default":false},"target":{"type":"boolean","default":false}},"usesContext":["lpCourseData"],"supports":{"multiple":true,"align":["wide","full"],"html":false,"typography":{"fontSize":true,"lineHeight":false,"fontWeight":true,"textTransform":false,"__experimentalFontFamily":false,"__experimentalTextDecoration":false,"__experimentalFontStyle":true,"__experimentalFontWeight":true,"__experimentalLetterSpacing":false,"__experimentalTextTransform":true,"__experimentalDefaultControls":{"fontSize":true,"textTransform":false}},"color":{"text":true,"link":true,"background":true,"__experimentalDefaultControls":{"text":true,"link":false,"background":false}},"__experimentalBorder":{"color":false,"radius":false,"width":false},"spacing":{"padding":true,"margin":true,"__experimentalDefaultControls":{"margin":false,"padding":false}}}}');
316
317 /***/ }
318
319 /******/ });
320 /************************************************************************/
321 /******/ // The module cache
322 /******/ const __webpack_module_cache__ = {};
323 /******/
324 /******/ // The require function
325 /******/ function __webpack_require__(moduleId) {
326 /******/ // Check if module is in cache
327 /******/ const cachedModule = __webpack_module_cache__[moduleId];
328 /******/ if (cachedModule !== undefined) {
329 /******/ return cachedModule.exports;
330 /******/ }
331 /******/ // Create a new module (and put it into the cache)
332 /******/ const module = __webpack_module_cache__[moduleId] = {
333 /******/ // no module.id needed
334 /******/ // no module.loaded needed
335 /******/ exports: {}
336 /******/ };
337 /******/
338 /******/ // Execute the module function
339 /******/ if (!(moduleId in __webpack_modules__)) {
340 /******/ delete __webpack_module_cache__[moduleId];
341 /******/ const e = new Error("Cannot find module '" + moduleId + "'");
342 /******/ e.code = 'MODULE_NOT_FOUND';
343 /******/ throw e;
344 /******/ }
345 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
346 /******/
347 /******/ // Return the exports of the module
348 /******/ return module.exports;
349 /******/ }
350 /******/
351 /************************************************************************/
352 /******/ /* webpack/runtime/compat get default export */
353 /******/ (() => {
354 /******/ // getDefaultExport function for compatibility with non-harmony modules
355 /******/ __webpack_require__.n = (module) => {
356 /******/ const getter = module && module.__esModule ?
357 /******/ () => (module['default']) :
358 /******/ () => (module);
359 /******/ __webpack_require__.d(getter, { a: getter });
360 /******/ return getter;
361 /******/ };
362 /******/ })();
363 /******/
364 /******/ /* webpack/runtime/define property getters */
365 /******/ (() => {
366 /******/ // define getter/value functions for harmony exports
367 /******/ __webpack_require__.d = (exports, definition) => {
368 /******/ if(Array.isArray(definition)) {
369 /******/ var i = 0;
370 /******/ while(i < definition.length) {
371 /******/ var key = definition[i++];
372 /******/ var binding = definition[i++];
373 /******/ if(!__webpack_require__.o(exports, key)) {
374 /******/ if(binding === 0) {
375 /******/ Object.defineProperty(exports, key, { enumerable: true, value: definition[i++] });
376 /******/ } else {
377 /******/ Object.defineProperty(exports, key, { enumerable: true, get: binding });
378 /******/ }
379 /******/ } else if(binding === 0) { i++; }
380 /******/ }
381 /******/ } else {
382 /******/ for(var key in definition) {
383 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
384 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
385 /******/ }
386 /******/ }
387 /******/ }
388 /******/ };
389 /******/ })();
390 /******/
391 /******/ /* webpack/runtime/hasOwnProperty shorthand */
392 /******/ (() => {
393 /******/ __webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))
394 /******/ })();
395 /******/
396 /******/ /* webpack/runtime/make namespace object */
397 /******/ (() => {
398 /******/ // define __esModule on exports
399 /******/ __webpack_require__.r = (exports) => {
400 /******/ if(Symbol.toStringTag) {
401 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
402 /******/ }
403 /******/ Object.defineProperty(exports, '__esModule', { value: true });
404 /******/ };
405 /******/ })();
406 /******/
407 /************************************************************************/
408 let __webpack_exports__ = {};
409 // This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk.
410 (() => {
411 /*!*************************************************************************!*\
412 !*** ./assets/src/apps/js/blocks/course-elements/course-title/index.js ***!
413 \*************************************************************************/
414 __webpack_require__.r(__webpack_exports__);
415 /* harmony import */ var _edit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./edit */ "./assets/src/apps/js/blocks/course-elements/course-title/edit.js");
416 /* harmony import */ var _save__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./save */ "./assets/src/apps/js/blocks/course-elements/course-title/save.js");
417 /* harmony import */ var _block_json__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./block.json */ "./assets/src/apps/js/blocks/course-elements/course-title/block.json");
418 /* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks");
419 /* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_3__);
420 /* harmony import */ var _utilBlock_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utilBlock.js */ "./assets/src/apps/js/blocks/utilBlock.js");
421 /* harmony import */ var _wordpress_icons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @wordpress/icons */ "./node_modules/@wordpress/icons/build-module/library/title.js");
422 /**
423 * Register block course title.
424 */
425
426
427
428
429
430
431 const templatesName = ['learnpress/learnpress//single-lp_course', 'learnpress/learnpress//single-lp_course-offline'];
432
433 /**
434 * Check if the block can load in the template editor: single-lp_course.
435 * if it is editing on this template, set ancestor to null
436 */
437 (0,_utilBlock_js__WEBPACK_IMPORTED_MODULE_4__.checkTemplatesCanLoadBlock)(templatesName, _block_json__WEBPACK_IMPORTED_MODULE_2__, metadataNew => {
438 (0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_3__.registerBlockType)(metadataNew.name, {
439 ...metadataNew,
440 icon: _wordpress_icons__WEBPACK_IMPORTED_MODULE_5__["default"],
441 edit: _edit__WEBPACK_IMPORTED_MODULE_0__["default"],
442 save: _save__WEBPACK_IMPORTED_MODULE_1__.save
443 });
444 });
445
446 // Register the block with the original metadata, ancestor will be set on block.json
447 (0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_3__.registerBlockType)(_block_json__WEBPACK_IMPORTED_MODULE_2__.name, {
448 ..._block_json__WEBPACK_IMPORTED_MODULE_2__,
449 icon: _wordpress_icons__WEBPACK_IMPORTED_MODULE_5__["default"],
450 edit: _edit__WEBPACK_IMPORTED_MODULE_0__["default"],
451 save: _save__WEBPACK_IMPORTED_MODULE_1__.save
452 });
453 })();
454
455 /******/ })()
456 ;
457 //# sourceMappingURL=course-title.js.map