diff --git a/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.asset.php b/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.asset.php index faa8e25..72eb332 100644 --- a/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.asset.php +++ b/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.asset.php @@ -1 +1 @@ - array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => 'f1e5510ad5a5a49f9c51'); + array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-core-data', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '05a0d66cc78a35b24dfe'); diff --git a/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js b/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js index 10e8104..bdc5313 100644 --- a/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js +++ b/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js @@ -218,6 +218,7 @@ function Edit({ children: "Audio" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_1__.RichText, { className: "audio-player__details__caption", + placeholder: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)("Renseignez ici la légende de l'audio", "carhop-blocks"), value: caption, onChange: value => handleCaptionChange(value), tagName: "span" @@ -294,7 +295,6 @@ function save({ const { audioUrl, title, - description, caption } = attributes; if (!audioUrl) { @@ -313,17 +313,14 @@ function save({ src: audioUrl, preload: "metadata", children: "Votre navigateur ne supporte pas l'\xE9l\xE9ment audio." - }), (description || caption) && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("p", { + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("p", { className: "audio-player__details", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("span", { className: "audio-player__details__label", children: "Audio" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("span", { className: "audio-player__details__caption", - children: caption ? caption + " — " : "" - }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("span", { - className: "audio-player__details__description", - children: description !== null && description !== void 0 ? description : "" + children: caption !== null && caption !== void 0 ? caption : "" })] })] }); diff --git a/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js.map b/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js.map index c39460f..a5e5ba8 100644 --- a/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js.map +++ b/plugins/carhop-blocks/blocks/audio-player/build/audio-player/index.js.map @@ -1 +1 @@ -{"version":3,"file":"audio-player/index.js","mappings":"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CA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WCzBA;WACA;WACA;WACA;WACA,+BAA+B,wCAAwC;WACvE;WACA;WACA;WACA;WACA,iBAAiB,qBAAqB;WACtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,E;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA,E;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA,E;;;;;WCPA,wF;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D,E;;;;;WCNA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA,4G;;;;;UEjDA;UACA;UACA;UACA;UACA","sources":["webpack://audio-player/./src/audio-player/edit.js","webpack://audio-player/./src/audio-player/editor.scss","webpack://audio-player/./src/audio-player/index.js","webpack://audio-player/./src/audio-player/save.js","webpack://audio-player/./src/audio-player/style.scss","webpack://audio-player/external window [\"wp\",\"blockEditor\"]","webpack://audio-player/external window [\"wp\",\"blocks\"]","webpack://audio-player/external window [\"wp\",\"components\"]","webpack://audio-player/external window [\"wp\",\"coreData\"]","webpack://audio-player/external window [\"wp\",\"data\"]","webpack://audio-player/external window [\"wp\",\"element\"]","webpack://audio-player/external window [\"wp\",\"i18n\"]","webpack://audio-player/external window \"ReactJSXRuntime\"","webpack://audio-player/webpack/bootstrap","webpack://audio-player/webpack/runtime/chunk loaded","webpack://audio-player/webpack/runtime/compat get default export","webpack://audio-player/webpack/runtime/define property getters","webpack://audio-player/webpack/runtime/hasOwnProperty shorthand","webpack://audio-player/webpack/runtime/make namespace object","webpack://audio-player/webpack/runtime/jsonp chunk loading","webpack://audio-player/webpack/before-startup","webpack://audio-player/webpack/startup","webpack://audio-player/webpack/after-startup"],"sourcesContent":["import { __ } from \"@wordpress/i18n\";\nimport {\n\tuseBlockProps,\n\tMediaPlaceholder,\n\tBlockControls,\n\tMediaReplaceFlow,\n\tInspectorControls,\n} from \"@wordpress/block-editor\";\nimport {\n\tToolbarButton,\n\tPanelBody,\n\tTextControl,\n\tNotice,\n} from \"@wordpress/components\";\nimport { useEffect, useRef, useState } from \"@wordpress/element\";\nimport { useDispatch } from \"@wordpress/data\";\nimport { store as coreStore } from \"@wordpress/core-data\";\nimport \"./editor.scss\";\nimport { RichText } from \"@wordpress/block-editor\";\nexport default function Edit({ attributes, setAttributes }) {\n\tconst { audioUrl, audioId, title, caption } = attributes;\n\tconst audioRef = useRef(null);\n\tconst plyrInstance = useRef(null);\n\tconst { saveEntityRecord } = useDispatch(coreStore);\n\tconst [isSavingCaption, setIsSavingCaption] = useState(false);\n\tconst [saveMessage, setSaveMessage] = useState(\"\");\n\n\tconst saveCaptionToMedia = async (newCaption) => {\n\t\tif (!audioId) return;\n\t\ttry {\n\t\t\tsetIsSavingCaption(true);\n\t\t\tsetSaveMessage(\"\");\n\t\t\tawait saveEntityRecord(\"postType\", \"attachment\", {\n\t\t\t\tid: audioId,\n\t\t\t\tcaption: newCaption,\n\t\t\t});\n\t\t\tsetSaveMessage(\n\t\t\t\t__(\"Légende mise à jour dans la médiathèque.\", \"carhop-blocks\")\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tsetSaveMessage(\n\t\t\t\t__(\n\t\t\t\t\t\"Erreur lors de la mise à jour dans la médiathèque.\",\n\t\t\t\t\t\"carhop-blocks\"\n\t\t\t\t)\n\t\t\t);\n\t\t} finally {\n\t\t\tsetIsSavingCaption(false);\n\t\t}\n\t};\n\n\tconst handleCaptionChange = (value) => {\n\t\tsetAttributes({ caption: value });\n\t\tif (audioId) {\n\t\t\tvoid saveCaptionToMedia(value);\n\t\t}\n\t};\n\n\tconst onSelectAudio = (media) => {\n\t\tsetAttributes({\n\t\t\taudioUrl: media.url,\n\t\t\taudioId: media.id,\n\t\t\t// Récupérer les métadonnées depuis la médiathèque\n\t\t\tcaption: media.caption || \"\",\n\t\t});\n\t};\n\n\tconst onSelectURL = (url) => {\n\t\tsetAttributes({\n\t\t\taudioUrl: url,\n\t\t\taudioId: 0,\n\t\t});\n\t};\n\n\tconst onRemoveAudio = () => {\n\t\tsetAttributes({\n\t\t\taudioUrl: \"\",\n\t\t\taudioId: 0,\n\t\t\tcaption: \"\",\n\t\t});\n\t};\n\n\t// Initialize Plyr in the editor\n\tuseEffect(() => {\n\t\t// Wait for Plyr to be loaded (via PHP)\n\t\tif (!audioUrl || !audioRef.current || typeof window.Plyr === \"undefined\") {\n\t\t\treturn;\n\t\t}\n\n\t\t// Destroy previous instance if it exists\n\t\tif (plyrInstance.current) {\n\t\t\tplyrInstance.current.destroy();\n\t\t}\n\n\t\t// Create new Plyr instance\n\t\tplyrInstance.current = new window.Plyr(audioRef.current, {\n\t\t\tcontrols: [\n\t\t\t\t\"play-large\",\n\t\t\t\t\"play\",\n\t\t\t\t\"progress\",\n\t\t\t\t\"current-time\",\n\t\t\t\t\"mute\",\n\t\t\t\t\"volume\",\n\t\t\t\t\"settings\",\n\t\t\t],\n\t\t\tsettings: [\"speed\"],\n\t\t\tspeed: { selected: 1, options: [0.5, 0.75, 1, 1.25, 1.5, 2] },\n\t\t});\n\n\t\t// Cleanup on unmount\n\t\treturn () => {\n\t\t\tif (plyrInstance.current) {\n\t\t\t\tplyrInstance.current.destroy();\n\t\t\t\tplyrInstance.current = null;\n\t\t\t}\n\t\t};\n\t}, [audioUrl]);\n\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t setAttributes({ title: value })}\n\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\t{audioId ? (\n\t\t\t\t\t\tisSavingCaption ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{__(\"Sauvegarde…\", \"carhop-blocks\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : saveMessage ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{saveMessage}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : null\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{__(\n\t\t\t\t\t\t\t\t\"Média externe : la légende n'est pas synchronisée dans la médiathèque.\",\n\t\t\t\t\t\t\t\t\"carhop-blocks\"\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\n\t\t\t setAttributes({ title: value })}\n\t\t\t\ttagName=\"h4\"\n\t\t\t/>\n\t\t\t{!audioUrl ? (\n\t\t\t\t\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{__(\"Retirer\", \"carhop-blocks\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{__(\n\t\t\t\t\t\t\t\t\"Votre navigateur ne supporte pas l'élément audio.\",\n\t\t\t\t\t\t\t\t\"carhop-blocks\"\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\n\t\t\t)}\n\t\t\t

\n\t\t\t\tAudio\n\t\t\t\t handleCaptionChange(value)}\n\t\t\t\t\ttagName=\"span\"\n\t\t\t\t/>\n\t\t\t

\n\t\t
\n\t);\n}\n","// extracted by mini-css-extract-plugin\nexport {};","import { registerBlockType } from \"@wordpress/blocks\";\n\nimport \"./style.scss\";\n\nimport Edit from \"./edit\";\nimport save from \"./save\";\nimport metadata from \"./block.json\";\n\nregisterBlockType(metadata.name, {\n\t/**\n\t * @see ./edit.js\n\t */\n\tedit: Edit,\n\n\t/**\n\t * @see ./save.js\n\t */\n\tsave,\n});\n","import { useBlockProps } from \"@wordpress/block-editor\";\nimport { RichText } from \"@wordpress/block-editor\";\n\nexport default function save({ attributes }) {\n\tconst { audioUrl, title, description, caption } = attributes;\n\n\tif (!audioUrl) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t\n\n\t\t\t{(description || caption) && (\n\t\t\t\t

\n\t\t\t\t\tAudio\n\t\t\t\t\t\n\t\t\t\t\t\t{caption ? caption + \" — \" : \"\"}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{description ?? \"\"}\n\t\t\t\t\t\n\t\t\t\t

\n\t\t\t)}\n\t\t
\n\t);\n}\n","// extracted by mini-css-extract-plugin\nexport {};","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"coreData\"];","module.exports = window[\"wp\"][\"data\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","module.exports = window[\"ReactJSXRuntime\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"audio-player/index\": 0,\n\t\"audio-player/style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkaudio_player\"] = globalThis[\"webpackChunkaudio_player\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"audio-player/style-index\"], () => (__webpack_require__(\"./src/audio-player/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["__","useBlockProps","MediaPlaceholder","BlockControls","MediaReplaceFlow","InspectorControls","ToolbarButton","PanelBody","TextControl","Notice","useEffect","useRef","useState","useDispatch","store","coreStore","RichText","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","Edit","attributes","setAttributes","audioUrl","audioId","title","caption","audioRef","plyrInstance","saveEntityRecord","isSavingCaption","setIsSavingCaption","saveMessage","setSaveMessage","saveCaptionToMedia","newCaption","id","e","handleCaptionChange","value","onSelectAudio","media","url","onSelectURL","onRemoveAudio","current","window","Plyr","destroy","controls","settings","speed","selected","options","className","children","initialOpen","label","onChange","status","isDismissible","tagName","icon","onSelect","accept","allowedTypes","labels","instructions","mediaId","mediaURL","onClick","ref","src","preload","registerBlockType","save","metadata","name","edit","description","Content"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"audio-player/index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAqC;AAOJ;AAMF;AACkC;AACnB;AACY;AACnC;AAC4B;AAAA;AACpC,SAASuB,IAAIA,CAAC;EAAEC,UAAU;EAAEC;AAAc,CAAC,EAAE;EAC3D,MAAM;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGL,UAAU;EACxD,MAAMM,QAAQ,GAAGnB,0DAAM,CAAC,IAAI,CAAC;EAC7B,MAAMoB,YAAY,GAAGpB,0DAAM,CAAC,IAAI,CAAC;EACjC,MAAM;IAAEqB;EAAiB,CAAC,GAAGnB,4DAAW,CAACE,uDAAS,CAAC;EACnD,MAAM,CAACkB,eAAe,EAAEC,kBAAkB,CAAC,GAAGtB,4DAAQ,CAAC,KAAK,CAAC;EAC7D,MAAM,CAACuB,WAAW,EAAEC,cAAc,CAAC,GAAGxB,4DAAQ,CAAC,EAAE,CAAC;EAElD,MAAMyB,kBAAkB,GAAG,MAAOC,UAAU,IAAK;IAChD,IAAI,CAACX,OAAO,EAAE;IACd,IAAI;MACHO,kBAAkB,CAAC,IAAI,CAAC;MACxBE,cAAc,CAAC,EAAE,CAAC;MAClB,MAAMJ,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE;QAChDO,EAAE,EAAEZ,OAAO;QACXE,OAAO,EAAES;MACV,CAAC,CAAC;MACFF,cAAc,CACbpC,mDAAE,CAAC,0CAA0C,EAAE,eAAe,CAC/D,CAAC;IACF,CAAC,CAAC,OAAOwC,CAAC,EAAE;MACXJ,cAAc,CACbpC,mDAAE,CACD,oDAAoD,EACpD,eACD,CACD,CAAC;IACF,CAAC,SAAS;MACTkC,kBAAkB,CAAC,KAAK,CAAC;IAC1B;EACD,CAAC;EAED,MAAMO,mBAAmB,GAAIC,KAAK,IAAK;IACtCjB,aAAa,CAAC;MAAEI,OAAO,EAAEa;IAAM,CAAC,CAAC;IACjC,IAAIf,OAAO,EAAE;MACZ,KAAKU,kBAAkB,CAACK,KAAK,CAAC;IAC/B;EACD,CAAC;EAED,MAAMC,aAAa,GAAIC,KAAK,IAAK;IAChCnB,aAAa,CAAC;MACbC,QAAQ,EAAEkB,KAAK,CAACC,GAAG;MACnBlB,OAAO,EAAEiB,KAAK,CAACL,EAAE;MACjB;MACAV,OAAO,EAAEe,KAAK,CAACf,OAAO,IAAI;IAC3B,CAAC,CAAC;EACH,CAAC;EAED,MAAMiB,WAAW,GAAID,GAAG,IAAK;IAC5BpB,aAAa,CAAC;MACbC,QAAQ,EAAEmB,GAAG;MACblB,OAAO,EAAE;IACV,CAAC,CAAC;EACH,CAAC;EAED,MAAMoB,aAAa,GAAGA,CAAA,KAAM;IAC3BtB,aAAa,CAAC;MACbC,QAAQ,EAAE,EAAE;MACZC,OAAO,EAAE,CAAC;MACVE,OAAO,EAAE;IACV,CAAC,CAAC;EACH,CAAC;;EAED;EACAnB,6DAAS,CAAC,MAAM;IACf;IACA,IAAI,CAACgB,QAAQ,IAAI,CAACI,QAAQ,CAACkB,OAAO,IAAI,OAAOC,MAAM,CAACC,IAAI,KAAK,WAAW,EAAE;MACzE;IACD;;IAEA;IACA,IAAInB,YAAY,CAACiB,OAAO,EAAE;MACzBjB,YAAY,CAACiB,OAAO,CAACG,OAAO,CAAC,CAAC;IAC/B;;IAEA;IACApB,YAAY,CAACiB,OAAO,GAAG,IAAIC,MAAM,CAACC,IAAI,CAACpB,QAAQ,CAACkB,OAAO,EAAE;MACxDI,QAAQ,EAAE,CACT,YAAY,EACZ,MAAM,EACN,UAAU,EACV,cAAc,EACd,MAAM,EACN,QAAQ,EACR,UAAU,CACV;MACDC,QAAQ,EAAE,CAAC,OAAO,CAAC;MACnBC,KAAK,EAAE;QAAEC,QAAQ,EAAE,CAAC;QAAEC,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;MAAE;IAC7D,CAAC,CAAC;;IAEF;IACA,OAAO,MAAM;MACZ,IAAIzB,YAAY,CAACiB,OAAO,EAAE;QACzBjB,YAAY,CAACiB,OAAO,CAACG,OAAO,CAAC,CAAC;QAC9BpB,YAAY,CAACiB,OAAO,GAAG,IAAI;MAC5B;IACD,CAAC;EACF,CAAC,EAAE,CAACtB,QAAQ,CAAC,CAAC;EAEd,oBACCN,uDAAA;IAAA,GAASnB,sEAAa,CAAC;MAAEwD,SAAS,EAAE;IAAe,CAAC,CAAC;IAAAC,QAAA,gBACpDxC,sDAAA,CAACb,sEAAiB;MAAAqD,QAAA,eACjBtC,uDAAA,CAACb,4DAAS;QACTqB,KAAK,EAAE5B,mDAAE,CAAC,cAAc,EAAE,eAAe,CAAE;QAC3C2D,WAAW,EAAE,IAAK;QAAAD,QAAA,gBAElBxC,sDAAA,CAACV,8DAAW;UACXoD,KAAK,EAAE5D,mDAAE,CAAC,OAAO,EAAE,eAAe,CAAE;UACpC0C,KAAK,EAAEd,KAAM;UACbiC,QAAQ,EAAGnB,KAAK,IAAKjB,aAAa,CAAC;YAAEG,KAAK,EAAEc;UAAM,CAAC;QAAE,CACrD,CAAC,eACFxB,sDAAA,CAACV,8DAAW;UACXoD,KAAK,EAAE5D,mDAAE,CAAC,SAAS,EAAE,eAAe,CAAE;UACtC0C,KAAK,EAAEb,OAAQ;UACfgC,QAAQ,EAAEpB;QAAoB,CAC9B,CAAC,EACDd,OAAO,GACPM,eAAe,gBACdf,sDAAA,CAACT,yDAAM;UAACqD,MAAM,EAAC,MAAM;UAACC,aAAa,EAAE,KAAM;UAAAL,QAAA,EACzC1D,mDAAE,CAAC,aAAa,EAAE,eAAe;QAAC,CAC5B,CAAC,GACNmC,WAAW,gBACdjB,sDAAA,CAACT,yDAAM;UAACqD,MAAM,EAAC,SAAS;UAACC,aAAa,EAAE,KAAM;UAAAL,QAAA,EAC5CvB;QAAW,CACL,CAAC,GACN,IAAI,gBAERjB,sDAAA,CAACT,yDAAM;UAACqD,MAAM,EAAC,MAAM;UAACC,aAAa,EAAE,KAAM;UAAAL,QAAA,EACzC1D,mDAAE,CACF,wEAAwE,EACxE,eACD;QAAC,CACM,CACR;MAAA,CACS;IAAC,CACM,CAAC,eACpBkB,sDAAA,CAACF,6DAAQ;MACRyC,SAAS,EAAC,qBAAqB;MAC/Bf,KAAK,EAAEd,KAAM;MACbiC,QAAQ,EAAGnB,KAAK,IAAKjB,aAAa,CAAC;QAAEG,KAAK,EAAEc;MAAM,CAAC,CAAE;MACrDsB,OAAO,EAAC;IAAI,CACZ,CAAC,EACD,CAACtC,QAAQ,gBACTR,sDAAA,CAAChB,qEAAgB;MAChB+D,IAAI,EAAC,cAAc;MACnBC,QAAQ,EAAEvB,aAAc;MACxBG,WAAW,EAAEA,WAAY;MACzBqB,MAAM,EAAC,SAAS;MAChBC,YAAY,EAAE,CAAC,OAAO,CAAE;MACxBC,MAAM,EAAE;QACPzC,KAAK,EAAE5B,mDAAE,CAAC,eAAe,EAAE,eAAe,CAAC;QAC3CsE,YAAY,EAAEtE,mDAAE,CACf,yGAAyG,EACzG,eACD;MACD;IAAE,CACF,CAAC,gBAEFoB,uDAAA,CAAAE,uDAAA;MAAAoC,QAAA,gBACCtC,uDAAA,CAACjB,kEAAa;QAAAuD,QAAA,gBACbxC,sDAAA,CAACd,qEAAgB;UAChBmE,OAAO,EAAE5C,OAAQ;UACjB6C,QAAQ,EAAE9C,QAAS;UACnB0C,YAAY,EAAE,CAAC,OAAO,CAAE;UACxBD,MAAM,EAAC,SAAS;UAChBrB,WAAW,EAAEA,WAAY;UACzBoB,QAAQ,EAAEvB;QAAc,CACxB,CAAC,eACFzB,sDAAA,CAACZ,gEAAa;UAACmE,OAAO,EAAE1B,aAAc;UAAAW,QAAA,EACpC1D,mDAAE,CAAC,SAAS,EAAE,eAAe;QAAC,CACjB,CAAC;MAAA,CACF,CAAC,eAChBkB,sDAAA;QAAKuC,SAAS,EAAC,sBAAsB;QAAAC,QAAA,eACpCxC,sDAAA;UACCwD,GAAG,EAAE5C,QAAS;UACd2B,SAAS,EAAC,SAAS;UACnBkB,GAAG,EAAEjD,QAAS;UACdkD,OAAO,EAAC,UAAU;UAAAlB,QAAA,EAEjB1D,mDAAE,CACF,mDAAmD,EACnD,eACD;QAAC,CACK;MAAC,CACJ,CAAC;IAAA,CACL,CACF,eACDoB,uDAAA;MAAGqC,SAAS,EAAC,uBAAuB;MAAAC,QAAA,gBACnCxC,sDAAA;QAAMuC,SAAS,EAAC,8BAA8B;QAAAC,QAAA,EAAC;MAAK,CAAM,CAAC,eAC3DxC,sDAAA,CAACF,6DAAQ;QACRyC,SAAS,EAAC,gCAAgC;QAC1CoB,WAAW,EAAE7E,mDAAE,CACd,sCAAsC,EACtC,eACD,CAAE;QACF0C,KAAK,EAAEb,OAAQ;QACfgC,QAAQ,EAAGnB,KAAK,IAAKD,mBAAmB,CAACC,KAAK,CAAE;QAChDsB,OAAO,EAAC;MAAM,CACd,CAAC;IAAA,CACA,CAAC;EAAA,CACA,CAAC;AAER,C;;;;;;;;;;;AC7NA;;;;;;;;;;;;;;;;;;ACAsD;AAEhC;AAEI;AACA;AACU;AAEpCc,oEAAiB,CAACE,6CAAa,EAAE;EAChC;AACD;AACA;EACCE,IAAI,EAAE3D,6CAAI;EAEV;AACD;AACA;EACCwD,IAAIA,+CAAAA;AACL,CAAC,CAAC,C;;;;;;;;;;;;;;;;;;AClBsD;AACL;AAAA;AAEpC,SAASA,IAAIA,CAAC;EAAEvD;AAAW,CAAC,EAAE;EAC5C,MAAM;IAAEE,QAAQ;IAAEE,KAAK;IAAEC;EAAQ,CAAC,GAAGL,UAAU;EAE/C,IAAI,CAACE,QAAQ,EAAE;IACd,OAAO,IAAI;EACZ;EAEA,oBACCN,uDAAA;IAAA,GAASnB,kEAAa,CAAC8E,IAAI,CAAC;MAAEtB,SAAS,EAAE;IAAe,CAAC,CAAC;IAAAC,QAAA,gBACzDxC,sDAAA,CAACF,6DAAQ,CAACmE,OAAO;MAChBzC,KAAK,EAAEd,KAAM;MACb6B,SAAS,EAAC,qBAAqB;MAC/BO,OAAO,EAAC;IAAI,CACZ,CAAC,eACF9C,sDAAA;MAAOuC,SAAS,EAAC,SAAS;MAACkB,GAAG,EAAEjD,QAAS;MAACkD,OAAO,EAAC,UAAU;MAAAlB,QAAA,EAAC;IAE7D,CAAO,CAAC,eAERtC,uDAAA;MAAGqC,SAAS,EAAC,uBAAuB;MAAAC,QAAA,gBACnCxC,sDAAA;QAAMuC,SAAS,EAAC,8BAA8B;QAAAC,QAAA,EAAC;MAAK,CAAM,CAAC,eAC3DxC,sDAAA;QAAMuC,SAAS,EAAC,gCAAgC;QAAAC,QAAA,EAAE7B,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAI;MAAE,CAAO,CAAC;IAAA,CACrE,CAAC;EAAA,CACA,CAAC;AAER,C;;;;;;;;;;;AC3BA;;;;;;;;;;;ACAA,6C;;;;;;;;;;ACAA,wC;;;;;;;;;;ACAA,4C;;;;;;;;;;ACAA,0C;;;;;;;;;;ACAA,sC;;;;;;;;;;ACAA,yC;;;;;;;;;;ACAA,sC;;;;;;;;;;ACAA,2C;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WCzBA;WACA;WACA;WACA;WACA,+BAA+B,wCAAwC;WACvE;WACA;WACA;WACA;WACA,iBAAiB,qBAAqB;WACtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,E;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA,E;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA,E;;;;;WCPA,wF;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D,E;;;;;WCNA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA,4G;;;;;UEjDA;UACA;UACA;UACA;UACA","sources":["webpack://audio-player/./src/audio-player/edit.js","webpack://audio-player/./src/audio-player/editor.scss","webpack://audio-player/./src/audio-player/index.js","webpack://audio-player/./src/audio-player/save.js","webpack://audio-player/./src/audio-player/style.scss","webpack://audio-player/external window [\"wp\",\"blockEditor\"]","webpack://audio-player/external window [\"wp\",\"blocks\"]","webpack://audio-player/external window [\"wp\",\"components\"]","webpack://audio-player/external window [\"wp\",\"coreData\"]","webpack://audio-player/external window [\"wp\",\"data\"]","webpack://audio-player/external window [\"wp\",\"element\"]","webpack://audio-player/external window [\"wp\",\"i18n\"]","webpack://audio-player/external window \"ReactJSXRuntime\"","webpack://audio-player/webpack/bootstrap","webpack://audio-player/webpack/runtime/chunk loaded","webpack://audio-player/webpack/runtime/compat get default export","webpack://audio-player/webpack/runtime/define property getters","webpack://audio-player/webpack/runtime/hasOwnProperty shorthand","webpack://audio-player/webpack/runtime/make namespace object","webpack://audio-player/webpack/runtime/jsonp chunk loading","webpack://audio-player/webpack/before-startup","webpack://audio-player/webpack/startup","webpack://audio-player/webpack/after-startup"],"sourcesContent":["import { __ } from \"@wordpress/i18n\";\nimport {\n\tuseBlockProps,\n\tMediaPlaceholder,\n\tBlockControls,\n\tMediaReplaceFlow,\n\tInspectorControls,\n} from \"@wordpress/block-editor\";\nimport {\n\tToolbarButton,\n\tPanelBody,\n\tTextControl,\n\tNotice,\n} from \"@wordpress/components\";\nimport { useEffect, useRef, useState } from \"@wordpress/element\";\nimport { useDispatch } from \"@wordpress/data\";\nimport { store as coreStore } from \"@wordpress/core-data\";\nimport \"./editor.scss\";\nimport { RichText } from \"@wordpress/block-editor\";\nexport default function Edit({ attributes, setAttributes }) {\n\tconst { audioUrl, audioId, title, caption } = attributes;\n\tconst audioRef = useRef(null);\n\tconst plyrInstance = useRef(null);\n\tconst { saveEntityRecord } = useDispatch(coreStore);\n\tconst [isSavingCaption, setIsSavingCaption] = useState(false);\n\tconst [saveMessage, setSaveMessage] = useState(\"\");\n\n\tconst saveCaptionToMedia = async (newCaption) => {\n\t\tif (!audioId) return;\n\t\ttry {\n\t\t\tsetIsSavingCaption(true);\n\t\t\tsetSaveMessage(\"\");\n\t\t\tawait saveEntityRecord(\"postType\", \"attachment\", {\n\t\t\t\tid: audioId,\n\t\t\t\tcaption: newCaption,\n\t\t\t});\n\t\t\tsetSaveMessage(\n\t\t\t\t__(\"Légende mise à jour dans la médiathèque.\", \"carhop-blocks\")\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tsetSaveMessage(\n\t\t\t\t__(\n\t\t\t\t\t\"Erreur lors de la mise à jour dans la médiathèque.\",\n\t\t\t\t\t\"carhop-blocks\"\n\t\t\t\t)\n\t\t\t);\n\t\t} finally {\n\t\t\tsetIsSavingCaption(false);\n\t\t}\n\t};\n\n\tconst handleCaptionChange = (value) => {\n\t\tsetAttributes({ caption: value });\n\t\tif (audioId) {\n\t\t\tvoid saveCaptionToMedia(value);\n\t\t}\n\t};\n\n\tconst onSelectAudio = (media) => {\n\t\tsetAttributes({\n\t\t\taudioUrl: media.url,\n\t\t\taudioId: media.id,\n\t\t\t// Récupérer les métadonnées depuis la médiathèque\n\t\t\tcaption: media.caption || \"\",\n\t\t});\n\t};\n\n\tconst onSelectURL = (url) => {\n\t\tsetAttributes({\n\t\t\taudioUrl: url,\n\t\t\taudioId: 0,\n\t\t});\n\t};\n\n\tconst onRemoveAudio = () => {\n\t\tsetAttributes({\n\t\t\taudioUrl: \"\",\n\t\t\taudioId: 0,\n\t\t\tcaption: \"\",\n\t\t});\n\t};\n\n\t// Initialize Plyr in the editor\n\tuseEffect(() => {\n\t\t// Wait for Plyr to be loaded (via PHP)\n\t\tif (!audioUrl || !audioRef.current || typeof window.Plyr === \"undefined\") {\n\t\t\treturn;\n\t\t}\n\n\t\t// Destroy previous instance if it exists\n\t\tif (plyrInstance.current) {\n\t\t\tplyrInstance.current.destroy();\n\t\t}\n\n\t\t// Create new Plyr instance\n\t\tplyrInstance.current = new window.Plyr(audioRef.current, {\n\t\t\tcontrols: [\n\t\t\t\t\"play-large\",\n\t\t\t\t\"play\",\n\t\t\t\t\"progress\",\n\t\t\t\t\"current-time\",\n\t\t\t\t\"mute\",\n\t\t\t\t\"volume\",\n\t\t\t\t\"settings\",\n\t\t\t],\n\t\t\tsettings: [\"speed\"],\n\t\t\tspeed: { selected: 1, options: [0.5, 0.75, 1, 1.25, 1.5, 2] },\n\t\t});\n\n\t\t// Cleanup on unmount\n\t\treturn () => {\n\t\t\tif (plyrInstance.current) {\n\t\t\t\tplyrInstance.current.destroy();\n\t\t\t\tplyrInstance.current = null;\n\t\t\t}\n\t\t};\n\t}, [audioUrl]);\n\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t setAttributes({ title: value })}\n\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\t{audioId ? (\n\t\t\t\t\t\tisSavingCaption ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{__(\"Sauvegarde…\", \"carhop-blocks\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : saveMessage ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{saveMessage}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : null\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{__(\n\t\t\t\t\t\t\t\t\"Média externe : la légende n'est pas synchronisée dans la médiathèque.\",\n\t\t\t\t\t\t\t\t\"carhop-blocks\"\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\n\t\t\t setAttributes({ title: value })}\n\t\t\t\ttagName=\"h4\"\n\t\t\t/>\n\t\t\t{!audioUrl ? (\n\t\t\t\t\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{__(\"Retirer\", \"carhop-blocks\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{__(\n\t\t\t\t\t\t\t\t\"Votre navigateur ne supporte pas l'élément audio.\",\n\t\t\t\t\t\t\t\t\"carhop-blocks\"\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\n\t\t\t)}\n\t\t\t

\n\t\t\t\tAudio\n\t\t\t\t handleCaptionChange(value)}\n\t\t\t\t\ttagName=\"span\"\n\t\t\t\t/>\n\t\t\t

\n\t\t
\n\t);\n}\n","// extracted by mini-css-extract-plugin\nexport {};","import { registerBlockType } from \"@wordpress/blocks\";\n\nimport \"./style.scss\";\n\nimport Edit from \"./edit\";\nimport save from \"./save\";\nimport metadata from \"./block.json\";\n\nregisterBlockType(metadata.name, {\n\t/**\n\t * @see ./edit.js\n\t */\n\tedit: Edit,\n\n\t/**\n\t * @see ./save.js\n\t */\n\tsave,\n});\n","import { useBlockProps } from \"@wordpress/block-editor\";\nimport { RichText } from \"@wordpress/block-editor\";\n\nexport default function save({ attributes }) {\n\tconst { audioUrl, title, caption } = attributes;\n\n\tif (!audioUrl) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t\n\n\t\t\t

\n\t\t\t\tAudio\n\t\t\t\t{caption ?? \"\"}\n\t\t\t

\n\t\t
\n\t);\n}\n","// extracted by mini-css-extract-plugin\nexport {};","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"coreData\"];","module.exports = window[\"wp\"][\"data\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","module.exports = window[\"ReactJSXRuntime\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"audio-player/index\": 0,\n\t\"audio-player/style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkaudio_player\"] = globalThis[\"webpackChunkaudio_player\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"audio-player/style-index\"], () => (__webpack_require__(\"./src/audio-player/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["__","useBlockProps","MediaPlaceholder","BlockControls","MediaReplaceFlow","InspectorControls","ToolbarButton","PanelBody","TextControl","Notice","useEffect","useRef","useState","useDispatch","store","coreStore","RichText","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","Edit","attributes","setAttributes","audioUrl","audioId","title","caption","audioRef","plyrInstance","saveEntityRecord","isSavingCaption","setIsSavingCaption","saveMessage","setSaveMessage","saveCaptionToMedia","newCaption","id","e","handleCaptionChange","value","onSelectAudio","media","url","onSelectURL","onRemoveAudio","current","window","Plyr","destroy","controls","settings","speed","selected","options","className","children","initialOpen","label","onChange","status","isDismissible","tagName","icon","onSelect","accept","allowedTypes","labels","instructions","mediaId","mediaURL","onClick","ref","src","preload","placeholder","registerBlockType","save","metadata","name","edit","Content"],"sourceRoot":""} \ No newline at end of file diff --git a/plugins/carhop-blocks/blocks/audio-player/src/audio-player/edit.js b/plugins/carhop-blocks/blocks/audio-player/src/audio-player/edit.js index f48715d..db277ff 100644 --- a/plugins/carhop-blocks/blocks/audio-player/src/audio-player/edit.js +++ b/plugins/carhop-blocks/blocks/audio-player/src/audio-player/edit.js @@ -208,6 +208,10 @@ export default function Edit({ attributes, setAttributes }) { Audio handleCaptionChange(value)} tagName="span" diff --git a/plugins/carhop-blocks/blocks/audio-player/src/audio-player/save.js b/plugins/carhop-blocks/blocks/audio-player/src/audio-player/save.js index 4ded66e..63add59 100644 --- a/plugins/carhop-blocks/blocks/audio-player/src/audio-player/save.js +++ b/plugins/carhop-blocks/blocks/audio-player/src/audio-player/save.js @@ -2,7 +2,7 @@ import { useBlockProps } from "@wordpress/block-editor"; import { RichText } from "@wordpress/block-editor"; export default function save({ attributes }) { - const { audioUrl, title, description, caption } = attributes; + const { audioUrl, title, caption } = attributes; if (!audioUrl) { return null; @@ -19,17 +19,10 @@ export default function save({ attributes }) { Votre navigateur ne supporte pas l'élément audio. - {(description || caption) && ( -

- Audio - - {caption ? caption + " — " : ""} - - - {description ?? ""} - -

- )} +

+ Audio + {caption ?? ""} +

); }