From 87a14f93274e4a29faa2ecf1a5713c770b9659dd Mon Sep 17 00:00:00 2001 From: Angus McLeod Date: Sat, 31 May 2025 02:14:27 +0200 Subject: [PATCH] Two Five Eight (#546) * Update dependencies * Add wpdc_publish_featured_link filter * Bump version and add release notes --- admin/discourse-sidebar/build/index.asset.php | 2 +- admin/discourse-sidebar/build/index.js | 1240 ++- admin/discourse-sidebar/build/index.js.map | 1 + admin/discourse-sidebar/package-lock.json | 1342 ++- admin/discourse-sidebar/package.json | 4 +- blocks/comments/build/index.asset.php | 2 +- blocks/comments/build/index.js | 8319 ++++++++++++++++- blocks/comments/build/index.js.map | 1 + blocks/comments/package-lock.json | 1559 +-- blocks/comments/package.json | 10 +- lib/discourse-publish.php | 11 +- package-lock.json | 1 + readme.txt | 7 +- wp-discourse.php | 4 +- 14 files changed, 11043 insertions(+), 1460 deletions(-) create mode 100644 admin/discourse-sidebar/build/index.js.map create mode 100644 blocks/comments/build/index.js.map diff --git a/admin/discourse-sidebar/build/index.asset.php b/admin/discourse-sidebar/build/index.asset.php index fbc5b04..3e6ef45 100644 --- a/admin/discourse-sidebar/build/index.asset.php +++ b/admin/discourse-sidebar/build/index.asset.php @@ -1 +1 @@ - array('react-jsx-runtime'), 'version' => 'a53994925f492a194cb4'); + array('react-jsx-runtime'), 'version' => 'c581dc51ecf5b5866bd8'); diff --git a/admin/discourse-sidebar/build/index.js b/admin/discourse-sidebar/build/index.js index b414d63..de72cea 100644 --- a/admin/discourse-sidebar/build/index.js +++ b/admin/discourse-sidebar/build/index.js @@ -1 +1,1239 @@ -(()=>{"use strict";const s=window.ReactJSXRuntime,{__}=wp.i18n,{PluginSidebar:e,PluginSidebarMoreMenuItem:t}=wp.editor,{PanelBody:i}=wp.components,{Component:n,Fragment:a}=wp.element,{withSelect:o,withDispatch:h}=wp.data,{compose:l}=wp.compose,{registerPlugin:r}=wp.plugins,p=(0,wp.element.createElement)("img",{width:20,height:20,src:pluginOptions.logo,class:"wpdc-logo"}),d="components-button is-button is-default is-primary is-large wpdc-button",c="components-button is-button is-default is-primary is-large wpdc-button active",u=(0,s.jsxs)("svg",{className:"components-panel__arrow",width:"24px",height:"24px",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false",children:[(0,s.jsx)("g",{children:(0,s.jsx)("path",{fill:"none",d:"M0,0h24v24H0V0z"})}),(0,s.jsx)("g",{children:(0,s.jsx)("path",{d:"M7.41,8.59L12,13.17l4.59-4.58L18,10l-6,6l-6-6L7.41,8.59z"})})]}),g=(0,s.jsxs)("svg",{className:"components-panel__arrow",width:"24px",height:"24px",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false",children:[(0,s.jsx)("g",{children:(0,s.jsx)("path",{fill:"none",d:"M0,0h24v24H0V0z"})}),(0,s.jsx)("g",{children:(0,s.jsx)("path",{d:"M12,8l-6,6l1.41,1.41L12,10.83l4.59,4.58L18,14L12,8z"})})]}),b=/[\/\?#\[\]@!\$&'\(\)\*\+,;=\.%\\`^\s|\{\}"<>]+/;class m extends n{render(){return(0,s.jsxs)("div",{children:[(0,s.jsx)(w,{forcePublish:this.props.forcePublish,published:this.props.published}),(0,s.jsx)(_,{statusMessage:this.props.statusMessage}),(0,s.jsx)(x,{publishingError:this.props.publishingError}),(0,s.jsx)(C,{discoursePermalink:this.props.discoursePermalink})]})}}class w extends n{render(){return this.props.forcePublish&&!this.props.published?(0,s.jsx)("p",{className:"wpdc-force-publish-message",children:__("The Force Publish option is enabled for your site. All posts published on WordPress will be automatically published to Discourse.","wp-discourse")}):""}}class _ extends n{render(){const e=this.props.statusMessage;return e?(0,s.jsx)("div",{className:"wpdc-publishing-response success",children:e}):""}}class x extends n{render(){const e=this.props.publishingError;if(e){let t;switch(e){case"deleted_topic":t=__("Your post could not be published to Discourse. The associated Discourse topic may have been deleted. Unlink the post so that it can be published again.","wp-discourse");break;case"Not Found":t=__("Your post could not be updated on Discourse. The associated Discourse topic may have been deleted. Unlink the post so that it can be published again.","wp-discourse");break;case"queued_topic":t=__("Your post has been added to the Discourse approval queue. When it has been approved, you will need to link it to Discourse byselecting the 'Link to Existing Topic' option.","wp-discourse");break;case"Unprocessable Entity":t=__("Your post could not be published to Discourse. There may be an existing Discourse topic that is using its permalink. Try linking the post with that topic.","wp-discourse");break;case"Forbidden":t=__("Your post could not be published to Discourse. Check that your Discourse Username is set correctly on your WordPress profile page.","wp-discourse");break;default:t=e}return(0,s.jsx)("div",{className:"wpdc-publishing-response error",children:t})}return""}}class C extends n{render(){if(this.props.discoursePermalink){const e=encodeURI(this.props.discoursePermalink),t=(0,s.jsx)("a",{href:e,className:"wpdc-permalink-link",target:"_blank",rel:"noreferrer noopener",children:e});return(0,s.jsxs)("div",{className:"wpdc-permalink",children:[__("Your post is linked with","wp-discourse")," ",t]})}return""}}class P extends n{constructor(s){super(s),this.handleChange=this.handleChange.bind(this)}handleChange(s){this.props.handlePublishMethodChange(s.target.value)}render(){return(0,s.jsxs)("div",{className:"wpdc-publishing-options",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Publishing Options","wp-discourse")}),(0,s.jsxs)("label",{htmlFor:"wpdc_publish_option_new_topic",children:[(0,s.jsx)("input",{id:"wpdc_publish_option_new_topic",type:"radio",name:"wpdc_publish_options",value:"publish_post",checked:"publish_post"===this.props.publishingMethod,onChange:this.handleChange}),__("New Topic","wp-discourse")]}),(0,s.jsx)("br",{}),(0,s.jsxs)("label",{htmlFor:"wpdc_publish_option_existing_topic",children:[(0,s.jsx)("input",{id:"wpdc_publish_option_existing_topic",type:"radio",name:"wpdc_publish_options",value:"link_post",checked:"link_post"===this.props.publishingMethod,onChange:this.handleChange}),__("Link to Existing Topic","wp-discourse")]}),(0,s.jsx)("hr",{className:"wpdc-sidebar-hr"})]})}}class k extends n{constructor(s){super(s),this.handleToBePublishedChange=this.handleToBePublishedChange.bind(this),this.handlePublishChange=this.handlePublishChange.bind(this)}handleToBePublishedChange(s){this.props.handleToBePublishedChange(s.target.checked)}handlePublishChange(s){this.props.handlePublishChange(s)}render(){const e=this.props.publishToDiscourse;return"publish"===this.props.postStatus?(0,s.jsxs)("div",{className:"wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Publish to Discourse","wp-discourse")}),(0,s.jsx)("button",{className:this.props.busy?c:d,onClick:this.handlePublishChange,children:__("Publish to Discourse","wp-discourse")})]}):(0,s.jsxs)("div",{className:"wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Publish to Discourse","wp-discourse")}),(0,s.jsxs)("div",{className:"wpdc-publish-topic",children:[(0,s.jsx)("input",{type:"checkBox",className:"wpdc-publish-topic-checkbox",checked:e,onChange:this.handleToBePublishedChange}),__("Publish","wp-discourse"),(0,s.jsx)("p",{className:"wpdc-info",children:__("Automatically publish the post to Discourse when it is published on WordPress.","wp-discourse")})]})]})}}class y extends n{constructor(s){super(s),this.handleChange=this.handleChange.bind(this)}handleChange(s){this.props.handleCategoryChange(s.target.value)}render(){if(this.props.discourseCategories){const e=Object.values(this.props.discourseCategories).map(((e,t)=>(0,s.jsx)("option",{value:e.id,selected:parseInt(this.props.category_id,10)===parseInt(e.id,10),children:e.name},t)));return(0,s.jsxs)("div",{className:"wpdc-category-select wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Category","wp-discourse")}),(0,s.jsx)("select",{onChange:this.handleChange,className:"widefat",children:e}),(0,s.jsx)("hr",{className:"wpdc-sidebar-hr"})]})}return this.props.categoryError?(0,s.jsx)("div",{className:"wpdc-api-error error",children:__("There was an error returning the category list from Discourse.","discourse-integration")}):null}}class T extends n{constructor(s){super(s),this.state={isBusy:!1,topicUrl:null},this.handleChange=this.handleChange.bind(this),this.handleClick=this.handleClick.bind(this)}handleChange(s){this.setState({topicUrl:s.target.value})}handleClick(){this.props.handleLinkTopicClick(this.state.topicUrl)}render(){return(0,s.jsxs)("div",{className:"wpdc-link-post wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Topic URL","wp-discourse")}),(0,s.jsx)("input",{type:"url",className:"widefat wpdc-topic-url-input",onChange:this.handleChange,value:this.state.topicUrl}),(0,s.jsx)("button",{className:this.props.busy?c:d,onClick:this.handleClick,children:__("Link With Discourse","wp-discourse")})]})}}class j extends n{constructor(s){super(s),this.state={showPanel:!1},this.handleClick=this.handleClick.bind(this),this.togglePanel=this.togglePanel.bind(this)}handleClick(s){this.props.handleUnlinkFromDiscourseChange(s)}togglePanel(){this.setState({showPanel:!this.state.showPanel})}render(){return(0,s.jsxs)("div",{className:"wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-panel-section-title",children:(0,s.jsxs)("button",{type:"button","aria-expanded":"false",className:"components-button components-panel__body-toggle",onClick:this.togglePanel,children:[(0,s.jsx)("span",{"aria-hidden":"true",children:this.state.showPanel?g:u}),__("Unlink From Discourse","wp-discourse")]})}),(0,s.jsxs)("div",{className:this.state.showPanel?"":"hidden",children:[(0,s.jsx)("p",{className:"wpdc-info",children:__("Unlinking the post from Discourse will remove all Discourse metadata from the post.","wp-discourse")}),(0,s.jsx)("button",{className:this.props.busy?c:d,onClick:this.handleClick,children:__("Unlink Post","wp-discourse")})]})]})}}class f extends n{constructor(s){super(s),this.state={showPanel:!1},this.handleClick=this.handleClick.bind(this),this.togglePanel=this.togglePanel.bind(this)}togglePanel(){this.setState({showPanel:!this.state.showPanel})}handleClick(s){this.props.handleUpdateChange(s)}render(){return(0,s.jsxs)("div",{className:"wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-panel-section-title",children:(0,s.jsxs)("button",{type:"button","aria-expanded":"false",className:"components-button components-panel__body-toggle",onClick:this.togglePanel,children:[(0,s.jsx)("span",{"aria-hidden":"true",children:this.state.showPanel?g:u}),__("Update Discourse Topic","wp-discourse")]})}),(0,s.jsxs)("div",{className:this.state.showPanel?"":"hidden",children:[(0,s.jsx)("p",{className:"wpdc-info",children:__("Update the Discourse topic to the lastest saved version of the post.","wp-discourse")}),(0,s.jsx)("button",{className:this.props.busy?c:d,onClick:this.handleClick,children:__("Update Topic","wp-discourse")})]})]})}}class v extends n{constructor(s){super(s),this.state={chosenTags:this.props.tags,inputContent:"",inputLength:1,maxTagsExceeded:!1},this.handleKeyPress=this.handleKeyPress.bind(this),this.handleChange=this.handleChange.bind(this),this.handleClick=this.handleClick.bind(this),this.focusInput=this.focusInput.bind(this),this.keyDown=this.keyDown.bind(this)}focusInput(){this.tagInput.focus()}keyDown(s){13===s.keyCode&&this.tagInput.focus()}handleChange(s){const e=s.target.value;this.setState({inputContent:","===e?"":e,inputLength:0===e.length?1:e.length})}handleKeyPress(s){const e=s.key;let t=s.target.value;if("Enter"===e||","===e){let s=this.state.chosenTags;if(s.length>=this.props.maxTags)return this.setState({maxTagsExceeded:!0,inputContent:""}),null;t=this.cleanTag(t),t.length?(s.push(t),s=v.sanitizeArray(s),this.setState({chosenTags:s,inputContent:""},(()=>{this.props.handleTagChange(s)}))):this.setState({inputContent:""})}}cleanTag(s){return(s=(s=(s=s.trim()).replace(/ /g,"-")).replace(/(-)\1+/g,"-")).replace(new RegExp(b,"g"),"")}handleClick(s){const e=this.state.chosenTags,t=e.indexOf(s);t>-1&&(e.splice(t,1),this.setState({chosenTags:e,maxTagsExceeded:!1},(()=>{this.props.handleTagChange(e)})))}static sanitizeArray(s){return s.sort().reduce(((s,e)=>{const t=s.length;return 0!==t&&s[t-1]===e||""===e.trim()||s.push(e),s}),[])}render(){if(this.props.allowTags){const e=this.state.maxTagsExceeded?__("You have exceeded the maximum number of allowed tags for your site. Remove a tag to add more.","wp-discourse"):"";let t=v.sanitizeArray(this.state.chosenTags);return t=t.map((e=>(0,s.jsxs)("span",{className:"components-form-token-field__token",children:[(0,s.jsxs)("span",{className:"components-form-token-field__token-text",children:[(0,s.jsx)("span",{className:"screen-reader-text",children:e}),(0,s.jsx)("span",{"aria-hidden":"true",children:e})]}),(0,s.jsx)("button",{type:"button","aria-label":"Remove Tag",className:"components-button components-icon-button components-form-token-field__remove-token",onClick:this.handleClick.bind(this,e),children:(0,s.jsx)("svg",{"aria-hidden":"true",role:"img",focusable:"false",className:"dashicon dashicons-dismiss",xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{d:"M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm5 11l-3-3 3-3-2-2-3 3-3-3-2 2 3 3-3 3 2 2 3-3 3 3z"})})},e)]},e))),(0,s.jsxs)("div",{className:"wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Tags","wp-discourse")}),(0,s.jsxs)("div",{className:"components-form-token-field__input-container",onClick:this.focusInput,onKeyDown:this.keyDown,role:"combobox",tabIndex:0,children:[t,(0,s.jsx)("input",{type:"text",size:this.state.inputLength,className:"components-form-token-field__input",onChange:this.handleChange,onKeyPress:this.handleKeyPress,value:this.state.inputContent,ref:s=>{this.tagInput=s}})]}),(0,s.jsx)("div",{className:this.state.maxTagsExceeded?"wpdc-info":"",children:e}),(0,s.jsx)("hr",{className:"wpdc-sidebar-hr"})]})}return null}}class N extends n{constructor(s){super(s),this.state={pinTopic:this.props.pinTopic,pinUntil:this.props.pinUntil},this.handleUpdateDate=this.handleUpdateDate.bind(this),this.handleToBePinnedChange=this.handleToBePinnedChange.bind(this)}handleUpdateDate(s){this.setState({pinUntil:s.target.value}),this.props.handlePinChange(this.state.pinTopic,s.target.value)}handleToBePinnedChange(s){this.setState({pinTopic:s.target.checked}),this.props.handlePinChange(s.target.checked,this.state.pinUntil)}render(){return(0,s.jsxs)("div",{className:"wpdc-component-panel-body",children:[(0,s.jsx)("h2",{className:"wpdc-sidebar-title",children:__("Pin Topic","wp-discourse")}),(0,s.jsxs)("label",{htmlFor:"wpdc-pin-topic",children:[(0,s.jsx)("input",{id:"wpdc-pin-topic",type:"checkbox",onChange:this.handleToBePinnedChange,checked:this.state.pinTopic}),__("Pin Discourse Topic","wp-discourse")]}),(0,s.jsx)("br",{}),(0,s.jsxs)("label",{className:"wpdc-pin-until-input",htmlFor:"wpdc-pin-topic-until",children:[__("Pin Until","wp-discourse"),(0,s.jsx)("br",{}),(0,s.jsx)("input",{id:"wpdc-pin-topic-until",type:"date",className:"widefat",onChange:this.handleUpdateDate,value:this.state.pinUntil})]}),(0,s.jsx)("hr",{className:"wpdc-sidebar-hr"})]})}}r("discourse-sidebar",{icon:p,render:l([o(((s,{})=>{const{getCurrentPostId:e,getCurrentPost:t}=s("core/editor");return{postId:e(),post:t()}})),h((s=>{const{editPost:e}=s("core/editor");return{setAutoPublishOverridden(s){e({meta:{wpdc_auto_publish_overridden:s}})}}}))])(class extends n{constructor(s){super(s),this.initializePostMeta(),this.state=this.initializePostState(this.props.post),this.getDiscourseCategories(),this.handleToBePublishedChange=this.handleToBePublishedChange.bind(this),this.handlePublishChange=this.handlePublishChange.bind(this),this.handleCategoryChange=this.handleCategoryChange.bind(this),this.handleTagChange=this.handleTagChange.bind(this),this.handleUnlinkFromDiscourseChange=this.handleUnlinkFromDiscourseChange.bind(this),this.handlePublishMethodChange=this.handlePublishMethodChange.bind(this),this.handleUpdateChange=this.handleUpdateChange.bind(this),this.handleLinkTopicClick=this.handleLinkTopicClick.bind(this),this.handlePinChange=this.handlePinChange.bind(this)}componentDidUpdate(s){this.isAllowedPostType()&&this.publishedPostHasChanged(s.post,this.props.post)&&this.updatePostState(this.props.post)}publishedPostHasChanged(s,e){return!!(s&&e&&s.meta&&e.meta)&&![e.status,s.status].every((s=>"publish"!==s))&&(e.status!==s.status||["discourse_post_id","wpdc_publishing_response","wpdc_publishing_error"].some((t=>e.meta[t]!==s.meta[t])))}initializePostMeta(){this.isAllowedPostType()&&this.props.post&&"publish"===this.props.post.status&&this.props.setAutoPublishOverridden("1")}initializePostState(s){if(!this.isAllowedPostType())return{};let e={published:!1,postStatus:"",publishingMethod:"publish_post",forcePublish:pluginOptions.forcePublish,publishToDiscourse:pluginOptions.autoPublish,publishPostCategory:pluginOptions.defaultCategory,allowTags:pluginOptions.allowTags,maxTags:pluginOptions.maxTags,topicTags:[],pinTopic:!1,pinUntil:null,discoursePostId:null,discoursePermalink:null,publishingError:null,busyUnlinking:!1,busyUpdating:!1,busyLinking:!1,busyPublishing:!1,statusMessage:null,discourseCategories:null,categoryError:!1};return s&&s.meta&&(e=Object.assign(e,this.buildPostState(s))),e}updatePostState(s){this.setState(this.buildPostState(s))}buildPostState(s){if(!s||!s.meta)return{};const e=s.meta,t="string"==typeof e.wpdc_topic_tags?e.wpdc_topic_tags.split(","):[],i={publishToDiscourse:this.determinePublishToDiscourse(e),published:e.discourse_post_id>0,postStatus:s.status,topicTags:t,pinTopic:e.wpdc_pin_topic>0};return e.publish_post_category>0&&(i.publishPostCategory=e.publish_post_category),e.wpdc_pin_until&&(i.pinUntil=e.wpdc_pin_until),e.discourse_post_id&&(i.discoursePostId=e.discourse_post_id),e.discourse_permalink&&(i.discoursePermalink=e.discourse_permalink),e.wpdc_publishing_error&&(i.publishingError=e.wpdc_publishing_error),i}determinePublishToDiscourse(s){const e=pluginOptions.autoPublish,t=1===parseInt(s.wpdc_auto_publish_overridden,10);let i;return i=!(["deleted_topic","queued_topic"].includes(s.wpdc_publishing_error)||(!e||t)&&1!==parseInt(s.wpdc_publish_to_discourse,10)),i}getDiscourseCategories(){pluginOptions.pluginUnconfigured||wp.apiRequest({path:"/wp-discourse/v1/get-discourse-categories",method:"GET",data:{get_categories_nonce:pluginOptions.get_categories_nonce,id:this.props.postId}}).then((s=>{this.setState({discourseCategories:s})}),(()=>{this.setState({categoryError:!0})}))}isAllowedPostType(){return pluginOptions.allowedPostTypes.indexOf(this.props.post.type)>=0}handlePublishMethodChange(s){this.setState({publishingMethod:s})}handleToBePublishedChange(s){this.setState({publishToDiscourse:s,statusMessage:""},(()=>{wp.apiRequest({path:"/wp-discourse/v1/set-publish-meta",method:"POST",data:{set_publish_meta_nonce:pluginOptions.set_publish_meta_nonce,id:this.props.postId,publish_to_discourse:this.state.publishToDiscourse?1:0}}).then((()=>null),(()=>null))}))}handleCategoryChange(s){this.setState({publishPostCategory:s},(()=>{wp.apiRequest({path:"/wp-discourse/v1/set-category-meta",method:"POST",data:{set_category_meta_nonce:pluginOptions.set_category_meta_nonce,id:this.props.postId,publish_post_category:s}}).then((()=>null),(()=>null))}))}handlePinChange(s,e){this.setState({pinTopic:s,pinUntil:e},(()=>{wp.apiRequest({path:"/wp-discourse/v1/set-pin-meta",method:"Post",data:{set_pin_meta_nonce:pluginOptions.set_pin_meta_nonce,id:this.props.postId,wpdc_pin_topic:s?1:0,wpdc_pin_until:e}}).then((()=>null),(()=>null))}))}handleTagChange(s){this.setState({topicTags:s},(()=>{const e=s.join(",");wp.apiRequest({path:"/wp-discourse/v1/set-tag-meta",method:"POST",data:{set_tag_meta_nonce:pluginOptions.set_tag_meta_nonce,id:this.props.postId,wpdc_topic_tags:e}}).then((()=>null),(()=>null))}))}handleLinkTopicClick(s){this.setState({busyLinking:!0,statusMessage:""}),wp.apiRequest({path:"/wp-discourse/v1/link-topic",method:"POST",data:{link_topic_nonce:pluginOptions.link_topic_nonce,id:this.props.postId,topic_url:s}}).then((s=>(this.setState({busyLinking:!1}),s.discourse_permalink?this.setState({published:!0,discoursePermalink:s.discourse_permalink,publishingError:null}):this.setState({publishingError:__("There has been an error linking your post with Discourse.","wp-discourse")}),null)),(s=>{const e=s.responseJSON&&s.responseJSON.message?s.responseJSON.message:__("There has been an error linking your post with Discourse.","wp-discourse");return this.setState({busyLinking:!1,published:!1,publishingError:e}),null}))}handleUnlinkFromDiscourseChange(){this.setState({busyUnlinking:!0,statusMessage:""}),wp.apiRequest({path:"/wp-discourse/v1/unlink-post",method:"POST",data:{unlink_post_nonce:pluginOptions.unlink_post_nonce,id:this.props.postId}}).then((()=>(this.setState({busyUnlinking:!1,published:!1,publishingMethod:"link_post",discoursePermalink:null,statusMessage:__("Your post has been unlinked from Discourse.","wp-discourse")}),null)),(()=>null))}handlePublishChange(){this.setState({busyPublishing:!0,statusMessage:""}),wp.apiRequest({path:"/wp-discourse/v1/publish-topic",method:"POST",data:{publish_topic_nonce:pluginOptions.publish_topic_nonce,id:this.props.postId}}).then((s=>{const e="success"===s.publish_response;return this.setState({busyPublishing:!1,published:e,publishingError:e?null:s.publish_response,publishingMethod:s.publish_response="link_post",discoursePermalink:s.discourse_permalink}),null}),(s=>{const e=s.responseJSON&&s.responseJSON.message?s.responseJSON.message:__("There has been an error linking your post with Discourse.","wp-discourse");return this.setState({busyPublishing:!1,published:!1,publishingError:e}),null}))}handleUpdateChange(){this.setState({busyUpdating:!0,statusMessage:""}),wp.apiRequest({path:"/wp-discourse/v1/update-topic",method:"POST",data:{update_topic_nonce:pluginOptions.update_topic_nonce,id:this.props.postId}}).then((s=>{const e="success"===s.update_response;let t;return e&&(t=__("The Discourse topic has been updated!","wp-discourse")),this.setState({busyUpdating:!1,statusMessage:t,publishingError:e?null:s.update_response}),null}),(()=>{const s=__("There was an error updating the Discourse topic.","wp-discourse");return this.setState({busyUpdating:!1,statusMessage:s}),null}))}render(){if(this.isAllowedPostType()){const n=this.state.published,o=this.state.forcePublish;let h;return h=pluginOptions.pluginUnconfigured?(0,s.jsx)("div",{className:"wpdc-plugin-unconfigured",children:__("Before you can publish posts from WordPress to Discourse, you need to configure the plugin's Connection Settings tab.","discourse-integration")}):n||o?o?null:(0,s.jsxs)("div",{className:"wpdc-published-post",children:[(0,s.jsx)(f,{published:this.state.published,busy:this.state.busyUpdating,handleUpdateChange:this.handleUpdateChange,forcePublish:this.state.forcePublish}),(0,s.jsx)(j,{published:this.state.published,handleUnlinkFromDiscourseChange:this.handleUnlinkFromDiscourseChange,busy:this.state.busyUnlinking,forcePublish:this.state.forcePublish})]}):(0,s.jsxs)("div",{className:"wpdc-not-published",children:[(0,s.jsx)(P,{handlePublishMethodChange:this.handlePublishMethodChange,publishingMethod:this.state.publishingMethod}),"publish_post"===this.state.publishingMethod?(0,s.jsxs)("div",{className:"wpdc-publish-to-discourse",children:[(0,s.jsx)(y,{category_id:this.state.publishPostCategory,handleCategoryChange:this.handleCategoryChange,discourseCategories:this.state.discourseCategories,categoryError:this.state.categoryError}),(0,s.jsx)(v,{handleTagChange:this.handleTagChange,tags:this.state.topicTags,allowTags:this.state.allowTags,maxTags:this.state.maxTags}),(0,s.jsx)(N,{handlePinChange:this.handlePinChange,pinTopic:this.state.pinTopic,pinUntil:this.state.pinUntil}),(0,s.jsx)(k,{postStatus:this.state.postStatus,publishToDiscourse:this.state.publishToDiscourse,handleToBePublishedChange:this.handleToBePublishedChange,handlePublishChange:this.handlePublishChange,busy:this.state.busyPublishing})]}):(0,s.jsx)("div",{className:"wpdc-link-to-discourse",children:(0,s.jsx)(T,{busy:this.state.busyLinking,handleLinkTopicClick:this.handleLinkTopicClick})})]}),(0,s.jsxs)(a,{children:[(0,s.jsx)(t,{target:"discourse-sidebar",children:__("Discourse","wp-discourse")}),(0,s.jsx)(e,{name:"discourse-sidebar",title:__("Discourse","wp-discourse"),children:(0,s.jsx)(i,{children:(0,s.jsxs)("div",{className:"wpdc-sidebar",children:[(0,s.jsx)(m,{published:this.state.published,forcePublish:this.state.forcePublish,publishingError:this.state.publishingError,discoursePermalink:this.state.discoursePermalink,statusMessage:this.state.statusMessage}),h]})})})]})}return null}})})})(); \ No newline at end of file +/******/ (() => { // webpackBootstrap +/******/ "use strict"; +/******/ var __webpack_modules__ = ({ + +/***/ "react/jsx-runtime": +/*!**********************************!*\ + !*** external "ReactJSXRuntime" ***! + \**********************************/ +/***/ ((module) => { + +module.exports = window["ReactJSXRuntime"]; + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/compat get default export */ +/******/ (() => { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = (module) => { +/******/ var getter = module && module.__esModule ? +/******/ () => (module['default']) : +/******/ () => (module); +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk. +(() => { +/*!**********************!*\ + !*** ./src/index.js ***! + \**********************/ +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__); + +/*jshint esversion: 6*/ +/*global pluginOptions*/ +/** + * Internal block libraries. + */ + +const { + __ +} = wp.i18n; +const { + PluginSidebar, + PluginSidebarMoreMenuItem +} = wp.editor; +const { + PanelBody +} = wp.components; +const { + Component, + Fragment +} = wp.element; +const { + withSelect, + withDispatch +} = wp.data; +const { + compose +} = wp.compose; +const { + registerPlugin +} = wp.plugins; +const el = wp.element.createElement; + +// See: https://wp.zacgordon.com/2017/12/07/how-to-add-custom-icons-to-gutenberg-editor-blocks-in-wordpress/ +const iconEl = el('img', { + width: 20, + height: 20, + src: pluginOptions.logo, + class: 'wpdc-logo' +}); +const buttonClass = 'components-button is-button is-default is-primary is-large wpdc-button'; +const activeButtonClass = 'components-button is-button is-default is-primary is-large wpdc-button active'; +const downArrow = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("svg", { + className: 'components-panel__arrow', + width: "24px", + height: "24px", + viewBox: "0 0 24 24", + xmlns: "http://www.w3.org/2000/svg", + role: "img", + "aria-hidden": "true", + focusable: "false", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("g", { + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", { + fill: 'none', + d: 'M0,0h24v24H0V0z' + }) + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("g", { + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", { + d: 'M7.41,8.59L12,13.17l4.59-4.58L18,10l-6,6l-6-6L7.41,8.59z' + }) + })] +}); +const upArrow = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("svg", { + className: 'components-panel__arrow', + width: "24px", + height: "24px", + viewBox: "0 0 24 24", + xmlns: "http://www.w3.org/2000/svg", + role: "img", + "aria-hidden": "true", + focusable: "false", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("g", { + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", { + fill: 'none', + d: 'M0,0h24v24H0V0z' + }) + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("g", { + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", { + d: 'M12,8l-6,6l1.41,1.41L12,10.83l4.59,4.58L18,14L12,8z' + }) + })] +}); +const tagsFilterRegExp = /[\/\?#\[\]@!\$&'\(\)\*\+,;=\.%\\`^\s|\{\}"<>]+/; +class Notification extends Component { + render() { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(ForcePublishMessage, { + forcePublish: this.props.forcePublish, + published: this.props.published + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(StatusMessage, { + statusMessage: this.props.statusMessage + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(ErrorMessage, { + publishingError: this.props.publishingError + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(DiscoursePermalink, { + discoursePermalink: this.props.discoursePermalink + })] + }); + } +} +class ForcePublishMessage extends Component { + render() { + if (this.props.forcePublish && !this.props.published) { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", { + className: 'wpdc-force-publish-message', + children: __('The Force Publish option is enabled for your site. All posts published on WordPress will be automatically published to Discourse.', 'wp-discourse') + }); + } + return ''; + } +} +class StatusMessage extends Component { + render() { + const statusMessage = this.props.statusMessage; + if (statusMessage) { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { + className: 'wpdc-publishing-response success', + children: statusMessage + }); + } + return ''; + } +} +class ErrorMessage extends Component { + render() { + const publishingError = this.props.publishingError; + if (publishingError) { + let message; + switch (publishingError) { + case 'deleted_topic': + message = __('Your post could not be published to Discourse. The associated Discourse topic may have been deleted. ' + 'Unlink the post so that it can be published again.', 'wp-discourse'); + break; + case 'Not Found': + message = __('Your post could not be updated on Discourse. The associated Discourse topic may have been deleted. ' + 'Unlink the post so that it can be published again.', 'wp-discourse'); + break; + case 'queued_topic': + message = __('Your post has been added to the Discourse approval queue. When it has been approved, you will need to link it to Discourse by' + "selecting the 'Link to Existing Topic' option.", 'wp-discourse'); + break; + case 'Unprocessable Entity': + message = __('Your post could not be published to Discourse. There may be an existing Discourse topic that is using its permalink. Try linking the post with that topic.', 'wp-discourse'); + break; + case 'Forbidden': + message = __('Your post could not be published to Discourse. Check that your Discourse Username is set correctly on your WordPress profile page.', 'wp-discourse'); + break; + default: + message = publishingError; + } + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { + className: 'wpdc-publishing-response error', + children: message + }); + } + return ''; + } +} +class DiscoursePermalink extends Component { + render() { + if (this.props.discoursePermalink) { + const permalink = encodeURI(this.props.discoursePermalink); + const link = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("a", { + href: permalink, + className: 'wpdc-permalink-link', + target: '_blank', + rel: 'noreferrer noopener', + children: permalink + }); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-permalink', + children: [__('Your post is linked with', 'wp-discourse'), ' ', link] + }); + } + return ''; + } +} +class PublishingOptions extends Component { + constructor(props) { + super(props); + this.handleChange = this.handleChange.bind(this); + } + handleChange(e) { + this.props.handlePublishMethodChange(e.target.value); + } + render() { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-publishing-options', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Publishing Options', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("label", { + htmlFor: "wpdc_publish_option_new_topic", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + id: "wpdc_publish_option_new_topic", + type: "radio", + name: "wpdc_publish_options", + value: "publish_post", + checked: 'publish_post' === this.props.publishingMethod, + onChange: this.handleChange + }), __('New Topic', 'wp-discourse')] + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("label", { + htmlFor: "wpdc_publish_option_existing_topic", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + id: "wpdc_publish_option_existing_topic", + type: "radio", + name: "wpdc_publish_options", + value: "link_post", + checked: 'link_post' === this.props.publishingMethod, + onChange: this.handleChange + }), __('Link to Existing Topic', 'wp-discourse')] + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("hr", { + className: 'wpdc-sidebar-hr' + })] + }); + } +} +class PublishToDiscourse extends Component { + constructor(props) { + super(props); + this.handleToBePublishedChange = this.handleToBePublishedChange.bind(this); + this.handlePublishChange = this.handlePublishChange.bind(this); + } + handleToBePublishedChange(e) { + this.props.handleToBePublishedChange(e.target.checked); + } + handlePublishChange(e) { + this.props.handlePublishChange(e); + } + render() { + const publishToDiscourse = this.props.publishToDiscourse, + publishedOnWordPress = 'publish' === this.props.postStatus; + if (!publishedOnWordPress) { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Publish to Discourse', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-publish-topic', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + type: "checkBox", + className: 'wpdc-publish-topic-checkbox', + checked: publishToDiscourse, + onChange: this.handleToBePublishedChange + }), __('Publish', 'wp-discourse'), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", { + className: 'wpdc-info', + children: __('Automatically publish the post to Discourse when it is published on WordPress.', 'wp-discourse') + })] + })] + }); + } + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Publish to Discourse', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("button", { + className: this.props.busy ? activeButtonClass : buttonClass, + onClick: this.handlePublishChange, + children: __('Publish to Discourse', 'wp-discourse') + })] + }); + } +} +class CategorySelect extends Component { + constructor(props) { + super(props); + this.handleChange = this.handleChange.bind(this); + } + handleChange(e) { + this.props.handleCategoryChange(e.target.value); + } + render() { + if (this.props.discourseCategories) { + const cats = Object.values(this.props.discourseCategories); + const options = cats.map((cat, index) => /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("option", { + value: cat.id, + selected: parseInt(this.props.category_id, 10) === parseInt(cat.id, 10), + children: cat.name + }, index)); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-category-select wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Category', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("select", { + onChange: this.handleChange, + className: 'widefat', + children: options + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("hr", { + className: 'wpdc-sidebar-hr' + })] + }); + } else if (this.props.categoryError) { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { + className: 'wpdc-api-error error', + children: __('There was an error returning the category list from Discourse.', 'discourse-integration') + }); + } + return null; + } +} +class LinkToDiscourseTopic extends Component { + constructor(props) { + super(props); + this.state = { + isBusy: false, + topicUrl: null + }; + this.handleChange = this.handleChange.bind(this); + this.handleClick = this.handleClick.bind(this); + } + handleChange(e) { + this.setState({ + topicUrl: e.target.value + }); + } + handleClick(/*e*/ + ) { + this.props.handleLinkTopicClick(this.state.topicUrl); + } + render() { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-link-post wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Topic URL', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + type: "url", + className: 'widefat wpdc-topic-url-input', + onChange: this.handleChange, + value: this.state.topicUrl + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("button", { + className: this.props.busy ? activeButtonClass : buttonClass, + onClick: this.handleClick, + children: __('Link With Discourse', 'wp-discourse') + })] + }); + } +} +class UnlinkFromDiscourse extends Component { + constructor(props) { + super(props); + this.state = { + showPanel: false + }; + this.handleClick = this.handleClick.bind(this); + this.togglePanel = this.togglePanel.bind(this); + } + handleClick(e) { + this.props.handleUnlinkFromDiscourseChange(e); + } + togglePanel() { + this.setState({ + showPanel: !this.state.showPanel + }); + } + render() { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-panel-section-title', + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("button", { + type: "button", + "aria-expanded": "false", + className: 'components-button components-panel__body-toggle', + onClick: this.togglePanel, + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", { + "aria-hidden": "true", + children: this.state.showPanel ? upArrow : downArrow + }), __('Unlink From Discourse', 'wp-discourse')] + }) + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: !this.state.showPanel ? 'hidden' : '', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", { + className: 'wpdc-info', + children: __('Unlinking the post from Discourse will remove all Discourse metadata from the post.', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("button", { + className: this.props.busy ? activeButtonClass : buttonClass, + onClick: this.handleClick, + children: __('Unlink Post', 'wp-discourse') + })] + })] + }); + } +} +class UpdateDiscourseTopic extends Component { + constructor(props) { + super(props); + this.state = { + showPanel: false + }; + this.handleClick = this.handleClick.bind(this); + this.togglePanel = this.togglePanel.bind(this); + } + togglePanel() { + this.setState({ + showPanel: !this.state.showPanel + }); + } + handleClick(e) { + this.props.handleUpdateChange(e); + } + render() { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-panel-section-title', + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("button", { + type: "button", + "aria-expanded": "false", + className: 'components-button components-panel__body-toggle', + onClick: this.togglePanel, + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", { + "aria-hidden": "true", + children: this.state.showPanel ? upArrow : downArrow + }), __('Update Discourse Topic', 'wp-discourse')] + }) + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: !this.state.showPanel ? 'hidden' : '', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", { + className: 'wpdc-info', + children: __('Update the Discourse topic to the lastest saved version of the post.', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("button", { + className: this.props.busy ? activeButtonClass : buttonClass, + onClick: this.handleClick, + children: __('Update Topic', 'wp-discourse') + })] + })] + }); + } +} +class TagTopic extends Component { + constructor(props) { + super(props); + this.state = { + chosenTags: this.props.tags, + inputContent: '', + inputLength: 1, + maxTagsExceeded: false + }; + this.handleKeyPress = this.handleKeyPress.bind(this); + this.handleChange = this.handleChange.bind(this); + this.handleClick = this.handleClick.bind(this); + this.focusInput = this.focusInput.bind(this); + this.keyDown = this.keyDown.bind(this); + } + focusInput(/*e*/ + ) { + this.tagInput.focus(); + } + keyDown(e) { + if (e.keyCode === 13) { + this.tagInput.focus(); + } + } + handleChange(e) { + const val = e.target.value; + this.setState({ + inputContent: ',' === val ? '' : val, + inputLength: val.length === 0 ? 1 : val.length + }); + } + handleKeyPress(e) { + const keyVal = e.key; + let val = e.target.value; + if ('Enter' === keyVal || ',' === keyVal) { + let currentChoices = this.state.chosenTags; + if (currentChoices.length >= this.props.maxTags) { + this.setState({ + maxTagsExceeded: true, + inputContent: '' + }); + return null; + } + val = this.cleanTag(val); + if (val.length) { + currentChoices.push(val); + currentChoices = TagTopic.sanitizeArray(currentChoices); + this.setState({ + chosenTags: currentChoices, + inputContent: '' + }, () => { + this.props.handleTagChange(currentChoices); + }); + } else { + this.setState({ + inputContent: '' + }); + } + } + } + + // see discourse/lib/discourse_tagging.rb#clean_tag + cleanTag(val) { + val = val.trim(); // remove surrounding whitespace + val = val.replace(/ /g, '-'); // replace whitespace with hyphen + val = val.replace(/(-)\1+/g, '-'); // remove duplicate hyphens + val = val.replace(new RegExp(tagsFilterRegExp, 'g'), ''); // remove special characters + return val; + } + handleClick(key) { + const tags = this.state.chosenTags; + const index = tags.indexOf(key); + if (index > -1) { + tags.splice(index, 1); + this.setState({ + chosenTags: tags, + maxTagsExceeded: false + }, () => { + this.props.handleTagChange(tags); + }); + } + } + static sanitizeArray(arr) { + arr = arr.sort().reduce((accumulator, current) => { + const length = accumulator.length; + if ((0 === length || accumulator[length - 1] !== current) && current.trim() !== '') { + accumulator.push(current); + } + return accumulator; + }, []); + return arr; + } + render() { + if (this.props.allowTags) { + const maxTagsNotice = this.state.maxTagsExceeded ? __('You have exceeded the maximum number of allowed tags for your site. Remove a tag to add more.', 'wp-discourse') : ''; + let tagDisplay = TagTopic.sanitizeArray(this.state.chosenTags); + tagDisplay = tagDisplay.map(tag => /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", { + className: 'components-form-token-field__token', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", { + className: 'components-form-token-field__token-text', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", { + className: 'screen-reader-text', + children: tag + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("span", { + "aria-hidden": "true", + children: tag + })] + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("button", { + type: "button", + "aria-label": "Remove Tag", + className: 'components-button components-icon-button components-form-token-field__remove-token', + onClick: this.handleClick.bind(this, tag), + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("svg", { + "aria-hidden": "true", + role: "img", + focusable: "false", + className: 'dashicon dashicons-dismiss', + xmlns: "http://www.w3.org/2000/svg", + width: "20", + height: "20", + viewBox: "0 0 20 20", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("path", { + d: 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm5 11l-3-3 3-3-2-2-3 3-3-3-2 2 3 3-3 3 2 2 3-3 3 3z' + }) + }) + }, tag)] + }, tag)); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Tags', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'components-form-token-field__input-container', + onClick: this.focusInput, + onKeyDown: this.keyDown, + role: "combobox", + tabIndex: 0, + children: [tagDisplay, /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + type: 'text', + size: this.state.inputLength, + className: 'components-form-token-field__input', + onChange: this.handleChange, + onKeyPress: this.handleKeyPress, + value: this.state.inputContent, + ref: input => { + this.tagInput = input; + } + })] + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { + className: this.state.maxTagsExceeded ? 'wpdc-info' : '', + children: maxTagsNotice + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("hr", { + className: 'wpdc-sidebar-hr' + })] + }); + } + return null; + } +} +class PinTopic extends Component { + constructor(props) { + super(props); + this.state = { + pinTopic: this.props.pinTopic, + pinUntil: this.props.pinUntil + }; + this.handleUpdateDate = this.handleUpdateDate.bind(this); + this.handleToBePinnedChange = this.handleToBePinnedChange.bind(this); + } + handleUpdateDate(e) { + this.setState({ + pinUntil: e.target.value + }); + this.props.handlePinChange(this.state.pinTopic, e.target.value); + } + handleToBePinnedChange(e) { + this.setState({ + pinTopic: e.target.checked + }); + this.props.handlePinChange(e.target.checked, this.state.pinUntil); + } + render() { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-component-panel-body', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h2", { + className: 'wpdc-sidebar-title', + children: __('Pin Topic', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("label", { + htmlFor: "wpdc-pin-topic", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + id: "wpdc-pin-topic", + type: 'checkbox', + onChange: this.handleToBePinnedChange, + checked: this.state.pinTopic + }), __('Pin Discourse Topic', 'wp-discourse')] + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("label", { + className: 'wpdc-pin-until-input', + htmlFor: "wpdc-pin-topic-until", + children: [__('Pin Until', 'wp-discourse'), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { + id: "wpdc-pin-topic-until", + type: 'date', + className: 'widefat', + onChange: this.handleUpdateDate, + value: this.state.pinUntil + })] + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("hr", { + className: 'wpdc-sidebar-hr' + })] + }); + } +} +class DiscourseSidebar extends Component { + constructor(props) { + super(props); + this.initializePostMeta(); + this.state = this.initializePostState(this.props.post); + this.getDiscourseCategories(); + this.handleToBePublishedChange = this.handleToBePublishedChange.bind(this); + this.handlePublishChange = this.handlePublishChange.bind(this); + this.handleCategoryChange = this.handleCategoryChange.bind(this); + this.handleTagChange = this.handleTagChange.bind(this); + this.handleUnlinkFromDiscourseChange = this.handleUnlinkFromDiscourseChange.bind(this); + this.handlePublishMethodChange = this.handlePublishMethodChange.bind(this); + this.handleUpdateChange = this.handleUpdateChange.bind(this); + this.handleLinkTopicClick = this.handleLinkTopicClick.bind(this); + this.handlePinChange = this.handlePinChange.bind(this); + } + componentDidUpdate(prevProps) { + if (this.isAllowedPostType()) { + if (this.publishedPostHasChanged(prevProps.post, this.props.post)) { + this.updatePostState(this.props.post); + } + } + } + publishedPostHasChanged(prev, post) { + if (!prev || !post || !prev.meta || !post.meta) { + return false; + } + + // We don't refresh state if post is not yet published + if ([post.status, prev.status].every(s => s !== 'publish')) { + return false; + } + + // We always refresh state on a status change + if (post.status !== prev.status) { + return true; + } + + // We refresh state on publishing error or linked post change + return ['discourse_post_id', 'wpdc_publishing_response', 'wpdc_publishing_error'].some(attr => post.meta[attr] !== prev.meta[attr]); + } + initializePostMeta() { + if (!this.isAllowedPostType()) { + return; + } + + // If the post is already published and auto publish option is enabled, set auto publish overridden. + if (this.props.post && this.props.post.status === 'publish') { + this.props.setAutoPublishOverridden('1'); + } + } + initializePostState(post) { + if (!this.isAllowedPostType()) { + return {}; + } + let state = { + published: false, + postStatus: '', + publishingMethod: 'publish_post', + forcePublish: pluginOptions.forcePublish, + publishToDiscourse: pluginOptions.autoPublish, + publishPostCategory: pluginOptions.defaultCategory, + allowTags: pluginOptions.allowTags, + maxTags: pluginOptions.maxTags, + topicTags: [], + pinTopic: false, + pinUntil: null, + discoursePostId: null, + discoursePermalink: null, + publishingError: null, + busyUnlinking: false, + busyUpdating: false, + busyLinking: false, + busyPublishing: false, + statusMessage: null, + discourseCategories: null, + categoryError: false + }; + if (post && post.meta) { + state = Object.assign(state, this.buildPostState(post)); + } + return state; + } + updatePostState(post) { + this.setState(this.buildPostState(post)); + } + buildPostState(post) { + if (!post || !post.meta) { + return {}; + } + const meta = post.meta; + const topicTags = typeof meta.wpdc_topic_tags === 'string' ? meta.wpdc_topic_tags.split(',') : []; + const postState = { + publishToDiscourse: this.determinePublishToDiscourse(meta), + published: meta.discourse_post_id > 0, + postStatus: post.status, + topicTags, + pinTopic: meta.wpdc_pin_topic > 0 + }; + if (meta.publish_post_category > 0) { + postState.publishPostCategory = meta.publish_post_category; + } + if (meta.wpdc_pin_until) { + postState.pinUntil = meta.wpdc_pin_until; + } + if (meta.discourse_post_id) { + postState.discoursePostId = meta.discourse_post_id; + } + if (meta.discourse_permalink) { + postState.discoursePermalink = meta.discourse_permalink; + } + if (meta.wpdc_publishing_error) { + postState.publishingError = meta.wpdc_publishing_error; + } + return postState; + } + determinePublishToDiscourse(meta) { + const autoPublish = pluginOptions.autoPublish, + autoPublishOverridden = 1 === parseInt(meta.wpdc_auto_publish_overridden, 10); + let publishToDiscourse; + if (['deleted_topic', 'queued_topic'].includes(meta.wpdc_publishing_error)) { + publishToDiscourse = false; + } else if (autoPublish && !autoPublishOverridden) { + publishToDiscourse = true; + } else { + publishToDiscourse = 1 === parseInt(meta.wpdc_publish_to_discourse, 10); + } + return publishToDiscourse; + } + getDiscourseCategories() { + if (!pluginOptions.pluginUnconfigured) { + wp.apiRequest({ + path: '/wp-discourse/v1/get-discourse-categories', + method: 'GET', + data: { + get_categories_nonce: pluginOptions.get_categories_nonce, + id: this.props.postId + } + }).then(data => { + this.setState({ + discourseCategories: data + }); + }, (/*err*/ + ) => { + this.setState({ + categoryError: true + }); + }); + } + } + isAllowedPostType() { + return pluginOptions.allowedPostTypes.indexOf(this.props.post.type) >= 0; + } + handlePublishMethodChange(publishingMethod) { + this.setState({ + publishingMethod + }); + } + handleToBePublishedChange(publishToDiscourse) { + this.setState({ + publishToDiscourse, + statusMessage: '' + }, () => { + wp.apiRequest({ + path: '/wp-discourse/v1/set-publish-meta', + method: 'POST', + data: { + set_publish_meta_nonce: pluginOptions.set_publish_meta_nonce, + id: this.props.postId, + publish_to_discourse: this.state.publishToDiscourse ? 1 : 0 + } + }).then((/*data*/ + ) => { + return null; + }, (/*err*/ + ) => { + return null; + }); + }); + } + handleCategoryChange(categoryId) { + this.setState({ + publishPostCategory: categoryId + }, () => { + wp.apiRequest({ + path: '/wp-discourse/v1/set-category-meta', + method: 'POST', + data: { + set_category_meta_nonce: pluginOptions.set_category_meta_nonce, + id: this.props.postId, + publish_post_category: categoryId + } + }).then((/*data*/ + ) => { + return null; + }, (/*err*/ + ) => { + return null; + }); + }); + } + handlePinChange(pinTopic, pinUntil) { + this.setState({ + pinTopic, + pinUntil + }, () => { + wp.apiRequest({ + path: '/wp-discourse/v1/set-pin-meta', + method: 'Post', + data: { + set_pin_meta_nonce: pluginOptions.set_pin_meta_nonce, + id: this.props.postId, + wpdc_pin_topic: pinTopic ? 1 : 0, + wpdc_pin_until: pinUntil + } + }).then((/*data*/ + ) => { + return null; + }, (/*err*/ + ) => { + return null; + }); + }); + } + handleTagChange(tags) { + this.setState({ + topicTags: tags + }, () => { + const tagString = tags.join(','); + wp.apiRequest({ + path: '/wp-discourse/v1/set-tag-meta', + method: 'POST', + data: { + set_tag_meta_nonce: pluginOptions.set_tag_meta_nonce, + id: this.props.postId, + wpdc_topic_tags: tagString + } + }).then((/*data*/ + ) => { + return null; + }, (/*err*/ + ) => { + return null; + }); + }); + } + handleLinkTopicClick(topicUrl) { + this.setState({ + busyLinking: true, + statusMessage: '' + }); + wp.apiRequest({ + path: '/wp-discourse/v1/link-topic', + method: 'POST', + data: { + link_topic_nonce: pluginOptions.link_topic_nonce, + id: this.props.postId, + topic_url: topicUrl + } + }).then(data => { + this.setState({ + busyLinking: false + }); + if (data.discourse_permalink) { + this.setState({ + published: true, + discoursePermalink: data.discourse_permalink, + publishingError: null + }); + } else { + this.setState({ + publishingError: __('There has been an error linking your post with Discourse.', 'wp-discourse') + }); + } + return null; + }, err => { + const message = err.responseJSON && err.responseJSON.message ? err.responseJSON.message : __('There has been an error linking your post with Discourse.', 'wp-discourse'); + this.setState({ + busyLinking: false, + published: false, + publishingError: message + }); + return null; + }); + } + handleUnlinkFromDiscourseChange(/*e*/ + ) { + this.setState({ + busyUnlinking: true, + statusMessage: '' + }); + wp.apiRequest({ + path: '/wp-discourse/v1/unlink-post', + method: 'POST', + data: { + unlink_post_nonce: pluginOptions.unlink_post_nonce, + id: this.props.postId + } + }).then((/*data*/ + ) => { + this.setState({ + busyUnlinking: false, + published: false, + publishingMethod: 'link_post', + discoursePermalink: null, + statusMessage: __('Your post has been unlinked from Discourse.', 'wp-discourse') + }); + return null; + }, (/*err*/ + ) => { + return null; + }); + } + handlePublishChange(/*e*/ + ) { + this.setState({ + busyPublishing: true, + statusMessage: '' + }); + wp.apiRequest({ + path: '/wp-discourse/v1/publish-topic', + method: 'POST', + data: { + publish_topic_nonce: pluginOptions.publish_topic_nonce, + id: this.props.postId + } + }).then(data => { + const success = 'success' === data.publish_response; + this.setState({ + busyPublishing: false, + published: success, + publishingError: success ? null : data.publish_response, + publishingMethod: data.publish_response = true ? 'link_post' : 0, + discoursePermalink: data.discourse_permalink + }); + return null; + }, err => { + const message = err.responseJSON && err.responseJSON.message ? err.responseJSON.message : __('There has been an error linking your post with Discourse.', 'wp-discourse'); + this.setState({ + busyPublishing: false, + published: false, + publishingError: message + }); + return null; + }); + } + handleUpdateChange(/*e*/ + ) { + this.setState({ + busyUpdating: true, + statusMessage: '' + }); + wp.apiRequest({ + path: '/wp-discourse/v1/update-topic', + method: 'POST', + data: { + update_topic_nonce: pluginOptions.update_topic_nonce, + id: this.props.postId + } + }).then(data => { + const response = data.update_response, + success = 'success' === response; + let message; + if (success) { + message = __('The Discourse topic has been updated!', 'wp-discourse'); + } + this.setState({ + busyUpdating: false, + statusMessage: message, + publishingError: success ? null : data.update_response + }); + return null; + }, (/*err*/ + ) => { + const message = __('There was an error updating the Discourse topic.', 'wp-discourse'); + this.setState({ + busyUpdating: false, + statusMessage: message + }); + return null; + }); + } + render() { + if (this.isAllowedPostType()) { + const isPublished = this.state.published, + forcePublish = this.state.forcePublish, + pluginUnconfigured = pluginOptions.pluginUnconfigured; + let actions; + if (pluginUnconfigured) { + actions = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { + className: 'wpdc-plugin-unconfigured', + children: __("Before you can publish posts from WordPress to Discourse, you need to configure the plugin's Connection Settings tab.", 'discourse-integration') + }); + } else if (!isPublished && !forcePublish) { + actions = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-not-published', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(PublishingOptions, { + handlePublishMethodChange: this.handlePublishMethodChange, + publishingMethod: this.state.publishingMethod + }), 'publish_post' === this.state.publishingMethod ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-publish-to-discourse', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(CategorySelect, { + category_id: this.state.publishPostCategory, + handleCategoryChange: this.handleCategoryChange, + discourseCategories: this.state.discourseCategories, + categoryError: this.state.categoryError + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(TagTopic, { + handleTagChange: this.handleTagChange, + tags: this.state.topicTags, + allowTags: this.state.allowTags, + maxTags: this.state.maxTags + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(PinTopic, { + handlePinChange: this.handlePinChange, + pinTopic: this.state.pinTopic, + pinUntil: this.state.pinUntil + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(PublishToDiscourse, { + postStatus: this.state.postStatus, + publishToDiscourse: this.state.publishToDiscourse, + handleToBePublishedChange: this.handleToBePublishedChange, + handlePublishChange: this.handlePublishChange, + busy: this.state.busyPublishing + })] + }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { + className: 'wpdc-link-to-discourse', + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(LinkToDiscourseTopic, { + busy: this.state.busyLinking, + handleLinkTopicClick: this.handleLinkTopicClick + }) + })] + }); + } else if (!forcePublish) { + actions = /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-published-post', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(UpdateDiscourseTopic, { + published: this.state.published, + busy: this.state.busyUpdating, + handleUpdateChange: this.handleUpdateChange, + forcePublish: this.state.forcePublish + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(UnlinkFromDiscourse, { + published: this.state.published, + handleUnlinkFromDiscourseChange: this.handleUnlinkFromDiscourseChange, + busy: this.state.busyUnlinking, + forcePublish: this.state.forcePublish + })] + }); + } else { + actions = null; + } + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(Fragment, { + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(PluginSidebarMoreMenuItem, { + target: "discourse-sidebar", + children: __('Discourse', 'wp-discourse') + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(PluginSidebar, { + name: "discourse-sidebar", + title: __('Discourse', 'wp-discourse'), + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(PanelBody, { + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { + className: 'wpdc-sidebar', + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(Notification, { + published: this.state.published, + forcePublish: this.state.forcePublish, + publishingError: this.state.publishingError, + discoursePermalink: this.state.discoursePermalink, + statusMessage: this.state.statusMessage + }), actions] + }) + }) + })] + }); + } + return null; + } +} +const HOC = compose([withSelect((select, { + /*forceIsSaving*/ +}) => { + const { + getCurrentPostId, + getCurrentPost + } = select('core/editor'); + return { + postId: getCurrentPostId(), + post: getCurrentPost() + }; +}), withDispatch(dispatch => { + const { + editPost + } = dispatch('core/editor'); + return { + setAutoPublishOverridden(value) { + editPost({ + meta: { + wpdc_auto_publish_overridden: value + } + }); + } + }; +})])(DiscourseSidebar); +registerPlugin('discourse-sidebar', { + icon: iconEl, + render: HOC +}); +})(); + +/******/ })() +; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/admin/discourse-sidebar/build/index.js.map b/admin/discourse-sidebar/build/index.js.map new file mode 100644 index 0000000..f9e11e4 --- /dev/null +++ b/admin/discourse-sidebar/build/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","mappings":"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","sources":["webpack://discourse-sidebar/external window \"ReactJSXRuntime\"","webpack://discourse-sidebar/webpack/bootstrap","webpack://discourse-sidebar/webpack/runtime/compat get default export","webpack://discourse-sidebar/webpack/runtime/define property getters","webpack://discourse-sidebar/webpack/runtime/hasOwnProperty shorthand","webpack://discourse-sidebar/webpack/runtime/make namespace object","webpack://discourse-sidebar/./src/index.js"],"sourcesContent":["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","// 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};","/*jshint esversion: 6*/\n/*global pluginOptions*/\n/**\n * Internal block libraries.\n */\n\nconst { __ } = wp.i18n;\nconst { PluginSidebar, PluginSidebarMoreMenuItem } = wp.editor;\nconst { PanelBody } = wp.components;\nconst { Component, Fragment } = wp.element;\nconst { withSelect, withDispatch } = wp.data;\nconst { compose } = wp.compose;\nconst { registerPlugin } = wp.plugins;\n\nconst el = wp.element.createElement;\n\n// See: https://wp.zacgordon.com/2017/12/07/how-to-add-custom-icons-to-gutenberg-editor-blocks-in-wordpress/\nconst iconEl = el( 'img', {\n\twidth: 20,\n\theight: 20,\n\tsrc: pluginOptions.logo,\n\tclass: 'wpdc-logo',\n} );\n\nconst buttonClass =\n\t'components-button is-button is-default is-primary is-large wpdc-button';\nconst activeButtonClass =\n\t'components-button is-button is-default is-primary is-large wpdc-button active';\nconst downArrow = (\n\t\n\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\n\t\n);\n\nconst upArrow = (\n\t\n\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\n\t\n);\n\nconst tagsFilterRegExp = /[\\/\\?#\\[\\]@!\\$&'\\(\\)\\*\\+,;=\\.%\\\\`^\\s|\\{\\}\"<>]+/;\n\nclass Notification extends Component {\n\trender() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass ForcePublishMessage extends Component {\n\trender() {\n\t\tif ( this.props.forcePublish && ! this.props.published ) {\n\t\t\treturn (\n\t\t\t\t

\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'The Force Publish option is enabled for your site. All posts published on WordPress will be automatically published to Discourse.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t) }\n\t\t\t\t

\n\t\t\t);\n\t\t}\n\t\treturn '';\n\t}\n}\n\nclass StatusMessage extends Component {\n\trender() {\n\t\tconst statusMessage = this.props.statusMessage;\n\n\t\tif ( statusMessage ) {\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t{ statusMessage }\n\t\t\t\t
\n\t\t\t);\n\t\t}\n\t\treturn '';\n\t}\n}\n\nclass ErrorMessage extends Component {\n\trender() {\n\t\tconst publishingError = this.props.publishingError;\n\n\t\tif ( publishingError ) {\n\t\t\tlet message;\n\t\t\tswitch ( publishingError ) {\n\t\t\t\tcase 'deleted_topic':\n\t\t\t\t\tmessage = __(\n\t\t\t\t\t\t'Your post could not be published to Discourse. The associated Discourse topic may have been deleted. ' +\n\t\t\t\t\t\t\t'Unlink the post so that it can be published again.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Not Found':\n\t\t\t\t\tmessage = __(\n\t\t\t\t\t\t'Your post could not be updated on Discourse. The associated Discourse topic may have been deleted. ' +\n\t\t\t\t\t\t\t'Unlink the post so that it can be published again.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'queued_topic':\n\t\t\t\t\tmessage = __(\n\t\t\t\t\t\t'Your post has been added to the Discourse approval queue. When it has been approved, you will need to link it to Discourse by' +\n\t\t\t\t\t\t\t\"selecting the 'Link to Existing Topic' option.\",\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Unprocessable Entity':\n\t\t\t\t\tmessage = __(\n\t\t\t\t\t\t'Your post could not be published to Discourse. There may be an existing Discourse topic that is using its permalink. Try linking the post with that topic.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Forbidden':\n\t\t\t\t\tmessage = __(\n\t\t\t\t\t\t'Your post could not be published to Discourse. Check that your Discourse Username is set correctly on your WordPress profile page.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tmessage = publishingError;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t{ message }\n\t\t\t\t
\n\t\t\t);\n\t\t}\n\t\treturn '';\n\t}\n}\n\nclass DiscoursePermalink extends Component {\n\trender() {\n\t\tif ( this.props.discoursePermalink ) {\n\t\t\tconst permalink = encodeURI( this.props.discoursePermalink );\n\t\t\tconst link = (\n\t\t\t\t\n\t\t\t\t\t{ permalink }\n\t\t\t\t\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t{ __( 'Your post is linked with', 'wp-discourse' ) }{ ' ' }\n\t\t\t\t\t{ link }\n\t\t\t\t
\n\t\t\t);\n\t\t}\n\t\treturn '';\n\t}\n}\n\nclass PublishingOptions extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.handleChange = this.handleChange.bind( this );\n\t}\n\n\thandleChange( e ) {\n\t\tthis.props.handlePublishMethodChange( e.target.value );\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t

\n\t\t\t\t\t{ __( 'Publishing Options', 'wp-discourse' ) }\n\t\t\t\t

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass PublishToDiscourse extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.handleToBePublishedChange =\n\t\t\tthis.handleToBePublishedChange.bind( this );\n\t\tthis.handlePublishChange = this.handlePublishChange.bind( this );\n\t}\n\n\thandleToBePublishedChange( e ) {\n\t\tthis.props.handleToBePublishedChange( e.target.checked );\n\t}\n\n\thandlePublishChange( e ) {\n\t\tthis.props.handlePublishChange( e );\n\t}\n\n\trender() {\n\t\tconst publishToDiscourse = this.props.publishToDiscourse,\n\t\t\tpublishedOnWordPress = 'publish' === this.props.postStatus;\n\n\t\tif ( ! publishedOnWordPress ) {\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\t{ __( 'Publish to Discourse', 'wp-discourse' ) }\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{ __( 'Publish', 'wp-discourse' ) }\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Automatically publish the post to Discourse when it is published on WordPress.',\n\t\t\t\t\t\t\t\t'wp-discourse'\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}\n\t\treturn (\n\t\t\t
\n\t\t\t\t

\n\t\t\t\t\t{ __( 'Publish to Discourse', 'wp-discourse' ) }\n\t\t\t\t

\n\t\t\t\t\n\t\t\t\t\t{ __( 'Publish to Discourse', 'wp-discourse' ) }\n\t\t\t\t\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass CategorySelect extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.handleChange = this.handleChange.bind( this );\n\t}\n\n\thandleChange( e ) {\n\t\tthis.props.handleCategoryChange( e.target.value );\n\t}\n\n\trender() {\n\t\tif ( this.props.discourseCategories ) {\n\t\t\tconst cats = Object.values( this.props.discourseCategories );\n\t\t\tconst options = cats.map( ( cat, index ) => (\n\t\t\t\t\n\t\t\t\t\t{ cat.name }\n\t\t\t\t\n\t\t\t) );\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t

\n\t\t\t\t\t\t{ __( 'Category', 'wp-discourse' ) }\n\t\t\t\t\t

\n\t\t\t\t\t\n\t\t\t\t\t\t{ options }\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\n\t\t\t);\n\t\t} else if ( this.props.categoryError ) {\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'There was an error returning the category list from Discourse.',\n\t\t\t\t\t\t'discourse-integration'\n\t\t\t\t\t) }\n\t\t\t\t
\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n}\n\nclass LinkToDiscourseTopic extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tisBusy: false,\n\t\t\ttopicUrl: null,\n\t\t};\n\n\t\tthis.handleChange = this.handleChange.bind( this );\n\t\tthis.handleClick = this.handleClick.bind( this );\n\t}\n\n\thandleChange( e ) {\n\t\tthis.setState( { topicUrl: e.target.value } );\n\t}\n\n\thandleClick( /*e*/ ) {\n\t\tthis.props.handleLinkTopicClick( this.state.topicUrl );\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t

\n\t\t\t\t\t{ __( 'Topic URL', 'wp-discourse' ) }\n\t\t\t\t

\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t{ __( 'Link With Discourse', 'wp-discourse' ) }\n\t\t\t\t\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass UnlinkFromDiscourse extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = {\n\t\t\tshowPanel: false,\n\t\t};\n\t\tthis.handleClick = this.handleClick.bind( this );\n\t\tthis.togglePanel = this.togglePanel.bind( this );\n\t}\n\n\thandleClick( e ) {\n\t\tthis.props.handleUnlinkFromDiscourseChange( e );\n\t}\n\n\ttogglePanel() {\n\t\tthis.setState( { showPanel: ! this.state.showPanel } );\n\t}\n\n\trender() {\n\t\treturn (\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\t{ this.state.showPanel ? upArrow : downArrow }\n\t\t\t\t\t\t\n\t\t\t\t\t\t{ __( 'Unlink From Discourse', 'wp-discourse' ) }\n\t\t\t\t\t\n\t\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\t'Unlinking the post from Discourse will remove all Discourse metadata from the post.',\n\t\t\t\t\t\t\t'wp-discourse'\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{ __( 'Unlink Post', 'wp-discourse' ) }\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass UpdateDiscourseTopic extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = {\n\t\t\tshowPanel: false,\n\t\t};\n\t\tthis.handleClick = this.handleClick.bind( this );\n\t\tthis.togglePanel = this.togglePanel.bind( this );\n\t}\n\n\ttogglePanel() {\n\t\tthis.setState( { showPanel: ! this.state.showPanel } );\n\t}\n\n\thandleClick( e ) {\n\t\tthis.props.handleUpdateChange( e );\n\t}\n\n\trender() {\n\t\treturn (\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\t{ this.state.showPanel ? upArrow : downArrow }\n\t\t\t\t\t\t\n\t\t\t\t\t\t{ __( 'Update Discourse Topic', 'wp-discourse' ) }\n\t\t\t\t\t\n\t\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\t'Update the Discourse topic to the lastest saved version of the post.',\n\t\t\t\t\t\t\t'wp-discourse'\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{ __( 'Update Topic', 'wp-discourse' ) }\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass TagTopic extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tchosenTags: this.props.tags,\n\t\t\tinputContent: '',\n\t\t\tinputLength: 1,\n\t\t\tmaxTagsExceeded: false,\n\t\t};\n\n\t\tthis.handleKeyPress = this.handleKeyPress.bind( this );\n\t\tthis.handleChange = this.handleChange.bind( this );\n\t\tthis.handleClick = this.handleClick.bind( this );\n\t\tthis.focusInput = this.focusInput.bind( this );\n\t\tthis.keyDown = this.keyDown.bind( this );\n\t}\n\n\tfocusInput( /*e*/ ) {\n\t\tthis.tagInput.focus();\n\t}\n\n\tkeyDown( e ) {\n\t\tif ( e.keyCode === 13 ) {\n\t\t\tthis.tagInput.focus();\n\t\t}\n\t}\n\n\thandleChange( e ) {\n\t\tconst val = e.target.value;\n\t\tthis.setState( {\n\t\t\tinputContent: ',' === val ? '' : val,\n\t\t\tinputLength: val.length === 0 ? 1 : val.length,\n\t\t} );\n\t}\n\n\thandleKeyPress( e ) {\n\t\tconst keyVal = e.key;\n\t\tlet val = e.target.value;\n\n\t\tif ( 'Enter' === keyVal || ',' === keyVal ) {\n\t\t\tlet currentChoices = this.state.chosenTags;\n\t\t\tif ( currentChoices.length >= this.props.maxTags ) {\n\t\t\t\tthis.setState( {\n\t\t\t\t\tmaxTagsExceeded: true,\n\t\t\t\t\tinputContent: '',\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tval = this.cleanTag( val );\n\n\t\t\tif ( val.length ) {\n\t\t\t\tcurrentChoices.push( val );\n\t\t\t\tcurrentChoices = TagTopic.sanitizeArray( currentChoices );\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\tchosenTags: currentChoices,\n\t\t\t\t\t\tinputContent: '',\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tthis.props.handleTagChange( currentChoices );\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.setState( {\n\t\t\t\t\tinputContent: '',\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\n\t// see discourse/lib/discourse_tagging.rb#clean_tag\n\tcleanTag( val ) {\n\t\tval = val.trim(); // remove surrounding whitespace\n\t\tval = val.replace( / /g, '-' ); // replace whitespace with hyphen\n\t\tval = val.replace( /(-)\\1+/g, '-' ); // remove duplicate hyphens\n\t\tval = val.replace( new RegExp( tagsFilterRegExp, 'g' ), '' ); // remove special characters\n\t\treturn val;\n\t}\n\n\thandleClick( key ) {\n\t\tconst tags = this.state.chosenTags;\n\t\tconst index = tags.indexOf( key );\n\t\tif ( index > -1 ) {\n\t\t\ttags.splice( index, 1 );\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tchosenTags: tags,\n\t\t\t\t\tmaxTagsExceeded: false,\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tthis.props.handleTagChange( tags );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n\n\tstatic sanitizeArray( arr ) {\n\t\tarr = arr.sort().reduce( ( accumulator, current ) => {\n\t\t\tconst length = accumulator.length;\n\t\t\tif (\n\t\t\t\t( 0 === length || accumulator[ length - 1 ] !== current ) &&\n\t\t\t\tcurrent.trim() !== ''\n\t\t\t) {\n\t\t\t\taccumulator.push( current );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\treturn arr;\n\t}\n\n\trender() {\n\t\tif ( this.props.allowTags ) {\n\t\t\tconst maxTagsNotice = this.state.maxTagsExceeded\n\t\t\t\t? __(\n\t\t\t\t\t\t'You have exceeded the maximum number of allowed tags for your site. Remove a tag to add more.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t )\n\t\t\t\t: '';\n\t\t\tlet tagDisplay = TagTopic.sanitizeArray( this.state.chosenTags );\n\t\t\ttagDisplay = tagDisplay.map( ( tag ) => (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{ tag }\n\t\t\t\t\t\t{ tag }\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\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t) );\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\t{ __( 'Tags', 'wp-discourse' ) }\n\t\t\t\t\t

\n\t\t\t\t\t\n\t\t\t\t\t\t{ tagDisplay }\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tthis.tagInput = input;\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\t\n\t\t\t\t\t\t{ maxTagsNotice }\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n}\n\nclass PinTopic extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\n\t\tthis.state = {\n\t\t\tpinTopic: this.props.pinTopic,\n\t\t\tpinUntil: this.props.pinUntil,\n\t\t};\n\n\t\tthis.handleUpdateDate = this.handleUpdateDate.bind( this );\n\t\tthis.handleToBePinnedChange = this.handleToBePinnedChange.bind( this );\n\t}\n\n\thandleUpdateDate( e ) {\n\t\tthis.setState( { pinUntil: e.target.value } );\n\t\tthis.props.handlePinChange( this.state.pinTopic, e.target.value );\n\t}\n\n\thandleToBePinnedChange( e ) {\n\t\tthis.setState( { pinTopic: e.target.checked } );\n\t\tthis.props.handlePinChange( e.target.checked, this.state.pinUntil );\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t

\n\t\t\t\t\t{ __( 'Pin Topic', 'wp-discourse' ) }\n\t\t\t\t

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t{ __( 'Pin Until', 'wp-discourse' ) }\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n}\n\nclass DiscourseSidebar extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.initializePostMeta();\n\t\tthis.state = this.initializePostState( this.props.post );\n\t\tthis.getDiscourseCategories();\n\n\t\tthis.handleToBePublishedChange =\n\t\t\tthis.handleToBePublishedChange.bind( this );\n\t\tthis.handlePublishChange = this.handlePublishChange.bind( this );\n\t\tthis.handleCategoryChange = this.handleCategoryChange.bind( this );\n\t\tthis.handleTagChange = this.handleTagChange.bind( this );\n\t\tthis.handleUnlinkFromDiscourseChange =\n\t\t\tthis.handleUnlinkFromDiscourseChange.bind( this );\n\t\tthis.handlePublishMethodChange =\n\t\t\tthis.handlePublishMethodChange.bind( this );\n\t\tthis.handleUpdateChange = this.handleUpdateChange.bind( this );\n\t\tthis.handleLinkTopicClick = this.handleLinkTopicClick.bind( this );\n\t\tthis.handlePinChange = this.handlePinChange.bind( this );\n\t}\n\n\tcomponentDidUpdate( prevProps ) {\n\t\tif ( this.isAllowedPostType() ) {\n\t\t\tif (\n\t\t\t\tthis.publishedPostHasChanged( prevProps.post, this.props.post )\n\t\t\t) {\n\t\t\t\tthis.updatePostState( this.props.post );\n\t\t\t}\n\t\t}\n\t}\n\n\tpublishedPostHasChanged( prev, post ) {\n\t\tif ( ! prev || ! post || ! prev.meta || ! post.meta ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// We don't refresh state if post is not yet published\n\t\tif ( [ post.status, prev.status ].every( ( s ) => s !== 'publish' ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// We always refresh state on a status change\n\t\tif ( post.status !== prev.status ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// We refresh state on publishing error or linked post change\n\t\treturn [\n\t\t\t'discourse_post_id',\n\t\t\t'wpdc_publishing_response',\n\t\t\t'wpdc_publishing_error',\n\t\t].some( ( attr ) => post.meta[ attr ] !== prev.meta[ attr ] );\n\t}\n\n\tinitializePostMeta() {\n\t\tif ( ! this.isAllowedPostType() ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If the post is already published and auto publish option is enabled, set auto publish overridden.\n\t\tif ( this.props.post && this.props.post.status === 'publish' ) {\n\t\t\tthis.props.setAutoPublishOverridden( '1' );\n\t\t}\n\t}\n\n\tinitializePostState( post ) {\n\t\tif ( ! this.isAllowedPostType() ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet state = {\n\t\t\tpublished: false,\n\t\t\tpostStatus: '',\n\t\t\tpublishingMethod: 'publish_post',\n\t\t\tforcePublish: pluginOptions.forcePublish,\n\t\t\tpublishToDiscourse: pluginOptions.autoPublish,\n\t\t\tpublishPostCategory: pluginOptions.defaultCategory,\n\t\t\tallowTags: pluginOptions.allowTags,\n\t\t\tmaxTags: pluginOptions.maxTags,\n\t\t\ttopicTags: [],\n\t\t\tpinTopic: false,\n\t\t\tpinUntil: null,\n\t\t\tdiscoursePostId: null,\n\t\t\tdiscoursePermalink: null,\n\t\t\tpublishingError: null,\n\t\t\tbusyUnlinking: false,\n\t\t\tbusyUpdating: false,\n\t\t\tbusyLinking: false,\n\t\t\tbusyPublishing: false,\n\t\t\tstatusMessage: null,\n\t\t\tdiscourseCategories: null,\n\t\t\tcategoryError: false,\n\t\t};\n\n\t\tif ( post && post.meta ) {\n\t\t\tstate = Object.assign( state, this.buildPostState( post ) );\n\t\t}\n\n\t\treturn state;\n\t}\n\n\tupdatePostState( post ) {\n\t\tthis.setState( this.buildPostState( post ) );\n\t}\n\n\tbuildPostState( post ) {\n\t\tif ( ! post || ! post.meta ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tconst meta = post.meta;\n\t\tconst topicTags =\n\t\t\ttypeof meta.wpdc_topic_tags === 'string'\n\t\t\t\t? meta.wpdc_topic_tags.split( ',' )\n\t\t\t\t: [];\n\n\t\tconst postState = {\n\t\t\tpublishToDiscourse: this.determinePublishToDiscourse( meta ),\n\t\t\tpublished: meta.discourse_post_id > 0,\n\t\t\tpostStatus: post.status,\n\t\t\ttopicTags,\n\t\t\tpinTopic: meta.wpdc_pin_topic > 0,\n\t\t};\n\n\t\tif ( meta.publish_post_category > 0 ) {\n\t\t\tpostState.publishPostCategory = meta.publish_post_category;\n\t\t}\n\t\tif ( meta.wpdc_pin_until ) {\n\t\t\tpostState.pinUntil = meta.wpdc_pin_until;\n\t\t}\n\t\tif ( meta.discourse_post_id ) {\n\t\t\tpostState.discoursePostId = meta.discourse_post_id;\n\t\t}\n\t\tif ( meta.discourse_permalink ) {\n\t\t\tpostState.discoursePermalink = meta.discourse_permalink;\n\t\t}\n\t\tif ( meta.wpdc_publishing_error ) {\n\t\t\tpostState.publishingError = meta.wpdc_publishing_error;\n\t\t}\n\n\t\treturn postState;\n\t}\n\n\tdeterminePublishToDiscourse( meta ) {\n\t\tconst autoPublish = pluginOptions.autoPublish,\n\t\t\tautoPublishOverridden =\n\t\t\t\t1 === parseInt( meta.wpdc_auto_publish_overridden, 10 );\n\n\t\tlet publishToDiscourse;\n\n\t\tif (\n\t\t\t[ 'deleted_topic', 'queued_topic' ].includes(\n\t\t\t\tmeta.wpdc_publishing_error\n\t\t\t)\n\t\t) {\n\t\t\tpublishToDiscourse = false;\n\t\t} else if ( autoPublish && ! autoPublishOverridden ) {\n\t\t\tpublishToDiscourse = true;\n\t\t} else {\n\t\t\tpublishToDiscourse =\n\t\t\t\t1 === parseInt( meta.wpdc_publish_to_discourse, 10 );\n\t\t}\n\n\t\treturn publishToDiscourse;\n\t}\n\n\tgetDiscourseCategories() {\n\t\tif ( ! pluginOptions.pluginUnconfigured ) {\n\t\t\twp.apiRequest( {\n\t\t\t\tpath: '/wp-discourse/v1/get-discourse-categories',\n\t\t\t\tmethod: 'GET',\n\t\t\t\tdata: {\n\t\t\t\t\tget_categories_nonce: pluginOptions.get_categories_nonce,\n\t\t\t\t\tid: this.props.postId,\n\t\t\t\t},\n\t\t\t} ).then(\n\t\t\t\t( data ) => {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tdiscourseCategories: data,\n\t\t\t\t\t} );\n\t\t\t\t},\n\t\t\t\t( /*err*/ ) => {\n\t\t\t\t\tthis.setState( { categoryError: true } );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n\n\tisAllowedPostType() {\n\t\treturn (\n\t\t\tpluginOptions.allowedPostTypes.indexOf( this.props.post.type ) >= 0\n\t\t);\n\t}\n\n\thandlePublishMethodChange( publishingMethod ) {\n\t\tthis.setState( { publishingMethod } );\n\t}\n\n\thandleToBePublishedChange( publishToDiscourse ) {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tpublishToDiscourse,\n\t\t\t\tstatusMessage: '',\n\t\t\t},\n\t\t\t() => {\n\t\t\t\twp.apiRequest( {\n\t\t\t\t\tpath: '/wp-discourse/v1/set-publish-meta',\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tset_publish_meta_nonce:\n\t\t\t\t\t\t\tpluginOptions.set_publish_meta_nonce,\n\t\t\t\t\t\tid: this.props.postId,\n\t\t\t\t\t\tpublish_to_discourse: this.state.publishToDiscourse\n\t\t\t\t\t\t\t? 1\n\t\t\t\t\t\t\t: 0,\n\t\t\t\t\t},\n\t\t\t\t} ).then(\n\t\t\t\t\t( /*data*/ ) => {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t},\n\t\t\t\t\t( /*err*/ ) => {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t}\n\n\thandleCategoryChange( categoryId ) {\n\t\tthis.setState( { publishPostCategory: categoryId }, () => {\n\t\t\twp.apiRequest( {\n\t\t\t\tpath: '/wp-discourse/v1/set-category-meta',\n\t\t\t\tmethod: 'POST',\n\t\t\t\tdata: {\n\t\t\t\t\tset_category_meta_nonce:\n\t\t\t\t\t\tpluginOptions.set_category_meta_nonce,\n\t\t\t\t\tid: this.props.postId,\n\t\t\t\t\tpublish_post_category: categoryId,\n\t\t\t\t},\n\t\t\t} ).then(\n\t\t\t\t( /*data*/ ) => {\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\t( /*err*/ ) => {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\t}\n\n\thandlePinChange( pinTopic, pinUntil ) {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tpinTopic,\n\t\t\t\tpinUntil,\n\t\t\t},\n\t\t\t() => {\n\t\t\t\twp.apiRequest( {\n\t\t\t\t\tpath: '/wp-discourse/v1/set-pin-meta',\n\t\t\t\t\tmethod: 'Post',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tset_pin_meta_nonce: pluginOptions.set_pin_meta_nonce,\n\t\t\t\t\t\tid: this.props.postId,\n\t\t\t\t\t\twpdc_pin_topic: pinTopic ? 1 : 0,\n\t\t\t\t\t\twpdc_pin_until: pinUntil,\n\t\t\t\t\t},\n\t\t\t\t} ).then(\n\t\t\t\t\t( /*data*/ ) => {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t},\n\t\t\t\t\t( /*err*/ ) => {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t}\n\n\thandleTagChange( tags ) {\n\t\tthis.setState( { topicTags: tags }, () => {\n\t\t\tconst tagString = tags.join( ',' );\n\t\t\twp.apiRequest( {\n\t\t\t\tpath: '/wp-discourse/v1/set-tag-meta',\n\t\t\t\tmethod: 'POST',\n\t\t\t\tdata: {\n\t\t\t\t\tset_tag_meta_nonce: pluginOptions.set_tag_meta_nonce,\n\t\t\t\t\tid: this.props.postId,\n\t\t\t\t\twpdc_topic_tags: tagString,\n\t\t\t\t},\n\t\t\t} ).then(\n\t\t\t\t( /*data*/ ) => {\n\t\t\t\t\treturn null;\n\t\t\t\t},\n\t\t\t\t( /*err*/ ) => {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\t}\n\n\thandleLinkTopicClick( topicUrl ) {\n\t\tthis.setState( {\n\t\t\tbusyLinking: true,\n\t\t\tstatusMessage: '',\n\t\t} );\n\t\twp.apiRequest( {\n\t\t\tpath: '/wp-discourse/v1/link-topic',\n\t\t\tmethod: 'POST',\n\t\t\tdata: {\n\t\t\t\tlink_topic_nonce: pluginOptions.link_topic_nonce,\n\t\t\t\tid: this.props.postId,\n\t\t\t\ttopic_url: topicUrl,\n\t\t\t},\n\t\t} ).then(\n\t\t\t( data ) => {\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyLinking: false,\n\t\t\t\t} );\n\n\t\t\t\tif ( data.discourse_permalink ) {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tpublished: true,\n\t\t\t\t\t\tdiscoursePermalink: data.discourse_permalink,\n\t\t\t\t\t\tpublishingError: null,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tthis.setState( {\n\t\t\t\t\t\tpublishingError: __(\n\t\t\t\t\t\t\t'There has been an error linking your post with Discourse.',\n\t\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn null;\n\t\t\t},\n\t\t\t( err ) => {\n\t\t\t\tconst message =\n\t\t\t\t\terr.responseJSON && err.responseJSON.message\n\t\t\t\t\t\t? err.responseJSON.message\n\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t'There has been an error linking your post with Discourse.',\n\t\t\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t\t );\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyLinking: false,\n\t\t\t\t\tpublished: false,\n\t\t\t\t\tpublishingError: message,\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t}\n\t\t);\n\t}\n\n\thandleUnlinkFromDiscourseChange( /*e*/ ) {\n\t\tthis.setState( {\n\t\t\tbusyUnlinking: true,\n\t\t\tstatusMessage: '',\n\t\t} );\n\t\twp.apiRequest( {\n\t\t\tpath: '/wp-discourse/v1/unlink-post',\n\t\t\tmethod: 'POST',\n\t\t\tdata: {\n\t\t\t\tunlink_post_nonce: pluginOptions.unlink_post_nonce,\n\t\t\t\tid: this.props.postId,\n\t\t\t},\n\t\t} ).then(\n\t\t\t( /*data*/ ) => {\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyUnlinking: false,\n\t\t\t\t\tpublished: false,\n\t\t\t\t\tpublishingMethod: 'link_post',\n\t\t\t\t\tdiscoursePermalink: null,\n\t\t\t\t\tstatusMessage: __(\n\t\t\t\t\t\t'Your post has been unlinked from Discourse.',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t},\n\t\t\t( /*err*/ ) => {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t);\n\t}\n\n\thandlePublishChange( /*e*/ ) {\n\t\tthis.setState( {\n\t\t\tbusyPublishing: true,\n\t\t\tstatusMessage: '',\n\t\t} );\n\t\twp.apiRequest( {\n\t\t\tpath: '/wp-discourse/v1/publish-topic',\n\t\t\tmethod: 'POST',\n\t\t\tdata: {\n\t\t\t\tpublish_topic_nonce: pluginOptions.publish_topic_nonce,\n\t\t\t\tid: this.props.postId,\n\t\t\t},\n\t\t} ).then(\n\t\t\t( data ) => {\n\t\t\t\tconst success = 'success' === data.publish_response;\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyPublishing: false,\n\t\t\t\t\tpublished: success,\n\t\t\t\t\tpublishingError: success ? null : data.publish_response,\n\t\t\t\t\tpublishingMethod: ( data.publish_response =\n\t\t\t\t\t\t'Unprocessable Entity' ? 'link_post' : 'publish_post' ),\n\t\t\t\t\tdiscoursePermalink: data.discourse_permalink,\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t},\n\t\t\t( err ) => {\n\t\t\t\tconst message =\n\t\t\t\t\terr.responseJSON && err.responseJSON.message\n\t\t\t\t\t\t? err.responseJSON.message\n\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t'There has been an error linking your post with Discourse.',\n\t\t\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t\t );\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyPublishing: false,\n\t\t\t\t\tpublished: false,\n\t\t\t\t\tpublishingError: message,\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t}\n\t\t);\n\t}\n\n\thandleUpdateChange( /*e*/ ) {\n\t\tthis.setState( {\n\t\t\tbusyUpdating: true,\n\t\t\tstatusMessage: '',\n\t\t} );\n\t\twp.apiRequest( {\n\t\t\tpath: '/wp-discourse/v1/update-topic',\n\t\t\tmethod: 'POST',\n\t\t\tdata: {\n\t\t\t\tupdate_topic_nonce: pluginOptions.update_topic_nonce,\n\t\t\t\tid: this.props.postId,\n\t\t\t},\n\t\t} ).then(\n\t\t\t( data ) => {\n\t\t\t\tconst response = data.update_response,\n\t\t\t\t\tsuccess = 'success' === response;\n\t\t\t\tlet message;\n\t\t\t\tif ( success ) {\n\t\t\t\t\tmessage = __(\n\t\t\t\t\t\t'The Discourse topic has been updated!',\n\t\t\t\t\t\t'wp-discourse'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyUpdating: false,\n\t\t\t\t\tstatusMessage: message,\n\t\t\t\t\tpublishingError: success ? null : data.update_response,\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t},\n\t\t\t( /*err*/ ) => {\n\t\t\t\tconst message = __(\n\t\t\t\t\t'There was an error updating the Discourse topic.',\n\t\t\t\t\t'wp-discourse'\n\t\t\t\t);\n\t\t\t\tthis.setState( {\n\t\t\t\t\tbusyUpdating: false,\n\t\t\t\t\tstatusMessage: message,\n\t\t\t\t} );\n\t\t\t\treturn null;\n\t\t\t}\n\t\t);\n\t}\n\n\trender() {\n\t\tif ( this.isAllowedPostType() ) {\n\t\t\tconst isPublished = this.state.published,\n\t\t\t\tforcePublish = this.state.forcePublish,\n\t\t\t\tpluginUnconfigured = pluginOptions.pluginUnconfigured;\n\t\t\tlet actions;\n\t\t\tif ( pluginUnconfigured ) {\n\t\t\t\tactions = (\n\t\t\t\t\t
\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\"Before you can publish posts from WordPress to Discourse, you need to configure the plugin's Connection Settings tab.\",\n\t\t\t\t\t\t\t'discourse-integration'\n\t\t\t\t\t\t) }\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t} else if ( ! isPublished && ! forcePublish ) {\n\t\t\t\tactions = (\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t{ 'publish_post' === this.state.publishingMethod ? (\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\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\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} else if ( ! forcePublish ) {\n\t\t\t\tactions = (\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
\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tactions = null;\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{ __( 'Discourse', 'wp-discourse' ) }\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\n\t\t\t\t\t\t\t\t{ actions }\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}\n\t\treturn null;\n\t}\n}\n\nconst HOC = compose( [\n\twithSelect(\n\t\t(\n\t\t\tselect,\n\t\t\t{\n\t\t\t\t/*forceIsSaving*/\n\t\t\t}\n\t\t) => {\n\t\t\tconst { getCurrentPostId, getCurrentPost } =\n\t\t\t\tselect( 'core/editor' );\n\t\t\treturn {\n\t\t\t\tpostId: getCurrentPostId(),\n\t\t\t\tpost: getCurrentPost(),\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { editPost } = dispatch( 'core/editor' );\n\t\treturn {\n\t\t\tsetAutoPublishOverridden( value ) {\n\t\t\t\teditPost( { meta: { wpdc_auto_publish_overridden: value } } );\n\t\t\t},\n\t\t};\n\t} ),\n] )( DiscourseSidebar );\n\nregisterPlugin( 'discourse-sidebar', {\n\ticon: iconEl,\n\trender: HOC,\n} );\n"],"names":["__","wp","i18n","PluginSidebar","PluginSidebarMoreMenuItem","editor","PanelBody","components","Component","Fragment","element","withSelect","withDispatch","data","compose","registerPlugin","plugins","el","createElement","iconEl","width","height","src","pluginOptions","logo","class","buttonClass","activeButtonClass","downArrow","_jsxs","className","viewBox","xmlns","role","focusable","children","_jsx","fill","d","upArrow","tagsFilterRegExp","Notification","render","ForcePublishMessage","forcePublish","props","published","StatusMessage","statusMessage","ErrorMessage","publishingError","DiscoursePermalink","discoursePermalink","message","permalink","encodeURI","link","href","target","rel","PublishingOptions","constructor","handleChange","bind","e","handlePublishMethodChange","value","htmlFor","id","type","name","checked","publishingMethod","onChange","PublishToDiscourse","handleToBePublishedChange","handlePublishChange","publishToDiscourse","publishedOnWordPress","postStatus","busy","onClick","CategorySelect","handleCategoryChange","discourseCategories","cats","Object","values","options","map","cat","index","selected","parseInt","category_id","categoryError","LinkToDiscourseTopic","state","isBusy","topicUrl","handleClick","setState","handleLinkTopicClick","UnlinkFromDiscourse","showPanel","togglePanel","handleUnlinkFromDiscourseChange","UpdateDiscourseTopic","handleUpdateChange","TagTopic","chosenTags","tags","inputContent","inputLength","maxTagsExceeded","handleKeyPress","focusInput","keyDown","tagInput","focus","keyCode","val","length","keyVal","key","currentChoices","maxTags","cleanTag","push","sanitizeArray","handleTagChange","trim","replace","RegExp","indexOf","splice","arr","sort","reduce","accumulator","current","allowTags","maxTagsNotice","tagDisplay","tag","onKeyDown","tabIndex","size","onKeyPress","ref","input","PinTopic","pinTopic","pinUntil","handleUpdateDate","handleToBePinnedChange","handlePinChange","DiscourseSidebar","initializePostMeta","initializePostState","post","getDiscourseCategories","componentDidUpdate","prevProps","isAllowedPostType","publishedPostHasChanged","updatePostState","prev","meta","status","every","s","some","attr","setAutoPublishOverridden","autoPublish","publishPostCategory","defaultCategory","topicTags","discoursePostId","busyUnlinking","busyUpdating","busyLinking","busyPublishing","assign","buildPostState","wpdc_topic_tags","split","postState","determinePublishToDiscourse","discourse_post_id","wpdc_pin_topic","publish_post_category","wpdc_pin_until","discourse_permalink","wpdc_publishing_error","autoPublishOverridden","wpdc_auto_publish_overridden","includes","wpdc_publish_to_discourse","pluginUnconfigured","apiRequest","path","method","get_categories_nonce","postId","then","allowedPostTypes","set_publish_meta_nonce","publish_to_discourse","categoryId","set_category_meta_nonce","set_pin_meta_nonce","tagString","join","set_tag_meta_nonce","link_topic_nonce","topic_url","err","responseJSON","unlink_post_nonce","publish_topic_nonce","success","publish_response","update_topic_nonce","response","update_response","isPublished","actions","title","HOC","select","getCurrentPostId","getCurrentPost","dispatch","editPost","icon"],"sourceRoot":""} \ No newline at end of file diff --git a/admin/discourse-sidebar/package-lock.json b/admin/discourse-sidebar/package-lock.json index c668f7c..5f1819a 100644 --- a/admin/discourse-sidebar/package-lock.json +++ b/admin/discourse-sidebar/package-lock.json @@ -9,8 +9,8 @@ "version": "1.0.0", "license": "GPL", "devDependencies": { - "@wordpress/scripts": "^30.12.0", - "nodemon": "3.1.9" + "@wordpress/scripts": "^30.16.0", + "nodemon": "3.1.10" } }, "node_modules/@ampproject/remapping": { @@ -2119,9 +2119,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", - "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, "license": "MIT", "dependencies": { @@ -2257,16 +2257,16 @@ } }, "node_modules/@formatjs/ecma402-abstract": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.3.tgz", - "integrity": "sha512-pJT1OkhplSmvvr6i3CWTPvC/FGC06MbN5TNBfRO6Ox62AEz90eMq+dVvtX9Bl3jxCEkS0tATzDarRZuOLw7oFg==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.4.tgz", + "integrity": "sha512-qrycXDeaORzIqNhBOx0btnhpD1c+/qFIHAN9znofuMJX6QBwtbrmlpWfD4oiUUD2vJUOIYFA/gYtg2KAMGG7sA==", "dev": true, "license": "MIT", "dependencies": { - "@formatjs/fast-memoize": "2.2.6", - "@formatjs/intl-localematcher": "0.6.0", - "decimal.js": "10", - "tslib": "2" + "@formatjs/fast-memoize": "2.2.7", + "@formatjs/intl-localematcher": "0.6.1", + "decimal.js": "^10.4.3", + "tslib": "^2.8.0" } }, "node_modules/@formatjs/ecma402-abstract/node_modules/tslib": { @@ -2277,13 +2277,13 @@ "license": "0BSD" }, "node_modules/@formatjs/fast-memoize": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.6.tgz", - "integrity": "sha512-luIXeE2LJbQnnzotY1f2U2m7xuQNj2DA8Vq4ce1BY9ebRZaoPB1+8eZ6nXpLzsxuW5spQxr7LdCg+CApZwkqkw==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.7.tgz", + "integrity": "sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ==", "dev": true, "license": "MIT", "dependencies": { - "tslib": "2" + "tslib": "^2.8.0" } }, "node_modules/@formatjs/fast-memoize/node_modules/tslib": { @@ -2294,15 +2294,15 @@ "license": "0BSD" }, "node_modules/@formatjs/icu-messageformat-parser": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.1.tgz", - "integrity": "sha512-o0AhSNaOfKoic0Sn1GkFCK4MxdRsw7mPJ5/rBpIqdvcC7MIuyUSW8WChUEvrK78HhNpYOgqCQbINxCTumJLzZA==", + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.2.tgz", + "integrity": "sha512-AfiMi5NOSo2TQImsYAg8UYddsNJ/vUEv/HaNqiFjnI3ZFfWihUtD5QtuX6kHl8+H+d3qvnE/3HZrfzgdWpsLNA==", "dev": true, "license": "MIT", "dependencies": { - "@formatjs/ecma402-abstract": "2.3.3", - "@formatjs/icu-skeleton-parser": "1.8.13", - "tslib": "2" + "@formatjs/ecma402-abstract": "2.3.4", + "@formatjs/icu-skeleton-parser": "1.8.14", + "tslib": "^2.8.0" } }, "node_modules/@formatjs/icu-messageformat-parser/node_modules/tslib": { @@ -2313,14 +2313,14 @@ "license": "0BSD" }, "node_modules/@formatjs/icu-skeleton-parser": { - "version": "1.8.13", - "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.13.tgz", - "integrity": "sha512-N/LIdTvVc1TpJmMt2jVg0Fr1F7Q1qJPdZSCs19unMskCmVQ/sa0H9L8PWt13vq+gLdLg1+pPsvBLydL1Apahjg==", + "version": "1.8.14", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.14.tgz", + "integrity": "sha512-i4q4V4qslThK4Ig8SxyD76cp3+QJ3sAqr7f6q9VVfeGtxG9OhiAk3y9XF6Q41OymsKzsGQ6OQQoJNY4/lI8TcQ==", "dev": true, "license": "MIT", "dependencies": { - "@formatjs/ecma402-abstract": "2.3.3", - "tslib": "2" + "@formatjs/ecma402-abstract": "2.3.4", + "tslib": "^2.8.0" } }, "node_modules/@formatjs/icu-skeleton-parser/node_modules/tslib": { @@ -2331,13 +2331,13 @@ "license": "0BSD" }, "node_modules/@formatjs/intl-localematcher": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.0.tgz", - "integrity": "sha512-4rB4g+3hESy1bHSBG3tDFaMY2CH67iT7yne1e+0CLTsGLDcmoEWWpJjjpWVaYgYfYuohIRuo0E+N536gd2ZHZA==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.1.tgz", + "integrity": "sha512-ePEgLgVCqi2BBFnTMWPfIghu6FkbZnnBVhO2sSxvLfrdFw7wCHAHiDoM2h4NRgjbaY7+B7HgOLZGkK187pZTZg==", "dev": true, "license": "MIT", "dependencies": { - "tslib": "2" + "tslib": "^2.8.0" } }, "node_modules/@formatjs/intl-localematcher/node_modules/tslib": { @@ -2698,9 +2698,9 @@ } }, "node_modules/@jest/reporters/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -3269,37 +3269,38 @@ } }, "node_modules/@paulirish/trace_engine": { - "version": "0.0.44", - "resolved": "https://registry.npmjs.org/@paulirish/trace_engine/-/trace_engine-0.0.44.tgz", - "integrity": "sha512-QjDv5qVaUXd5WZzE2ktKvqtGA17v4HFtj6MROCGkK57AZr9n0ZKgcx7dEFho+5EHZ6V6h1upW2eqheo8C4Y4dA==", + "version": "0.0.52", + "resolved": "https://registry.npmjs.org/@paulirish/trace_engine/-/trace_engine-0.0.52.tgz", + "integrity": "sha512-RSIDdpvYRJIaXUSiJfTYxVRtjq3FPjU8FPT5BkpYXS4H7ofExEb4tZBXcqlRoriA8ykVTClgbqabmoI32n5zRQ==", "dev": true, "license": "BSD-3-Clause", "dependencies": { + "legacy-javascript": "latest", "third-party-web": "latest" } }, "node_modules/@pkgr/core": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", - "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.4.tgz", + "integrity": "sha512-ROFF39F6ZrnzSUEmQQZUar0Jt4xVoP9WnDRdWwF4NNcXs3xBTLgBUDoOwW141y1jP+S8nahIbdxbFC7IShw9Iw==", "dev": true, "license": "MIT", "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/unts" + "url": "https://opencollective.com/pkgr" } }, "node_modules/@playwright/test": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.50.1.tgz", - "integrity": "sha512-Jii3aBg+CEDpgnuDxEp/h7BimHcUTDlpEtce89xEumlJ5ef2hqepZ+PWp1DDpYC/VO9fmWVI1IlEaoI5fK9FXQ==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.52.0.tgz", + "integrity": "sha512-uh6W7sb55hl7D6vsAeA+V2p5JnlAqzhqFyF0VcJkKZXkgnFcVG9PziERRHQfPLfNGx1C292a4JqbWzhR8L4R1g==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { - "playwright": "1.50.1" + "playwright": "1.52.0" }, "bin": { "playwright": "cli.js" @@ -3890,9 +3891,9 @@ } }, "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", "dev": true, "license": "MIT", "dependencies": { @@ -3911,9 +3912,9 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", - "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, "license": "MIT", "dependencies": { @@ -4160,9 +4161,9 @@ "dev": true }, "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", + "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", "dev": true, "license": "MIT" }, @@ -4353,9 +4354,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -4510,9 +4511,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -4549,9 +4550,9 @@ } }, "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -4805,9 +4806,9 @@ } }, "node_modules/@wordpress/babel-preset-default": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.19.0.tgz", - "integrity": "sha512-SGrQjsqa4BulfOCBw0zDYXnvnMzXUWeWLcdpLHPIGCHArSOrDddlyms5UFoJxVYVeN4aiEHVOoJRhxnamo3HUQ==", + "version": "8.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.23.0.tgz", + "integrity": "sha512-dHUQJIXWsgIIhZHXjpHN53S1fzTy4ZJLk0Wpr29hRQYGrWAx9NSMHZRbaF2Qn5Ma5awe9ID5CIzBic4/pGxKqw==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -4817,8 +4818,8 @@ "@babel/preset-env": "7.25.7", "@babel/preset-typescript": "7.25.7", "@babel/runtime": "7.25.7", - "@wordpress/browserslist-config": "^6.19.0", - "@wordpress/warning": "^3.19.0", + "@wordpress/browserslist-config": "^6.23.0", + "@wordpress/warning": "^3.23.0", "browserslist": "^4.21.10", "core-js": "^3.31.0", "react": "^18.3.0" @@ -4829,9 +4830,9 @@ } }, "node_modules/@wordpress/base-styles": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.19.0.tgz", - "integrity": "sha512-rDRt2G2H1uRLZGRF/aXe2WZGNJJ2yzBup1VaiYBNRKS7io2YRu54vEYMgh/ll1el5eMN+jO9t4A54Ew/DO470Q==", + "version": "5.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.23.0.tgz", + "integrity": "sha512-1mtX3jA9el2ZDkAJp7YEN1bX+DzfX0h496uxpRk+evmQJLZxBMPeu5datJFtwkWbVitOsR88WCDvUoNoKJMSuw==", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -4840,9 +4841,9 @@ } }, "node_modules/@wordpress/browserslist-config": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.19.0.tgz", - "integrity": "sha512-4UR+T9iAx/qdehuZYZosL30PpPvzRVPncePs6aN0+zh7WbJsW4DZDi4ZXDTln6zJMIAQeHWvN84PTXgfsxyz4w==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.23.0.tgz", + "integrity": "sha512-AwQLVZ11tCpIWVMaQ3YrjVxDhYCZZjHpLCmEE7CcWWDGl8fFI5r6J696Aw8ImsVYslvCPdIzqXSWDsjxh/gPoA==", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -4851,9 +4852,9 @@ } }, "node_modules/@wordpress/dependency-extraction-webpack-plugin": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.19.0.tgz", - "integrity": "sha512-j23efbWFAVww9SvQ5GXGVXrqWEB+9OdlS+4qT5ojjSkXkUgJMm4bOzaFzIlgRmgGZNc3kpJ/0iIJF0lkK3U6uw==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.23.0.tgz", + "integrity": "sha512-D9AMOKwFkEg839uC3u9hybv48j4bRjjY5JCaHcKurOLD7wwQCpubF0Y3XmUf+TMWzFbZzJTzBP0xilerys9DsQ==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -4875,9 +4876,9 @@ "license": "BSD" }, "node_modules/@wordpress/e2e-test-utils-playwright": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.19.0.tgz", - "integrity": "sha512-oVAymk10VFF6vlhOveDvj6M9wqDbz434pyZ7V7OR2lF1O9A6npi1BJ3RNmKx8ar4J79tNaehr3I9G0B45WCH7Q==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.23.0.tgz", + "integrity": "sha512-ity7Xpyuo4s0US8jo70u6WAluI/VLPo/hxfhOaLoUo+jujQUgM3pt0RzkiXKaQ9Eca2+lG/qEwoRA0HQmenI2A==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -4897,17 +4898,17 @@ } }, "node_modules/@wordpress/eslint-plugin": { - "version": "22.5.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-22.5.0.tgz", - "integrity": "sha512-hmmPqOnyrSup3zNAk/sZGzURK/2+8EXRIMsX3/34kskhDPeWMYSiNt9pApFZ5dDR0fwlDLSmsOiZpDTCsZic+w==", + "version": "22.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-22.9.0.tgz", + "integrity": "sha512-reiIp2GpXpxWucTZgrswPVTl1YqoZOSW8DRS4U5tGw6eTNN5YDIcDH+yyje2O2kFNh0otCvF4Y4gzQiYDOulAw==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { "@babel/eslint-parser": "7.25.7", "@typescript-eslint/eslint-plugin": "^6.4.1", "@typescript-eslint/parser": "^6.4.1", - "@wordpress/babel-preset-default": "^8.19.0", - "@wordpress/prettier-config": "^4.19.0", + "@wordpress/babel-preset-default": "^8.23.0", + "@wordpress/prettier-config": "^4.23.0", "cosmiconfig": "^7.0.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-import": "^2.25.2", @@ -4987,9 +4988,9 @@ } }, "node_modules/@wordpress/jest-console": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.19.0.tgz", - "integrity": "sha512-HwXWaRmrT5bA4rWUnIGJNgqQrF7eeQmHxBN/fy8gcag4Le1/v92EpUjsIAT+lMJVahoqmGbyzkXFdZ2TAvwLtw==", + "version": "8.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.23.0.tgz", + "integrity": "sha512-2uL5VzRf63Uyl6bym7sdYJhke4ziEj8kPlPn3ObCV210140TB17SOxJ8SOE3wxBlEh1VDPSotXto8GW/lu+iBg==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -5005,13 +5006,13 @@ } }, "node_modules/@wordpress/jest-preset-default": { - "version": "12.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.19.0.tgz", - "integrity": "sha512-WciJ2Qiblxd4Y0ysGgGZPTwGPRfvb+WyRF9zyJ5Oa0a5LpfrSUv8tjx9pOTz2hi30vhj34LFoqpWCcGXJZ56Aw==", + "version": "12.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.23.0.tgz", + "integrity": "sha512-vfdTifeiIDi5FlCYlKiKvmY9o1gymXajc8SBAM66y/qDJCbDi/kFsINDM4aejveIIx8qTO7t3lr8hNkOjxsCPw==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/jest-console": "^8.19.0", + "@wordpress/jest-console": "^8.23.0", "babel-jest": "29.7.0" }, "engines": { @@ -5024,9 +5025,9 @@ } }, "node_modules/@wordpress/npm-package-json-lint-config": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.19.0.tgz", - "integrity": "sha512-6JrZWHAQbji0k8rf7/fEnDP0Ie5qGBLaA5deMkVTC75HtEoiH+rR+ssVsdvv7+KyerM+5LDP6Aef5rVE7vsteA==", + "version": "5.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.23.0.tgz", + "integrity": "sha512-2YsGOcXVDGdi4+buE7X+uhguvWF2yEZSeR/H2+RNYHtmB0SnFIAdu5uODHEkMvNgQzf3/lHHsHsHndptXzXCfA==", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -5038,13 +5039,13 @@ } }, "node_modules/@wordpress/postcss-plugins-preset": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.19.0.tgz", - "integrity": "sha512-sHQ9rasbQztxG2ZgbZ34G7u94CS0RHcvbQFLqijazlSX6QhAFporJlgzHhyHO+yRFNBHQ+3vvDZCS3BMEjxiOg==", + "version": "5.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.23.0.tgz", + "integrity": "sha512-XD7TRGUCxPuoOysT7AUXS2OifegqZt6MdScPifYudVYTxxTi+PEuyPL4tEuVpu9ZYWJuv3ShCNRppWiPsRTJrg==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/base-styles": "^5.19.0", + "@wordpress/base-styles": "^5.23.0", "autoprefixer": "^10.4.20" }, "engines": { @@ -5056,9 +5057,9 @@ } }, "node_modules/@wordpress/prettier-config": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.19.0.tgz", - "integrity": "sha512-mGgPuhIupWln2UX0uqLBfvvEzWFb1r2oRCC5Q3RXNtjDdOnkKIqtJOjCqL8IkCxa0sJmQZUymHKxBnStlQxR0w==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.23.0.tgz", + "integrity": "sha512-IxJcV/SxPzT8bRuYbhBZwAa8Q8n16con4uD/8X8OF3/vAP2StX5/kAo3tVvy7e1La7H/1QkmdyayeHkyiwNRsQ==", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -5070,25 +5071,25 @@ } }, "node_modules/@wordpress/scripts": { - "version": "30.12.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.12.0.tgz", - "integrity": "sha512-+Gxdmf1HEOPrH4LaNeMH7Wngc894zAUt3h9ztlzR46pBiz80xGBJmD54fODC7bnevKbvNojhjWc2iOeM5nRHjQ==", + "version": "30.16.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.16.0.tgz", + "integrity": "sha512-1lOChs1DzI8YYsjZFBNFy0km5o5ts08rIanQQ6k/tdNiVLnb4h5/aUike60Y3phGjV3On7xO/K4ZJ7AyoI0oRA==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { "@babel/core": "7.25.7", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", "@svgr/webpack": "^8.0.1", - "@wordpress/babel-preset-default": "^8.19.0", - "@wordpress/browserslist-config": "^6.19.0", - "@wordpress/dependency-extraction-webpack-plugin": "^6.19.0", - "@wordpress/e2e-test-utils-playwright": "^1.19.0", - "@wordpress/eslint-plugin": "^22.5.0", - "@wordpress/jest-preset-default": "^12.19.0", - "@wordpress/npm-package-json-lint-config": "^5.19.0", - "@wordpress/postcss-plugins-preset": "^5.19.0", - "@wordpress/prettier-config": "^4.19.0", - "@wordpress/stylelint-config": "^23.11.0", + "@wordpress/babel-preset-default": "^8.23.0", + "@wordpress/browserslist-config": "^6.23.0", + "@wordpress/dependency-extraction-webpack-plugin": "^6.23.0", + "@wordpress/e2e-test-utils-playwright": "^1.23.0", + "@wordpress/eslint-plugin": "^22.9.0", + "@wordpress/jest-preset-default": "^12.23.0", + "@wordpress/npm-package-json-lint-config": "^5.23.0", + "@wordpress/postcss-plugins-preset": "^5.23.0", + "@wordpress/prettier-config": "^4.23.0", + "@wordpress/stylelint-config": "^23.15.0", "adm-zip": "^0.5.9", "babel-jest": "29.7.0", "babel-loader": "9.2.1", @@ -5145,7 +5146,7 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "@playwright/test": "^1.49.1", + "@playwright/test": "^1.51.1", "react": "^18.0.0", "react-dom": "^18.0.0" } @@ -5204,9 +5205,9 @@ } }, "node_modules/@wordpress/stylelint-config": { - "version": "23.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.11.0.tgz", - "integrity": "sha512-osq25Nlcnwv4RJggYKnkfRbi6QDRI2O8PDMxVAvicL+JhxjtEqXKBwWaKNULHpc4aEWcGBaJtxJpzEE/7ZagBw==", + "version": "23.15.0", + "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.15.0.tgz", + "integrity": "sha512-DVxCs7uojx7YJ/jJvN3EZg4wHXgvaMCqiVCtBGOQphgaBetgH5GyEELoDA6MOFd7DCO6edVjx5fhT5dc40zmAQ==", "dev": true, "license": "MIT", "dependencies": { @@ -5219,13 +5220,14 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "stylelint": "^16.8.2" + "stylelint": "^16.8.2", + "stylelint-scss": "^6.4.0" } }, "node_modules/@wordpress/warning": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.19.0.tgz", - "integrity": "sha512-hxRGkyKC+Ey7fPeiIX59gtYxYHNo2wTbvC3eqMmRI6ywTnJgHMwdx4Tih6Y/F3KimZU6t5Gm9+UWsLhUujOHDw==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.23.0.tgz", + "integrity": "sha512-tPJ8T5BBNRqNTdF8gOy97h+sD+bs0QwoRIzE4y2erQ9E+LqQXIgl8+UhT0F+5q7QcFzd0hGRF8sotzILMjJZHw==", "dev": true, "license": "GPL-2.0-or-later", "engines": { @@ -5604,18 +5606,19 @@ } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", + "es-abstract": "^1.23.9", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -5765,9 +5768,9 @@ "dev": true }, "node_modules/autoprefixer": { - "version": "10.4.20", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", - "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", "dev": true, "funding": [ { @@ -5785,11 +5788,11 @@ ], "license": "MIT", "dependencies": { - "browserslist": "^4.23.3", - "caniuse-lite": "^1.0.30001646", + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.1", + "picocolors": "^1.1.1", "postcss-value-parser": "^4.2.0" }, "bin": { @@ -5819,9 +5822,9 @@ } }, "node_modules/axe-core": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.2.tgz", - "integrity": "sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==", + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", "dev": true, "license": "MPL-2.0", "engines": { @@ -6417,24 +6420,24 @@ } }, "node_modules/cacheable": { - "version": "1.8.8", - "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.8.8.tgz", - "integrity": "sha512-OE1/jlarWxROUIpd0qGBSKFLkNsotY8pt4GeiVErUYh/NUeTNrT+SBksUgllQv4m6a0W/VZsLuiHb88maavqEw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.9.0.tgz", + "integrity": "sha512-8D5htMCxPDUULux9gFzv30f04Xo3wCnik0oOxKoRTPIBoqA7HtOcJ87uBhQTs3jCfZZTrUBGsYIZOgE0ZRgMAg==", "dev": true, "license": "MIT", "dependencies": { - "hookified": "^1.7.0", - "keyv": "^5.2.3" + "hookified": "^1.8.2", + "keyv": "^5.3.3" } }, "node_modules/cacheable/node_modules/keyv": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.2.3.tgz", - "integrity": "sha512-AGKecUfzrowabUv0bH1RIR5Vf7w+l4S3xtQAypKaUpTdIR1EbrAcTxHCrpo9Q+IWeUlFE2palRtgIQcgm+PQJw==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.3.3.tgz", + "integrity": "sha512-Rwu4+nXI9fqcxiEHtbkvoes2X+QfkTRo1TMkPfwzipGsJlJO/z69vqB4FNl9xJ3xCpAcbkvmEabZfPzrwN3+gQ==", "dev": true, "license": "MIT", "dependencies": { - "@keyv/serialize": "^1.0.2" + "@keyv/serialize": "^1.0.3" } }, "node_modules/call-bind": { @@ -6471,14 +6474,14 @@ } }, "node_modules/call-bound": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", - "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "get-intrinsic": "^1.2.6" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { "node": ">= 0.4" @@ -6567,9 +6570,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001701", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001701.tgz", - "integrity": "sha512-faRs/AW3jA9nTwmJBSO1PQ6L/EOgsB5HMQQq4iCu5zhPgVVgO/pZRHlmatwijZKetFw8/Pr4q6dEN8sJuq8qTw==", + "version": "1.0.30001718", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", + "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", "dev": true, "funding": [ { @@ -6730,9 +6733,9 @@ } }, "node_modules/chrome-launcher": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.1.2.tgz", - "integrity": "sha512-YclTJey34KUm5jB1aEJCq807bSievi7Nb/TU4Gu504fUYi3jw3KCIaH6L7nFWQhdEgH3V+wCh+kKD1P5cXnfxw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.2.0.tgz", + "integrity": "sha512-JbuGuBNss258bvGil7FT4HKdC3SC2K7UAEUqiPy3ACS3Yxo3hAW6bvFpCu2HsIJLgTqxgEX6BkujvzZfLpUD0Q==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6742,7 +6745,7 @@ "lighthouse-logger": "^2.0.1" }, "bin": { - "print-chrome-path": "bin/print-chrome-path.js" + "print-chrome-path": "bin/print-chrome-path.cjs" }, "engines": { "node": ">=12.13.0" @@ -7228,9 +7231,9 @@ } }, "node_modules/core-js": { - "version": "3.40.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.40.0.tgz", - "integrity": "sha512-7vsMc/Lty6AGnn7uFpYT56QesI5D2Y/UkgKounk87OP9Z2H9Z8kj6jzcSGAxFmUtDOS0ntK6lbQz+Nsa0Jj6mQ==", + "version": "3.42.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.42.0.tgz", + "integrity": "sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -7749,9 +7752,9 @@ "dev": true }, "node_modules/debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dev": true, "license": "MIT", "dependencies": { @@ -7766,13 +7769,6 @@ } } }, - "node_modules/debug/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -7817,9 +7813,9 @@ "dev": true }, "node_modules/dedent": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", - "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz", + "integrity": "sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==", "dev": true, "license": "MIT", "peerDependencies": { @@ -7873,6 +7869,7 @@ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -8050,9 +8047,9 @@ "dev": true }, "node_modules/devtools-protocol": { - "version": "0.0.1423531", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1423531.tgz", - "integrity": "sha512-z6cOcajZWxk80zvFnkTGa7tj3oqF+C5SnOF1KSMeAr5/WW/nLNHlEpKr7voSzMz8IaUoq5rjdI0Mqv5k/BUkhg==", + "version": "0.0.1445099", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1445099.tgz", + "integrity": "sha512-GEuIbCLU2Iu6Sg05GeWS7ksijhOUZIDJD2YBUNRanK7SLKjeci1uxUUomu2VNvygQRuoq/vtnTYrgPZBEiYNMA==", "dev": true, "license": "BSD-3-Clause" }, @@ -8943,9 +8940,9 @@ } }, "node_modules/eslint-plugin-jest/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -8980,9 +8977,9 @@ } }, "node_modules/eslint-plugin-jsdoc/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -9052,14 +9049,14 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.3.tgz", - "integrity": "sha512-qJ+y0FfCp/mQYQ/vWQ3s7eUlFEL4PyKfAJxsnYTJ4YT73nsJBWqmEpFryxV9OeUiqmsTsYJ5Y+KDNaeP31wrRw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.4.0.tgz", + "integrity": "sha512-BvQOvUhkVQM1i63iMETK9Hjud9QhqBnbtT1Zc642p9ynzBuCe5pybkOnvqZIBypXmMlsGcnU4HZ8sCTPfpAexA==", "dev": true, "license": "MIT", "dependencies": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.9.1" + "synckit": "^0.11.0" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -9070,7 +9067,7 @@ "peerDependencies": { "@types/eslint": ">=8.0.0", "eslint": ">=8.0.0", - "eslint-config-prettier": "*", + "eslint-config-prettier": ">= 7.0.0 <10.0.0 || >=10.1.0", "prettier": ">=3.0.0" }, "peerDependenciesMeta": { @@ -9083,9 +9080,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.37.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz", - "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==", + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", "dev": true, "license": "MIT", "dependencies": { @@ -9099,7 +9096,7 @@ "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", - "object.entries": "^1.1.8", + "object.entries": "^1.1.9", "object.fromentries": "^2.0.8", "object.values": "^1.2.1", "prop-types": "^15.8.1", @@ -10581,6 +10578,7 @@ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, + "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" }, @@ -10677,9 +10675,9 @@ } }, "node_modules/hookified": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.7.1.tgz", - "integrity": "sha512-OXcdHsXeOiD7OJ5zvWj8Oy/6RCdLwntAX+wUrfemNcMGn6sux4xbEHi2QXwqePYhjQ/yvxxq2MvCRirdlHscBw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.9.0.tgz", + "integrity": "sha512-2yEEGqphImtKIe1NXWEhu6yD3hlFR4Mxk4Mtp3XEyScpSt4pQ4ymmXA1zzxZpj99QkFK+nN0nzjeb2+RUi/6CQ==", "dev": true, "license": "MIT" }, @@ -11129,16 +11127,16 @@ } }, "node_modules/intl-messageformat": { - "version": "10.7.15", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.15.tgz", - "integrity": "sha512-LRyExsEsefQSBjU2p47oAheoKz+EOJxSLDdjOaEjdriajfHsMXOmV/EhMvYSg9bAgCUHasuAC+mcUBe/95PfIg==", + "version": "10.7.16", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.16.tgz", + "integrity": "sha512-UmdmHUmp5CIKKjSoE10la5yfU+AYJAaiYLsodbjL4lji83JNvgOQUjGaGhGrpFCb0Uh7sl7qfP1IyILa8Z40ug==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "@formatjs/ecma402-abstract": "2.3.3", - "@formatjs/fast-memoize": "2.2.6", - "@formatjs/icu-messageformat-parser": "2.11.1", - "tslib": "2" + "@formatjs/ecma402-abstract": "2.3.4", + "@formatjs/fast-memoize": "2.2.7", + "@formatjs/icu-messageformat-parser": "2.11.2", + "tslib": "^2.8.0" } }, "node_modules/intl-messageformat/node_modules/tslib": { @@ -12422,9 +12420,9 @@ } }, "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -12753,9 +12751,9 @@ } }, "node_modules/known-css-properties": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.35.0.tgz", - "integrity": "sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==", + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.36.0.tgz", + "integrity": "sha512-A+9jP+IUmuQsNdsLdcg6Yt7voiMF/D4K83ew0OpJtpu+l34ef7LaohWV0Rc6KNvzw6ZDizkqfyB5JznZnzuKQA==", "dev": true, "license": "MIT" }, @@ -12798,6 +12796,13 @@ "node": ">=0.10.0" } }, + "node_modules/legacy-javascript": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/legacy-javascript/-/legacy-javascript-0.0.1.tgz", + "integrity": "sha512-lPyntS4/aS7jpuvOlitZDFifBCb4W8L/3QU0PLbUTUj+zYah8rfVjYic88yG7ZKTxhS5h9iz7duT8oUXKszLhg==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -12833,19 +12838,19 @@ } }, "node_modules/lighthouse": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-12.4.0.tgz", - "integrity": "sha512-1p/YKQpMqfYVSKVOB43RG3xbnxkSUOG0zqVm/bxJHAaAHKrEACgFi8HZxD9CCTFrt+d/Q/x9gjDyeUDarm1SIg==", + "version": "12.6.0", + "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-12.6.0.tgz", + "integrity": "sha512-ufYw6dBR0PDEpO4pj45zRStatdTvBSi/LTXgs6ULmadSLTNXklP3XGGGuL7SA9pE/NltGbs5zQOA/ICQao1ywA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@paulirish/trace_engine": "0.0.44", + "@paulirish/trace_engine": "0.0.52", "@sentry/node": "^7.0.0", - "axe-core": "^4.10.2", + "axe-core": "^4.10.3", "chrome-launcher": "^1.1.2", "configstore": "^5.0.1", "csp_evaluator": "1.1.5", - "devtools-protocol": "0.0.1423531", + "devtools-protocol": "0.0.1445099", "enquirer": "^2.3.6", "http-link-header": "^1.1.1", "intl-messageformat": "^10.5.3", @@ -12858,11 +12863,11 @@ "metaviewport-parser": "0.3.0", "open": "^8.4.0", "parse-cache-control": "1.0.1", - "puppeteer-core": "^24.3.0", + "puppeteer-core": "^24.6.1", "robots-parser": "^3.0.1", "semver": "^5.3.0", "speedline-core": "^1.4.3", - "third-party-web": "^0.26.5", + "third-party-web": "^0.26.6", "tldts-icann": "^6.1.16", "ws": "^7.0.0", "yargs": "^17.3.1", @@ -12874,7 +12879,7 @@ "smokehouse": "cli/test/smokehouse/frontends/smokehouse-bin.js" }, "engines": { - "node": ">=18.16" + "node": ">=18.20" } }, "node_modules/lighthouse-logger": { @@ -12913,17 +12918,17 @@ "license": "Apache-2.0" }, "node_modules/lighthouse/node_modules/@puppeteer/browsers": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.7.1.tgz", - "integrity": "sha512-MK7rtm8JjaxPN7Mf1JdZIZKPD2Z+W7osvrC1vjpvfOX1K0awDIHYbNi89f7eotp7eMUn2shWnt03HwVbriXtKQ==", + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.5.tgz", + "integrity": "sha512-eifa0o+i8dERnngJwKrfp3dEq7ia5XFyoqB17S4gK8GhsQE4/P8nxOfQSE0zQHxzzLo/cmF+7+ywEQ7wK7Fb+w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "debug": "^4.4.0", + "debug": "^4.4.1", "extract-zip": "^2.0.1", "progress": "^2.0.3", "proxy-agent": "^6.5.0", - "semver": "^7.7.0", + "semver": "^7.7.2", "tar-fs": "^3.0.8", "yargs": "^17.7.2" }, @@ -12935,9 +12940,9 @@ } }, "node_modules/lighthouse/node_modules/@puppeteer/browsers/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -12948,27 +12953,27 @@ } }, "node_modules/lighthouse/node_modules/puppeteer-core": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.3.0.tgz", - "integrity": "sha512-x8kQRP/xxtiFav6wWuLzrctO0HWRpSQy+JjaHbqIl+d5U2lmRh2pY9vh5AzDFN0EtOXW2pzngi9RrryY1vZGig==", + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.9.0.tgz", + "integrity": "sha512-HFdCeH/wx6QPz8EncafbCqJBqaCG1ENW75xg3cLFMRUoqZDgByT6HSueiumetT2uClZxwqj0qS4qMVZwLHRHHw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@puppeteer/browsers": "2.7.1", - "chromium-bidi": "2.0.0", - "debug": "^4.4.0", - "devtools-protocol": "0.0.1402036", + "@puppeteer/browsers": "2.10.5", + "chromium-bidi": "5.1.0", + "debug": "^4.4.1", + "devtools-protocol": "0.0.1439962", "typed-query-selector": "^2.12.0", - "ws": "^8.18.1" + "ws": "^8.18.2" }, "engines": { "node": ">=18" } }, "node_modules/lighthouse/node_modules/puppeteer-core/node_modules/chromium-bidi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-2.0.0.tgz", - "integrity": "sha512-8VmyVj0ewSY4pstZV0Y3rCUUwpomam8uWgHZf1XavRxJEP4vU9/dcpNuoyB+u4AQxPo96CASXz5CHPvdH+dSeQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-5.1.0.tgz", + "integrity": "sha512-9MSRhWRVoRPDG0TgzkHrshFSJJNZzfY5UFqUMuksg7zL1yoZIZ3jLB0YAgHclbiAxPI86pBnwDX1tbzoiV8aFw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -12980,16 +12985,16 @@ } }, "node_modules/lighthouse/node_modules/puppeteer-core/node_modules/devtools-protocol": { - "version": "0.0.1402036", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1402036.tgz", - "integrity": "sha512-JwAYQgEvm3yD45CHB+RmF5kMbWtXBaOGwuxa87sZogHcLCv8c/IqnThaoQ1y60d7pXWjSKWQphPEc+1rAScVdg==", + "version": "0.0.1439962", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1439962.tgz", + "integrity": "sha512-jJF48UdryzKiWhJ1bLKr7BFWUQCEIT5uCNbDLqkQJBtkFxYzILJH44WN0PDKMIlGDN7Utb8vyUY85C3w4R/t2g==", "dev": true, "license": "BSD-3-Clause" }, "node_modules/lighthouse/node_modules/puppeteer-core/node_modules/ws": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", - "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", + "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", "dev": true, "license": "MIT", "engines": { @@ -13041,9 +13046,9 @@ } }, "node_modules/lighthouse/node_modules/zod": { - "version": "3.24.2", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz", - "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==", + "version": "3.25.17", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.17.tgz", + "integrity": "sha512-8hQzQ/kMOIFbwOgPrm9Sf9rtFHpFUMy4HvN0yEB0spw14aYi0uT5xG5CE2DB9cd51GWNsz+DNO7se1kztHMKnw==", "dev": true, "license": "MIT", "funding": { @@ -13262,9 +13267,9 @@ } }, "node_modules/make-dir/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -13413,9 +13418,9 @@ "dev": true }, "node_modules/marky": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", - "integrity": "sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/marky/-/marky-1.3.0.tgz", + "integrity": "sha512-ocnPZQLNpvbedwTy9kNrQEsknEfgvcLMvOtz3sFeWApDq1MXH1TqkCIx58xlpESsfwQOnuBO9beyQuNGzVvuhQ==", "dev": true, "license": "Apache-2.0" }, @@ -13825,10 +13830,11 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" }, "node_modules/multicast-dns": { "version": "7.2.5", @@ -13942,9 +13948,9 @@ "license": "MIT" }, "node_modules/nodemon": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.9.tgz", - "integrity": "sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.10.tgz", + "integrity": "sha512-WDjw3pJ0/0jMFmyNDp3gvY2YizjLmmOUQo6DEBY+JgdvW/yQ9mEeSw6H5ythl5Ny2ytb7f9C2nIbjSxMNzbJXw==", "dev": true, "license": "MIT", "dependencies": { @@ -14036,9 +14042,9 @@ } }, "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -14123,9 +14129,9 @@ "license": "MIT" }, "node_modules/npm-package-json-lint/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true, "license": "ISC", "bin": { @@ -14256,15 +14262,16 @@ } }, "node_modules/object.entries": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", - "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" + "es-object-atoms": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -14802,9 +14809,9 @@ } }, "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", "dev": true, "license": "MIT", "engines": { @@ -14876,14 +14883,14 @@ } }, "node_modules/playwright": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.50.1.tgz", - "integrity": "sha512-G8rwsOQJ63XG6BbKj2w5rHeavFjy5zynBA9zsJMMtBoe/Uf757oG12NXz6e6OirF7RCrTVAKFXbLmn1RbL7Qaw==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.52.0.tgz", + "integrity": "sha512-JAwMNMBlxJ2oD1kce4KPtMkDeKGHQstdpFPcPH3maElAXon/QZeTvtsfXmTMRyO9TslfoYOXkSsvao2nE1ilTw==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { - "playwright-core": "1.50.1" + "playwright-core": "1.52.0" }, "bin": { "playwright": "cli.js" @@ -14896,9 +14903,9 @@ } }, "node_modules/playwright-core": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.50.1.tgz", - "integrity": "sha512-ra9fsNWayuYumt+NiM069M6OkcRb1FZSK8bgi66AtpFoWkg2+y0bJSNmkFrWhMbEBbVKC/EruAHH3g0zmtwGmQ==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.52.0.tgz", + "integrity": "sha512-l2osTgLXSMeuLZOML9qYODUQoPPnUsKsb5/P6LJ2e6uPKXUdPK5WYhN4z03G+YNbWmGDY4YENauNu4ZKczreHg==", "dev": true, "license": "Apache-2.0", "peer": true, @@ -16876,12 +16883,6 @@ "node": ">=4" } }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, "node_modules/sentence-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", @@ -17008,6 +17009,7 @@ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -17856,9 +17858,9 @@ } }, "node_modules/stylelint": { - "version": "16.14.1", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.14.1.tgz", - "integrity": "sha512-oqCL7AC3786oTax35T/nuLL8p2C3k/8rHKAooezrPGRvUX0wX+qqs5kMWh5YYT4PHQgVDobHT4tw55WgpYG6Sw==", + "version": "16.19.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.19.1.tgz", + "integrity": "sha512-C1SlPZNMKl+d/C867ZdCRthrS+6KuZ3AoGW113RZCOL0M8xOGpgx7G70wq7lFvqvm4dcfdGFVLB/mNaLFChRKw==", "dev": true, "funding": [ { @@ -17885,7 +17887,7 @@ "debug": "^4.3.7", "fast-glob": "^3.3.3", "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^10.0.5", + "file-entry-cache": "^10.0.8", "global-modules": "^2.0.0", "globby": "^11.1.0", "globjoin": "^0.1.4", @@ -17893,20 +17895,20 @@ "ignore": "^7.0.3", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.35.0", + "known-css-properties": "^0.36.0", "mathml-tag-names": "^2.1.3", "meow": "^13.2.0", "micromatch": "^4.0.8", "normalize-path": "^3.0.0", "picocolors": "^1.1.1", - "postcss": "^8.5.1", + "postcss": "^8.5.3", "postcss-resolve-nested-selector": "^0.1.6", "postcss-safe-parser": "^7.0.1", - "postcss-selector-parser": "^7.0.0", + "postcss-selector-parser": "^7.1.0", "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", "string-width": "^4.2.3", - "supports-hyperlinks": "^3.1.0", + "supports-hyperlinks": "^3.2.0", "svg-tags": "^1.0.0", "table": "^6.9.0", "write-file-atomic": "^5.0.1" @@ -17966,16 +17968,16 @@ } }, "node_modules/stylelint-scss": { - "version": "6.11.1", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.11.1.tgz", - "integrity": "sha512-e4rYo0UY+BIMtGeGanghrvHTjcryxgZbyFxUedp8dLFqC4P70aawNdYjRrQxbnKhu3BNr4+lt5e/53tcKXiwFA==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.12.0.tgz", + "integrity": "sha512-U7CKhi1YNkM1pXUXl/GMUXi8xKdhl4Ayxdyceie1nZ1XNIdaUgMV6OArpooWcDzEggwgYD0HP/xIgVJo9a655w==", "dev": true, "license": "MIT", "dependencies": { "css-tree": "^3.0.1", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.35.0", - "mdn-data": "^2.15.0", + "known-css-properties": "^0.36.0", + "mdn-data": "^2.21.0", "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.6", "postcss-selector-parser": "^7.1.0", @@ -18020,9 +18022,9 @@ } }, "node_modules/stylelint-scss/node_modules/mdn-data": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.17.0.tgz", - "integrity": "sha512-VT5LJBdLRI+cc3DPXJD89PGwI8yXuciE5gZJoSPnH4yeGzMPqxwkZv3BjFSoaWpmOlJNBhVT6HKeQPcZKlNEvA==", + "version": "2.21.0", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.21.0.tgz", + "integrity": "sha512-+ZKPQezM5vYJIkCxaC+4DTnRrVZR1CgsKLu5zsQERQx6Tea8Y+wMx5A24rq8A8NepCeatIQufVAekKNgiBMsGQ==", "dev": true, "license": "CC0-1.0" }, @@ -18143,25 +18145,25 @@ } }, "node_modules/stylelint/node_modules/file-entry-cache": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.0.6.tgz", - "integrity": "sha512-0wvv16mVo9nN0Md3k7DMjgAPKG/TY4F/gYMBVb/wMThFRJvzrpaqBFqF6km9wf8QfYTN+mNg5aeaBLfy8k35uA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.1.0.tgz", + "integrity": "sha512-Et/ex6smi3wOOB+n5mek+Grf7P2AxZR5ueqRUvAAn4qkyatXi3cUC1cuQXVkX0VlzBVsN4BkWJFmY/fYiRTdww==", "dev": true, "license": "MIT", "dependencies": { - "flat-cache": "^6.1.6" + "flat-cache": "^6.1.9" } }, "node_modules/stylelint/node_modules/flat-cache": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.6.tgz", - "integrity": "sha512-F+CKgSwp0pzLx67u+Zy1aCueVWFAHWbXepvXlZ+bWVTaASbm5SyCnSJ80Fp1ePEmS57wU+Bf6cx6525qtMZ4lQ==", + "version": "6.1.9", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.9.tgz", + "integrity": "sha512-DUqiKkTlAfhtl7g78IuwqYM+YqvT+as0mY+EVk6mfimy19U79pJCzDZQsnqk3Ou/T6hFXWLGbwbADzD/c8Tydg==", "dev": true, "license": "MIT", "dependencies": { - "cacheable": "^1.8.8", - "flatted": "^3.3.2", - "hookified": "^1.7.0" + "cacheable": "^1.9.0", + "flatted": "^3.3.3", + "hookified": "^1.8.2" } }, "node_modules/stylelint/node_modules/global-modules": { @@ -18193,9 +18195,9 @@ } }, "node_modules/stylelint/node_modules/ignore": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", - "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", + "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", "dev": true, "license": "MIT", "engines": { @@ -18393,29 +18395,21 @@ "dev": true }, "node_modules/synckit": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", + "version": "0.11.6", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.6.tgz", + "integrity": "sha512-2pR2ubZSV64f/vqm9eLPz/KOvR9Dm+Co/5ChLgeHl0yEDRc6h5hXHoxEQH8Y5Ljycozd3p1k5TTSVdzYGkPvLw==", "dev": true, "license": "MIT", "dependencies": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" + "@pkgr/core": "^0.2.4" }, "engines": { "node": "^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/unts" + "url": "https://opencollective.com/synckit" } }, - "node_modules/synckit/node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true, - "license": "0BSD" - }, "node_modules/table": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", @@ -18694,9 +18688,9 @@ "license": "MIT" }, "node_modules/third-party-web": { - "version": "0.26.5", - "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.26.5.tgz", - "integrity": "sha512-tDuKQJUTfjvi9Fcrs1s6YAQAB9mzhTSbBZMfNgtWNmJlHuoFeXO6dzBFdGeCWRvYL50jQGK0jPsBZYxqZQJ2SA==", + "version": "0.26.6", + "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.26.6.tgz", + "integrity": "sha512-GsjP92xycMK8qLTcQCacgzvffYzEqe29wyz3zdKVXlfRD5Kz1NatCTOZEeDaSd6uCZXvGd2CNVtQ89RNIhJWvA==", "dev": true, "license": "MIT" }, @@ -18714,20 +18708,20 @@ "dev": true }, "node_modules/tldts-core": { - "version": "6.1.79", - "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.79.tgz", - "integrity": "sha512-HM+Ud/2oQuHt4I43Nvjc213Zji/z25NSH5OkJskJwHXNtYh9DTRlHMDFhms9dFMP7qyve/yVaXFIxmcJ7TdOjw==", + "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz", + "integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==", "dev": true, "license": "MIT" }, "node_modules/tldts-icann": { - "version": "6.1.79", - "resolved": "https://registry.npmjs.org/tldts-icann/-/tldts-icann-6.1.79.tgz", - "integrity": "sha512-R1ZlNnjrZzEkQs2eN1XNdwMgy3ltl+Tb6BkfZExgociOXCfPhLdj8OjXEzNYXwLnX1lHEE9jZgAmE+mbDlo7rw==", + "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts-icann/-/tldts-icann-6.1.86.tgz", + "integrity": "sha512-NFxmRT2lAEMcCOBgeZ0NuM0zsK/xgmNajnY6n4S1mwAKocft2s2ise1O3nQxrH3c+uY6hgHUV9GGNVp7tUE4Sg==", "dev": true, "license": "MIT", "dependencies": { - "tldts-core": "^6.1.79" + "tldts-core": "^6.1.86" } }, "node_modules/tmpl": { @@ -20078,16 +20072,17 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.18", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz", - "integrity": "sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==", + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "for-each": "^0.3.3", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" }, @@ -21628,9 +21623,9 @@ } }, "@eslint-community/eslint-utils": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", - "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, "requires": { "eslint-visitor-keys": "^3.4.3" @@ -21715,15 +21710,15 @@ "dev": true }, "@formatjs/ecma402-abstract": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.3.tgz", - "integrity": "sha512-pJT1OkhplSmvvr6i3CWTPvC/FGC06MbN5TNBfRO6Ox62AEz90eMq+dVvtX9Bl3jxCEkS0tATzDarRZuOLw7oFg==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.4.tgz", + "integrity": "sha512-qrycXDeaORzIqNhBOx0btnhpD1c+/qFIHAN9znofuMJX6QBwtbrmlpWfD4oiUUD2vJUOIYFA/gYtg2KAMGG7sA==", "dev": true, "requires": { - "@formatjs/fast-memoize": "2.2.6", - "@formatjs/intl-localematcher": "0.6.0", - "decimal.js": "10", - "tslib": "2" + "@formatjs/fast-memoize": "2.2.7", + "@formatjs/intl-localematcher": "0.6.1", + "decimal.js": "^10.4.3", + "tslib": "^2.8.0" }, "dependencies": { "tslib": { @@ -21735,12 +21730,12 @@ } }, "@formatjs/fast-memoize": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.6.tgz", - "integrity": "sha512-luIXeE2LJbQnnzotY1f2U2m7xuQNj2DA8Vq4ce1BY9ebRZaoPB1+8eZ6nXpLzsxuW5spQxr7LdCg+CApZwkqkw==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.7.tgz", + "integrity": "sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ==", "dev": true, "requires": { - "tslib": "2" + "tslib": "^2.8.0" }, "dependencies": { "tslib": { @@ -21752,14 +21747,14 @@ } }, "@formatjs/icu-messageformat-parser": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.1.tgz", - "integrity": "sha512-o0AhSNaOfKoic0Sn1GkFCK4MxdRsw7mPJ5/rBpIqdvcC7MIuyUSW8WChUEvrK78HhNpYOgqCQbINxCTumJLzZA==", + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.2.tgz", + "integrity": "sha512-AfiMi5NOSo2TQImsYAg8UYddsNJ/vUEv/HaNqiFjnI3ZFfWihUtD5QtuX6kHl8+H+d3qvnE/3HZrfzgdWpsLNA==", "dev": true, "requires": { - "@formatjs/ecma402-abstract": "2.3.3", - "@formatjs/icu-skeleton-parser": "1.8.13", - "tslib": "2" + "@formatjs/ecma402-abstract": "2.3.4", + "@formatjs/icu-skeleton-parser": "1.8.14", + "tslib": "^2.8.0" }, "dependencies": { "tslib": { @@ -21771,13 +21766,13 @@ } }, "@formatjs/icu-skeleton-parser": { - "version": "1.8.13", - "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.13.tgz", - "integrity": "sha512-N/LIdTvVc1TpJmMt2jVg0Fr1F7Q1qJPdZSCs19unMskCmVQ/sa0H9L8PWt13vq+gLdLg1+pPsvBLydL1Apahjg==", + "version": "1.8.14", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.14.tgz", + "integrity": "sha512-i4q4V4qslThK4Ig8SxyD76cp3+QJ3sAqr7f6q9VVfeGtxG9OhiAk3y9XF6Q41OymsKzsGQ6OQQoJNY4/lI8TcQ==", "dev": true, "requires": { - "@formatjs/ecma402-abstract": "2.3.3", - "tslib": "2" + "@formatjs/ecma402-abstract": "2.3.4", + "tslib": "^2.8.0" }, "dependencies": { "tslib": { @@ -21789,12 +21784,12 @@ } }, "@formatjs/intl-localematcher": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.0.tgz", - "integrity": "sha512-4rB4g+3hESy1bHSBG3tDFaMY2CH67iT7yne1e+0CLTsGLDcmoEWWpJjjpWVaYgYfYuohIRuo0E+N536gd2ZHZA==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.1.tgz", + "integrity": "sha512-ePEgLgVCqi2BBFnTMWPfIghu6FkbZnnBVhO2sSxvLfrdFw7wCHAHiDoM2h4NRgjbaY7+B7HgOLZGkK187pZTZg==", "dev": true, "requires": { - "tslib": "2" + "tslib": "^2.8.0" }, "dependencies": { "tslib": { @@ -22060,9 +22055,9 @@ } }, "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -22377,28 +22372,29 @@ "optional": true }, "@paulirish/trace_engine": { - "version": "0.0.44", - "resolved": "https://registry.npmjs.org/@paulirish/trace_engine/-/trace_engine-0.0.44.tgz", - "integrity": "sha512-QjDv5qVaUXd5WZzE2ktKvqtGA17v4HFtj6MROCGkK57AZr9n0ZKgcx7dEFho+5EHZ6V6h1upW2eqheo8C4Y4dA==", + "version": "0.0.52", + "resolved": "https://registry.npmjs.org/@paulirish/trace_engine/-/trace_engine-0.0.52.tgz", + "integrity": "sha512-RSIDdpvYRJIaXUSiJfTYxVRtjq3FPjU8FPT5BkpYXS4H7ofExEb4tZBXcqlRoriA8ykVTClgbqabmoI32n5zRQ==", "dev": true, "requires": { + "legacy-javascript": "latest", "third-party-web": "latest" } }, "@pkgr/core": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", - "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.4.tgz", + "integrity": "sha512-ROFF39F6ZrnzSUEmQQZUar0Jt4xVoP9WnDRdWwF4NNcXs3xBTLgBUDoOwW141y1jP+S8nahIbdxbFC7IShw9Iw==", "dev": true }, "@playwright/test": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.50.1.tgz", - "integrity": "sha512-Jii3aBg+CEDpgnuDxEp/h7BimHcUTDlpEtce89xEumlJ5ef2hqepZ+PWp1DDpYC/VO9fmWVI1IlEaoI5fK9FXQ==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.52.0.tgz", + "integrity": "sha512-uh6W7sb55hl7D6vsAeA+V2p5JnlAqzhqFyF0VcJkKZXkgnFcVG9PziERRHQfPLfNGx1C292a4JqbWzhR8L4R1g==", "dev": true, "peer": true, "requires": { - "playwright": "1.50.1" + "playwright": "1.52.0" } }, "@pmmmwh/react-refresh-webpack-plugin": { @@ -22766,9 +22762,9 @@ } }, "@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", "dev": true, "requires": { "@babel/types": "^7.0.0" @@ -22785,9 +22781,9 @@ } }, "@types/babel__traverse": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", - "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, "requires": { "@babel/types": "^7.20.7" @@ -23026,9 +23022,9 @@ "dev": true }, "@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", + "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", "dev": true }, "@types/send": { @@ -23198,9 +23194,9 @@ }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -23281,9 +23277,9 @@ } }, "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -23304,9 +23300,9 @@ }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -23503,9 +23499,9 @@ "requires": {} }, "@wordpress/babel-preset-default": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.19.0.tgz", - "integrity": "sha512-SGrQjsqa4BulfOCBw0zDYXnvnMzXUWeWLcdpLHPIGCHArSOrDddlyms5UFoJxVYVeN4aiEHVOoJRhxnamo3HUQ==", + "version": "8.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.23.0.tgz", + "integrity": "sha512-dHUQJIXWsgIIhZHXjpHN53S1fzTy4ZJLk0Wpr29hRQYGrWAx9NSMHZRbaF2Qn5Ma5awe9ID5CIzBic4/pGxKqw==", "dev": true, "requires": { "@babel/core": "7.25.7", @@ -23514,29 +23510,29 @@ "@babel/preset-env": "7.25.7", "@babel/preset-typescript": "7.25.7", "@babel/runtime": "7.25.7", - "@wordpress/browserslist-config": "^6.19.0", - "@wordpress/warning": "^3.19.0", + "@wordpress/browserslist-config": "^6.23.0", + "@wordpress/warning": "^3.23.0", "browserslist": "^4.21.10", "core-js": "^3.31.0", "react": "^18.3.0" } }, "@wordpress/base-styles": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.19.0.tgz", - "integrity": "sha512-rDRt2G2H1uRLZGRF/aXe2WZGNJJ2yzBup1VaiYBNRKS7io2YRu54vEYMgh/ll1el5eMN+jO9t4A54Ew/DO470Q==", + "version": "5.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.23.0.tgz", + "integrity": "sha512-1mtX3jA9el2ZDkAJp7YEN1bX+DzfX0h496uxpRk+evmQJLZxBMPeu5datJFtwkWbVitOsR88WCDvUoNoKJMSuw==", "dev": true }, "@wordpress/browserslist-config": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.19.0.tgz", - "integrity": "sha512-4UR+T9iAx/qdehuZYZosL30PpPvzRVPncePs6aN0+zh7WbJsW4DZDi4ZXDTln6zJMIAQeHWvN84PTXgfsxyz4w==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.23.0.tgz", + "integrity": "sha512-AwQLVZ11tCpIWVMaQ3YrjVxDhYCZZjHpLCmEE7CcWWDGl8fFI5r6J696Aw8ImsVYslvCPdIzqXSWDsjxh/gPoA==", "dev": true }, "@wordpress/dependency-extraction-webpack-plugin": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.19.0.tgz", - "integrity": "sha512-j23efbWFAVww9SvQ5GXGVXrqWEB+9OdlS+4qT5ojjSkXkUgJMm4bOzaFzIlgRmgGZNc3kpJ/0iIJF0lkK3U6uw==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.23.0.tgz", + "integrity": "sha512-D9AMOKwFkEg839uC3u9hybv48j4bRjjY5JCaHcKurOLD7wwQCpubF0Y3XmUf+TMWzFbZzJTzBP0xilerys9DsQ==", "dev": true, "requires": { "json2php": "^0.0.7" @@ -23551,9 +23547,9 @@ } }, "@wordpress/e2e-test-utils-playwright": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.19.0.tgz", - "integrity": "sha512-oVAymk10VFF6vlhOveDvj6M9wqDbz434pyZ7V7OR2lF1O9A6npi1BJ3RNmKx8ar4J79tNaehr3I9G0B45WCH7Q==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.23.0.tgz", + "integrity": "sha512-ity7Xpyuo4s0US8jo70u6WAluI/VLPo/hxfhOaLoUo+jujQUgM3pt0RzkiXKaQ9Eca2+lG/qEwoRA0HQmenI2A==", "dev": true, "requires": { "change-case": "^4.1.2", @@ -23565,16 +23561,16 @@ } }, "@wordpress/eslint-plugin": { - "version": "22.5.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-22.5.0.tgz", - "integrity": "sha512-hmmPqOnyrSup3zNAk/sZGzURK/2+8EXRIMsX3/34kskhDPeWMYSiNt9pApFZ5dDR0fwlDLSmsOiZpDTCsZic+w==", + "version": "22.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-22.9.0.tgz", + "integrity": "sha512-reiIp2GpXpxWucTZgrswPVTl1YqoZOSW8DRS4U5tGw6eTNN5YDIcDH+yyje2O2kFNh0otCvF4Y4gzQiYDOulAw==", "dev": true, "requires": { "@babel/eslint-parser": "7.25.7", "@typescript-eslint/eslint-plugin": "^6.4.1", "@typescript-eslint/parser": "^6.4.1", - "@wordpress/babel-preset-default": "^8.19.0", - "@wordpress/prettier-config": "^4.19.0", + "@wordpress/babel-preset-default": "^8.23.0", + "@wordpress/prettier-config": "^4.23.0", "cosmiconfig": "^7.0.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-import": "^2.25.2", @@ -23620,9 +23616,9 @@ } }, "@wordpress/jest-console": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.19.0.tgz", - "integrity": "sha512-HwXWaRmrT5bA4rWUnIGJNgqQrF7eeQmHxBN/fy8gcag4Le1/v92EpUjsIAT+lMJVahoqmGbyzkXFdZ2TAvwLtw==", + "version": "8.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.23.0.tgz", + "integrity": "sha512-2uL5VzRf63Uyl6bym7sdYJhke4ziEj8kPlPn3ObCV210140TB17SOxJ8SOE3wxBlEh1VDPSotXto8GW/lu+iBg==", "dev": true, "requires": { "@babel/runtime": "7.25.7", @@ -23630,58 +23626,58 @@ } }, "@wordpress/jest-preset-default": { - "version": "12.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.19.0.tgz", - "integrity": "sha512-WciJ2Qiblxd4Y0ysGgGZPTwGPRfvb+WyRF9zyJ5Oa0a5LpfrSUv8tjx9pOTz2hi30vhj34LFoqpWCcGXJZ56Aw==", + "version": "12.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.23.0.tgz", + "integrity": "sha512-vfdTifeiIDi5FlCYlKiKvmY9o1gymXajc8SBAM66y/qDJCbDi/kFsINDM4aejveIIx8qTO7t3lr8hNkOjxsCPw==", "dev": true, "requires": { - "@wordpress/jest-console": "^8.19.0", + "@wordpress/jest-console": "^8.23.0", "babel-jest": "29.7.0" } }, "@wordpress/npm-package-json-lint-config": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.19.0.tgz", - "integrity": "sha512-6JrZWHAQbji0k8rf7/fEnDP0Ie5qGBLaA5deMkVTC75HtEoiH+rR+ssVsdvv7+KyerM+5LDP6Aef5rVE7vsteA==", + "version": "5.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.23.0.tgz", + "integrity": "sha512-2YsGOcXVDGdi4+buE7X+uhguvWF2yEZSeR/H2+RNYHtmB0SnFIAdu5uODHEkMvNgQzf3/lHHsHsHndptXzXCfA==", "dev": true, "requires": {} }, "@wordpress/postcss-plugins-preset": { - "version": "5.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.19.0.tgz", - "integrity": "sha512-sHQ9rasbQztxG2ZgbZ34G7u94CS0RHcvbQFLqijazlSX6QhAFporJlgzHhyHO+yRFNBHQ+3vvDZCS3BMEjxiOg==", + "version": "5.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.23.0.tgz", + "integrity": "sha512-XD7TRGUCxPuoOysT7AUXS2OifegqZt6MdScPifYudVYTxxTi+PEuyPL4tEuVpu9ZYWJuv3ShCNRppWiPsRTJrg==", "dev": true, "requires": { - "@wordpress/base-styles": "^5.19.0", + "@wordpress/base-styles": "^5.23.0", "autoprefixer": "^10.4.20" } }, "@wordpress/prettier-config": { - "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.19.0.tgz", - "integrity": "sha512-mGgPuhIupWln2UX0uqLBfvvEzWFb1r2oRCC5Q3RXNtjDdOnkKIqtJOjCqL8IkCxa0sJmQZUymHKxBnStlQxR0w==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.23.0.tgz", + "integrity": "sha512-IxJcV/SxPzT8bRuYbhBZwAa8Q8n16con4uD/8X8OF3/vAP2StX5/kAo3tVvy7e1La7H/1QkmdyayeHkyiwNRsQ==", "dev": true, "requires": {} }, "@wordpress/scripts": { - "version": "30.12.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.12.0.tgz", - "integrity": "sha512-+Gxdmf1HEOPrH4LaNeMH7Wngc894zAUt3h9ztlzR46pBiz80xGBJmD54fODC7bnevKbvNojhjWc2iOeM5nRHjQ==", + "version": "30.16.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.16.0.tgz", + "integrity": "sha512-1lOChs1DzI8YYsjZFBNFy0km5o5ts08rIanQQ6k/tdNiVLnb4h5/aUike60Y3phGjV3On7xO/K4ZJ7AyoI0oRA==", "dev": true, "requires": { "@babel/core": "7.25.7", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", "@svgr/webpack": "^8.0.1", - "@wordpress/babel-preset-default": "^8.19.0", - "@wordpress/browserslist-config": "^6.19.0", - "@wordpress/dependency-extraction-webpack-plugin": "^6.19.0", - "@wordpress/e2e-test-utils-playwright": "^1.19.0", - "@wordpress/eslint-plugin": "^22.5.0", - "@wordpress/jest-preset-default": "^12.19.0", - "@wordpress/npm-package-json-lint-config": "^5.19.0", - "@wordpress/postcss-plugins-preset": "^5.19.0", - "@wordpress/prettier-config": "^4.19.0", - "@wordpress/stylelint-config": "^23.11.0", + "@wordpress/babel-preset-default": "^8.23.0", + "@wordpress/browserslist-config": "^6.23.0", + "@wordpress/dependency-extraction-webpack-plugin": "^6.23.0", + "@wordpress/e2e-test-utils-playwright": "^1.23.0", + "@wordpress/eslint-plugin": "^22.9.0", + "@wordpress/jest-preset-default": "^12.23.0", + "@wordpress/npm-package-json-lint-config": "^5.23.0", + "@wordpress/postcss-plugins-preset": "^5.23.0", + "@wordpress/prettier-config": "^4.23.0", + "@wordpress/stylelint-config": "^23.15.0", "adm-zip": "^0.5.9", "babel-jest": "29.7.0", "babel-loader": "9.2.1", @@ -23773,9 +23769,9 @@ } }, "@wordpress/stylelint-config": { - "version": "23.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.11.0.tgz", - "integrity": "sha512-osq25Nlcnwv4RJggYKnkfRbi6QDRI2O8PDMxVAvicL+JhxjtEqXKBwWaKNULHpc4aEWcGBaJtxJpzEE/7ZagBw==", + "version": "23.15.0", + "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-23.15.0.tgz", + "integrity": "sha512-DVxCs7uojx7YJ/jJvN3EZg4wHXgvaMCqiVCtBGOQphgaBetgH5GyEELoDA6MOFd7DCO6edVjx5fhT5dc40zmAQ==", "dev": true, "requires": { "@stylistic/stylelint-plugin": "^3.0.1", @@ -23784,9 +23780,9 @@ } }, "@wordpress/warning": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.19.0.tgz", - "integrity": "sha512-hxRGkyKC+Ey7fPeiIX59gtYxYHNo2wTbvC3eqMmRI6ywTnJgHMwdx4Tih6Y/F3KimZU6t5Gm9+UWsLhUujOHDw==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.23.0.tgz", + "integrity": "sha512-tPJ8T5BBNRqNTdF8gOy97h+sD+bs0QwoRIzE4y2erQ9E+LqQXIgl8+UhT0F+5q7QcFzd0hGRF8sotzILMjJZHw==", "dev": true }, "@xtuc/ieee754": { @@ -24046,17 +24042,18 @@ } }, "array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", + "es-abstract": "^1.23.9", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" } }, "array.prototype.flat": { @@ -24159,16 +24156,16 @@ "dev": true }, "autoprefixer": { - "version": "10.4.20", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", - "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", "dev": true, "requires": { - "browserslist": "^4.23.3", - "caniuse-lite": "^1.0.30001646", + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.1", + "picocolors": "^1.1.1", "postcss-value-parser": "^4.2.0" } }, @@ -24182,9 +24179,9 @@ } }, "axe-core": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.2.tgz", - "integrity": "sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==", + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", "dev": true }, "axios": { @@ -24597,22 +24594,22 @@ "dev": true }, "cacheable": { - "version": "1.8.8", - "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.8.8.tgz", - "integrity": "sha512-OE1/jlarWxROUIpd0qGBSKFLkNsotY8pt4GeiVErUYh/NUeTNrT+SBksUgllQv4m6a0W/VZsLuiHb88maavqEw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.9.0.tgz", + "integrity": "sha512-8D5htMCxPDUULux9gFzv30f04Xo3wCnik0oOxKoRTPIBoqA7HtOcJ87uBhQTs3jCfZZTrUBGsYIZOgE0ZRgMAg==", "dev": true, "requires": { - "hookified": "^1.7.0", - "keyv": "^5.2.3" + "hookified": "^1.8.2", + "keyv": "^5.3.3" }, "dependencies": { "keyv": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.2.3.tgz", - "integrity": "sha512-AGKecUfzrowabUv0bH1RIR5Vf7w+l4S3xtQAypKaUpTdIR1EbrAcTxHCrpo9Q+IWeUlFE2palRtgIQcgm+PQJw==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.3.3.tgz", + "integrity": "sha512-Rwu4+nXI9fqcxiEHtbkvoes2X+QfkTRo1TMkPfwzipGsJlJO/z69vqB4FNl9xJ3xCpAcbkvmEabZfPzrwN3+gQ==", "dev": true, "requires": { - "@keyv/serialize": "^1.0.2" + "@keyv/serialize": "^1.0.3" } } } @@ -24640,13 +24637,13 @@ } }, "call-bound": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", - "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "dev": true, "requires": { - "call-bind-apply-helpers": "^1.0.1", - "get-intrinsic": "^1.2.6" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" } }, "callsites": { @@ -24711,9 +24708,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001701", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001701.tgz", - "integrity": "sha512-faRs/AW3jA9nTwmJBSO1PQ6L/EOgsB5HMQQq4iCu5zhPgVVgO/pZRHlmatwijZKetFw8/Pr4q6dEN8sJuq8qTw==", + "version": "1.0.30001718", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz", + "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==", "dev": true }, "capital-case": { @@ -24833,9 +24830,9 @@ } }, "chrome-launcher": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.1.2.tgz", - "integrity": "sha512-YclTJey34KUm5jB1aEJCq807bSievi7Nb/TU4Gu504fUYi3jw3KCIaH6L7nFWQhdEgH3V+wCh+kKD1P5cXnfxw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.2.0.tgz", + "integrity": "sha512-JbuGuBNss258bvGil7FT4HKdC3SC2K7UAEUqiPy3ACS3Yxo3hAW6bvFpCu2HsIJLgTqxgEX6BkujvzZfLpUD0Q==", "dev": true, "requires": { "@types/node": "*", @@ -25210,9 +25207,9 @@ } }, "core-js": { - "version": "3.40.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.40.0.tgz", - "integrity": "sha512-7vsMc/Lty6AGnn7uFpYT56QesI5D2Y/UkgKounk87OP9Z2H9Z8kj6jzcSGAxFmUtDOS0ntK6lbQz+Nsa0Jj6mQ==", + "version": "3.42.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.42.0.tgz", + "integrity": "sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==", "dev": true }, "core-js-compat": { @@ -25571,20 +25568,12 @@ "dev": true }, "debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dev": true, "requires": { "ms": "^2.1.3" - }, - "dependencies": { - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - } } }, "decamelize": { @@ -25618,9 +25607,9 @@ "dev": true }, "dedent": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", - "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz", + "integrity": "sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==", "dev": true, "requires": {} }, @@ -25781,9 +25770,9 @@ "dev": true }, "devtools-protocol": { - "version": "0.0.1423531", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1423531.tgz", - "integrity": "sha512-z6cOcajZWxk80zvFnkTGa7tj3oqF+C5SnOF1KSMeAr5/WW/nLNHlEpKr7voSzMz8IaUoq5rjdI0Mqv5k/BUkhg==", + "version": "0.0.1445099", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1445099.tgz", + "integrity": "sha512-GEuIbCLU2Iu6Sg05GeWS7ksijhOUZIDJD2YBUNRanK7SLKjeci1uxUUomu2VNvygQRuoq/vtnTYrgPZBEiYNMA==", "dev": true }, "diff-sequences": { @@ -26484,9 +26473,9 @@ "dev": true }, "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -26509,9 +26498,9 @@ }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -26558,19 +26547,19 @@ "requires": {} }, "eslint-plugin-prettier": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.3.tgz", - "integrity": "sha512-qJ+y0FfCp/mQYQ/vWQ3s7eUlFEL4PyKfAJxsnYTJ4YT73nsJBWqmEpFryxV9OeUiqmsTsYJ5Y+KDNaeP31wrRw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.4.0.tgz", + "integrity": "sha512-BvQOvUhkVQM1i63iMETK9Hjud9QhqBnbtT1Zc642p9ynzBuCe5pybkOnvqZIBypXmMlsGcnU4HZ8sCTPfpAexA==", "dev": true, "requires": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.9.1" + "synckit": "^0.11.0" } }, "eslint-plugin-react": { - "version": "7.37.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz", - "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==", + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", "dev": true, "requires": { "array-includes": "^3.1.8", @@ -26583,7 +26572,7 @@ "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", - "object.entries": "^1.1.8", + "object.entries": "^1.1.9", "object.fromentries": "^2.0.8", "object.values": "^1.2.1", "prop-types": "^15.8.1", @@ -27615,9 +27604,9 @@ } }, "hookified": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.7.1.tgz", - "integrity": "sha512-OXcdHsXeOiD7OJ5zvWj8Oy/6RCdLwntAX+wUrfemNcMGn6sux4xbEHi2QXwqePYhjQ/yvxxq2MvCRirdlHscBw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.9.0.tgz", + "integrity": "sha512-2yEEGqphImtKIe1NXWEhu6yD3hlFR4Mxk4Mtp3XEyScpSt4pQ4ymmXA1zzxZpj99QkFK+nN0nzjeb2+RUi/6CQ==", "dev": true }, "hosted-git-info": { @@ -27946,15 +27935,15 @@ "dev": true }, "intl-messageformat": { - "version": "10.7.15", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.15.tgz", - "integrity": "sha512-LRyExsEsefQSBjU2p47oAheoKz+EOJxSLDdjOaEjdriajfHsMXOmV/EhMvYSg9bAgCUHasuAC+mcUBe/95PfIg==", + "version": "10.7.16", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.16.tgz", + "integrity": "sha512-UmdmHUmp5CIKKjSoE10la5yfU+AYJAaiYLsodbjL4lji83JNvgOQUjGaGhGrpFCb0Uh7sl7qfP1IyILa8Z40ug==", "dev": true, "requires": { - "@formatjs/ecma402-abstract": "2.3.3", - "@formatjs/fast-memoize": "2.2.6", - "@formatjs/icu-messageformat-parser": "2.11.1", - "tslib": "2" + "@formatjs/ecma402-abstract": "2.3.4", + "@formatjs/fast-memoize": "2.2.7", + "@formatjs/icu-messageformat-parser": "2.11.2", + "tslib": "^2.8.0" }, "dependencies": { "tslib": { @@ -28826,9 +28815,9 @@ }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -29075,9 +29064,9 @@ "dev": true }, "known-css-properties": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.35.0.tgz", - "integrity": "sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==", + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.36.0.tgz", + "integrity": "sha512-A+9jP+IUmuQsNdsLdcg6Yt7voiMF/D4K83ew0OpJtpu+l34ef7LaohWV0Rc6KNvzw6ZDizkqfyB5JznZnzuKQA==", "dev": true }, "language-subtag-registry": { @@ -29111,6 +29100,12 @@ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", "dev": true }, + "legacy-javascript": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/legacy-javascript/-/legacy-javascript-0.0.1.tgz", + "integrity": "sha512-lPyntS4/aS7jpuvOlitZDFifBCb4W8L/3QU0PLbUTUj+zYah8rfVjYic88yG7ZKTxhS5h9iz7duT8oUXKszLhg==", + "dev": true + }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -29137,18 +29132,18 @@ } }, "lighthouse": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-12.4.0.tgz", - "integrity": "sha512-1p/YKQpMqfYVSKVOB43RG3xbnxkSUOG0zqVm/bxJHAaAHKrEACgFi8HZxD9CCTFrt+d/Q/x9gjDyeUDarm1SIg==", + "version": "12.6.0", + "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-12.6.0.tgz", + "integrity": "sha512-ufYw6dBR0PDEpO4pj45zRStatdTvBSi/LTXgs6ULmadSLTNXklP3XGGGuL7SA9pE/NltGbs5zQOA/ICQao1ywA==", "dev": true, "requires": { - "@paulirish/trace_engine": "0.0.44", + "@paulirish/trace_engine": "0.0.52", "@sentry/node": "^7.0.0", - "axe-core": "^4.10.2", + "axe-core": "^4.10.3", "chrome-launcher": "^1.1.2", "configstore": "^5.0.1", "csp_evaluator": "1.1.5", - "devtools-protocol": "0.0.1423531", + "devtools-protocol": "0.0.1445099", "enquirer": "^2.3.6", "http-link-header": "^1.1.1", "intl-messageformat": "^10.5.3", @@ -29161,11 +29156,11 @@ "metaviewport-parser": "0.3.0", "open": "^8.4.0", "parse-cache-control": "1.0.1", - "puppeteer-core": "^24.3.0", + "puppeteer-core": "^24.6.1", "robots-parser": "^3.0.1", "semver": "^5.3.0", "speedline-core": "^1.4.3", - "third-party-web": "^0.26.5", + "third-party-web": "^0.26.6", "tldts-icann": "^6.1.16", "ws": "^7.0.0", "yargs": "^17.3.1", @@ -29173,46 +29168,46 @@ }, "dependencies": { "@puppeteer/browsers": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.7.1.tgz", - "integrity": "sha512-MK7rtm8JjaxPN7Mf1JdZIZKPD2Z+W7osvrC1vjpvfOX1K0awDIHYbNi89f7eotp7eMUn2shWnt03HwVbriXtKQ==", + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.5.tgz", + "integrity": "sha512-eifa0o+i8dERnngJwKrfp3dEq7ia5XFyoqB17S4gK8GhsQE4/P8nxOfQSE0zQHxzzLo/cmF+7+ywEQ7wK7Fb+w==", "dev": true, "requires": { - "debug": "^4.4.0", + "debug": "^4.4.1", "extract-zip": "^2.0.1", "progress": "^2.0.3", "proxy-agent": "^6.5.0", - "semver": "^7.7.0", + "semver": "^7.7.2", "tar-fs": "^3.0.8", "yargs": "^17.7.2" }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } }, "puppeteer-core": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.3.0.tgz", - "integrity": "sha512-x8kQRP/xxtiFav6wWuLzrctO0HWRpSQy+JjaHbqIl+d5U2lmRh2pY9vh5AzDFN0EtOXW2pzngi9RrryY1vZGig==", + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.9.0.tgz", + "integrity": "sha512-HFdCeH/wx6QPz8EncafbCqJBqaCG1ENW75xg3cLFMRUoqZDgByT6HSueiumetT2uClZxwqj0qS4qMVZwLHRHHw==", "dev": true, "requires": { - "@puppeteer/browsers": "2.7.1", - "chromium-bidi": "2.0.0", - "debug": "^4.4.0", - "devtools-protocol": "0.0.1402036", + "@puppeteer/browsers": "2.10.5", + "chromium-bidi": "5.1.0", + "debug": "^4.4.1", + "devtools-protocol": "0.0.1439962", "typed-query-selector": "^2.12.0", - "ws": "^8.18.1" + "ws": "^8.18.2" }, "dependencies": { "chromium-bidi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-2.0.0.tgz", - "integrity": "sha512-8VmyVj0ewSY4pstZV0Y3rCUUwpomam8uWgHZf1XavRxJEP4vU9/dcpNuoyB+u4AQxPo96CASXz5CHPvdH+dSeQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-5.1.0.tgz", + "integrity": "sha512-9MSRhWRVoRPDG0TgzkHrshFSJJNZzfY5UFqUMuksg7zL1yoZIZ3jLB0YAgHclbiAxPI86pBnwDX1tbzoiV8aFw==", "dev": true, "requires": { "mitt": "^3.0.1", @@ -29220,15 +29215,15 @@ } }, "devtools-protocol": { - "version": "0.0.1402036", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1402036.tgz", - "integrity": "sha512-JwAYQgEvm3yD45CHB+RmF5kMbWtXBaOGwuxa87sZogHcLCv8c/IqnThaoQ1y60d7pXWjSKWQphPEc+1rAScVdg==", + "version": "0.0.1439962", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1439962.tgz", + "integrity": "sha512-jJF48UdryzKiWhJ1bLKr7BFWUQCEIT5uCNbDLqkQJBtkFxYzILJH44WN0PDKMIlGDN7Utb8vyUY85C3w4R/t2g==", "dev": true }, "ws": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", - "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", + "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", "dev": true, "requires": {} } @@ -29248,9 +29243,9 @@ "requires": {} }, "zod": { - "version": "3.24.2", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz", - "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==", + "version": "3.25.17", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.17.tgz", + "integrity": "sha512-8hQzQ/kMOIFbwOgPrm9Sf9rtFHpFUMy4HvN0yEB0spw14aYi0uT5xG5CE2DB9cd51GWNsz+DNO7se1kztHMKnw==", "dev": true } } @@ -29453,9 +29448,9 @@ }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -29571,9 +29566,9 @@ "dev": true }, "marky": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", - "integrity": "sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/marky/-/marky-1.3.0.tgz", + "integrity": "sha512-ocnPZQLNpvbedwTy9kNrQEsknEfgvcLMvOtz3sFeWApDq1MXH1TqkCIx58xlpESsfwQOnuBO9beyQuNGzVvuhQ==", "dev": true }, "math-intrinsics": { @@ -29866,9 +29861,9 @@ "dev": true }, "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, "multicast-dns": { @@ -29955,9 +29950,9 @@ "dev": true }, "nodemon": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.9.tgz", - "integrity": "sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.10.tgz", + "integrity": "sha512-WDjw3pJ0/0jMFmyNDp3gvY2YizjLmmOUQo6DEBY+JgdvW/yQ9mEeSw6H5ythl5Ny2ytb7f9C2nIbjSxMNzbJXw==", "dev": true, "requires": { "chokidar": "^3.5.2", @@ -30017,9 +30012,9 @@ }, "dependencies": { "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true } } @@ -30083,9 +30078,9 @@ "dev": true }, "semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", "dev": true }, "type-fest": { @@ -30171,14 +30166,15 @@ } }, "object.entries": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", - "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" + "es-object-atoms": "^1.1.1" } }, "object.fromentries": { @@ -30575,9 +30571,9 @@ } }, "pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", "dev": true }, "pkg-dir": { @@ -30629,20 +30625,20 @@ } }, "playwright": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.50.1.tgz", - "integrity": "sha512-G8rwsOQJ63XG6BbKj2w5rHeavFjy5zynBA9zsJMMtBoe/Uf757oG12NXz6e6OirF7RCrTVAKFXbLmn1RbL7Qaw==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.52.0.tgz", + "integrity": "sha512-JAwMNMBlxJ2oD1kce4KPtMkDeKGHQstdpFPcPH3maElAXon/QZeTvtsfXmTMRyO9TslfoYOXkSsvao2nE1ilTw==", "dev": true, "peer": true, "requires": { "fsevents": "2.3.2", - "playwright-core": "1.50.1" + "playwright-core": "1.52.0" } }, "playwright-core": { - "version": "1.50.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.50.1.tgz", - "integrity": "sha512-ra9fsNWayuYumt+NiM069M6OkcRb1FZSK8bgi66AtpFoWkg2+y0bJSNmkFrWhMbEBbVKC/EruAHH3g0zmtwGmQ==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.52.0.tgz", + "integrity": "sha512-l2osTgLXSMeuLZOML9qYODUQoPPnUsKsb5/P6LJ2e6uPKXUdPK5WYhN4z03G+YNbWmGDY4YENauNu4ZKczreHg==", "dev": true, "peer": true }, @@ -31945,12 +31941,6 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true } } }, @@ -32699,9 +32689,9 @@ } }, "stylelint": { - "version": "16.14.1", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.14.1.tgz", - "integrity": "sha512-oqCL7AC3786oTax35T/nuLL8p2C3k/8rHKAooezrPGRvUX0wX+qqs5kMWh5YYT4PHQgVDobHT4tw55WgpYG6Sw==", + "version": "16.19.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.19.1.tgz", + "integrity": "sha512-C1SlPZNMKl+d/C867ZdCRthrS+6KuZ3AoGW113RZCOL0M8xOGpgx7G70wq7lFvqvm4dcfdGFVLB/mNaLFChRKw==", "dev": true, "requires": { "@csstools/css-parser-algorithms": "^3.0.4", @@ -32717,7 +32707,7 @@ "debug": "^4.3.7", "fast-glob": "^3.3.3", "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^10.0.5", + "file-entry-cache": "^10.0.8", "global-modules": "^2.0.0", "globby": "^11.1.0", "globjoin": "^0.1.4", @@ -32725,20 +32715,20 @@ "ignore": "^7.0.3", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.35.0", + "known-css-properties": "^0.36.0", "mathml-tag-names": "^2.1.3", "meow": "^13.2.0", "micromatch": "^4.0.8", "normalize-path": "^3.0.0", "picocolors": "^1.1.1", - "postcss": "^8.5.1", + "postcss": "^8.5.3", "postcss-resolve-nested-selector": "^0.1.6", "postcss-safe-parser": "^7.0.1", - "postcss-selector-parser": "^7.0.0", + "postcss-selector-parser": "^7.1.0", "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", "string-width": "^4.2.3", - "supports-hyperlinks": "^3.1.0", + "supports-hyperlinks": "^3.2.0", "svg-tags": "^1.0.0", "table": "^6.9.0", "write-file-atomic": "^5.0.1" @@ -32793,23 +32783,23 @@ } }, "file-entry-cache": { - "version": "10.0.6", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.0.6.tgz", - "integrity": "sha512-0wvv16mVo9nN0Md3k7DMjgAPKG/TY4F/gYMBVb/wMThFRJvzrpaqBFqF6km9wf8QfYTN+mNg5aeaBLfy8k35uA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.1.0.tgz", + "integrity": "sha512-Et/ex6smi3wOOB+n5mek+Grf7P2AxZR5ueqRUvAAn4qkyatXi3cUC1cuQXVkX0VlzBVsN4BkWJFmY/fYiRTdww==", "dev": true, "requires": { - "flat-cache": "^6.1.6" + "flat-cache": "^6.1.9" } }, "flat-cache": { - "version": "6.1.6", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.6.tgz", - "integrity": "sha512-F+CKgSwp0pzLx67u+Zy1aCueVWFAHWbXepvXlZ+bWVTaASbm5SyCnSJ80Fp1ePEmS57wU+Bf6cx6525qtMZ4lQ==", + "version": "6.1.9", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.9.tgz", + "integrity": "sha512-DUqiKkTlAfhtl7g78IuwqYM+YqvT+as0mY+EVk6mfimy19U79pJCzDZQsnqk3Ou/T6hFXWLGbwbADzD/c8Tydg==", "dev": true, "requires": { - "cacheable": "^1.8.8", - "flatted": "^3.3.2", - "hookified": "^1.7.0" + "cacheable": "^1.9.0", + "flatted": "^3.3.3", + "hookified": "^1.8.2" } }, "global-modules": { @@ -32833,9 +32823,9 @@ } }, "ignore": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", - "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", + "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", "dev": true }, "is-plain-object": { @@ -32921,15 +32911,15 @@ } }, "stylelint-scss": { - "version": "6.11.1", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.11.1.tgz", - "integrity": "sha512-e4rYo0UY+BIMtGeGanghrvHTjcryxgZbyFxUedp8dLFqC4P70aawNdYjRrQxbnKhu3BNr4+lt5e/53tcKXiwFA==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.12.0.tgz", + "integrity": "sha512-U7CKhi1YNkM1pXUXl/GMUXi8xKdhl4Ayxdyceie1nZ1XNIdaUgMV6OArpooWcDzEggwgYD0HP/xIgVJo9a655w==", "dev": true, "requires": { "css-tree": "^3.0.1", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.35.0", - "mdn-data": "^2.15.0", + "known-css-properties": "^0.36.0", + "mdn-data": "^2.21.0", "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.6", "postcss-selector-parser": "^7.1.0", @@ -32961,9 +32951,9 @@ "dev": true }, "mdn-data": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.17.0.tgz", - "integrity": "sha512-VT5LJBdLRI+cc3DPXJD89PGwI8yXuciE5gZJoSPnH4yeGzMPqxwkZv3BjFSoaWpmOlJNBhVT6HKeQPcZKlNEvA==", + "version": "2.21.0", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.21.0.tgz", + "integrity": "sha512-+ZKPQezM5vYJIkCxaC+4DTnRrVZR1CgsKLu5zsQERQx6Tea8Y+wMx5A24rq8A8NepCeatIQufVAekKNgiBMsGQ==", "dev": true }, "postcss-selector-parser": { @@ -33045,21 +33035,12 @@ "dev": true }, "synckit": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", + "version": "0.11.6", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.6.tgz", + "integrity": "sha512-2pR2ubZSV64f/vqm9eLPz/KOvR9Dm+Co/5ChLgeHl0yEDRc6h5hXHoxEQH8Y5Ljycozd3p1k5TTSVdzYGkPvLw==", "dev": true, "requires": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" - }, - "dependencies": { - "tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - } + "@pkgr/core": "^0.2.4" } }, "table": { @@ -33261,9 +33242,9 @@ "dev": true }, "third-party-web": { - "version": "0.26.5", - "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.26.5.tgz", - "integrity": "sha512-tDuKQJUTfjvi9Fcrs1s6YAQAB9mzhTSbBZMfNgtWNmJlHuoFeXO6dzBFdGeCWRvYL50jQGK0jPsBZYxqZQJ2SA==", + "version": "0.26.6", + "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.26.6.tgz", + "integrity": "sha512-GsjP92xycMK8qLTcQCacgzvffYzEqe29wyz3zdKVXlfRD5Kz1NatCTOZEeDaSd6uCZXvGd2CNVtQ89RNIhJWvA==", "dev": true }, "through": { @@ -33279,18 +33260,18 @@ "dev": true }, "tldts-core": { - "version": "6.1.79", - "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.79.tgz", - "integrity": "sha512-HM+Ud/2oQuHt4I43Nvjc213Zji/z25NSH5OkJskJwHXNtYh9DTRlHMDFhms9dFMP7qyve/yVaXFIxmcJ7TdOjw==", + "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz", + "integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==", "dev": true }, "tldts-icann": { - "version": "6.1.79", - "resolved": "https://registry.npmjs.org/tldts-icann/-/tldts-icann-6.1.79.tgz", - "integrity": "sha512-R1ZlNnjrZzEkQs2eN1XNdwMgy3ltl+Tb6BkfZExgociOXCfPhLdj8OjXEzNYXwLnX1lHEE9jZgAmE+mbDlo7rw==", + "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts-icann/-/tldts-icann-6.1.86.tgz", + "integrity": "sha512-NFxmRT2lAEMcCOBgeZ0NuM0zsK/xgmNajnY6n4S1mwAKocft2s2ise1O3nQxrH3c+uY6hgHUV9GGNVp7tUE4Sg==", "dev": true, "requires": { - "tldts-core": "^6.1.79" + "tldts-core": "^6.1.86" } }, "tmpl": { @@ -34237,15 +34218,16 @@ } }, "which-typed-array": { - "version": "1.1.18", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz", - "integrity": "sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==", + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, "requires": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "for-each": "^0.3.3", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" } diff --git a/admin/discourse-sidebar/package.json b/admin/discourse-sidebar/package.json index b92d682..5645be9 100644 --- a/admin/discourse-sidebar/package.json +++ b/admin/discourse-sidebar/package.json @@ -15,7 +15,7 @@ "author": "Discourse", "license": "GPL", "devDependencies": { - "@wordpress/scripts": "^30.12.0", - "nodemon": "3.1.9" + "@wordpress/scripts": "^30.16.0", + "nodemon": "3.1.10" } } diff --git a/blocks/comments/build/index.asset.php b/blocks/comments/build/index.asset.php index 41daf3f..682f112 100644 --- a/blocks/comments/build/index.asset.php +++ b/blocks/comments/build/index.asset.php @@ -1 +1 @@ - array('react', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-i18n'), 'version' => '857b20870324aa144770'); + array('react', 'react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-i18n'), 'version' => '6382c8aae0ce458fd92b'); diff --git a/blocks/comments/build/index.js b/blocks/comments/build/index.js index 7f3b6a6..6884219 100644 --- a/blocks/comments/build/index.js +++ b/blocks/comments/build/index.js @@ -1 +1,8318 @@ -(()=>{var e={108:(e,t,n)=>{var r=n(788);e.exports=function(e,t){var n,o=null;if(!e||"string"!=typeof e)return o;for(var i,a,s=r(e),l="function"==typeof t,c=0,u=s.length;c{"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n{t.CASE_SENSITIVE_TAG_NAMES=["animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussainBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","linearGradient","radialGradient","textPath"]},308:(e,t,n)=>{var r=n(609),o=n(840),i=n(958),a=i.setStyleProp,s=i.canTextBeChildOfNode;function l(e){return i.PRESERVE_CUSTOM_ATTRIBUTES&&"tag"===e.type&&i.isCustomComponent(e.name,e.attribs)}e.exports=function e(t,n){for(var i,c,u,d,h,f=(n=n||{}).library||r,p=f.cloneElement,m=f.createElement,g=f.isValidElement,y=[],v="function"==typeof n.replace,b=n.trim,w=0,x=t.length;w1&&(u=p(u,{key:u.key||w})),y.push(u);else if("text"!==i.type){switch(d=i.attribs,l(i)?a(d.style,d):d&&(d=o(d)),h=null,i.type){case"script":case"style":i.children[0]&&(d.dangerouslySetInnerHTML={__html:i.children[0].data});break;case"tag":"textarea"===i.name&&i.children[0]?d.defaultValue=i.children[0].data:i.children&&i.children.length&&(h=e(i.children,n));break;default:continue}x>1&&(d.key=w),y.push(m(i.name,d,h))}else{if((c=!i.data.trim().length)&&i.parent&&!s(i.parent))continue;if(b&&c)continue;y.push(i.data)}return 1===y.length?y[0]:y}},411:(e,t,n)=>{var r;!function(){"use strict";var o=!("undefined"==typeof window||!window.document||!window.document.createElement),i={canUseDOM:o,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:o&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:o&&!!window.screen};void 0===(r=function(){return i}.call(t,n,t,e))||(e.exports=r)}()},413:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(n=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===n.Tag||e.type===n.Script||e.type===n.Style},t.Root=n.Root,t.Text=n.Text,t.Directive=n.Directive,t.Comment=n.Comment,t.Script=n.Script,t.Style=n.Style,t.Tag=n.Tag,t.CDATA=n.CDATA,t.Doctype=n.Doctype},471:(e,t,n)=>{var r=n(496),o=n(731).formatDOM,i=/<(![a-zA-Z\s]+)>/;e.exports=function(e){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(""===e)return[];var t,n=e.match(i);return n&&n[1]&&(t=n[1]),o(r(e),null,t)}},496:e=>{var t="html",n="head",r="body",o=/<([a-zA-Z]+[0-9]?)/,i=//i,a=//i,s=function(){throw new Error("This browser does not support `document.implementation.createHTMLDocument`")},l=function(){throw new Error("This browser does not support `DOMParser.prototype.parseFromString`")},c="object"==typeof window&&window.DOMParser;if("function"==typeof c){var u=new c;s=l=function(e,t){return t&&(e="<"+t+">"+e+""),u.parseFromString(e,"text/html")}}if("object"==typeof document&&document.implementation){var d=document.implementation.createHTMLDocument();s=function(e,t){return t?(d.documentElement.querySelector(t).innerHTML=e,d):(d.documentElement.innerHTML=e,d)}}var h,f="object"==typeof document?document.createElement("template"):{};f.content&&(h=function(e){return f.innerHTML=e,f.content.childNodes}),e.exports=function(e){var c,u,d,f,p=e.match(o);switch(p&&p[1]&&(c=p[1].toLowerCase()),c){case t:return u=l(e),i.test(e)||(d=u.querySelector(n))&&d.parentNode.removeChild(d),a.test(e)||(d=u.querySelector(r))&&d.parentNode.removeChild(d),u.querySelectorAll(t);case n:case r:return f=(u=s(e)).querySelectorAll(c),a.test(e)&&i.test(e)?f[0].parentNode.childNodes:f;default:return h?h(e):(d=s(e,r).querySelector(r)).childNodes}}},609:e=>{"use strict";e.exports=window.React},614:(e,t,n)=>{var r=n(308),o=n(840),i=n(471);i="function"==typeof i.default?i.default:i;var a={lowerCaseAttributeNames:!1};function s(e,t){if("string"!=typeof e)throw new TypeError("First argument must be a string");return""===e?[]:r(i(e,(t=t||{}).htmlparser2||a),t)}s.domToReact=r,s.htmlToDOM=i,s.attributesToProps=o,s.Element=n(141).Element,e.exports=s,e.exports.default=s},731:(e,t,n)=>{for(var r,o=n(141),i=n(270).CASE_SENSITIVE_TAG_NAMES,a=o.Comment,s=o.Element,l=o.ProcessingInstruction,c=o.Text,u={},d=0,h=i.length;d{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,l=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(l,c):c}e.exports=function(e,l){if("string"!=typeof e)throw new TypeError("First argument must be a string");if(!e)return[];l=l||{};var d=1,h=1;function f(e){var t=e.match(n);t&&(d+=t.length);var r=e.lastIndexOf("\n");h=~r?e.length-r:h+e.length}function p(){var e={line:d,column:h};return function(t){return t.position=new m(e),b(),t}}function m(e){this.start=e,this.end={line:d,column:h},this.source=l.source}m.prototype.content=e;var g=[];function y(t){var n=new Error(l.source+":"+d+":"+h+": "+t);if(n.reason=t,n.filename=l.source,n.line=d,n.column=h,n.source=e,!l.silent)throw n;g.push(n)}function v(t){var n=t.exec(e);if(n){var r=n[0];return f(r),e=e.slice(r.length),n}}function b(){v(r)}function w(e){var t;for(e=e||[];t=x();)!1!==t&&e.push(t);return e}function x(){var t=p();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return y("End of comment missing");var r=e.slice(2,n-2);return h+=2,f(r),e=e.slice(n),h+=2,t({type:"comment",comment:r})}}function k(){var e=p(),n=v(o);if(n){if(x(),!v(i))return y("property missing ':'");var r=v(a),l=e({type:"declaration",property:u(n[0].replace(t,c)),value:r?u(r[0].replace(t,c)):c});return v(s),l}}return b(),function(){var e,t=[];for(w(t);e=k();)!1!==e&&(t.push(e),w(t));return t}()}},811:(e,t)=>{t.SAME=0,t.CAMELCASE=1,t.possibleStandardNames={accept:0,acceptCharset:1,"accept-charset":"acceptCharset",accessKey:1,action:0,allowFullScreen:1,alt:0,as:0,async:0,autoCapitalize:1,autoComplete:1,autoCorrect:1,autoFocus:1,autoPlay:1,autoSave:1,capture:0,cellPadding:1,cellSpacing:1,challenge:0,charSet:1,checked:0,children:0,cite:0,class:"className",classID:1,className:1,cols:0,colSpan:1,content:0,contentEditable:1,contextMenu:1,controls:0,controlsList:1,coords:0,crossOrigin:1,dangerouslySetInnerHTML:1,data:0,dateTime:1,default:0,defaultChecked:1,defaultValue:1,defer:0,dir:0,disabled:0,disablePictureInPicture:1,disableRemotePlayback:1,download:0,draggable:0,encType:1,enterKeyHint:1,for:"htmlFor",form:0,formMethod:1,formAction:1,formEncType:1,formNoValidate:1,formTarget:1,frameBorder:1,headers:0,height:0,hidden:0,high:0,href:0,hrefLang:1,htmlFor:1,httpEquiv:1,"http-equiv":"httpEquiv",icon:0,id:0,innerHTML:1,inputMode:1,integrity:0,is:0,itemID:1,itemProp:1,itemRef:1,itemScope:1,itemType:1,keyParams:1,keyType:1,kind:0,label:0,lang:0,list:0,loop:0,low:0,manifest:0,marginWidth:1,marginHeight:1,max:0,maxLength:1,media:0,mediaGroup:1,method:0,min:0,minLength:1,multiple:0,muted:0,name:0,noModule:1,nonce:0,noValidate:1,open:0,optimum:0,pattern:0,placeholder:0,playsInline:1,poster:0,preload:0,profile:0,radioGroup:1,readOnly:1,referrerPolicy:1,rel:0,required:0,reversed:0,role:0,rows:0,rowSpan:1,sandbox:0,scope:0,scoped:0,scrolling:0,seamless:0,selected:0,shape:0,size:0,sizes:0,span:0,spellCheck:1,src:0,srcDoc:1,srcLang:1,srcSet:1,start:0,step:0,style:0,summary:0,tabIndex:1,target:0,title:0,type:0,useMap:1,value:0,width:0,wmode:0,wrap:0,about:0,accentHeight:1,"accent-height":"accentHeight",accumulate:0,additive:0,alignmentBaseline:1,"alignment-baseline":"alignmentBaseline",allowReorder:1,alphabetic:0,amplitude:0,arabicForm:1,"arabic-form":"arabicForm",ascent:0,attributeName:1,attributeType:1,autoReverse:1,azimuth:0,baseFrequency:1,baselineShift:1,"baseline-shift":"baselineShift",baseProfile:1,bbox:0,begin:0,bias:0,by:0,calcMode:1,capHeight:1,"cap-height":"capHeight",clip:0,clipPath:1,"clip-path":"clipPath",clipPathUnits:1,clipRule:1,"clip-rule":"clipRule",color:0,colorInterpolation:1,"color-interpolation":"colorInterpolation",colorInterpolationFilters:1,"color-interpolation-filters":"colorInterpolationFilters",colorProfile:1,"color-profile":"colorProfile",colorRendering:1,"color-rendering":"colorRendering",contentScriptType:1,contentStyleType:1,cursor:0,cx:0,cy:0,d:0,datatype:0,decelerate:0,descent:0,diffuseConstant:1,direction:0,display:0,divisor:0,dominantBaseline:1,"dominant-baseline":"dominantBaseline",dur:0,dx:0,dy:0,edgeMode:1,elevation:0,enableBackground:1,"enable-background":"enableBackground",end:0,exponent:0,externalResourcesRequired:1,fill:0,fillOpacity:1,"fill-opacity":"fillOpacity",fillRule:1,"fill-rule":"fillRule",filter:0,filterRes:1,filterUnits:1,floodOpacity:1,"flood-opacity":"floodOpacity",floodColor:1,"flood-color":"floodColor",focusable:0,fontFamily:1,"font-family":"fontFamily",fontSize:1,"font-size":"fontSize",fontSizeAdjust:1,"font-size-adjust":"fontSizeAdjust",fontStretch:1,"font-stretch":"fontStretch",fontStyle:1,"font-style":"fontStyle",fontVariant:1,"font-variant":"fontVariant",fontWeight:1,"font-weight":"fontWeight",format:0,from:0,fx:0,fy:0,g1:0,g2:0,glyphName:1,"glyph-name":"glyphName",glyphOrientationHorizontal:1,"glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphOrientationVertical:1,"glyph-orientation-vertical":"glyphOrientationVertical",glyphRef:1,gradientTransform:1,gradientUnits:1,hanging:0,horizAdvX:1,"horiz-adv-x":"horizAdvX",horizOriginX:1,"horiz-origin-x":"horizOriginX",ideographic:0,imageRendering:1,"image-rendering":"imageRendering",in2:0,in:0,inlist:0,intercept:0,k1:0,k2:0,k3:0,k4:0,k:0,kernelMatrix:1,kernelUnitLength:1,kerning:0,keyPoints:1,keySplines:1,keyTimes:1,lengthAdjust:1,letterSpacing:1,"letter-spacing":"letterSpacing",lightingColor:1,"lighting-color":"lightingColor",limitingConeAngle:1,local:0,markerEnd:1,"marker-end":"markerEnd",markerHeight:1,markerMid:1,"marker-mid":"markerMid",markerStart:1,"marker-start":"markerStart",markerUnits:1,markerWidth:1,mask:0,maskContentUnits:1,maskUnits:1,mathematical:0,mode:0,numOctaves:1,offset:0,opacity:0,operator:0,order:0,orient:0,orientation:0,origin:0,overflow:0,overlinePosition:1,"overline-position":"overlinePosition",overlineThickness:1,"overline-thickness":"overlineThickness",paintOrder:1,"paint-order":"paintOrder",panose1:0,"panose-1":"panose1",pathLength:1,patternContentUnits:1,patternTransform:1,patternUnits:1,pointerEvents:1,"pointer-events":"pointerEvents",points:0,pointsAtX:1,pointsAtY:1,pointsAtZ:1,prefix:0,preserveAlpha:1,preserveAspectRatio:1,primitiveUnits:1,property:0,r:0,radius:0,refX:1,refY:1,renderingIntent:1,"rendering-intent":"renderingIntent",repeatCount:1,repeatDur:1,requiredExtensions:1,requiredFeatures:1,resource:0,restart:0,result:0,results:0,rotate:0,rx:0,ry:0,scale:0,security:0,seed:0,shapeRendering:1,"shape-rendering":"shapeRendering",slope:0,spacing:0,specularConstant:1,specularExponent:1,speed:0,spreadMethod:1,startOffset:1,stdDeviation:1,stemh:0,stemv:0,stitchTiles:1,stopColor:1,"stop-color":"stopColor",stopOpacity:1,"stop-opacity":"stopOpacity",strikethroughPosition:1,"strikethrough-position":"strikethroughPosition",strikethroughThickness:1,"strikethrough-thickness":"strikethroughThickness",string:0,stroke:0,strokeDasharray:1,"stroke-dasharray":"strokeDasharray",strokeDashoffset:1,"stroke-dashoffset":"strokeDashoffset",strokeLinecap:1,"stroke-linecap":"strokeLinecap",strokeLinejoin:1,"stroke-linejoin":"strokeLinejoin",strokeMiterlimit:1,"stroke-miterlimit":"strokeMiterlimit",strokeWidth:1,"stroke-width":"strokeWidth",strokeOpacity:1,"stroke-opacity":"strokeOpacity",suppressContentEditableWarning:1,suppressHydrationWarning:1,surfaceScale:1,systemLanguage:1,tableValues:1,targetX:1,targetY:1,textAnchor:1,"text-anchor":"textAnchor",textDecoration:1,"text-decoration":"textDecoration",textLength:1,textRendering:1,"text-rendering":"textRendering",to:0,transform:0,typeof:0,u1:0,u2:0,underlinePosition:1,"underline-position":"underlinePosition",underlineThickness:1,"underline-thickness":"underlineThickness",unicode:0,unicodeBidi:1,"unicode-bidi":"unicodeBidi",unicodeRange:1,"unicode-range":"unicodeRange",unitsPerEm:1,"units-per-em":"unitsPerEm",unselectable:0,vAlphabetic:1,"v-alphabetic":"vAlphabetic",values:0,vectorEffect:1,"vector-effect":"vectorEffect",version:0,vertAdvY:1,"vert-adv-y":"vertAdvY",vertOriginX:1,"vert-origin-x":"vertOriginX",vertOriginY:1,"vert-origin-y":"vertOriginY",vHanging:1,"v-hanging":"vHanging",vIdeographic:1,"v-ideographic":"vIdeographic",viewBox:1,viewTarget:1,visibility:0,vMathematical:1,"v-mathematical":"vMathematical",vocab:0,widths:0,wordSpacing:1,"word-spacing":"wordSpacing",writingMode:1,"writing-mode":"writingMode",x1:0,x2:0,x:0,xChannelSelector:1,xHeight:1,"x-height":"xHeight",xlinkActuate:1,"xlink:actuate":"xlinkActuate",xlinkArcrole:1,"xlink:arcrole":"xlinkArcrole",xlinkHref:1,"xlink:href":"xlinkHref",xlinkRole:1,"xlink:role":"xlinkRole",xlinkShow:1,"xlink:show":"xlinkShow",xlinkTitle:1,"xlink:title":"xlinkTitle",xlinkType:1,"xlink:type":"xlinkType",xmlBase:1,"xml:base":"xmlBase",xmlLang:1,"xml:lang":"xmlLang",xmlns:0,"xml:space":"xmlSpace",xmlnsXlink:1,"xmlns:xlink":"xmlnsXlink",xmlSpace:1,y1:0,y2:0,y:0,yChannelSelector:1,z:0,zoomAndPan:1}},840:(e,t,n)=>{var r=n(210),o=n(958);function i(e){return r.possibleStandardNames[e]}e.exports=function(e){var t,n,a,s,l,c={},u=(e=e||{}).type&&{reset:!0,submit:!0}[e.type];for(t in e)if(a=e[t],r.isCustomAttribute(t))c[t]=a;else if(s=i(n=t.toLowerCase()))switch(l=r.getPropertyInfo(s),"checked"!==s&&"value"!==s||u||(s=i("default"+n)),c[s]=a,l&&l.type){case r.BOOLEAN:c[s]=!0;break;case r.OVERLOADED_BOOLEAN:""===a&&(c[s]=!0)}else o.PRESERVE_CUSTOM_ATTRIBUTES&&(c[t]=a);return o.setStyleProp(e.style,c),c}},917:(e,t)=>{"use strict";t.__esModule=!0,t.camelCase=void 0;var n=/^--[a-zA-Z0-9-]+$/,r=/-([a-z])/g,o=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,s=function(e,t){return t.toUpperCase()},l=function(e,t){return"".concat(t,"-")};t.camelCase=function(e,t){return void 0===t&&(t={}),function(e){return!e||o.test(e)||n.test(e)}(e)?e:(e=e.toLowerCase(),(e=t.reactCompat?e.replace(a,l):e.replace(i,l)).replace(r,s))}},957:function(e,t,n){"use strict";var r,o=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(s);t.NodeWithChildren=h;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=a.ElementType.CDATA,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(h);t.CDATA=f;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=a.ElementType.Root,t}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(h);t.Document=p;var m=function(e){function t(t,n,r,o){void 0===r&&(r=[]),void 0===o&&(o="script"===t?a.ElementType.Script:"style"===t?a.ElementType.Style:a.ElementType.Tag);var i=e.call(this,r)||this;return i.name=t,i.attribs=n,i.type=o,i}return o(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var n,r;return{name:t,value:e.attribs[t],namespace:null===(n=e["x-attribsNamespace"])||void 0===n?void 0:n[t],prefix:null===(r=e["x-attribsPrefix"])||void 0===r?void 0:r[t]}}))},enumerable:!1,configurable:!0}),t}(h);function g(e){return(0,a.isTag)(e)}function y(e){return e.type===a.ElementType.CDATA}function v(e){return e.type===a.ElementType.Text}function b(e){return e.type===a.ElementType.Comment}function w(e){return e.type===a.ElementType.Directive}function x(e){return e.type===a.ElementType.Root}function k(e,t){var n;if(void 0===t&&(t=!1),v(e))n=new c(e.data);else if(b(e))n=new u(e.data);else if(g(e)){var r=t?T(e.children):[],o=new m(e.name,i({},e.attribs),r);r.forEach((function(e){return e.parent=o})),null!=e.namespace&&(o.namespace=e.namespace),e["x-attribsNamespace"]&&(o["x-attribsNamespace"]=i({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(o["x-attribsPrefix"]=i({},e["x-attribsPrefix"])),n=o}else if(y(e)){r=t?T(e.children):[];var a=new f(r);r.forEach((function(e){return e.parent=a})),n=a}else if(x(e)){r=t?T(e.children):[];var s=new p(r);r.forEach((function(e){return e.parent=s})),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),n=s}else{if(!w(e))throw new Error("Not implemented yet: ".concat(e.type));var l=new d(e.name,e.data);null!=e["x-name"]&&(l["x-name"]=e["x-name"],l["x-publicId"]=e["x-publicId"],l["x-systemId"]=e["x-systemId"]),n=l}return n.startIndex=e.startIndex,n.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(n.sourceCodeLocation=e.sourceCodeLocation),n}function T(e){for(var t=e.map((function(e){return k(e,!0)})),n=1;n{var r=n(609),o=n(229).default,i={reactCompat:!0},a=r.version.split(".")[0]>=16,s=new Set(["tr","tbody","thead","tfoot","colgroup","table","head","html","frameset"]);e.exports={PRESERVE_CUSTOM_ATTRIBUTES:a,invertObject:function(e,t){if(!e||"object"!=typeof e)throw new TypeError("First argument must be an object");var n,r,o="function"==typeof t,i={},a={};for(n in e)r=e[n],o&&(i=t(n,r))&&2===i.length?a[i[0]]=i[1]:"string"==typeof r&&(a[r]=n);return a},isCustomComponent:function(e,t){if(-1===e.indexOf("-"))return t&&"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}},setStyleProp:function(e,t){if(null!=e)try{t.style=o(e,i)}catch(e){t.style={}}},canTextBeChildOfNode:function(e){return!s.has(e.name)},elementsWithNoTextChildren:s}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),(()=>{var e;n.g.importScripts&&(e=n.g.location+"");var t=n.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var o=r.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=r[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),(()=>{"use strict";const e=window.wp.blocks;var t=n(609),r=["br","col","colgroup","dl","hr","iframe","img","input","link","menuitem","meta","ol","param","select","table","tbody","tfoot","thead","tr","ul","wbr"],o={"accept-charset":"acceptCharset",acceptcharset:"acceptCharset",accesskey:"accessKey",allowfullscreen:"allowFullScreen",autocapitalize:"autoCapitalize",autocomplete:"autoComplete",autocorrect:"autoCorrect",autofocus:"autoFocus",autoplay:"autoPlay",autosave:"autoSave",cellpadding:"cellPadding",cellspacing:"cellSpacing",charset:"charSet",class:"className",classid:"classID",classname:"className",colspan:"colSpan",contenteditable:"contentEditable",contextmenu:"contextMenu",controlslist:"controlsList",crossorigin:"crossOrigin",dangerouslysetinnerhtml:"dangerouslySetInnerHTML",datetime:"dateTime",defaultchecked:"defaultChecked",defaultvalue:"defaultValue",enctype:"encType",for:"htmlFor",formmethod:"formMethod",formaction:"formAction",formenctype:"formEncType",formnovalidate:"formNoValidate",formtarget:"formTarget",frameborder:"frameBorder",hreflang:"hrefLang",htmlfor:"htmlFor",httpequiv:"httpEquiv","http-equiv":"httpEquiv",icon:"icon",innerhtml:"innerHTML",inputmode:"inputMode",itemid:"itemID",itemprop:"itemProp",itemref:"itemRef",itemscope:"itemScope",itemtype:"itemType",keyparams:"keyParams",keytype:"keyType",marginwidth:"marginWidth",marginheight:"marginHeight",maxlength:"maxLength",mediagroup:"mediaGroup",minlength:"minLength",nomodule:"noModule",novalidate:"noValidate",playsinline:"playsInline",radiogroup:"radioGroup",readonly:"readOnly",referrerpolicy:"referrerPolicy",rowspan:"rowSpan",spellcheck:"spellCheck",srcdoc:"srcDoc",srclang:"srcLang",srcset:"srcSet",tabindex:"tabIndex",typemustmatch:"typeMustMatch",usemap:"useMap",accentheight:"accentHeight","accent-height":"accentHeight",alignmentbaseline:"alignmentBaseline","alignment-baseline":"alignmentBaseline",allowreorder:"allowReorder",arabicform:"arabicForm","arabic-form":"arabicForm",attributename:"attributeName",attributetype:"attributeType",autoreverse:"autoReverse",basefrequency:"baseFrequency",baselineshift:"baselineShift","baseline-shift":"baselineShift",baseprofile:"baseProfile",calcmode:"calcMode",capheight:"capHeight","cap-height":"capHeight",clippath:"clipPath","clip-path":"clipPath",clippathunits:"clipPathUnits",cliprule:"clipRule","clip-rule":"clipRule",colorinterpolation:"colorInterpolation","color-interpolation":"colorInterpolation",colorinterpolationfilters:"colorInterpolationFilters","color-interpolation-filters":"colorInterpolationFilters",colorprofile:"colorProfile","color-profile":"colorProfile",colorrendering:"colorRendering","color-rendering":"colorRendering",contentscripttype:"contentScriptType",contentstyletype:"contentStyleType",diffuseconstant:"diffuseConstant",dominantbaseline:"dominantBaseline","dominant-baseline":"dominantBaseline",edgemode:"edgeMode",enablebackground:"enableBackground","enable-background":"enableBackground",externalresourcesrequired:"externalResourcesRequired",fillopacity:"fillOpacity","fill-opacity":"fillOpacity",fillrule:"fillRule","fill-rule":"fillRule",filterres:"filterRes",filterunits:"filterUnits",floodopacity:"floodOpacity","flood-opacity":"floodOpacity",floodcolor:"floodColor","flood-color":"floodColor",fontfamily:"fontFamily","font-family":"fontFamily",fontsize:"fontSize","font-size":"fontSize",fontsizeadjust:"fontSizeAdjust","font-size-adjust":"fontSizeAdjust",fontstretch:"fontStretch","font-stretch":"fontStretch",fontstyle:"fontStyle","font-style":"fontStyle",fontvariant:"fontVariant","font-variant":"fontVariant",fontweight:"fontWeight","font-weight":"fontWeight",glyphname:"glyphName","glyph-name":"glyphName",glyphorientationhorizontal:"glyphOrientationHorizontal","glyph-orientation-horizontal":"glyphOrientationHorizontal",glyphorientationvertical:"glyphOrientationVertical","glyph-orientation-vertical":"glyphOrientationVertical",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits",horizadvx:"horizAdvX","horiz-adv-x":"horizAdvX",horizoriginx:"horizOriginX","horiz-origin-x":"horizOriginX",imagerendering:"imageRendering","image-rendering":"imageRendering",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",lengthadjust:"lengthAdjust",letterspacing:"letterSpacing","letter-spacing":"letterSpacing",lightingcolor:"lightingColor","lighting-color":"lightingColor",limitingconeangle:"limitingConeAngle",markerend:"markerEnd","marker-end":"markerEnd",markerheight:"markerHeight",markermid:"markerMid","marker-mid":"markerMid",markerstart:"markerStart","marker-start":"markerStart",markerunits:"markerUnits",markerwidth:"markerWidth",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",numoctaves:"numOctaves",overlineposition:"overlinePosition","overline-position":"overlinePosition",overlinethickness:"overlineThickness","overline-thickness":"overlineThickness",paintorder:"paintOrder","paint-order":"paintOrder","panose-1":"panose1",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",pointerevents:"pointerEvents","pointer-events":"pointerEvents",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",refx:"refX",refy:"refY",renderingintent:"renderingIntent","rendering-intent":"renderingIntent",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",shaperendering:"shapeRendering","shape-rendering":"shapeRendering",specularconstant:"specularConstant",specularexponent:"specularExponent",spreadmethod:"spreadMethod",startoffset:"startOffset",stddeviation:"stdDeviation",stitchtiles:"stitchTiles",stopcolor:"stopColor","stop-color":"stopColor",stopopacity:"stopOpacity","stop-opacity":"stopOpacity",strikethroughposition:"strikethroughPosition","strikethrough-position":"strikethroughPosition",strikethroughthickness:"strikethroughThickness","strikethrough-thickness":"strikethroughThickness",strokedasharray:"strokeDasharray","stroke-dasharray":"strokeDasharray",strokedashoffset:"strokeDashoffset","stroke-dashoffset":"strokeDashoffset",strokelinecap:"strokeLinecap","stroke-linecap":"strokeLinecap",strokelinejoin:"strokeLinejoin","stroke-linejoin":"strokeLinejoin",strokemiterlimit:"strokeMiterlimit","stroke-miterlimit":"strokeMiterlimit",strokewidth:"strokeWidth","stroke-width":"strokeWidth",strokeopacity:"strokeOpacity","stroke-opacity":"strokeOpacity",suppresscontenteditablewarning:"suppressContentEditableWarning",suppresshydrationwarning:"suppressHydrationWarning",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",textanchor:"textAnchor","text-anchor":"textAnchor",textdecoration:"textDecoration","text-decoration":"textDecoration",textlength:"textLength",textrendering:"textRendering","text-rendering":"textRendering",underlineposition:"underlinePosition","underline-position":"underlinePosition",underlinethickness:"underlineThickness","underline-thickness":"underlineThickness",unicodebidi:"unicodeBidi","unicode-bidi":"unicodeBidi",unicoderange:"unicodeRange","unicode-range":"unicodeRange",unitsperem:"unitsPerEm","units-per-em":"unitsPerEm",unselectable:"unselectable",valphabetic:"vAlphabetic","v-alphabetic":"vAlphabetic",vectoreffect:"vectorEffect","vector-effect":"vectorEffect",vertadvy:"vertAdvY","vert-adv-y":"vertAdvY",vertoriginx:"vertOriginX","vert-origin-x":"vertOriginX",vertoriginy:"vertOriginY","vert-origin-y":"vertOriginY",vhanging:"vHanging","v-hanging":"vHanging",videographic:"vIdeographic","v-ideographic":"vIdeographic",viewbox:"viewBox",viewtarget:"viewTarget",vmathematical:"vMathematical","v-mathematical":"vMathematical",wordspacing:"wordSpacing","word-spacing":"wordSpacing",writingmode:"writingMode","writing-mode":"writingMode",xchannelselector:"xChannelSelector",xheight:"xHeight","x-height":"xHeight",xlinkactuate:"xlinkActuate","xlink:actuate":"xlinkActuate",xlinkarcrole:"xlinkArcrole","xlink:arcrole":"xlinkArcrole",xlinkhref:"xlinkHref","xlink:href":"xlinkHref",xlinkrole:"xlinkRole","xlink:role":"xlinkRole",xlinkshow:"xlinkShow","xlink:show":"xlinkShow",xlinktitle:"xlinkTitle","xlink:title":"xlinkTitle",xlinktype:"xlinkType","xlink:type":"xlinkType",xmlbase:"xmlBase","xml:base":"xmlBase",xmllang:"xmlLang","xml:lang":"xmlLang","xml:space":"xmlSpace",xmlnsxlink:"xmlnsXlink","xmlns:xlink":"xmlnsXlink",xmlspace:"xmlSpace",ychannelselector:"yChannelSelector",zoomandpan:"zoomAndPan",onblur:"onBlur",onchange:"onChange",onclick:"onClick",oncontextmenu:"onContextMenu",ondoubleclick:"onDoubleClick",ondrag:"onDrag",ondragend:"onDragEnd",ondragenter:"onDragEnter",ondragexit:"onDragExit",ondragleave:"onDragLeave",ondragover:"onDragOver",ondragstart:"onDragStart",ondrop:"onDrop",onerror:"onError",onfocus:"onFocus",oninput:"onInput",oninvalid:"onInvalid",onkeydown:"onKeyDown",onkeypress:"onKeyPress",onkeyup:"onKeyUp",onload:"onLoad",onmousedown:"onMouseDown",onmouseenter:"onMouseEnter",onmouseleave:"onMouseLeave",onmousemove:"onMouseMove",onmouseout:"onMouseOut",onmouseover:"onMouseOver",onmouseup:"onMouseUp",onscroll:"onScroll",onsubmit:"onSubmit",ontouchcancel:"onTouchCancel",ontouchend:"onTouchEnd",ontouchmove:"onTouchMove",ontouchstart:"onTouchStart",onwheel:"onWheel"},i=function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a},s=function(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}(t.split(/ ?: ?/),2),r=n[0],o=n[1];return r&&o&&(e[r.replace(/-(\w)/g,(function(e,t){return t.toUpperCase()}))]=Number.isNaN(Number(o))?o:Number(o)),e}),{});break;case"allowfullscreen":case"allowpaymentrequest":case"async":case"autofocus":case"autoplay":case"checked":case"controls":case"default":case"defer":case"disabled":case"formnovalidate":case"hidden":case"ismap":case"itemscope":case"loop":case"multiple":case"muted":case"nomodule":case"novalidate":case"open":case"readonly":case"required":case"reversed":case"selected":case"typemustmatch":n[o[e.name]||e.name]=!0;break;default:n[o[e.name]||e.name]=e.value}}))}return n}function c(e,n){var o;if(void 0===n&&(n={}),!(e&&e instanceof Node))return null;var u,d=n.actions,h=void 0===d?[]:d,f=n.index,p=void 0===f?0:f,m=n.level,g=void 0===m?0:m,y=n.randomKey,v=e,b="".concat(g,"-").concat(p),w=[];if(y&&0===g&&(b="".concat(function(e){void 0===e&&(e=6);for(var t="",n=e;n>0;--n)t+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[Math.round(61*Math.random())];return t}(),"-").concat(b)),Array.isArray(h)&&h.forEach((function(t){t.condition(v,b,g)&&("function"==typeof t.pre&&((v=t.pre(v,b,g))instanceof Node||(v=e)),"function"==typeof t.post&&w.push(t.post(v,b,g)))})),w.length)return w;switch(v.nodeType){case 1:return t.createElement((u=v.nodeName,/[a-z]+[A-Z]+[a-z]+/.test(u)?u:u.toLowerCase()),l(v,b),function(e,t,n){var r=s([],a(e),!1).map((function(e,r){return c(e,i(i({},n),{index:r,level:t+1}))})).filter(Boolean);return r.length?r:null}(v.childNodes,g,n));case 3:var x=(null===(o=v.nodeValue)||void 0===o?void 0:o.toString())||"";if(/^\s+$/.test(x)&&!/[\u00A0\u202F]/.test(x))return null;if(!v.parentNode)return x;var k=v.parentNode.nodeName.toLowerCase();return r.includes(k)?(/\S/.test(x)&&console.warn("A textNode is not allowed inside '".concat(k,"'. Your text \"").concat(x,'" will be ignored')),null):x;default:return null}}function u(e,t){return void 0===t&&(t={}),"string"==typeof e?function(e,t){if(void 0===t&&(t={}),!e||"string"!=typeof e)return null;var n=t.nodeOnly,r=void 0!==n&&n,o=t.selector,i=void 0===o?"body > *":o,a=t.type,s=void 0===a?"text/html":a;try{var l=(new DOMParser).parseFromString(e,s).querySelector(i);if(!(l instanceof Node))throw new TypeError("Error parsing input");return r?l:c(l,t)}catch(e){}return null}(e,t):e instanceof Node?c(e,t):null}var d=n(411),h={FAILED:"failed",LOADED:"loaded",LOADING:"loading",PENDING:"pending",READY:"ready",UNSUPPORTED:"unsupported"};function f(){return d.canUseDOM}var p,m=(p=function(e,t){return p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},p(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function __(){this.constructor=e}p(e,t),e.prototype=null===t?Object.create(t):(__.prototype=t.prototype,new __)}),g=function(){return g=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a},v=Object.create(null);const b=function(e){function n(t){var n=e.call(this,t)||this;return Object.defineProperty(n,"isInitialized",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(n,"isActive",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(n,"hash",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(n,"handleLoad",{enumerable:!0,configurable:!0,writable:!0,value:function(e){n.isActive&&n.setState({content:e,status:h.LOADED},n.getElement)}}),Object.defineProperty(n,"handleError",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=n.props.onError,r="Browser does not support SVG"===e.message?h.UNSUPPORTED:h.FAILED;n.isActive&&n.setState({status:r},(function(){"function"==typeof t&&t(e)}))}}),Object.defineProperty(n,"request",{enumerable:!0,configurable:!0,writable:!0,value:function(){var e=n.props,t=e.cacheRequests,r=e.fetchOptions,o=e.src;try{return t&&(v[o]={content:"",status:h.LOADING}),fetch(o,r).then((function(e){var t=e.headers.get("content-type"),n=y((t||"").split(/ ?; ?/),1)[0];if(e.status>299)throw new Error("Not found");if(!["image/svg+xml","text/plain"].some((function(e){return n.includes(e)})))throw new Error("Content type isn't valid: ".concat(n));return e.text()})).then((function(e){var r=n.props.src;if(o===r){if(n.handleLoad(e),t){var i=v[o];i&&(i.content=e,i.status=h.LOADED)}}else v[o].status===h.LOADING&&delete v[o]})).catch((function(e){n.handleError(e),t&&v[o]&&delete v[o]}))}catch(e){return n.handleError(new Error(e.message))}}}),n.state={content:"",element:null,hasCache:!!t.cacheRequests&&!!v[t.src],status:h.PENDING},n.hash=t.uniqueHash||function(){for(var e,t="abcdefghijklmnopqrstuvwxyz",n="".concat(t).concat(t.toUpperCase()).concat("1234567890"),r="",o=0;o<8;o++)r+=(e=n)[Math.floor(Math.random()*e.length)];return r}(),n}return m(n,e),Object.defineProperty(n.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){if(this.isActive=!0,f()&&!this.isInitialized){var e=this.state.status,t=this.props.src;try{if(e===h.PENDING){if(!function(){if(!document)return!1;var e=document.createElement("div");e.innerHTML="";var t=e.firstChild;return!!t&&"http://www.w3.org/2000/svg"===t.namespaceURI}()||"undefined"==typeof window||null===window)throw new Error("Browser does not support SVG");if(!t)throw new Error("Missing src");this.load()}}catch(e){this.handleError(e)}this.isInitialized=!0}}}),Object.defineProperty(n.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(e,t){if(f()){var n=this.state,r=n.hasCache,o=n.status,i=this.props,a=i.onLoad,s=i.src;if(t.status!==h.READY&&o===h.READY&&a&&a(s,r),e.src!==s){if(!s)return void this.handleError(new Error("Missing src"));this.load()}}}}),Object.defineProperty(n.prototype,"componentWillUnmount",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.isActive=!1}}),Object.defineProperty(n.prototype,"getNode",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.description,n=e.title;try{var r=u(this.processSVG(),{nodeOnly:!0});if(!(r&&r instanceof SVGSVGElement))throw new Error("Could not convert the src to a DOM Node");var o=this.updateSVGAttributes(r);if(t){var i=o.querySelector("desc");i&&i.parentNode&&i.parentNode.removeChild(i);var a=document.createElement("desc");a.innerHTML=t,o.prepend(a)}if(n){var s=o.querySelector("title");s&&s.parentNode&&s.parentNode.removeChild(s);var l=document.createElement("title");l.innerHTML=n,o.prepend(l)}return o}catch(e){return this.handleError(e)}}}),Object.defineProperty(n.prototype,"getElement",{enumerable:!1,configurable:!0,writable:!0,value:function(){try{var e=u(this.getNode());if(!e||!t.isValidElement(e))throw new Error("Could not convert the src to a React element");this.setState({element:e,status:h.READY})}catch(e){this.handleError(new Error(e.message))}}}),Object.defineProperty(n.prototype,"load",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;this.isActive&&this.setState({content:"",element:null,status:h.LOADING},(function(){var t=e.props,n=t.cacheRequests,r=t.src,o=n&&v[r];if(o&&o.status===h.LOADED)e.handleLoad(o.content);else{var i,a=r.match(/data:image\/svg[^,]*?(;base64)?,(.*)/);a?i=a[1]?window.atob(a[2]):decodeURIComponent(a[2]):r.includes("Thanks for posting this, I'm interested to hear what other folks think.

",post_number:2},{id:16,name:"Beth Smith",username:"beth",created_at:"2021-10-17T11:34:53.978Z",cooked:"

Great post Cathy! I'll let you know how I go.

",post_number:3},{id:17,name:"Cathy Roberts",username:"cathy",created_at:"2021-10-17T11:34:53.978Z",cooked:"

Thanks guys! Positive feedback is always appreciated.

",post_number:4}],T=[{id:1,username:"andrew",name:"Andrew Jones"},{id:2,username:"beth",name:"Beth Smith"},{id:3,username:"cathy",name:"Cathy Roberts"}],S=n.p+"images/a_240.e57dec17.png",C=n.p+"images/b_240.b52a25a7.png",E=n.p+"images/c_240.a97226dd.png";var O=n(614);O.domToReact,O.htmlToDOM,O.attributesToProps,O.Element;const P=O;function D(e,t){if(t.length1?"s":"")+" required, but only "+t.length+" present")}function M(e){return M="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},M(e)}function N(e){return N="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},N(e)}function A(e){D(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||"object"===N(e)&&"[object Date]"===t?new Date(e.getTime()):"number"==typeof e||"[object Number]"===t?new Date(e):("string"!=typeof e&&"[object String]"!==t||"undefined"==typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn((new Error).stack)),new Date(NaN))}function j(e){if(null===e||!0===e||!1===e)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function L(e){D(1,arguments);var t=A(e),n=t.getUTCDay(),r=(n<1?7:0)+n-1;return t.setUTCDate(t.getUTCDate()-r),t.setUTCHours(0,0,0,0),t}function R(e){D(1,arguments);var t=A(e),n=t.getUTCFullYear(),r=new Date(0);r.setUTCFullYear(n+1,0,4),r.setUTCHours(0,0,0,0);var o=L(r),i=new Date(0);i.setUTCFullYear(n,0,4),i.setUTCHours(0,0,0,0);var a=L(i);return t.getTime()>=o.getTime()?n+1:t.getTime()>=a.getTime()?n:n-1}var U={};function I(){return U}function _(e,t){var n,r,o,i,a,s,l,c;D(1,arguments);var u=I(),d=j(null!==(n=null!==(r=null!==(o=null!==(i=null==t?void 0:t.weekStartsOn)&&void 0!==i?i:null==t||null===(a=t.locale)||void 0===a||null===(s=a.options)||void 0===s?void 0:s.weekStartsOn)&&void 0!==o?o:u.weekStartsOn)&&void 0!==r?r:null===(l=u.locale)||void 0===l||null===(c=l.options)||void 0===c?void 0:c.weekStartsOn)&&void 0!==n?n:0);if(!(d>=0&&d<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var h=A(e),f=h.getUTCDay(),p=(f=1&&f<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var p=new Date(0);p.setUTCFullYear(d+1,0,f),p.setUTCHours(0,0,0,0);var m=_(p,t),g=new Date(0);g.setUTCFullYear(d,0,f),g.setUTCHours(0,0,0,0);var y=_(g,t);return u.getTime()>=m.getTime()?d+1:u.getTime()>=y.getTime()?d:d-1}function z(e,t){for(var n=e<0?"-":"",r=Math.abs(e).toString();r.length0?n:1-n;return z("yy"===t?r%100:r,t.length)},H=function(e,t){var n=e.getUTCMonth();return"M"===t?String(n+1):z(n+1,2)},W=function(e,t){return z(e.getUTCDate(),t.length)},B=function(e,t){return z(e.getUTCHours()%12||12,t.length)},Y=function(e,t){return z(e.getUTCHours(),t.length)},V=function(e,t){return z(e.getUTCMinutes(),t.length)},G=function(e,t){return z(e.getUTCSeconds(),t.length)},X=function(e,t){var n=t.length,r=e.getUTCMilliseconds();return z(Math.floor(r*Math.pow(10,n-3)),t.length)};var Q={G:function(e,t,n){var r=e.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){var r=e.getUTCFullYear(),o=r>0?r:1-r;return n.ordinalNumber(o,{unit:"year"})}return q(e,t)},Y:function(e,t,n,r){var o=F(e,r),i=o>0?o:1-o;return"YY"===t?z(i%100,2):"Yo"===t?n.ordinalNumber(i,{unit:"year"}):z(i,t.length)},R:function(e,t){return z(R(e),t.length)},u:function(e,t){return z(e.getUTCFullYear(),t.length)},Q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return z(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return z(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){var r=e.getUTCMonth();switch(t){case"M":case"MM":return H(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){var r=e.getUTCMonth();switch(t){case"L":return String(r+1);case"LL":return z(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){var o=function(e,t){D(1,arguments);var n=A(e),r=_(n,t).getTime()-function(e,t){var n,r,o,i,a,s,l,c;D(1,arguments);var u=I(),d=j(null!==(n=null!==(r=null!==(o=null!==(i=null==t?void 0:t.firstWeekContainsDate)&&void 0!==i?i:null==t||null===(a=t.locale)||void 0===a||null===(s=a.options)||void 0===s?void 0:s.firstWeekContainsDate)&&void 0!==o?o:u.firstWeekContainsDate)&&void 0!==r?r:null===(l=u.locale)||void 0===l||null===(c=l.options)||void 0===c?void 0:c.firstWeekContainsDate)&&void 0!==n?n:1),h=F(e,t),f=new Date(0);return f.setUTCFullYear(h,0,d),f.setUTCHours(0,0,0,0),_(f,t)}(n,t).getTime();return Math.round(r/6048e5)+1}(e,r);return"wo"===t?n.ordinalNumber(o,{unit:"week"}):z(o,t.length)},I:function(e,t,n){var r=function(e){D(1,arguments);var t=A(e),n=L(t).getTime()-function(e){D(1,arguments);var t=R(e),n=new Date(0);return n.setUTCFullYear(t,0,4),n.setUTCHours(0,0,0,0),L(n)}(t).getTime();return Math.round(n/6048e5)+1}(e);return"Io"===t?n.ordinalNumber(r,{unit:"week"}):z(r,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getUTCDate(),{unit:"date"}):W(e,t)},D:function(e,t,n){var r=function(e){D(1,arguments);var t=A(e),n=t.getTime();t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0);var r=n-t.getTime();return Math.floor(r/864e5)+1}(e);return"Do"===t?n.ordinalNumber(r,{unit:"dayOfYear"}):z(r,t.length)},E:function(e,t,n){var r=e.getUTCDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){var o=e.getUTCDay(),i=(o-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(i);case"ee":return z(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){var o=e.getUTCDay(),i=(o-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(i);case"cc":return z(i,t.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){var r=e.getUTCDay(),o=0===r?7:r;switch(t){case"i":return String(o);case"ii":return z(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){var r=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){var r,o=e.getUTCHours();switch(r=12===o?"noon":0===o?"midnight":o/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){var r,o=e.getUTCHours();switch(r=o>=17?"evening":o>=12?"afternoon":o>=4?"morning":"night",t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){var r=e.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return B(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getUTCHours(),{unit:"hour"}):Y(e,t)},K:function(e,t,n){var r=e.getUTCHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):z(r,t.length)},k:function(e,t,n){var r=e.getUTCHours();return 0===r&&(r=24),"ko"===t?n.ordinalNumber(r,{unit:"hour"}):z(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getUTCMinutes(),{unit:"minute"}):V(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getUTCSeconds(),{unit:"second"}):G(e,t)},S:function(e,t){return X(e,t)},X:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();if(0===o)return"Z";switch(t){case"X":return Z(o);case"XXXX":case"XX":return $(o);default:return $(o,":")}},x:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();switch(t){case"x":return Z(o);case"xxxx":case"xx":return $(o);default:return $(o,":")}},O:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+J(o,":");default:return"GMT"+$(o,":")}},z:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+J(o,":");default:return"GMT"+$(o,":")}},t:function(e,t,n,r){var o=r._originalDate||e;return z(Math.floor(o.getTime()/1e3),t.length)},T:function(e,t,n,r){return z((r._originalDate||e).getTime(),t.length)}};function J(e,t){var n=e>0?"-":"+",r=Math.abs(e),o=Math.floor(r/60),i=r%60;if(0===i)return n+String(o);var a=t||"";return n+String(o)+a+z(i,2)}function Z(e,t){return e%60==0?(e>0?"-":"+")+z(Math.abs(e)/60,2):$(e,t)}function $(e,t){var n=t||"",r=e>0?"-":"+",o=Math.abs(e);return r+z(Math.floor(o/60),2)+n+z(o%60,2)}const K=Q;var ee=function(e,t){switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},te=function(e,t){switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},ne={p:te,P:function(e,t){var n,r=e.match(/(P+)(p+)?/)||[],o=r[1],i=r[2];if(!i)return ee(e,t);switch(o){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;default:n=t.dateTime({width:"full"})}return n.replace("{{date}}",ee(o,t)).replace("{{time}}",te(i,t))}};const re=ne;var oe=["D","DD"],ie=["YY","YYYY"];function ae(e,t,n){if("YYYY"===e)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(t,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("YY"===e)throw new RangeError("Use `yy` instead of `YY` (in `".concat(t,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("D"===e)throw new RangeError("Use `d` instead of `D` (in `".concat(t,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("DD"===e)throw new RangeError("Use `dd` instead of `DD` (in `".concat(t,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}var se={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function le(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var ce,ue={date:le({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:le({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:le({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},de={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function he(e){return function(t,n){var r;if("formatting"===(null!=n&&n.context?String(n.context):"standalone")&&e.formattingValues){var o=e.defaultFormattingWidth||e.defaultWidth,i=null!=n&&n.width?String(n.width):o;r=e.formattingValues[i]||e.formattingValues[o]}else{var a=e.defaultWidth,s=null!=n&&n.width?String(n.width):e.defaultWidth;r=e.values[s]||e.values[a]}return r[e.argumentCallback?e.argumentCallback(t):t]}}function fe(e){return function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],i=t.match(o);if(!i)return null;var a,s=i[0],l=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(l)?function(e){for(var t=0;t0?"in "+r:r+" ago":r},formatLong:ue,formatRelative:function(e,t,n,r){return de[e]},localize:{ordinalNumber:function(e,t){var n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:he({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:he({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(e){return e-1}}),month:he({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:he({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:he({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(ce={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}},function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.match(ce.matchPattern);if(!n)return null;var r=n[0],o=e.match(ce.parsePattern);if(!o)return null;var i=ce.valueCallback?ce.valueCallback(o[0]):o[0];return{value:i=t.valueCallback?t.valueCallback(i):i,rest:e.slice(r.length)}}),era:fe({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:fe({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:fe({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:fe({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:fe({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};var me=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,ge=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ye=/^'([^]*?)'?$/,ve=/''/g,be=/[a-zA-Z]/;function we(e,t,n){var r,o,i,a,s,l,c,u,d,h,f,p,m,g,y,v,b,w;D(2,arguments);var x=String(t),k=I(),T=null!==(r=null!==(o=null==n?void 0:n.locale)&&void 0!==o?o:k.locale)&&void 0!==r?r:pe,S=j(null!==(i=null!==(a=null!==(s=null!==(l=null==n?void 0:n.firstWeekContainsDate)&&void 0!==l?l:null==n||null===(c=n.locale)||void 0===c||null===(u=c.options)||void 0===u?void 0:u.firstWeekContainsDate)&&void 0!==s?s:k.firstWeekContainsDate)&&void 0!==a?a:null===(d=k.locale)||void 0===d||null===(h=d.options)||void 0===h?void 0:h.firstWeekContainsDate)&&void 0!==i?i:1);if(!(S>=1&&S<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var C=j(null!==(f=null!==(p=null!==(m=null!==(g=null==n?void 0:n.weekStartsOn)&&void 0!==g?g:null==n||null===(y=n.locale)||void 0===y||null===(v=y.options)||void 0===v?void 0:v.weekStartsOn)&&void 0!==m?m:k.weekStartsOn)&&void 0!==p?p:null===(b=k.locale)||void 0===b||null===(w=b.options)||void 0===w?void 0:w.weekStartsOn)&&void 0!==f?f:0);if(!(C>=0&&C<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!T.localize)throw new RangeError("locale must contain localize property");if(!T.formatLong)throw new RangeError("locale must contain formatLong property");var E=A(e);if(!function(e){if(D(1,arguments),!function(e){return D(1,arguments),e instanceof Date||"object"===M(e)&&"[object Date]"===Object.prototype.toString.call(e)}(e)&&"number"!=typeof e)return!1;var t=A(e);return!isNaN(Number(t))}(E))throw new RangeError("Invalid time value");var O=function(e){var t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}(E),P=function(e,t){return D(2,arguments),function(e,t){D(2,arguments);var n=A(e).getTime(),r=j(t);return new Date(n+r)}(e,-j(t))}(E,O),N={firstWeekContainsDate:S,weekStartsOn:C,locale:T,_originalDate:E};return x.match(ge).map((function(e){var t=e[0];return"p"===t||"P"===t?(0,re[t])(e,T.formatLong):e})).join("").match(me).map((function(r){if("''"===r)return"'";var o,i,a=r[0];if("'"===a)return(i=(o=r).match(ye))?i[1].replace(ve,"'"):o;var s,l=K[a];if(l)return null!=n&&n.useAdditionalWeekYearTokens||(s=r,-1===ie.indexOf(s))||ae(r,t,String(e)),null!=n&&n.useAdditionalDayOfYearTokens||!function(e){return-1!==oe.indexOf(e)}(r)||ae(r,t,String(e)),l(P,r,T.localize,N);if(a.match(be))throw new RangeError("Format string contains an unescaped latin alphabet character `"+a+"`");return r})).join("")}const xe=window.ReactJSXRuntime;function ke(e){const t=[S,C,E],n=e=>e.map(((e,n)=>(e.avatar_url=t[n],e))),r=(e,t)=>{const n=`avatar avatar-${t} photo avatar-default`;return(0,xe.jsx)("img",{alt:e.username,src:e.avatar_url,className:n,height:t,width:t})};return(0,xe.jsxs)("div",{id:"comments",className:"comments-area discourse-comments-area",children:[(0,xe.jsx)("div",{className:"comments-title-wrap",children:(0,xe.jsx)("h2",{className:"comments-title discourse-comments-title",children:(0,x.__)("Notable Replies","wp-discourse")})}),(0,xe.jsx)("ol",{className:"comment-list",children:n(k).map((e=>(e=>{const t=we(new Date(e.created_at),"MMMM do, yyyy");return(0,xe.jsx)("li",{className:"comment",children:(0,xe.jsxs)("article",{className:"comment-body",children:[(0,xe.jsxs)("footer",{className:"comment-meta",children:[(0,xe.jsxs)("div",{className:"comment-author vcard",children:[r(e,"64"),(0,xe.jsx)("b",{className:"fn",children:(0,xe.jsx)("a",{href:"https://discourse.mysite.com/t/1",rel:"external",className:"url",children:e.username})}),(0,xe.jsx)("span",{className:"says screen-reader-text",children:(0,x.__)("says:","wp-discourse")})]}),(0,xe.jsx)("div",{className:"comment-metadata",children:(0,xe.jsx)("time",{dateTime:t,children:t})})]}),(0,xe.jsx)("div",{className:"comment-content",children:P(e.cooked)})]})})})(e)))}),(0,xe.jsxs)("div",{className:"respond comment-respond",children:[(0,xe.jsxs)("h3",{id:"reply-title",className:"comment-reply-title",children:[(0,x.__)("Continue the discussion at","wp-discourse"),(0,xe.jsx)("a",{className:"wpdc-discourse-topic-link",target:"_blank",rel:"noreferrer noopener",href:e.discourse_url,children:e.discourse_url})]}),(0,xe.jsxs)("div",{className:"comment-reply-title",children:[(0,xe.jsx)("h4",{className:"discourse-participants",children:(0,x.__)("Participants","wp-discourse")}),(0,xe.jsx)("p",{children:n(T).map((e=>r(e,"25")))})]})]})]})}function Te(e){const t=(0,w.useBlockProps)(),n=(0,w.useSettings)("layout")||{},r=document.head.querySelector("[name~=wpdc-url][content]");return r&&(e.discourse_url=r.content),(0,xe.jsx)("div",{...t,children:(0,xe.jsx)(ke,{__experimentalLayout:n,...e})})}document.addEventListener("DOMContentLoaded",(function(){const t={example:{},edit:Te},n=document.head.querySelector("[name~=wpdc-icon][content]");if(n){const e=atob(n.content.split(",")[1]);t.icon=(0,xe.jsx)(b,{src:e})}(0,e.registerBlockType)("wp-discourse/comments",t)}))})()})(); \ No newline at end of file +/******/ (() => { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ "./node_modules/date-fns/_lib/addLeadingZeros.js": +/*!*******************************************************!*\ + !*** ./node_modules/date-fns/_lib/addLeadingZeros.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ addLeadingZeros: () => (/* binding */ addLeadingZeros) +/* harmony export */ }); +function addLeadingZeros(number, targetLength) { + const sign = number < 0 ? "-" : ""; + const output = Math.abs(number).toString().padStart(targetLength, "0"); + return sign + output; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/defaultOptions.js": +/*!******************************************************!*\ + !*** ./node_modules/date-fns/_lib/defaultOptions.js ***! + \******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ getDefaultOptions: () => (/* binding */ getDefaultOptions), +/* harmony export */ setDefaultOptions: () => (/* binding */ setDefaultOptions) +/* harmony export */ }); +let defaultOptions = {}; + +function getDefaultOptions() { + return defaultOptions; +} + +function setDefaultOptions(newOptions) { + defaultOptions = newOptions; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/format/formatters.js": +/*!*********************************************************!*\ + !*** ./node_modules/date-fns/_lib/format/formatters.js ***! + \*********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ formatters: () => (/* binding */ formatters) +/* harmony export */ }); +/* harmony import */ var _getDayOfYear_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../getDayOfYear.js */ "./node_modules/date-fns/getDayOfYear.js"); +/* harmony import */ var _getISOWeek_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../getISOWeek.js */ "./node_modules/date-fns/getISOWeek.js"); +/* harmony import */ var _getISOWeekYear_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../getISOWeekYear.js */ "./node_modules/date-fns/getISOWeekYear.js"); +/* harmony import */ var _getWeek_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../getWeek.js */ "./node_modules/date-fns/getWeek.js"); +/* harmony import */ var _getWeekYear_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../getWeekYear.js */ "./node_modules/date-fns/getWeekYear.js"); +/* harmony import */ var _addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../addLeadingZeros.js */ "./node_modules/date-fns/_lib/addLeadingZeros.js"); +/* harmony import */ var _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lightFormatters.js */ "./node_modules/date-fns/_lib/format/lightFormatters.js"); + + + + + + + + + +const dayPeriodEnum = { + am: "am", + pm: "pm", + midnight: "midnight", + noon: "noon", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night", +}; + +/* + * | | Unit | | Unit | + * |-----|--------------------------------|-----|--------------------------------| + * | a | AM, PM | A* | Milliseconds in day | + * | b | AM, PM, noon, midnight | B | Flexible day period | + * | c | Stand-alone local day of week | C* | Localized hour w/ day period | + * | d | Day of month | D | Day of year | + * | e | Local day of week | E | Day of week | + * | f | | F* | Day of week in month | + * | g* | Modified Julian day | G | Era | + * | h | Hour [1-12] | H | Hour [0-23] | + * | i! | ISO day of week | I! | ISO week of year | + * | j* | Localized hour w/ day period | J* | Localized hour w/o day period | + * | k | Hour [1-24] | K | Hour [0-11] | + * | l* | (deprecated) | L | Stand-alone month | + * | m | Minute | M | Month | + * | n | | N | | + * | o! | Ordinal number modifier | O | Timezone (GMT) | + * | p! | Long localized time | P! | Long localized date | + * | q | Stand-alone quarter | Q | Quarter | + * | r* | Related Gregorian year | R! | ISO week-numbering year | + * | s | Second | S | Fraction of second | + * | t! | Seconds timestamp | T! | Milliseconds timestamp | + * | u | Extended year | U* | Cyclic year | + * | v* | Timezone (generic non-locat.) | V* | Timezone (location) | + * | w | Local week of year | W* | Week of month | + * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) | + * | y | Year (abs) | Y | Local week-numbering year | + * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) | + * + * Letters marked by * are not implemented but reserved by Unicode standard. + * + * Letters marked by ! are non-standard, but implemented by date-fns: + * - `o` modifies the previous token to turn it into an ordinal (see `format` docs) + * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days, + * i.e. 7 for Sunday, 1 for Monday, etc. + * - `I` is ISO week of year, as opposed to `w` which is local week of year. + * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year. + * `R` is supposed to be used in conjunction with `I` and `i` + * for universal ISO week-numbering date, whereas + * `Y` is supposed to be used in conjunction with `w` and `e` + * for week-numbering date specific to the locale. + * - `P` is long localized date format + * - `p` is long localized time format + */ + +const formatters = { + // Era + G: function (date, token, localize) { + const era = date.getFullYear() > 0 ? 1 : 0; + switch (token) { + // AD, BC + case "G": + case "GG": + case "GGG": + return localize.era(era, { width: "abbreviated" }); + // A, B + case "GGGGG": + return localize.era(era, { width: "narrow" }); + // Anno Domini, Before Christ + case "GGGG": + default: + return localize.era(era, { width: "wide" }); + } + }, + + // Year + y: function (date, token, localize) { + // Ordinal number + if (token === "yo") { + const signedYear = date.getFullYear(); + // Returns 1 for 1 BC (which is year 0 in JavaScript) + const year = signedYear > 0 ? signedYear : 1 - signedYear; + return localize.ordinalNumber(year, { unit: "year" }); + } + + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.y(date, token); + }, + + // Local week-numbering year + Y: function (date, token, localize, options) { + const signedWeekYear = (0,_getWeekYear_js__WEBPACK_IMPORTED_MODULE_1__.getWeekYear)(date, options); + // Returns 1 for 1 BC (which is year 0 in JavaScript) + const weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear; + + // Two digit year + if (token === "YY") { + const twoDigitYear = weekYear % 100; + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(twoDigitYear, 2); + } + + // Ordinal number + if (token === "Yo") { + return localize.ordinalNumber(weekYear, { unit: "year" }); + } + + // Padding + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(weekYear, token.length); + }, + + // ISO week-numbering year + R: function (date, token) { + const isoWeekYear = (0,_getISOWeekYear_js__WEBPACK_IMPORTED_MODULE_3__.getISOWeekYear)(date); + + // Padding + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(isoWeekYear, token.length); + }, + + // Extended year. This is a single number designating the year of this calendar system. + // The main difference between `y` and `u` localizers are B.C. years: + // | Year | `y` | `u` | + // |------|-----|-----| + // | AC 1 | 1 | 1 | + // | BC 1 | 1 | 0 | + // | BC 2 | 2 | -1 | + // Also `yy` always returns the last two digits of a year, + // while `uu` pads single digit years to 2 characters and returns other years unchanged. + u: function (date, token) { + const year = date.getFullYear(); + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(year, token.length); + }, + + // Quarter + Q: function (date, token, localize) { + const quarter = Math.ceil((date.getMonth() + 1) / 3); + switch (token) { + // 1, 2, 3, 4 + case "Q": + return String(quarter); + // 01, 02, 03, 04 + case "QQ": + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(quarter, 2); + // 1st, 2nd, 3rd, 4th + case "Qo": + return localize.ordinalNumber(quarter, { unit: "quarter" }); + // Q1, Q2, Q3, Q4 + case "QQQ": + return localize.quarter(quarter, { + width: "abbreviated", + context: "formatting", + }); + // 1, 2, 3, 4 (narrow quarter; could be not numerical) + case "QQQQQ": + return localize.quarter(quarter, { + width: "narrow", + context: "formatting", + }); + // 1st quarter, 2nd quarter, ... + case "QQQQ": + default: + return localize.quarter(quarter, { + width: "wide", + context: "formatting", + }); + } + }, + + // Stand-alone quarter + q: function (date, token, localize) { + const quarter = Math.ceil((date.getMonth() + 1) / 3); + switch (token) { + // 1, 2, 3, 4 + case "q": + return String(quarter); + // 01, 02, 03, 04 + case "qq": + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(quarter, 2); + // 1st, 2nd, 3rd, 4th + case "qo": + return localize.ordinalNumber(quarter, { unit: "quarter" }); + // Q1, Q2, Q3, Q4 + case "qqq": + return localize.quarter(quarter, { + width: "abbreviated", + context: "standalone", + }); + // 1, 2, 3, 4 (narrow quarter; could be not numerical) + case "qqqqq": + return localize.quarter(quarter, { + width: "narrow", + context: "standalone", + }); + // 1st quarter, 2nd quarter, ... + case "qqqq": + default: + return localize.quarter(quarter, { + width: "wide", + context: "standalone", + }); + } + }, + + // Month + M: function (date, token, localize) { + const month = date.getMonth(); + switch (token) { + case "M": + case "MM": + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.M(date, token); + // 1st, 2nd, ..., 12th + case "Mo": + return localize.ordinalNumber(month + 1, { unit: "month" }); + // Jan, Feb, ..., Dec + case "MMM": + return localize.month(month, { + width: "abbreviated", + context: "formatting", + }); + // J, F, ..., D + case "MMMMM": + return localize.month(month, { + width: "narrow", + context: "formatting", + }); + // January, February, ..., December + case "MMMM": + default: + return localize.month(month, { width: "wide", context: "formatting" }); + } + }, + + // Stand-alone month + L: function (date, token, localize) { + const month = date.getMonth(); + switch (token) { + // 1, 2, ..., 12 + case "L": + return String(month + 1); + // 01, 02, ..., 12 + case "LL": + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(month + 1, 2); + // 1st, 2nd, ..., 12th + case "Lo": + return localize.ordinalNumber(month + 1, { unit: "month" }); + // Jan, Feb, ..., Dec + case "LLL": + return localize.month(month, { + width: "abbreviated", + context: "standalone", + }); + // J, F, ..., D + case "LLLLL": + return localize.month(month, { + width: "narrow", + context: "standalone", + }); + // January, February, ..., December + case "LLLL": + default: + return localize.month(month, { width: "wide", context: "standalone" }); + } + }, + + // Local week of year + w: function (date, token, localize, options) { + const week = (0,_getWeek_js__WEBPACK_IMPORTED_MODULE_4__.getWeek)(date, options); + + if (token === "wo") { + return localize.ordinalNumber(week, { unit: "week" }); + } + + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(week, token.length); + }, + + // ISO week of year + I: function (date, token, localize) { + const isoWeek = (0,_getISOWeek_js__WEBPACK_IMPORTED_MODULE_5__.getISOWeek)(date); + + if (token === "Io") { + return localize.ordinalNumber(isoWeek, { unit: "week" }); + } + + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(isoWeek, token.length); + }, + + // Day of the month + d: function (date, token, localize) { + if (token === "do") { + return localize.ordinalNumber(date.getDate(), { unit: "date" }); + } + + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.d(date, token); + }, + + // Day of year + D: function (date, token, localize) { + const dayOfYear = (0,_getDayOfYear_js__WEBPACK_IMPORTED_MODULE_6__.getDayOfYear)(date); + + if (token === "Do") { + return localize.ordinalNumber(dayOfYear, { unit: "dayOfYear" }); + } + + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(dayOfYear, token.length); + }, + + // Day of week + E: function (date, token, localize) { + const dayOfWeek = date.getDay(); + switch (token) { + // Tue + case "E": + case "EE": + case "EEE": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "formatting", + }); + // T + case "EEEEE": + return localize.day(dayOfWeek, { + width: "narrow", + context: "formatting", + }); + // Tu + case "EEEEEE": + return localize.day(dayOfWeek, { + width: "short", + context: "formatting", + }); + // Tuesday + case "EEEE": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "formatting", + }); + } + }, + + // Local day of week + e: function (date, token, localize, options) { + const dayOfWeek = date.getDay(); + const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7; + switch (token) { + // Numerical value (Nth day of week with current locale or weekStartsOn) + case "e": + return String(localDayOfWeek); + // Padded numerical value + case "ee": + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(localDayOfWeek, 2); + // 1st, 2nd, ..., 7th + case "eo": + return localize.ordinalNumber(localDayOfWeek, { unit: "day" }); + case "eee": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "formatting", + }); + // T + case "eeeee": + return localize.day(dayOfWeek, { + width: "narrow", + context: "formatting", + }); + // Tu + case "eeeeee": + return localize.day(dayOfWeek, { + width: "short", + context: "formatting", + }); + // Tuesday + case "eeee": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "formatting", + }); + } + }, + + // Stand-alone local day of week + c: function (date, token, localize, options) { + const dayOfWeek = date.getDay(); + const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7; + switch (token) { + // Numerical value (same as in `e`) + case "c": + return String(localDayOfWeek); + // Padded numerical value + case "cc": + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(localDayOfWeek, token.length); + // 1st, 2nd, ..., 7th + case "co": + return localize.ordinalNumber(localDayOfWeek, { unit: "day" }); + case "ccc": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "standalone", + }); + // T + case "ccccc": + return localize.day(dayOfWeek, { + width: "narrow", + context: "standalone", + }); + // Tu + case "cccccc": + return localize.day(dayOfWeek, { + width: "short", + context: "standalone", + }); + // Tuesday + case "cccc": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "standalone", + }); + } + }, + + // ISO day of week + i: function (date, token, localize) { + const dayOfWeek = date.getDay(); + const isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek; + switch (token) { + // 2 + case "i": + return String(isoDayOfWeek); + // 02 + case "ii": + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(isoDayOfWeek, token.length); + // 2nd + case "io": + return localize.ordinalNumber(isoDayOfWeek, { unit: "day" }); + // Tue + case "iii": + return localize.day(dayOfWeek, { + width: "abbreviated", + context: "formatting", + }); + // T + case "iiiii": + return localize.day(dayOfWeek, { + width: "narrow", + context: "formatting", + }); + // Tu + case "iiiiii": + return localize.day(dayOfWeek, { + width: "short", + context: "formatting", + }); + // Tuesday + case "iiii": + default: + return localize.day(dayOfWeek, { + width: "wide", + context: "formatting", + }); + } + }, + + // AM or PM + a: function (date, token, localize) { + const hours = date.getHours(); + const dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am"; + + switch (token) { + case "a": + case "aa": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting", + }); + case "aaa": + return localize + .dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting", + }) + .toLowerCase(); + case "aaaaa": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "narrow", + context: "formatting", + }); + case "aaaa": + default: + return localize.dayPeriod(dayPeriodEnumValue, { + width: "wide", + context: "formatting", + }); + } + }, + + // AM, PM, midnight, noon + b: function (date, token, localize) { + const hours = date.getHours(); + let dayPeriodEnumValue; + if (hours === 12) { + dayPeriodEnumValue = dayPeriodEnum.noon; + } else if (hours === 0) { + dayPeriodEnumValue = dayPeriodEnum.midnight; + } else { + dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am"; + } + + switch (token) { + case "b": + case "bb": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting", + }); + case "bbb": + return localize + .dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting", + }) + .toLowerCase(); + case "bbbbb": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "narrow", + context: "formatting", + }); + case "bbbb": + default: + return localize.dayPeriod(dayPeriodEnumValue, { + width: "wide", + context: "formatting", + }); + } + }, + + // in the morning, in the afternoon, in the evening, at night + B: function (date, token, localize) { + const hours = date.getHours(); + let dayPeriodEnumValue; + if (hours >= 17) { + dayPeriodEnumValue = dayPeriodEnum.evening; + } else if (hours >= 12) { + dayPeriodEnumValue = dayPeriodEnum.afternoon; + } else if (hours >= 4) { + dayPeriodEnumValue = dayPeriodEnum.morning; + } else { + dayPeriodEnumValue = dayPeriodEnum.night; + } + + switch (token) { + case "B": + case "BB": + case "BBB": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "abbreviated", + context: "formatting", + }); + case "BBBBB": + return localize.dayPeriod(dayPeriodEnumValue, { + width: "narrow", + context: "formatting", + }); + case "BBBB": + default: + return localize.dayPeriod(dayPeriodEnumValue, { + width: "wide", + context: "formatting", + }); + } + }, + + // Hour [1-12] + h: function (date, token, localize) { + if (token === "ho") { + let hours = date.getHours() % 12; + if (hours === 0) hours = 12; + return localize.ordinalNumber(hours, { unit: "hour" }); + } + + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.h(date, token); + }, + + // Hour [0-23] + H: function (date, token, localize) { + if (token === "Ho") { + return localize.ordinalNumber(date.getHours(), { unit: "hour" }); + } + + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.H(date, token); + }, + + // Hour [0-11] + K: function (date, token, localize) { + const hours = date.getHours() % 12; + + if (token === "Ko") { + return localize.ordinalNumber(hours, { unit: "hour" }); + } + + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(hours, token.length); + }, + + // Hour [1-24] + k: function (date, token, localize) { + let hours = date.getHours(); + if (hours === 0) hours = 24; + + if (token === "ko") { + return localize.ordinalNumber(hours, { unit: "hour" }); + } + + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(hours, token.length); + }, + + // Minute + m: function (date, token, localize) { + if (token === "mo") { + return localize.ordinalNumber(date.getMinutes(), { unit: "minute" }); + } + + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.m(date, token); + }, + + // Second + s: function (date, token, localize) { + if (token === "so") { + return localize.ordinalNumber(date.getSeconds(), { unit: "second" }); + } + + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.s(date, token); + }, + + // Fraction of second + S: function (date, token) { + return _lightFormatters_js__WEBPACK_IMPORTED_MODULE_0__.lightFormatters.S(date, token); + }, + + // Timezone (ISO-8601. If offset is 0, output is always `'Z'`) + X: function (date, token, _localize) { + const timezoneOffset = date.getTimezoneOffset(); + + if (timezoneOffset === 0) { + return "Z"; + } + + switch (token) { + // Hours and optional minutes + case "X": + return formatTimezoneWithOptionalMinutes(timezoneOffset); + + // Hours, minutes and optional seconds without `:` delimiter + // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets + // so this token always has the same output as `XX` + case "XXXX": + case "XX": // Hours and minutes without `:` delimiter + return formatTimezone(timezoneOffset); + + // Hours, minutes and optional seconds with `:` delimiter + // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets + // so this token always has the same output as `XXX` + case "XXXXX": + case "XXX": // Hours and minutes with `:` delimiter + default: + return formatTimezone(timezoneOffset, ":"); + } + }, + + // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent) + x: function (date, token, _localize) { + const timezoneOffset = date.getTimezoneOffset(); + + switch (token) { + // Hours and optional minutes + case "x": + return formatTimezoneWithOptionalMinutes(timezoneOffset); + + // Hours, minutes and optional seconds without `:` delimiter + // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets + // so this token always has the same output as `xx` + case "xxxx": + case "xx": // Hours and minutes without `:` delimiter + return formatTimezone(timezoneOffset); + + // Hours, minutes and optional seconds with `:` delimiter + // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets + // so this token always has the same output as `xxx` + case "xxxxx": + case "xxx": // Hours and minutes with `:` delimiter + default: + return formatTimezone(timezoneOffset, ":"); + } + }, + + // Timezone (GMT) + O: function (date, token, _localize) { + const timezoneOffset = date.getTimezoneOffset(); + + switch (token) { + // Short + case "O": + case "OO": + case "OOO": + return "GMT" + formatTimezoneShort(timezoneOffset, ":"); + // Long + case "OOOO": + default: + return "GMT" + formatTimezone(timezoneOffset, ":"); + } + }, + + // Timezone (specific non-location) + z: function (date, token, _localize) { + const timezoneOffset = date.getTimezoneOffset(); + + switch (token) { + // Short + case "z": + case "zz": + case "zzz": + return "GMT" + formatTimezoneShort(timezoneOffset, ":"); + // Long + case "zzzz": + default: + return "GMT" + formatTimezone(timezoneOffset, ":"); + } + }, + + // Seconds timestamp + t: function (date, token, _localize) { + const timestamp = Math.trunc(+date / 1000); + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(timestamp, token.length); + }, + + // Milliseconds timestamp + T: function (date, token, _localize) { + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(+date, token.length); + }, +}; + +function formatTimezoneShort(offset, delimiter = "") { + const sign = offset > 0 ? "-" : "+"; + const absOffset = Math.abs(offset); + const hours = Math.trunc(absOffset / 60); + const minutes = absOffset % 60; + if (minutes === 0) { + return sign + String(hours); + } + return sign + String(hours) + delimiter + (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(minutes, 2); +} + +function formatTimezoneWithOptionalMinutes(offset, delimiter) { + if (offset % 60 === 0) { + const sign = offset > 0 ? "-" : "+"; + return sign + (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(Math.abs(offset) / 60, 2); + } + return formatTimezone(offset, delimiter); +} + +function formatTimezone(offset, delimiter = "") { + const sign = offset > 0 ? "-" : "+"; + const absOffset = Math.abs(offset); + const hours = (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(Math.trunc(absOffset / 60), 2); + const minutes = (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_2__.addLeadingZeros)(absOffset % 60, 2); + return sign + hours + delimiter + minutes; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/format/lightFormatters.js": +/*!**************************************************************!*\ + !*** ./node_modules/date-fns/_lib/format/lightFormatters.js ***! + \**************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ lightFormatters: () => (/* binding */ lightFormatters) +/* harmony export */ }); +/* harmony import */ var _addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../addLeadingZeros.js */ "./node_modules/date-fns/_lib/addLeadingZeros.js"); + + +/* + * | | Unit | | Unit | + * |-----|--------------------------------|-----|--------------------------------| + * | a | AM, PM | A* | | + * | d | Day of month | D | | + * | h | Hour [1-12] | H | Hour [0-23] | + * | m | Minute | M | Month | + * | s | Second | S | Fraction of second | + * | y | Year (abs) | Y | | + * + * Letters marked by * are not implemented but reserved by Unicode standard. + */ + +const lightFormatters = { + // Year + y(date, token) { + // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens + // | Year | y | yy | yyy | yyyy | yyyyy | + // |----------|-------|----|-------|-------|-------| + // | AD 1 | 1 | 01 | 001 | 0001 | 00001 | + // | AD 12 | 12 | 12 | 012 | 0012 | 00012 | + // | AD 123 | 123 | 23 | 123 | 0123 | 00123 | + // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 | + // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 | + + const signedYear = date.getFullYear(); + // Returns 1 for 1 BC (which is year 0 in JavaScript) + const year = signedYear > 0 ? signedYear : 1 - signedYear; + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(token === "yy" ? year % 100 : year, token.length); + }, + + // Month + M(date, token) { + const month = date.getMonth(); + return token === "M" ? String(month + 1) : (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(month + 1, 2); + }, + + // Day of the month + d(date, token) { + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(date.getDate(), token.length); + }, + + // AM or PM + a(date, token) { + const dayPeriodEnumValue = date.getHours() / 12 >= 1 ? "pm" : "am"; + + switch (token) { + case "a": + case "aa": + return dayPeriodEnumValue.toUpperCase(); + case "aaa": + return dayPeriodEnumValue; + case "aaaaa": + return dayPeriodEnumValue[0]; + case "aaaa": + default: + return dayPeriodEnumValue === "am" ? "a.m." : "p.m."; + } + }, + + // Hour [1-12] + h(date, token) { + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(date.getHours() % 12 || 12, token.length); + }, + + // Hour [0-23] + H(date, token) { + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(date.getHours(), token.length); + }, + + // Minute + m(date, token) { + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(date.getMinutes(), token.length); + }, + + // Second + s(date, token) { + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(date.getSeconds(), token.length); + }, + + // Fraction of second + S(date, token) { + const numberOfDigits = token.length; + const milliseconds = date.getMilliseconds(); + const fractionalSeconds = Math.trunc( + milliseconds * Math.pow(10, numberOfDigits - 3), + ); + return (0,_addLeadingZeros_js__WEBPACK_IMPORTED_MODULE_0__.addLeadingZeros)(fractionalSeconds, token.length); + }, +}; + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/format/longFormatters.js": +/*!*************************************************************!*\ + !*** ./node_modules/date-fns/_lib/format/longFormatters.js ***! + \*************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ longFormatters: () => (/* binding */ longFormatters) +/* harmony export */ }); +const dateLongFormatter = (pattern, formatLong) => { + switch (pattern) { + case "P": + return formatLong.date({ width: "short" }); + case "PP": + return formatLong.date({ width: "medium" }); + case "PPP": + return formatLong.date({ width: "long" }); + case "PPPP": + default: + return formatLong.date({ width: "full" }); + } +}; + +const timeLongFormatter = (pattern, formatLong) => { + switch (pattern) { + case "p": + return formatLong.time({ width: "short" }); + case "pp": + return formatLong.time({ width: "medium" }); + case "ppp": + return formatLong.time({ width: "long" }); + case "pppp": + default: + return formatLong.time({ width: "full" }); + } +}; + +const dateTimeLongFormatter = (pattern, formatLong) => { + const matchResult = pattern.match(/(P+)(p+)?/) || []; + const datePattern = matchResult[1]; + const timePattern = matchResult[2]; + + if (!timePattern) { + return dateLongFormatter(pattern, formatLong); + } + + let dateTimeFormat; + + switch (datePattern) { + case "P": + dateTimeFormat = formatLong.dateTime({ width: "short" }); + break; + case "PP": + dateTimeFormat = formatLong.dateTime({ width: "medium" }); + break; + case "PPP": + dateTimeFormat = formatLong.dateTime({ width: "long" }); + break; + case "PPPP": + default: + dateTimeFormat = formatLong.dateTime({ width: "full" }); + break; + } + + return dateTimeFormat + .replace("{{date}}", dateLongFormatter(datePattern, formatLong)) + .replace("{{time}}", timeLongFormatter(timePattern, formatLong)); +}; + +const longFormatters = { + p: timeLongFormatter, + P: dateTimeLongFormatter, +}; + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js": +/*!***********************************************************************!*\ + !*** ./node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js ***! + \***********************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ getTimezoneOffsetInMilliseconds: () => (/* binding */ getTimezoneOffsetInMilliseconds) +/* harmony export */ }); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../toDate.js */ "./node_modules/date-fns/toDate.js"); + + +/** + * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds. + * They usually appear for dates that denote time before the timezones were introduced + * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891 + * and GMT+01:00:00 after that date) + * + * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above, + * which would lead to incorrect calculations. + * + * This function returns the timezone offset in milliseconds that takes seconds in account. + */ +function getTimezoneOffsetInMilliseconds(date) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date); + const utcDate = new Date( + Date.UTC( + _date.getFullYear(), + _date.getMonth(), + _date.getDate(), + _date.getHours(), + _date.getMinutes(), + _date.getSeconds(), + _date.getMilliseconds(), + ), + ); + utcDate.setUTCFullYear(_date.getFullYear()); + return +date - +utcDate; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/normalizeDates.js": +/*!******************************************************!*\ + !*** ./node_modules/date-fns/_lib/normalizeDates.js ***! + \******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ normalizeDates: () => (/* binding */ normalizeDates) +/* harmony export */ }); +/* harmony import */ var _constructFrom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constructFrom.js */ "./node_modules/date-fns/constructFrom.js"); + + +function normalizeDates(context, ...dates) { + const normalize = _constructFrom_js__WEBPACK_IMPORTED_MODULE_0__.constructFrom.bind( + null, + context || dates.find((date) => typeof date === "object"), + ); + return dates.map(normalize); +} + + +/***/ }), + +/***/ "./node_modules/date-fns/_lib/protectedTokens.js": +/*!*******************************************************!*\ + !*** ./node_modules/date-fns/_lib/protectedTokens.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ isProtectedDayOfYearToken: () => (/* binding */ isProtectedDayOfYearToken), +/* harmony export */ isProtectedWeekYearToken: () => (/* binding */ isProtectedWeekYearToken), +/* harmony export */ warnOrThrowProtectedError: () => (/* binding */ warnOrThrowProtectedError) +/* harmony export */ }); +const dayOfYearTokenRE = /^D+$/; +const weekYearTokenRE = /^Y+$/; + +const throwTokens = ["D", "DD", "YY", "YYYY"]; + +function isProtectedDayOfYearToken(token) { + return dayOfYearTokenRE.test(token); +} + +function isProtectedWeekYearToken(token) { + return weekYearTokenRE.test(token); +} + +function warnOrThrowProtectedError(token, format, input) { + const _message = message(token, format, input); + console.warn(_message); + if (throwTokens.includes(token)) throw new RangeError(_message); +} + +function message(token, format, input) { + const subject = token[0] === "Y" ? "years" : "days of the month"; + return `Use \`${token.toLowerCase()}\` instead of \`${token}\` (in \`${format}\`) for formatting ${subject} to the input \`${input}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/constants.js": +/*!********************************************!*\ + !*** ./node_modules/date-fns/constants.js ***! + \********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ constructFromSymbol: () => (/* binding */ constructFromSymbol), +/* harmony export */ daysInWeek: () => (/* binding */ daysInWeek), +/* harmony export */ daysInYear: () => (/* binding */ daysInYear), +/* harmony export */ maxTime: () => (/* binding */ maxTime), +/* harmony export */ millisecondsInDay: () => (/* binding */ millisecondsInDay), +/* harmony export */ millisecondsInHour: () => (/* binding */ millisecondsInHour), +/* harmony export */ millisecondsInMinute: () => (/* binding */ millisecondsInMinute), +/* harmony export */ millisecondsInSecond: () => (/* binding */ millisecondsInSecond), +/* harmony export */ millisecondsInWeek: () => (/* binding */ millisecondsInWeek), +/* harmony export */ minTime: () => (/* binding */ minTime), +/* harmony export */ minutesInDay: () => (/* binding */ minutesInDay), +/* harmony export */ minutesInHour: () => (/* binding */ minutesInHour), +/* harmony export */ minutesInMonth: () => (/* binding */ minutesInMonth), +/* harmony export */ minutesInYear: () => (/* binding */ minutesInYear), +/* harmony export */ monthsInQuarter: () => (/* binding */ monthsInQuarter), +/* harmony export */ monthsInYear: () => (/* binding */ monthsInYear), +/* harmony export */ quartersInYear: () => (/* binding */ quartersInYear), +/* harmony export */ secondsInDay: () => (/* binding */ secondsInDay), +/* harmony export */ secondsInHour: () => (/* binding */ secondsInHour), +/* harmony export */ secondsInMinute: () => (/* binding */ secondsInMinute), +/* harmony export */ secondsInMonth: () => (/* binding */ secondsInMonth), +/* harmony export */ secondsInQuarter: () => (/* binding */ secondsInQuarter), +/* harmony export */ secondsInWeek: () => (/* binding */ secondsInWeek), +/* harmony export */ secondsInYear: () => (/* binding */ secondsInYear) +/* harmony export */ }); +/** + * @module constants + * @summary Useful constants + * @description + * Collection of useful date constants. + * + * The constants could be imported from `date-fns/constants`: + * + * ```ts + * import { maxTime, minTime } from "./constants/date-fns/constants"; + * + * function isAllowedTime(time) { + * return time <= maxTime && time >= minTime; + * } + * ``` + */ + +/** + * @constant + * @name daysInWeek + * @summary Days in 1 week. + */ +const daysInWeek = 7; + +/** + * @constant + * @name daysInYear + * @summary Days in 1 year. + * + * @description + * How many days in a year. + * + * One years equals 365.2425 days according to the formula: + * + * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400. + * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days + */ +const daysInYear = 365.2425; + +/** + * @constant + * @name maxTime + * @summary Maximum allowed time. + * + * @example + * import { maxTime } from "./constants/date-fns/constants"; + * + * const isValid = 8640000000000001 <= maxTime; + * //=> false + * + * new Date(8640000000000001); + * //=> Invalid Date + */ +const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000; + +/** + * @constant + * @name minTime + * @summary Minimum allowed time. + * + * @example + * import { minTime } from "./constants/date-fns/constants"; + * + * const isValid = -8640000000000001 >= minTime; + * //=> false + * + * new Date(-8640000000000001) + * //=> Invalid Date + */ +const minTime = -maxTime; + +/** + * @constant + * @name millisecondsInWeek + * @summary Milliseconds in 1 week. + */ +const millisecondsInWeek = 604800000; + +/** + * @constant + * @name millisecondsInDay + * @summary Milliseconds in 1 day. + */ +const millisecondsInDay = 86400000; + +/** + * @constant + * @name millisecondsInMinute + * @summary Milliseconds in 1 minute + */ +const millisecondsInMinute = 60000; + +/** + * @constant + * @name millisecondsInHour + * @summary Milliseconds in 1 hour + */ +const millisecondsInHour = 3600000; + +/** + * @constant + * @name millisecondsInSecond + * @summary Milliseconds in 1 second + */ +const millisecondsInSecond = 1000; + +/** + * @constant + * @name minutesInYear + * @summary Minutes in 1 year. + */ +const minutesInYear = 525600; + +/** + * @constant + * @name minutesInMonth + * @summary Minutes in 1 month. + */ +const minutesInMonth = 43200; + +/** + * @constant + * @name minutesInDay + * @summary Minutes in 1 day. + */ +const minutesInDay = 1440; + +/** + * @constant + * @name minutesInHour + * @summary Minutes in 1 hour. + */ +const minutesInHour = 60; + +/** + * @constant + * @name monthsInQuarter + * @summary Months in 1 quarter. + */ +const monthsInQuarter = 3; + +/** + * @constant + * @name monthsInYear + * @summary Months in 1 year. + */ +const monthsInYear = 12; + +/** + * @constant + * @name quartersInYear + * @summary Quarters in 1 year + */ +const quartersInYear = 4; + +/** + * @constant + * @name secondsInHour + * @summary Seconds in 1 hour. + */ +const secondsInHour = 3600; + +/** + * @constant + * @name secondsInMinute + * @summary Seconds in 1 minute. + */ +const secondsInMinute = 60; + +/** + * @constant + * @name secondsInDay + * @summary Seconds in 1 day. + */ +const secondsInDay = secondsInHour * 24; + +/** + * @constant + * @name secondsInWeek + * @summary Seconds in 1 week. + */ +const secondsInWeek = secondsInDay * 7; + +/** + * @constant + * @name secondsInYear + * @summary Seconds in 1 year. + */ +const secondsInYear = secondsInDay * daysInYear; + +/** + * @constant + * @name secondsInMonth + * @summary Seconds in 1 month + */ +const secondsInMonth = secondsInYear / 12; + +/** + * @constant + * @name secondsInQuarter + * @summary Seconds in 1 quarter. + */ +const secondsInQuarter = secondsInMonth * 3; + +/** + * @constant + * @name constructFromSymbol + * @summary Symbol enabling Date extensions to inherit properties from the reference date. + * + * The symbol is used to enable the `constructFrom` function to construct a date + * using a reference date and a value. It allows to transfer extra properties + * from the reference date to the new date. It's useful for extensions like + * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as + * a constructor argument. + */ +const constructFromSymbol = Symbol.for("constructDateFrom"); + + +/***/ }), + +/***/ "./node_modules/date-fns/constructFrom.js": +/*!************************************************!*\ + !*** ./node_modules/date-fns/constructFrom.js ***! + \************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ constructFrom: () => (/* binding */ constructFrom), +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.js */ "./node_modules/date-fns/constants.js"); + + +/** + * @name constructFrom + * @category Generic Helpers + * @summary Constructs a date using the reference date and the value + * + * @description + * The function constructs a new date using the constructor from the reference + * date and the given value. It helps to build generic functions that accept + * date extensions. + * + * It defaults to `Date` if the passed reference date is a number or a string. + * + * Starting from v3.7.0, it allows to construct a date using `[Symbol.for("constructDateFrom")]` + * enabling to transfer extra properties from the reference date to the new date. + * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz) + * that accept a time zone as a constructor argument. + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * + * @param date - The reference date to take constructor from + * @param value - The value to create the date + * + * @returns Date initialized using the given date and value + * + * @example + * import { constructFrom } from "./constructFrom/date-fns"; + * + * // A function that clones a date preserving the original type + * function cloneDate(date: DateType): DateType { + * return constructFrom( + * date, // Use constructor from the given date + * date.getTime() // Use the date value to create a new date + * ); + * } + */ +function constructFrom(date, value) { + if (typeof date === "function") return date(value); + + if (date && typeof date === "object" && _constants_js__WEBPACK_IMPORTED_MODULE_0__.constructFromSymbol in date) + return date[_constants_js__WEBPACK_IMPORTED_MODULE_0__.constructFromSymbol](value); + + if (date instanceof Date) return new date.constructor(value); + + return new Date(value); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (constructFrom); + + +/***/ }), + +/***/ "./node_modules/date-fns/differenceInCalendarDays.js": +/*!***********************************************************!*\ + !*** ./node_modules/date-fns/differenceInCalendarDays.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ differenceInCalendarDays: () => (/* binding */ differenceInCalendarDays) +/* harmony export */ }); +/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_lib/getTimezoneOffsetInMilliseconds.js */ "./node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js"); +/* harmony import */ var _lib_normalizeDates_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_lib/normalizeDates.js */ "./node_modules/date-fns/_lib/normalizeDates.js"); +/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./constants.js */ "./node_modules/date-fns/constants.js"); +/* harmony import */ var _startOfDay_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./startOfDay.js */ "./node_modules/date-fns/startOfDay.js"); + + + + + +/** + * The {@link differenceInCalendarDays} function options. + */ + +/** + * @name differenceInCalendarDays + * @category Day Helpers + * @summary Get the number of calendar days between the given dates. + * + * @description + * Get the number of calendar days between the given dates. This means that the times are removed + * from the dates and then the difference in days is calculated. + * + * @param laterDate - The later date + * @param earlierDate - The earlier date + * @param options - The options object + * + * @returns The number of calendar days + * + * @example + * // How many calendar days are between + * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00? + * const result = differenceInCalendarDays( + * new Date(2012, 6, 2, 0, 0), + * new Date(2011, 6, 2, 23, 0) + * ) + * //=> 366 + * // How many calendar days are between + * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00? + * const result = differenceInCalendarDays( + * new Date(2011, 6, 3, 0, 1), + * new Date(2011, 6, 2, 23, 59) + * ) + * //=> 1 + */ +function differenceInCalendarDays(laterDate, earlierDate, options) { + const [laterDate_, earlierDate_] = (0,_lib_normalizeDates_js__WEBPACK_IMPORTED_MODULE_0__.normalizeDates)( + options?.in, + laterDate, + earlierDate, + ); + + const laterStartOfDay = (0,_startOfDay_js__WEBPACK_IMPORTED_MODULE_1__.startOfDay)(laterDate_); + const earlierStartOfDay = (0,_startOfDay_js__WEBPACK_IMPORTED_MODULE_1__.startOfDay)(earlierDate_); + + const laterTimestamp = + +laterStartOfDay - (0,_lib_getTimezoneOffsetInMilliseconds_js__WEBPACK_IMPORTED_MODULE_2__.getTimezoneOffsetInMilliseconds)(laterStartOfDay); + const earlierTimestamp = + +earlierStartOfDay - (0,_lib_getTimezoneOffsetInMilliseconds_js__WEBPACK_IMPORTED_MODULE_2__.getTimezoneOffsetInMilliseconds)(earlierStartOfDay); + + // Round the number of days to the nearest integer because the number of + // milliseconds in a day is not constant (e.g. it's different in the week of + // the daylight saving time clock shift). + return Math.round((laterTimestamp - earlierTimestamp) / _constants_js__WEBPACK_IMPORTED_MODULE_3__.millisecondsInDay); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (differenceInCalendarDays); + + +/***/ }), + +/***/ "./node_modules/date-fns/format.js": +/*!*****************************************!*\ + !*** ./node_modules/date-fns/format.js ***! + \*****************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ format: () => (/* binding */ format), +/* harmony export */ formatDate: () => (/* binding */ format), +/* harmony export */ formatters: () => (/* reexport safe */ _lib_format_formatters_js__WEBPACK_IMPORTED_MODULE_0__.formatters), +/* harmony export */ longFormatters: () => (/* reexport safe */ _lib_format_longFormatters_js__WEBPACK_IMPORTED_MODULE_1__.longFormatters) +/* harmony export */ }); +/* harmony import */ var _lib_defaultLocale_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./_lib/defaultLocale.js */ "./node_modules/date-fns/locale/en-US.js"); +/* harmony import */ var _lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./_lib/defaultOptions.js */ "./node_modules/date-fns/_lib/defaultOptions.js"); +/* harmony import */ var _lib_format_formatters_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_lib/format/formatters.js */ "./node_modules/date-fns/_lib/format/formatters.js"); +/* harmony import */ var _lib_format_longFormatters_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_lib/format/longFormatters.js */ "./node_modules/date-fns/_lib/format/longFormatters.js"); +/* harmony import */ var _lib_protectedTokens_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./_lib/protectedTokens.js */ "./node_modules/date-fns/_lib/protectedTokens.js"); +/* harmony import */ var _isValid_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./isValid.js */ "./node_modules/date-fns/isValid.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + + + + + + +// Rexports of internal for libraries to use. +// See: https://github.com/date-fns/date-fns/issues/3638#issuecomment-1877082874 + + +// This RegExp consists of three parts separated by `|`: +// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token +// (one of the certain letters followed by `o`) +// - (\w)\1* matches any sequences of the same letter +// - '' matches two quote characters in a row +// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('), +// except a single quote symbol, which ends the sequence. +// Two quote characters do not end the sequence. +// If there is no matching single quote +// then the sequence will continue until the end of the string. +// - . matches any single character unmatched by previous parts of the RegExps +const formattingTokensRegExp = + /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; + +// This RegExp catches symbols escaped by quotes, and also +// sequences of symbols P, p, and the combinations like `PPPPPPPppppp` +const longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g; + +const escapedStringRegExp = /^'([^]*?)'?$/; +const doubleQuoteRegExp = /''/g; +const unescapedLatinCharacterRegExp = /[a-zA-Z]/; + + + +/** + * The {@link format} function options. + */ + +/** + * @name format + * @alias formatDate + * @category Common Helpers + * @summary Format the date. + * + * @description + * Return the formatted date string in the given format. The result may vary by locale. + * + * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries. + * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * + * The characters wrapped between two single quotes characters (') are escaped. + * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote. + * (see the last example) + * + * Format of the string is based on Unicode Technical Standard #35: + * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table + * with a few additions (see note 7 below the table). + * + * Accepted patterns: + * | Unit | Pattern | Result examples | Notes | + * |---------------------------------|---------|-----------------------------------|-------| + * | Era | G..GGG | AD, BC | | + * | | GGGG | Anno Domini, Before Christ | 2 | + * | | GGGGG | A, B | | + * | Calendar year | y | 44, 1, 1900, 2017 | 5 | + * | | yo | 44th, 1st, 0th, 17th | 5,7 | + * | | yy | 44, 01, 00, 17 | 5 | + * | | yyy | 044, 001, 1900, 2017 | 5 | + * | | yyyy | 0044, 0001, 1900, 2017 | 5 | + * | | yyyyy | ... | 3,5 | + * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 | + * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 | + * | | YY | 44, 01, 00, 17 | 5,8 | + * | | YYY | 044, 001, 1900, 2017 | 5 | + * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 | + * | | YYYYY | ... | 3,5 | + * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 | + * | | RR | -43, 00, 01, 1900, 2017 | 5,7 | + * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 | + * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 | + * | | RRRRR | ... | 3,5,7 | + * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 | + * | | uu | -43, 01, 1900, 2017 | 5 | + * | | uuu | -043, 001, 1900, 2017 | 5 | + * | | uuuu | -0043, 0001, 1900, 2017 | 5 | + * | | uuuuu | ... | 3,5 | + * | Quarter (formatting) | Q | 1, 2, 3, 4 | | + * | | Qo | 1st, 2nd, 3rd, 4th | 7 | + * | | QQ | 01, 02, 03, 04 | | + * | | QQQ | Q1, Q2, Q3, Q4 | | + * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 | + * | | QQQQQ | 1, 2, 3, 4 | 4 | + * | Quarter (stand-alone) | q | 1, 2, 3, 4 | | + * | | qo | 1st, 2nd, 3rd, 4th | 7 | + * | | qq | 01, 02, 03, 04 | | + * | | qqq | Q1, Q2, Q3, Q4 | | + * | | qqqq | 1st quarter, 2nd quarter, ... | 2 | + * | | qqqqq | 1, 2, 3, 4 | 4 | + * | Month (formatting) | M | 1, 2, ..., 12 | | + * | | Mo | 1st, 2nd, ..., 12th | 7 | + * | | MM | 01, 02, ..., 12 | | + * | | MMM | Jan, Feb, ..., Dec | | + * | | MMMM | January, February, ..., December | 2 | + * | | MMMMM | J, F, ..., D | | + * | Month (stand-alone) | L | 1, 2, ..., 12 | | + * | | Lo | 1st, 2nd, ..., 12th | 7 | + * | | LL | 01, 02, ..., 12 | | + * | | LLL | Jan, Feb, ..., Dec | | + * | | LLLL | January, February, ..., December | 2 | + * | | LLLLL | J, F, ..., D | | + * | Local week of year | w | 1, 2, ..., 53 | | + * | | wo | 1st, 2nd, ..., 53th | 7 | + * | | ww | 01, 02, ..., 53 | | + * | ISO week of year | I | 1, 2, ..., 53 | 7 | + * | | Io | 1st, 2nd, ..., 53th | 7 | + * | | II | 01, 02, ..., 53 | 7 | + * | Day of month | d | 1, 2, ..., 31 | | + * | | do | 1st, 2nd, ..., 31st | 7 | + * | | dd | 01, 02, ..., 31 | | + * | Day of year | D | 1, 2, ..., 365, 366 | 9 | + * | | Do | 1st, 2nd, ..., 365th, 366th | 7 | + * | | DD | 01, 02, ..., 365, 366 | 9 | + * | | DDD | 001, 002, ..., 365, 366 | | + * | | DDDD | ... | 3 | + * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | | + * | | EEEE | Monday, Tuesday, ..., Sunday | 2 | + * | | EEEEE | M, T, W, T, F, S, S | | + * | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | | + * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 | + * | | io | 1st, 2nd, ..., 7th | 7 | + * | | ii | 01, 02, ..., 07 | 7 | + * | | iii | Mon, Tue, Wed, ..., Sun | 7 | + * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 | + * | | iiiii | M, T, W, T, F, S, S | 7 | + * | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 7 | + * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | | + * | | eo | 2nd, 3rd, ..., 1st | 7 | + * | | ee | 02, 03, ..., 01 | | + * | | eee | Mon, Tue, Wed, ..., Sun | | + * | | eeee | Monday, Tuesday, ..., Sunday | 2 | + * | | eeeee | M, T, W, T, F, S, S | | + * | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | | + * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | | + * | | co | 2nd, 3rd, ..., 1st | 7 | + * | | cc | 02, 03, ..., 01 | | + * | | ccc | Mon, Tue, Wed, ..., Sun | | + * | | cccc | Monday, Tuesday, ..., Sunday | 2 | + * | | ccccc | M, T, W, T, F, S, S | | + * | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | | + * | AM, PM | a..aa | AM, PM | | + * | | aaa | am, pm | | + * | | aaaa | a.m., p.m. | 2 | + * | | aaaaa | a, p | | + * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | | + * | | bbb | am, pm, noon, midnight | | + * | | bbbb | a.m., p.m., noon, midnight | 2 | + * | | bbbbb | a, p, n, mi | | + * | Flexible day period | B..BBB | at night, in the morning, ... | | + * | | BBBB | at night, in the morning, ... | 2 | + * | | BBBBB | at night, in the morning, ... | | + * | Hour [1-12] | h | 1, 2, ..., 11, 12 | | + * | | ho | 1st, 2nd, ..., 11th, 12th | 7 | + * | | hh | 01, 02, ..., 11, 12 | | + * | Hour [0-23] | H | 0, 1, 2, ..., 23 | | + * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 | + * | | HH | 00, 01, 02, ..., 23 | | + * | Hour [0-11] | K | 1, 2, ..., 11, 0 | | + * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 | + * | | KK | 01, 02, ..., 11, 00 | | + * | Hour [1-24] | k | 24, 1, 2, ..., 23 | | + * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 | + * | | kk | 24, 01, 02, ..., 23 | | + * | Minute | m | 0, 1, ..., 59 | | + * | | mo | 0th, 1st, ..., 59th | 7 | + * | | mm | 00, 01, ..., 59 | | + * | Second | s | 0, 1, ..., 59 | | + * | | so | 0th, 1st, ..., 59th | 7 | + * | | ss | 00, 01, ..., 59 | | + * | Fraction of second | S | 0, 1, ..., 9 | | + * | | SS | 00, 01, ..., 99 | | + * | | SSS | 000, 001, ..., 999 | | + * | | SSSS | ... | 3 | + * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | | + * | | XX | -0800, +0530, Z | | + * | | XXX | -08:00, +05:30, Z | | + * | | XXXX | -0800, +0530, Z, +123456 | 2 | + * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | | + * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | | + * | | xx | -0800, +0530, +0000 | | + * | | xxx | -08:00, +05:30, +00:00 | 2 | + * | | xxxx | -0800, +0530, +0000, +123456 | | + * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | | + * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | | + * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 | + * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 | + * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 | + * | Seconds timestamp | t | 512969520 | 7 | + * | | tt | ... | 3,7 | + * | Milliseconds timestamp | T | 512969520900 | 7 | + * | | TT | ... | 3,7 | + * | Long localized date | P | 04/29/1453 | 7 | + * | | PP | Apr 29, 1453 | 7 | + * | | PPP | April 29th, 1453 | 7 | + * | | PPPP | Friday, April 29th, 1453 | 2,7 | + * | Long localized time | p | 12:00 AM | 7 | + * | | pp | 12:00:00 AM | 7 | + * | | ppp | 12:00:00 AM GMT+2 | 7 | + * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 | + * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 | + * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 | + * | | PPPppp | April 29th, 1453 at ... | 7 | + * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 | + * Notes: + * 1. "Formatting" units (e.g. formatting quarter) in the default en-US locale + * are the same as "stand-alone" units, but are different in some languages. + * "Formatting" units are declined according to the rules of the language + * in the context of a date. "Stand-alone" units are always nominative singular: + * + * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'` + * + * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'` + * + * 2. Any sequence of the identical letters is a pattern, unless it is escaped by + * the single quote characters (see below). + * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`) + * the output will be the same as default pattern for this unit, usually + * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units + * are marked with "2" in the last column of the table. + * + * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'` + * + * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'` + * + * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'` + * + * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'` + * + * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'` + * + * 3. Some patterns could be unlimited length (such as `yyyyyyyy`). + * The output will be padded with zeros to match the length of the pattern. + * + * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'` + * + * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales. + * These tokens represent the shortest form of the quarter. + * + * 5. The main difference between `y` and `u` patterns are B.C. years: + * + * | Year | `y` | `u` | + * |------|-----|-----| + * | AC 1 | 1 | 1 | + * | BC 1 | 1 | 0 | + * | BC 2 | 2 | -1 | + * + * Also `yy` always returns the last two digits of a year, + * while `uu` pads single digit years to 2 characters and returns other years unchanged: + * + * | Year | `yy` | `uu` | + * |------|------|------| + * | 1 | 01 | 01 | + * | 14 | 14 | 14 | + * | 376 | 76 | 376 | + * | 1453 | 53 | 1453 | + * + * The same difference is true for local and ISO week-numbering years (`Y` and `R`), + * except local week-numbering years are dependent on `options.weekStartsOn` + * and `options.firstWeekContainsDate` (compare [getISOWeekYear](https://date-fns.org/docs/getISOWeekYear) + * and [getWeekYear](https://date-fns.org/docs/getWeekYear)). + * + * 6. Specific non-location timezones are currently unavailable in `date-fns`, + * so right now these tokens fall back to GMT timezones. + * + * 7. These patterns are not in the Unicode Technical Standard #35: + * - `i`: ISO day of week + * - `I`: ISO week of year + * - `R`: ISO week-numbering year + * - `t`: seconds timestamp + * - `T`: milliseconds timestamp + * - `o`: ordinal number modifier + * - `P`: long localized date + * - `p`: long localized time + * + * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years. + * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * + * 9. `D` and `DD` tokens represent days of the year but they are often confused with days of the month. + * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * + * @param date - The original date + * @param format - The string of tokens + * @param options - An object with options + * + * @returns The formatted date string + * + * @throws `date` must not be Invalid Date + * @throws `options.locale` must contain `localize` property + * @throws `options.locale` must contain `formatLong` property + * @throws use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md + * @throws format string contains an unescaped latin alphabet character + * + * @example + * // Represent 11 February 2014 in middle-endian format: + * const result = format(new Date(2014, 1, 11), 'MM/dd/yyyy') + * //=> '02/11/2014' + * + * @example + * // Represent 2 July 2014 in Esperanto: + * import { eoLocale } from 'date-fns/locale/eo' + * const result = format(new Date(2014, 6, 2), "do 'de' MMMM yyyy", { + * locale: eoLocale + * }) + * //=> '2-a de julio 2014' + * + * @example + * // Escape string by single quote characters: + * const result = format(new Date(2014, 6, 2, 15), "h 'o''clock'") + * //=> "3 o'clock" + */ +function format(date, formatStr, options) { + const defaultOptions = (0,_lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_2__.getDefaultOptions)(); + const locale = options?.locale ?? defaultOptions.locale ?? _lib_defaultLocale_js__WEBPACK_IMPORTED_MODULE_3__.enUS; + + const firstWeekContainsDate = + options?.firstWeekContainsDate ?? + options?.locale?.options?.firstWeekContainsDate ?? + defaultOptions.firstWeekContainsDate ?? + defaultOptions.locale?.options?.firstWeekContainsDate ?? + 1; + + const weekStartsOn = + options?.weekStartsOn ?? + options?.locale?.options?.weekStartsOn ?? + defaultOptions.weekStartsOn ?? + defaultOptions.locale?.options?.weekStartsOn ?? + 0; + + const originalDate = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_4__.toDate)(date, options?.in); + + if (!(0,_isValid_js__WEBPACK_IMPORTED_MODULE_5__.isValid)(originalDate)) { + throw new RangeError("Invalid time value"); + } + + let parts = formatStr + .match(longFormattingTokensRegExp) + .map((substring) => { + const firstCharacter = substring[0]; + if (firstCharacter === "p" || firstCharacter === "P") { + const longFormatter = _lib_format_longFormatters_js__WEBPACK_IMPORTED_MODULE_1__.longFormatters[firstCharacter]; + return longFormatter(substring, locale.formatLong); + } + return substring; + }) + .join("") + .match(formattingTokensRegExp) + .map((substring) => { + // Replace two single quote characters with one single quote character + if (substring === "''") { + return { isToken: false, value: "'" }; + } + + const firstCharacter = substring[0]; + if (firstCharacter === "'") { + return { isToken: false, value: cleanEscapedString(substring) }; + } + + if (_lib_format_formatters_js__WEBPACK_IMPORTED_MODULE_0__.formatters[firstCharacter]) { + return { isToken: true, value: substring }; + } + + if (firstCharacter.match(unescapedLatinCharacterRegExp)) { + throw new RangeError( + "Format string contains an unescaped latin alphabet character `" + + firstCharacter + + "`", + ); + } + + return { isToken: false, value: substring }; + }); + + // invoke localize preprocessor (only for french locales at the moment) + if (locale.localize.preprocessor) { + parts = locale.localize.preprocessor(originalDate, parts); + } + + const formatterOptions = { + firstWeekContainsDate, + weekStartsOn, + locale, + }; + + return parts + .map((part) => { + if (!part.isToken) return part.value; + + const token = part.value; + + if ( + (!options?.useAdditionalWeekYearTokens && + (0,_lib_protectedTokens_js__WEBPACK_IMPORTED_MODULE_6__.isProtectedWeekYearToken)(token)) || + (!options?.useAdditionalDayOfYearTokens && + (0,_lib_protectedTokens_js__WEBPACK_IMPORTED_MODULE_6__.isProtectedDayOfYearToken)(token)) + ) { + (0,_lib_protectedTokens_js__WEBPACK_IMPORTED_MODULE_6__.warnOrThrowProtectedError)(token, formatStr, String(date)); + } + + const formatter = _lib_format_formatters_js__WEBPACK_IMPORTED_MODULE_0__.formatters[token[0]]; + return formatter(originalDate, token, locale.localize, formatterOptions); + }) + .join(""); +} + +function cleanEscapedString(input) { + const matched = input.match(escapedStringRegExp); + + if (!matched) { + return input; + } + + return matched[1].replace(doubleQuoteRegExp, "'"); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (format); + + +/***/ }), + +/***/ "./node_modules/date-fns/getDayOfYear.js": +/*!***********************************************!*\ + !*** ./node_modules/date-fns/getDayOfYear.js ***! + \***********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ getDayOfYear: () => (/* binding */ getDayOfYear) +/* harmony export */ }); +/* harmony import */ var _differenceInCalendarDays_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./differenceInCalendarDays.js */ "./node_modules/date-fns/differenceInCalendarDays.js"); +/* harmony import */ var _startOfYear_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./startOfYear.js */ "./node_modules/date-fns/startOfYear.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + + +/** + * The {@link getDayOfYear} function options. + */ + +/** + * @name getDayOfYear + * @category Day Helpers + * @summary Get the day of the year of the given date. + * + * @description + * Get the day of the year of the given date. + * + * @param date - The given date + * @param options - The options + * + * @returns The day of year + * + * @example + * // Which day of the year is 2 July 2014? + * const result = getDayOfYear(new Date(2014, 6, 2)) + * //=> 183 + */ +function getDayOfYear(date, options) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + const diff = (0,_differenceInCalendarDays_js__WEBPACK_IMPORTED_MODULE_1__.differenceInCalendarDays)(_date, (0,_startOfYear_js__WEBPACK_IMPORTED_MODULE_2__.startOfYear)(_date)); + const dayOfYear = diff + 1; + return dayOfYear; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getDayOfYear); + + +/***/ }), + +/***/ "./node_modules/date-fns/getISOWeek.js": +/*!*********************************************!*\ + !*** ./node_modules/date-fns/getISOWeek.js ***! + \*********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ getISOWeek: () => (/* binding */ getISOWeek) +/* harmony export */ }); +/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./constants.js */ "./node_modules/date-fns/constants.js"); +/* harmony import */ var _startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./startOfISOWeek.js */ "./node_modules/date-fns/startOfISOWeek.js"); +/* harmony import */ var _startOfISOWeekYear_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./startOfISOWeekYear.js */ "./node_modules/date-fns/startOfISOWeekYear.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + + + +/** + * The {@link getISOWeek} function options. + */ + +/** + * @name getISOWeek + * @category ISO Week Helpers + * @summary Get the ISO week of the given date. + * + * @description + * Get the ISO week of the given date. + * + * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date + * + * @param date - The given date + * @param options - The options + * + * @returns The ISO week + * + * @example + * // Which week of the ISO-week numbering year is 2 January 2005? + * const result = getISOWeek(new Date(2005, 0, 2)) + * //=> 53 + */ +function getISOWeek(date, options) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + const diff = +(0,_startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_1__.startOfISOWeek)(_date) - +(0,_startOfISOWeekYear_js__WEBPACK_IMPORTED_MODULE_2__.startOfISOWeekYear)(_date); + + // Round the number of weeks to the nearest integer because the number of + // milliseconds in a week is not constant (e.g. it's different in the week of + // the daylight saving time clock shift). + return Math.round(diff / _constants_js__WEBPACK_IMPORTED_MODULE_3__.millisecondsInWeek) + 1; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getISOWeek); + + +/***/ }), + +/***/ "./node_modules/date-fns/getISOWeekYear.js": +/*!*************************************************!*\ + !*** ./node_modules/date-fns/getISOWeekYear.js ***! + \*************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ getISOWeekYear: () => (/* binding */ getISOWeekYear) +/* harmony export */ }); +/* harmony import */ var _constructFrom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constructFrom.js */ "./node_modules/date-fns/constructFrom.js"); +/* harmony import */ var _startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./startOfISOWeek.js */ "./node_modules/date-fns/startOfISOWeek.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + + +/** + * The {@link getISOWeekYear} function options. + */ + +/** + * @name getISOWeekYear + * @category ISO Week-Numbering Year Helpers + * @summary Get the ISO week-numbering year of the given date. + * + * @description + * Get the ISO week-numbering year of the given date, + * which always starts 3 days before the year's first Thursday. + * + * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date + * + * @param date - The given date + * + * @returns The ISO week-numbering year + * + * @example + * // Which ISO-week numbering year is 2 January 2005? + * const result = getISOWeekYear(new Date(2005, 0, 2)) + * //=> 2004 + */ +function getISOWeekYear(date, options) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + const year = _date.getFullYear(); + + const fourthOfJanuaryOfNextYear = (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_1__.constructFrom)(_date, 0); + fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4); + fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0); + const startOfNextYear = (0,_startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_2__.startOfISOWeek)(fourthOfJanuaryOfNextYear); + + const fourthOfJanuaryOfThisYear = (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_1__.constructFrom)(_date, 0); + fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4); + fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0); + const startOfThisYear = (0,_startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_2__.startOfISOWeek)(fourthOfJanuaryOfThisYear); + + if (_date.getTime() >= startOfNextYear.getTime()) { + return year + 1; + } else if (_date.getTime() >= startOfThisYear.getTime()) { + return year; + } else { + return year - 1; + } +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getISOWeekYear); + + +/***/ }), + +/***/ "./node_modules/date-fns/getWeek.js": +/*!******************************************!*\ + !*** ./node_modules/date-fns/getWeek.js ***! + \******************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ getWeek: () => (/* binding */ getWeek) +/* harmony export */ }); +/* harmony import */ var _constants_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./constants.js */ "./node_modules/date-fns/constants.js"); +/* harmony import */ var _startOfWeek_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./startOfWeek.js */ "./node_modules/date-fns/startOfWeek.js"); +/* harmony import */ var _startOfWeekYear_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./startOfWeekYear.js */ "./node_modules/date-fns/startOfWeekYear.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + + + +/** + * The {@link getWeek} function options. + */ + +/** + * @name getWeek + * @category Week Helpers + * @summary Get the local week index of the given date. + * + * @description + * Get the local week index of the given date. + * The exact calculation depends on the values of + * `options.weekStartsOn` (which is the index of the first day of the week) + * and `options.firstWeekContainsDate` (which is the day of January, which is always in + * the first week of the week-numbering year) + * + * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system + * + * @param date - The given date + * @param options - An object with options + * + * @returns The week + * + * @example + * // Which week of the local week numbering year is 2 January 2005 with default options? + * const result = getWeek(new Date(2005, 0, 2)) + * //=> 2 + * + * @example + * // Which week of the local week numbering year is 2 January 2005, + * // if Monday is the first day of the week, + * // and the first week of the year always contains 4 January? + * const result = getWeek(new Date(2005, 0, 2), { + * weekStartsOn: 1, + * firstWeekContainsDate: 4 + * }) + * //=> 53 + */ +function getWeek(date, options) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + const diff = +(0,_startOfWeek_js__WEBPACK_IMPORTED_MODULE_1__.startOfWeek)(_date, options) - +(0,_startOfWeekYear_js__WEBPACK_IMPORTED_MODULE_2__.startOfWeekYear)(_date, options); + + // Round the number of weeks to the nearest integer because the number of + // milliseconds in a week is not constant (e.g. it's different in the week of + // the daylight saving time clock shift). + return Math.round(diff / _constants_js__WEBPACK_IMPORTED_MODULE_3__.millisecondsInWeek) + 1; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getWeek); + + +/***/ }), + +/***/ "./node_modules/date-fns/getWeekYear.js": +/*!**********************************************!*\ + !*** ./node_modules/date-fns/getWeekYear.js ***! + \**********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ getWeekYear: () => (/* binding */ getWeekYear) +/* harmony export */ }); +/* harmony import */ var _lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./_lib/defaultOptions.js */ "./node_modules/date-fns/_lib/defaultOptions.js"); +/* harmony import */ var _constructFrom_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constructFrom.js */ "./node_modules/date-fns/constructFrom.js"); +/* harmony import */ var _startOfWeek_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./startOfWeek.js */ "./node_modules/date-fns/startOfWeek.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + + + +/** + * The {@link getWeekYear} function options. + */ + +/** + * @name getWeekYear + * @category Week-Numbering Year Helpers + * @summary Get the local week-numbering year of the given date. + * + * @description + * Get the local week-numbering year of the given date. + * The exact calculation depends on the values of + * `options.weekStartsOn` (which is the index of the first day of the week) + * and `options.firstWeekContainsDate` (which is the day of January, which is always in + * the first week of the week-numbering year) + * + * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system + * + * @param date - The given date + * @param options - An object with options. + * + * @returns The local week-numbering year + * + * @example + * // Which week numbering year is 26 December 2004 with the default settings? + * const result = getWeekYear(new Date(2004, 11, 26)) + * //=> 2005 + * + * @example + * // Which week numbering year is 26 December 2004 if week starts on Saturday? + * const result = getWeekYear(new Date(2004, 11, 26), { weekStartsOn: 6 }) + * //=> 2004 + * + * @example + * // Which week numbering year is 26 December 2004 if the first week contains 4 January? + * const result = getWeekYear(new Date(2004, 11, 26), { firstWeekContainsDate: 4 }) + * //=> 2004 + */ +function getWeekYear(date, options) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + const year = _date.getFullYear(); + + const defaultOptions = (0,_lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_1__.getDefaultOptions)(); + const firstWeekContainsDate = + options?.firstWeekContainsDate ?? + options?.locale?.options?.firstWeekContainsDate ?? + defaultOptions.firstWeekContainsDate ?? + defaultOptions.locale?.options?.firstWeekContainsDate ?? + 1; + + const firstWeekOfNextYear = (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_2__.constructFrom)(options?.in || date, 0); + firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate); + firstWeekOfNextYear.setHours(0, 0, 0, 0); + const startOfNextYear = (0,_startOfWeek_js__WEBPACK_IMPORTED_MODULE_3__.startOfWeek)(firstWeekOfNextYear, options); + + const firstWeekOfThisYear = (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_2__.constructFrom)(options?.in || date, 0); + firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate); + firstWeekOfThisYear.setHours(0, 0, 0, 0); + const startOfThisYear = (0,_startOfWeek_js__WEBPACK_IMPORTED_MODULE_3__.startOfWeek)(firstWeekOfThisYear, options); + + if (+_date >= +startOfNextYear) { + return year + 1; + } else if (+_date >= +startOfThisYear) { + return year; + } else { + return year - 1; + } +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getWeekYear); + + +/***/ }), + +/***/ "./node_modules/date-fns/isDate.js": +/*!*****************************************!*\ + !*** ./node_modules/date-fns/isDate.js ***! + \*****************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ isDate: () => (/* binding */ isDate) +/* harmony export */ }); +/** + * @name isDate + * @category Common Helpers + * @summary Is the given value a date? + * + * @description + * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes. + * + * @param value - The value to check + * + * @returns True if the given value is a date + * + * @example + * // For a valid date: + * const result = isDate(new Date()) + * //=> true + * + * @example + * // For an invalid date: + * const result = isDate(new Date(NaN)) + * //=> true + * + * @example + * // For some value: + * const result = isDate('2014-02-31') + * //=> false + * + * @example + * // For an object: + * const result = isDate({}) + * //=> false + */ +function isDate(value) { + return ( + value instanceof Date || + (typeof value === "object" && + Object.prototype.toString.call(value) === "[object Date]") + ); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isDate); + + +/***/ }), + +/***/ "./node_modules/date-fns/isValid.js": +/*!******************************************!*\ + !*** ./node_modules/date-fns/isValid.js ***! + \******************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ isValid: () => (/* binding */ isValid) +/* harmony export */ }); +/* harmony import */ var _isDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isDate.js */ "./node_modules/date-fns/isDate.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + +/** + * @name isValid + * @category Common Helpers + * @summary Is the given date valid? + * + * @description + * Returns false if argument is Invalid Date and true otherwise. + * Argument is converted to Date using `toDate`. See [toDate](https://date-fns.org/docs/toDate) + * Invalid Date is a Date, whose time value is NaN. + * + * Time value of Date: http://es5.github.io/#x15.9.1.1 + * + * @param date - The date to check + * + * @returns The date is valid + * + * @example + * // For the valid date: + * const result = isValid(new Date(2014, 1, 31)) + * //=> true + * + * @example + * // For the value, convertible into a date: + * const result = isValid(1393804800000) + * //=> true + * + * @example + * // For the invalid date: + * const result = isValid(new Date('')) + * //=> false + */ +function isValid(date) { + return !((!(0,_isDate_js__WEBPACK_IMPORTED_MODULE_0__.isDate)(date) && typeof date !== "number") || isNaN(+(0,_toDate_js__WEBPACK_IMPORTED_MODULE_1__.toDate)(date))); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isValid); + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/_lib/buildFormatLongFn.js": +/*!****************************************************************!*\ + !*** ./node_modules/date-fns/locale/_lib/buildFormatLongFn.js ***! + \****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ buildFormatLongFn: () => (/* binding */ buildFormatLongFn) +/* harmony export */ }); +function buildFormatLongFn(args) { + return (options = {}) => { + // TODO: Remove String() + const width = options.width ? String(options.width) : args.defaultWidth; + const format = args.formats[width] || args.formats[args.defaultWidth]; + return format; + }; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/_lib/buildLocalizeFn.js": +/*!**************************************************************!*\ + !*** ./node_modules/date-fns/locale/_lib/buildLocalizeFn.js ***! + \**************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ buildLocalizeFn: () => (/* binding */ buildLocalizeFn) +/* harmony export */ }); +/** + * The localize function argument callback which allows to convert raw value to + * the actual type. + * + * @param value - The value to convert + * + * @returns The converted value + */ + +/** + * The map of localized values for each width. + */ + +/** + * The index type of the locale unit value. It types conversion of units of + * values that don't start at 0 (i.e. quarters). + */ + +/** + * Converts the unit value to the tuple of values. + */ + +/** + * The tuple of localized era values. The first element represents BC, + * the second element represents AD. + */ + +/** + * The tuple of localized quarter values. The first element represents Q1. + */ + +/** + * The tuple of localized day values. The first element represents Sunday. + */ + +/** + * The tuple of localized month values. The first element represents January. + */ + +function buildLocalizeFn(args) { + return (value, options) => { + const context = options?.context ? String(options.context) : "standalone"; + + let valuesArray; + if (context === "formatting" && args.formattingValues) { + const defaultWidth = args.defaultFormattingWidth || args.defaultWidth; + const width = options?.width ? String(options.width) : defaultWidth; + + valuesArray = + args.formattingValues[width] || args.formattingValues[defaultWidth]; + } else { + const defaultWidth = args.defaultWidth; + const width = options?.width ? String(options.width) : args.defaultWidth; + + valuesArray = args.values[width] || args.values[defaultWidth]; + } + const index = args.argumentCallback ? args.argumentCallback(value) : value; + + // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it! + return valuesArray[index]; + }; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/_lib/buildMatchFn.js": +/*!***********************************************************!*\ + !*** ./node_modules/date-fns/locale/_lib/buildMatchFn.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ buildMatchFn: () => (/* binding */ buildMatchFn) +/* harmony export */ }); +function buildMatchFn(args) { + return (string, options = {}) => { + const width = options.width; + + const matchPattern = + (width && args.matchPatterns[width]) || + args.matchPatterns[args.defaultMatchWidth]; + const matchResult = string.match(matchPattern); + + if (!matchResult) { + return null; + } + const matchedString = matchResult[0]; + + const parsePatterns = + (width && args.parsePatterns[width]) || + args.parsePatterns[args.defaultParseWidth]; + + const key = Array.isArray(parsePatterns) + ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString)) + : // [TODO] -- I challenge you to fix the type + findKey(parsePatterns, (pattern) => pattern.test(matchedString)); + + let value; + + value = args.valueCallback ? args.valueCallback(key) : key; + value = options.valueCallback + ? // [TODO] -- I challenge you to fix the type + options.valueCallback(value) + : value; + + const rest = string.slice(matchedString.length); + + return { value, rest }; + }; +} + +function findKey(object, predicate) { + for (const key in object) { + if ( + Object.prototype.hasOwnProperty.call(object, key) && + predicate(object[key]) + ) { + return key; + } + } + return undefined; +} + +function findIndex(array, predicate) { + for (let key = 0; key < array.length; key++) { + if (predicate(array[key])) { + return key; + } + } + return undefined; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/_lib/buildMatchPatternFn.js": +/*!******************************************************************!*\ + !*** ./node_modules/date-fns/locale/_lib/buildMatchPatternFn.js ***! + \******************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ buildMatchPatternFn: () => (/* binding */ buildMatchPatternFn) +/* harmony export */ }); +function buildMatchPatternFn(args) { + return (string, options = {}) => { + const matchResult = string.match(args.matchPattern); + if (!matchResult) return null; + const matchedString = matchResult[0]; + + const parseResult = string.match(args.parsePattern); + if (!parseResult) return null; + let value = args.valueCallback + ? args.valueCallback(parseResult[0]) + : parseResult[0]; + + // [TODO] I challenge you to fix the type + value = options.valueCallback ? options.valueCallback(value) : value; + + const rest = string.slice(matchedString.length); + + return { value, rest }; + }; +} + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/en-US.js": +/*!***********************************************!*\ + !*** ./node_modules/date-fns/locale/en-US.js ***! + \***********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ enUS: () => (/* binding */ enUS) +/* harmony export */ }); +/* harmony import */ var _en_US_lib_formatDistance_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./en-US/_lib/formatDistance.js */ "./node_modules/date-fns/locale/en-US/_lib/formatDistance.js"); +/* harmony import */ var _en_US_lib_formatLong_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./en-US/_lib/formatLong.js */ "./node_modules/date-fns/locale/en-US/_lib/formatLong.js"); +/* harmony import */ var _en_US_lib_formatRelative_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./en-US/_lib/formatRelative.js */ "./node_modules/date-fns/locale/en-US/_lib/formatRelative.js"); +/* harmony import */ var _en_US_lib_localize_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./en-US/_lib/localize.js */ "./node_modules/date-fns/locale/en-US/_lib/localize.js"); +/* harmony import */ var _en_US_lib_match_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./en-US/_lib/match.js */ "./node_modules/date-fns/locale/en-US/_lib/match.js"); + + + + + + +/** + * @category Locales + * @summary English locale (United States). + * @language English + * @iso-639-2 eng + * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp) + * @author Lesha Koss [@leshakoss](https://github.com/leshakoss) + */ +const enUS = { + code: "en-US", + formatDistance: _en_US_lib_formatDistance_js__WEBPACK_IMPORTED_MODULE_0__.formatDistance, + formatLong: _en_US_lib_formatLong_js__WEBPACK_IMPORTED_MODULE_1__.formatLong, + formatRelative: _en_US_lib_formatRelative_js__WEBPACK_IMPORTED_MODULE_2__.formatRelative, + localize: _en_US_lib_localize_js__WEBPACK_IMPORTED_MODULE_3__.localize, + match: _en_US_lib_match_js__WEBPACK_IMPORTED_MODULE_4__.match, + options: { + weekStartsOn: 0 /* Sunday */, + firstWeekContainsDate: 1, + }, +}; + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (enUS); + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/en-US/_lib/formatDistance.js": +/*!*******************************************************************!*\ + !*** ./node_modules/date-fns/locale/en-US/_lib/formatDistance.js ***! + \*******************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ formatDistance: () => (/* binding */ formatDistance) +/* harmony export */ }); +const formatDistanceLocale = { + lessThanXSeconds: { + one: "less than a second", + other: "less than {{count}} seconds", + }, + + xSeconds: { + one: "1 second", + other: "{{count}} seconds", + }, + + halfAMinute: "half a minute", + + lessThanXMinutes: { + one: "less than a minute", + other: "less than {{count}} minutes", + }, + + xMinutes: { + one: "1 minute", + other: "{{count}} minutes", + }, + + aboutXHours: { + one: "about 1 hour", + other: "about {{count}} hours", + }, + + xHours: { + one: "1 hour", + other: "{{count}} hours", + }, + + xDays: { + one: "1 day", + other: "{{count}} days", + }, + + aboutXWeeks: { + one: "about 1 week", + other: "about {{count}} weeks", + }, + + xWeeks: { + one: "1 week", + other: "{{count}} weeks", + }, + + aboutXMonths: { + one: "about 1 month", + other: "about {{count}} months", + }, + + xMonths: { + one: "1 month", + other: "{{count}} months", + }, + + aboutXYears: { + one: "about 1 year", + other: "about {{count}} years", + }, + + xYears: { + one: "1 year", + other: "{{count}} years", + }, + + overXYears: { + one: "over 1 year", + other: "over {{count}} years", + }, + + almostXYears: { + one: "almost 1 year", + other: "almost {{count}} years", + }, +}; + +const formatDistance = (token, count, options) => { + let result; + + const tokenValue = formatDistanceLocale[token]; + if (typeof tokenValue === "string") { + result = tokenValue; + } else if (count === 1) { + result = tokenValue.one; + } else { + result = tokenValue.other.replace("{{count}}", count.toString()); + } + + if (options?.addSuffix) { + if (options.comparison && options.comparison > 0) { + return "in " + result; + } else { + return result + " ago"; + } + } + + return result; +}; + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/en-US/_lib/formatLong.js": +/*!***************************************************************!*\ + !*** ./node_modules/date-fns/locale/en-US/_lib/formatLong.js ***! + \***************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ formatLong: () => (/* binding */ formatLong) +/* harmony export */ }); +/* harmony import */ var _lib_buildFormatLongFn_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../_lib/buildFormatLongFn.js */ "./node_modules/date-fns/locale/_lib/buildFormatLongFn.js"); + + +const dateFormats = { + full: "EEEE, MMMM do, y", + long: "MMMM do, y", + medium: "MMM d, y", + short: "MM/dd/yyyy", +}; + +const timeFormats = { + full: "h:mm:ss a zzzz", + long: "h:mm:ss a z", + medium: "h:mm:ss a", + short: "h:mm a", +}; + +const dateTimeFormats = { + full: "{{date}} 'at' {{time}}", + long: "{{date}} 'at' {{time}}", + medium: "{{date}}, {{time}}", + short: "{{date}}, {{time}}", +}; + +const formatLong = { + date: (0,_lib_buildFormatLongFn_js__WEBPACK_IMPORTED_MODULE_0__.buildFormatLongFn)({ + formats: dateFormats, + defaultWidth: "full", + }), + + time: (0,_lib_buildFormatLongFn_js__WEBPACK_IMPORTED_MODULE_0__.buildFormatLongFn)({ + formats: timeFormats, + defaultWidth: "full", + }), + + dateTime: (0,_lib_buildFormatLongFn_js__WEBPACK_IMPORTED_MODULE_0__.buildFormatLongFn)({ + formats: dateTimeFormats, + defaultWidth: "full", + }), +}; + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/en-US/_lib/formatRelative.js": +/*!*******************************************************************!*\ + !*** ./node_modules/date-fns/locale/en-US/_lib/formatRelative.js ***! + \*******************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ formatRelative: () => (/* binding */ formatRelative) +/* harmony export */ }); +const formatRelativeLocale = { + lastWeek: "'last' eeee 'at' p", + yesterday: "'yesterday at' p", + today: "'today at' p", + tomorrow: "'tomorrow at' p", + nextWeek: "eeee 'at' p", + other: "P", +}; + +const formatRelative = (token, _date, _baseDate, _options) => + formatRelativeLocale[token]; + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/en-US/_lib/localize.js": +/*!*************************************************************!*\ + !*** ./node_modules/date-fns/locale/en-US/_lib/localize.js ***! + \*************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ localize: () => (/* binding */ localize) +/* harmony export */ }); +/* harmony import */ var _lib_buildLocalizeFn_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../_lib/buildLocalizeFn.js */ "./node_modules/date-fns/locale/_lib/buildLocalizeFn.js"); + + +const eraValues = { + narrow: ["B", "A"], + abbreviated: ["BC", "AD"], + wide: ["Before Christ", "Anno Domini"], +}; + +const quarterValues = { + narrow: ["1", "2", "3", "4"], + abbreviated: ["Q1", "Q2", "Q3", "Q4"], + wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"], +}; + +// Note: in English, the names of days of the week and months are capitalized. +// If you are making a new locale based on this one, check if the same is true for the language you're working on. +// Generally, formatted dates should look like they are in the middle of a sentence, +// e.g. in Spanish language the weekdays and months should be in the lowercase. +const monthValues = { + narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"], + abbreviated: [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec", + ], + + wide: [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December", + ], +}; + +const dayValues = { + narrow: ["S", "M", "T", "W", "T", "F", "S"], + short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], + abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], + wide: [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + ], +}; + +const dayPeriodValues = { + narrow: { + am: "a", + pm: "p", + midnight: "mi", + noon: "n", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night", + }, + abbreviated: { + am: "AM", + pm: "PM", + midnight: "midnight", + noon: "noon", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night", + }, + wide: { + am: "a.m.", + pm: "p.m.", + midnight: "midnight", + noon: "noon", + morning: "morning", + afternoon: "afternoon", + evening: "evening", + night: "night", + }, +}; + +const formattingDayPeriodValues = { + narrow: { + am: "a", + pm: "p", + midnight: "mi", + noon: "n", + morning: "in the morning", + afternoon: "in the afternoon", + evening: "in the evening", + night: "at night", + }, + abbreviated: { + am: "AM", + pm: "PM", + midnight: "midnight", + noon: "noon", + morning: "in the morning", + afternoon: "in the afternoon", + evening: "in the evening", + night: "at night", + }, + wide: { + am: "a.m.", + pm: "p.m.", + midnight: "midnight", + noon: "noon", + morning: "in the morning", + afternoon: "in the afternoon", + evening: "in the evening", + night: "at night", + }, +}; + +const ordinalNumber = (dirtyNumber, _options) => { + const number = Number(dirtyNumber); + + // If ordinal numbers depend on context, for example, + // if they are different for different grammatical genders, + // use `options.unit`. + // + // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear', + // 'day', 'hour', 'minute', 'second'. + + const rem100 = number % 100; + if (rem100 > 20 || rem100 < 10) { + switch (rem100 % 10) { + case 1: + return number + "st"; + case 2: + return number + "nd"; + case 3: + return number + "rd"; + } + } + return number + "th"; +}; + +const localize = { + ordinalNumber, + + era: (0,_lib_buildLocalizeFn_js__WEBPACK_IMPORTED_MODULE_0__.buildLocalizeFn)({ + values: eraValues, + defaultWidth: "wide", + }), + + quarter: (0,_lib_buildLocalizeFn_js__WEBPACK_IMPORTED_MODULE_0__.buildLocalizeFn)({ + values: quarterValues, + defaultWidth: "wide", + argumentCallback: (quarter) => quarter - 1, + }), + + month: (0,_lib_buildLocalizeFn_js__WEBPACK_IMPORTED_MODULE_0__.buildLocalizeFn)({ + values: monthValues, + defaultWidth: "wide", + }), + + day: (0,_lib_buildLocalizeFn_js__WEBPACK_IMPORTED_MODULE_0__.buildLocalizeFn)({ + values: dayValues, + defaultWidth: "wide", + }), + + dayPeriod: (0,_lib_buildLocalizeFn_js__WEBPACK_IMPORTED_MODULE_0__.buildLocalizeFn)({ + values: dayPeriodValues, + defaultWidth: "wide", + formattingValues: formattingDayPeriodValues, + defaultFormattingWidth: "wide", + }), +}; + + +/***/ }), + +/***/ "./node_modules/date-fns/locale/en-US/_lib/match.js": +/*!**********************************************************!*\ + !*** ./node_modules/date-fns/locale/en-US/_lib/match.js ***! + \**********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ match: () => (/* binding */ match) +/* harmony export */ }); +/* harmony import */ var _lib_buildMatchFn_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../_lib/buildMatchFn.js */ "./node_modules/date-fns/locale/_lib/buildMatchFn.js"); +/* harmony import */ var _lib_buildMatchPatternFn_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../_lib/buildMatchPatternFn.js */ "./node_modules/date-fns/locale/_lib/buildMatchPatternFn.js"); + + + +const matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i; +const parseOrdinalNumberPattern = /\d+/i; + +const matchEraPatterns = { + narrow: /^(b|a)/i, + abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i, + wide: /^(before christ|before common era|anno domini|common era)/i, +}; +const parseEraPatterns = { + any: [/^b/i, /^(a|c)/i], +}; + +const matchQuarterPatterns = { + narrow: /^[1234]/i, + abbreviated: /^q[1234]/i, + wide: /^[1234](th|st|nd|rd)? quarter/i, +}; +const parseQuarterPatterns = { + any: [/1/i, /2/i, /3/i, /4/i], +}; + +const matchMonthPatterns = { + narrow: /^[jfmasond]/i, + abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i, + wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i, +}; +const parseMonthPatterns = { + narrow: [ + /^j/i, + /^f/i, + /^m/i, + /^a/i, + /^m/i, + /^j/i, + /^j/i, + /^a/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i, + ], + + any: [ + /^ja/i, + /^f/i, + /^mar/i, + /^ap/i, + /^may/i, + /^jun/i, + /^jul/i, + /^au/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i, + ], +}; + +const matchDayPatterns = { + narrow: /^[smtwf]/i, + short: /^(su|mo|tu|we|th|fr|sa)/i, + abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i, + wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i, +}; +const parseDayPatterns = { + narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i], + any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i], +}; + +const matchDayPeriodPatterns = { + narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i, + any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i, +}; +const parseDayPeriodPatterns = { + any: { + am: /^a/i, + pm: /^p/i, + midnight: /^mi/i, + noon: /^no/i, + morning: /morning/i, + afternoon: /afternoon/i, + evening: /evening/i, + night: /night/i, + }, +}; + +const match = { + ordinalNumber: (0,_lib_buildMatchPatternFn_js__WEBPACK_IMPORTED_MODULE_0__.buildMatchPatternFn)({ + matchPattern: matchOrdinalNumberPattern, + parsePattern: parseOrdinalNumberPattern, + valueCallback: (value) => parseInt(value, 10), + }), + + era: (0,_lib_buildMatchFn_js__WEBPACK_IMPORTED_MODULE_1__.buildMatchFn)({ + matchPatterns: matchEraPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseEraPatterns, + defaultParseWidth: "any", + }), + + quarter: (0,_lib_buildMatchFn_js__WEBPACK_IMPORTED_MODULE_1__.buildMatchFn)({ + matchPatterns: matchQuarterPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseQuarterPatterns, + defaultParseWidth: "any", + valueCallback: (index) => index + 1, + }), + + month: (0,_lib_buildMatchFn_js__WEBPACK_IMPORTED_MODULE_1__.buildMatchFn)({ + matchPatterns: matchMonthPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseMonthPatterns, + defaultParseWidth: "any", + }), + + day: (0,_lib_buildMatchFn_js__WEBPACK_IMPORTED_MODULE_1__.buildMatchFn)({ + matchPatterns: matchDayPatterns, + defaultMatchWidth: "wide", + parsePatterns: parseDayPatterns, + defaultParseWidth: "any", + }), + + dayPeriod: (0,_lib_buildMatchFn_js__WEBPACK_IMPORTED_MODULE_1__.buildMatchFn)({ + matchPatterns: matchDayPeriodPatterns, + defaultMatchWidth: "any", + parsePatterns: parseDayPeriodPatterns, + defaultParseWidth: "any", + }), +}; + + +/***/ }), + +/***/ "./node_modules/date-fns/startOfDay.js": +/*!*********************************************!*\ + !*** ./node_modules/date-fns/startOfDay.js ***! + \*********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ startOfDay: () => (/* binding */ startOfDay) +/* harmony export */ }); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + +/** + * The {@link startOfDay} function options. + */ + +/** + * @name startOfDay + * @category Day Helpers + * @summary Return the start of a day for the given date. + * + * @description + * Return the start of a day for the given date. + * The result will be in the local timezone. + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. + * + * @param date - The original date + * @param options - The options + * + * @returns The start of a day + * + * @example + * // The start of a day for 2 September 2014 11:55:00: + * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0)) + * //=> Tue Sep 02 2014 00:00:00 + */ +function startOfDay(date, options) { + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + _date.setHours(0, 0, 0, 0); + return _date; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (startOfDay); + + +/***/ }), + +/***/ "./node_modules/date-fns/startOfISOWeek.js": +/*!*************************************************!*\ + !*** ./node_modules/date-fns/startOfISOWeek.js ***! + \*************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ startOfISOWeek: () => (/* binding */ startOfISOWeek) +/* harmony export */ }); +/* harmony import */ var _startOfWeek_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./startOfWeek.js */ "./node_modules/date-fns/startOfWeek.js"); + + +/** + * The {@link startOfISOWeek} function options. + */ + +/** + * @name startOfISOWeek + * @category ISO Week Helpers + * @summary Return the start of an ISO week for the given date. + * + * @description + * Return the start of an ISO week for the given date. + * The result will be in the local timezone. + * + * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. + * + * @param date - The original date + * @param options - An object with options + * + * @returns The start of an ISO week + * + * @example + * // The start of an ISO week for 2 September 2014 11:55:00: + * const result = startOfISOWeek(new Date(2014, 8, 2, 11, 55, 0)) + * //=> Mon Sep 01 2014 00:00:00 + */ +function startOfISOWeek(date, options) { + return (0,_startOfWeek_js__WEBPACK_IMPORTED_MODULE_0__.startOfWeek)(date, { ...options, weekStartsOn: 1 }); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (startOfISOWeek); + + +/***/ }), + +/***/ "./node_modules/date-fns/startOfISOWeekYear.js": +/*!*****************************************************!*\ + !*** ./node_modules/date-fns/startOfISOWeekYear.js ***! + \*****************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ startOfISOWeekYear: () => (/* binding */ startOfISOWeekYear) +/* harmony export */ }); +/* harmony import */ var _constructFrom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constructFrom.js */ "./node_modules/date-fns/constructFrom.js"); +/* harmony import */ var _getISOWeekYear_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getISOWeekYear.js */ "./node_modules/date-fns/getISOWeekYear.js"); +/* harmony import */ var _startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./startOfISOWeek.js */ "./node_modules/date-fns/startOfISOWeek.js"); + + + + +/** + * The {@link startOfISOWeekYear} function options. + */ + +/** + * @name startOfISOWeekYear + * @category ISO Week-Numbering Year Helpers + * @summary Return the start of an ISO week-numbering year for the given date. + * + * @description + * Return the start of an ISO week-numbering year, + * which always starts 3 days before the year's first Thursday. + * The result will be in the local timezone. + * + * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. + * + * @param date - The original date + * @param options - An object with options + * + * @returns The start of an ISO week-numbering year + * + * @example + * // The start of an ISO week-numbering year for 2 July 2005: + * const result = startOfISOWeekYear(new Date(2005, 6, 2)) + * //=> Mon Jan 03 2005 00:00:00 + */ +function startOfISOWeekYear(date, options) { + const year = (0,_getISOWeekYear_js__WEBPACK_IMPORTED_MODULE_0__.getISOWeekYear)(date, options); + const fourthOfJanuary = (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_1__.constructFrom)(options?.in || date, 0); + fourthOfJanuary.setFullYear(year, 0, 4); + fourthOfJanuary.setHours(0, 0, 0, 0); + return (0,_startOfISOWeek_js__WEBPACK_IMPORTED_MODULE_2__.startOfISOWeek)(fourthOfJanuary); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (startOfISOWeekYear); + + +/***/ }), + +/***/ "./node_modules/date-fns/startOfWeek.js": +/*!**********************************************!*\ + !*** ./node_modules/date-fns/startOfWeek.js ***! + \**********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ startOfWeek: () => (/* binding */ startOfWeek) +/* harmony export */ }); +/* harmony import */ var _lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_lib/defaultOptions.js */ "./node_modules/date-fns/_lib/defaultOptions.js"); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + + +/** + * The {@link startOfWeek} function options. + */ + +/** + * @name startOfWeek + * @category Week Helpers + * @summary Return the start of a week for the given date. + * + * @description + * Return the start of a week for the given date. + * The result will be in the local timezone. + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. + * + * @param date - The original date + * @param options - An object with options + * + * @returns The start of a week + * + * @example + * // The start of a week for 2 September 2014 11:55:00: + * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0)) + * //=> Sun Aug 31 2014 00:00:00 + * + * @example + * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00: + * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 }) + * //=> Mon Sep 01 2014 00:00:00 + */ +function startOfWeek(date, options) { + const defaultOptions = (0,_lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_0__.getDefaultOptions)(); + const weekStartsOn = + options?.weekStartsOn ?? + options?.locale?.options?.weekStartsOn ?? + defaultOptions.weekStartsOn ?? + defaultOptions.locale?.options?.weekStartsOn ?? + 0; + + const _date = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_1__.toDate)(date, options?.in); + const day = _date.getDay(); + const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn; + + _date.setDate(_date.getDate() - diff); + _date.setHours(0, 0, 0, 0); + return _date; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (startOfWeek); + + +/***/ }), + +/***/ "./node_modules/date-fns/startOfWeekYear.js": +/*!**************************************************!*\ + !*** ./node_modules/date-fns/startOfWeekYear.js ***! + \**************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ startOfWeekYear: () => (/* binding */ startOfWeekYear) +/* harmony export */ }); +/* harmony import */ var _lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_lib/defaultOptions.js */ "./node_modules/date-fns/_lib/defaultOptions.js"); +/* harmony import */ var _constructFrom_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constructFrom.js */ "./node_modules/date-fns/constructFrom.js"); +/* harmony import */ var _getWeekYear_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getWeekYear.js */ "./node_modules/date-fns/getWeekYear.js"); +/* harmony import */ var _startOfWeek_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./startOfWeek.js */ "./node_modules/date-fns/startOfWeek.js"); + + + + + +/** + * The {@link startOfWeekYear} function options. + */ + +/** + * @name startOfWeekYear + * @category Week-Numbering Year Helpers + * @summary Return the start of a local week-numbering year for the given date. + * + * @description + * Return the start of a local week-numbering year. + * The exact calculation depends on the values of + * `options.weekStartsOn` (which is the index of the first day of the week) + * and `options.firstWeekContainsDate` (which is the day of January, which is always in + * the first week of the week-numbering year) + * + * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type. + * + * @param date - The original date + * @param options - An object with options + * + * @returns The start of a week-numbering year + * + * @example + * // The start of an a week-numbering year for 2 July 2005 with default settings: + * const result = startOfWeekYear(new Date(2005, 6, 2)) + * //=> Sun Dec 26 2004 00:00:00 + * + * @example + * // The start of a week-numbering year for 2 July 2005 + * // if Monday is the first day of week + * // and 4 January is always in the first week of the year: + * const result = startOfWeekYear(new Date(2005, 6, 2), { + * weekStartsOn: 1, + * firstWeekContainsDate: 4 + * }) + * //=> Mon Jan 03 2005 00:00:00 + */ +function startOfWeekYear(date, options) { + const defaultOptions = (0,_lib_defaultOptions_js__WEBPACK_IMPORTED_MODULE_0__.getDefaultOptions)(); + const firstWeekContainsDate = + options?.firstWeekContainsDate ?? + options?.locale?.options?.firstWeekContainsDate ?? + defaultOptions.firstWeekContainsDate ?? + defaultOptions.locale?.options?.firstWeekContainsDate ?? + 1; + + const year = (0,_getWeekYear_js__WEBPACK_IMPORTED_MODULE_1__.getWeekYear)(date, options); + const firstWeek = (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_2__.constructFrom)(options?.in || date, 0); + firstWeek.setFullYear(year, 0, firstWeekContainsDate); + firstWeek.setHours(0, 0, 0, 0); + const _date = (0,_startOfWeek_js__WEBPACK_IMPORTED_MODULE_3__.startOfWeek)(firstWeek, options); + return _date; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (startOfWeekYear); + + +/***/ }), + +/***/ "./node_modules/date-fns/startOfYear.js": +/*!**********************************************!*\ + !*** ./node_modules/date-fns/startOfYear.js ***! + \**********************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ startOfYear: () => (/* binding */ startOfYear) +/* harmony export */ }); +/* harmony import */ var _toDate_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toDate.js */ "./node_modules/date-fns/toDate.js"); + + +/** + * The {@link startOfYear} function options. + */ + +/** + * @name startOfYear + * @category Year Helpers + * @summary Return the start of a year for the given date. + * + * @description + * Return the start of a year for the given date. + * The result will be in the local timezone. + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. + * + * @param date - The original date + * @param options - The options + * + * @returns The start of a year + * + * @example + * // The start of a year for 2 September 2014 11:55:00: + * const result = startOfYear(new Date(2014, 8, 2, 11, 55, 00)) + * //=> Wed Jan 01 2014 00:00:00 + */ +function startOfYear(date, options) { + const date_ = (0,_toDate_js__WEBPACK_IMPORTED_MODULE_0__.toDate)(date, options?.in); + date_.setFullYear(date_.getFullYear(), 0, 1); + date_.setHours(0, 0, 0, 0); + return date_; +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (startOfYear); + + +/***/ }), + +/***/ "./node_modules/date-fns/toDate.js": +/*!*****************************************!*\ + !*** ./node_modules/date-fns/toDate.js ***! + \*****************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), +/* harmony export */ toDate: () => (/* binding */ toDate) +/* harmony export */ }); +/* harmony import */ var _constructFrom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constructFrom.js */ "./node_modules/date-fns/constructFrom.js"); + + +/** + * @name toDate + * @category Common Helpers + * @summary Convert the given argument to an instance of Date. + * + * @description + * Convert the given argument to an instance of Date. + * + * If the argument is an instance of Date, the function returns its clone. + * + * If the argument is a number, it is treated as a timestamp. + * + * If the argument is none of the above, the function returns Invalid Date. + * + * Starting from v3.7.0, it clones a date using `[Symbol.for("constructDateFrom")]` + * enabling to transfer extra properties from the reference date to the new date. + * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz) + * that accept a time zone as a constructor argument. + * + * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`. + * + * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc). + * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments. + * + * @param argument - The value to convert + * + * @returns The parsed date in the local time zone + * + * @example + * // Clone the date: + * const result = toDate(new Date(2014, 1, 11, 11, 30, 30)) + * //=> Tue Feb 11 2014 11:30:30 + * + * @example + * // Convert the timestamp to date: + * const result = toDate(1392098430000) + * //=> Tue Feb 11 2014 11:30:30 + */ +function toDate(argument, context) { + // [TODO] Get rid of `toDate` or `constructFrom`? + return (0,_constructFrom_js__WEBPACK_IMPORTED_MODULE_0__.constructFrom)(context || argument, argument); +} + +// Fallback for modularized imports: +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toDate); + + +/***/ }), + +/***/ "./node_modules/domelementtype/lib/index.js": +/*!**************************************************!*\ + !*** ./node_modules/domelementtype/lib/index.js ***! + \**************************************************/ +/***/ ((__unused_webpack_module, exports) => { + +"use strict"; + +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.Doctype = exports.CDATA = exports.Tag = exports.Style = exports.Script = exports.Comment = exports.Directive = exports.Text = exports.Root = exports.isTag = exports.ElementType = void 0; +/** Types of elements found in htmlparser2's DOM */ +var ElementType; +(function (ElementType) { + /** Type for the root element of a document */ + ElementType["Root"] = "root"; + /** Type for Text */ + ElementType["Text"] = "text"; + /** Type for */ + ElementType["Directive"] = "directive"; + /** Type for */ + ElementType["Comment"] = "comment"; + /** Type for