Plugin Directory

Changeset 3133802


Ignore:
Timestamp:
08/11/2024 05:53:40 PM (16 months ago)
Author:
martin7ba
Message:

Enabled to successfully pull custom fields from Custom Post Types

Location:
simple-star-rating-block
Files:
23 added
9 edited

Legend:

Unmodified
Added
Removed
  • simple-star-rating-block/trunk/README.md

    r3133729 r3133802  
    33Tags: block, star rating, Gutenberg, custom fields, reviews
    44Tested up to: 6.6.1
    5 Stable tag: 0.1.0
     5Stable tag: 0.1.1
    66License: GPL-2.0-or-later
    77License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    3535== Frequently Asked Questions ==
    3636
    37 = How do I add a star rating to a post or page? =
     37= How do I add a star rating to a post, page or custom post type? =
    3838
    3939Simply add the "Star Rating Block" from the Gutenberg block inserter, then set your desired rating or link it to a custom field.
     
    4242
    4343Yes, you can customize the size, color, and style of the stars through the block settings in the Gutenberg editor.
     44
     45= I don't see ACF fields in the Custom Field Key List? =
     46
     47To see the ACF fields in the list you need to enable the ACF Group where the field is to show in the REST API. See screenshot 4 on how to do that.
    4448
    4549== Screenshots ==
     
    5155
    5256== Changelog ==
     57
     58= 0.1.1 =
     59
     60- Enabled to successfully pull custom fields from Custom Post Types
     61  _Release Date - 11 August 2024_
    5362
    5463= 0.1.0 =
  • simple-star-rating-block/trunk/build/index.asset.php

    r3133729 r3133802  
    1 <?php return array('dependencies' => array('react', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n', 'wp-primitives'), 'version' => '0e52d5599720806c1e87');
     1<?php return array('dependencies' => array('react', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n', 'wp-primitives'), 'version' => '92aea4f941fef17bf646');
  • simple-star-rating-block/trunk/build/index.css.map

    r3133729 r3133802  
    1 {"version":3,"file":"index.css","mappings":";;;AAAA;EACI;EACA;EACA;AACJ;AACI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AACR;AACQ;EACI;AACZ;AAEQ;EACI;AAAZ;AAGQ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AADZ;AAKY;EAEI;AAJhB;AAEY;EAEI;AADhB;AADY;EAEI;AAEhB;AAJY;EAEI;AAKhB;AAPY;EAEI;AAQhB;AAVY;EAEI;AAWhB;AAbY;EAEI;AAchB;AAhBY;EAEI;AAiBhB;AAnBY;EAEI;AAoBhB;AAtBY;EAEI;AAuBhB;AAzBY;EAEI;AA0BhB;AA5BY;EAEI;AA6BhB;AA/BY;EAEI;AAgChB;AAlCY;EAEI;AAmChB;AArCY;EAEI;AAsChB;AAxCY;EAEI;AAyChB;AA3CY;EAEI;AA4ChB;AA9CY;EAEI;AA+ChB;AAjDY;EAEI;AAkDhB;AApDY;EAEI;AAqDhB;AAvDY;EAEI;AAwDhB;AA1DY;EAEI;AA2DhB;AA7DY;EAEI;AA8DhB;AAhEY;EAEI;AAiEhB;AAnEY;EAEI;AAoEhB;AAtEY;EAEI;AAuEhB;AAzEY;EAEI;AA0EhB;AA5EY;EAEI;AA6EhB;AA/EY;EAEI;AAgFhB;AAlFY;EAEI;AAmFhB;AArFY;EAEI;AAsFhB;AAxFY;EAEI;AAyFhB;AA3FY;EAEI;AA4FhB;AA9FY;EAEI;AA+FhB;AAjGY;EAEI;AAkGhB;AApGY;EAEI;AAqGhB;AAvGY;EAEI;AAwGhB;AA1GY;EAEI;AA2GhB;AA7GY;EAEI;AA8GhB;AAhHY;EAEI;AAiHhB;AAnHY;EAEI;AAoHhB;AAtHY;EAEI;AAuHhB;AAzHY;EAEI;AA0HhB;AA5HY;EAEI;AA6HhB;AA/HY;EAEI;AAgIhB;AAlIY;EAEI;AAmIhB;AArIY;EAEI;AAsIhB;AAxIY;EAEI;AAyIhB;AA3IY;EAEI;AA4IhB;AA9IY;EAEI;AA+IhB;AAjJY;EAEI;AAkJhB;AApJY;EAEI;AAqJhB;AAvJY;EAEI;AAwJhB;AA1JY;EAEI;AA2JhB;AA7JY;EAEI;AA8JhB;AAhKY;EAEI;AAiKhB;AAnKY;EAEI;AAoKhB;AAtKY;EAEI;AAuKhB;AAzKY;EAEI;AA0KhB;AA5KY;EAEI;AA6KhB;AA/KY;EAEI;AAgLhB;AAlLY;EAEI;AAmLhB;AArLY;EAEI;AAsLhB;AAxLY;EAEI;AAyLhB;AA3LY;EAEI;AA4LhB;AA9LY;EAEI;AA+LhB;AAjMY;EAEI;AAkMhB;AApMY;EAEI;AAqMhB;AAvMY;EAEI;AAwMhB;AA1MY;EAEI;AA2MhB;AA7MY;EAEI;AA8MhB;AAhNY;EAEI;AAiNhB;AAnNY;EAEI;AAoNhB;AAtNY;EAEI;AAuNhB;AAzNY;EAEI;AA0NhB;AA5NY;EAEI;AA6NhB;AA/NY;EAEI;AAgOhB;AAlOY;EAEI;AAmOhB;AArOY;EAEI;AAsOhB;AAxOY;EAEI;AAyOhB;AA3OY;EAEI;AA4OhB;AA9OY;EAEI;AA+OhB;AAjPY;EAEI;AAkPhB;AApPY;EAEI;AAqPhB;AAvPY;EAEI;AAwPhB;AA1PY;EAEI;AA2PhB;AA7PY;EAEI;AA8PhB;AAhQY;EAEI;AAiQhB;AAnQY;EAEI;AAoQhB;AAtQY;EAEI;AAuQhB;AAzQY;EAEI;AA0QhB;AA5QY;EAEI;AA6QhB;AA/QY;EAEI;AAgRhB;AAlRY;EAEI;AAmRhB;AArRY;EAEI;AAsRhB;AAxRY;EAEI;AAyRhB;AA3RY;EAEI;AA4RhB;AA9RY;EAEI;AA+RhB;AAjSY;EAEI;AAkShB,C","sources":["webpack://simple-star-rating-block/./src/editor.scss"],"sourcesContent":[".wp-block-create-block-simple-star-rating-block {\n    display: inline-block;\n    font-size: 0;\n    position: relative;\n\n    .ssrb-star {\n        width: 1em; // Adjusted to scale with font size\n        height: 1em; // Adjusted to scale with font size\n        margin: 0 0.1em;\n        display: inline-block;\n        background: lightgray;\n        clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);\n        position: relative;\n\n        &:last-child {\n            margin: 0;\n        }\n\n        &.ssrb-full {\n            background: inherit; // Star color will be inherited from inline styles\n        }\n\n        &::after {\n            content: '';\n            position: absolute;\n            top: 0;\n            left: 0;\n            width: 100%;\n            height: 100%;\n            clip-path: inherit;\n        }\n\n        @for $i from 1 through 99 {\n            &.ssrb-perc-#{$i}::after {\n                $percent: #{$i} + '%';\n                background: linear-gradient(90deg, inherit $percent, transparent $percent); // Star color will be inherited from inline styles\n            }\n        }\n    }\n}\n"],"names":[],"sourceRoot":""}
     1{"version":3,"file":"index.css","mappings":";;;AAAA;EACI;EACA;EACA;AACJ;AACI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AACR;AACQ;EACI;AACZ;AAEQ;EACI;AAAZ;AAGQ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AADZ;AAKY;EAEI;AAJhB;AAEY;EAEI;AADhB;AADY;EAEI;AAEhB;AAJY;EAEI;AAKhB;AAPY;EAEI;AAQhB;AAVY;EAEI;AAWhB;AAbY;EAEI;AAchB;AAhBY;EAEI;AAiBhB;AAnBY;EAEI;AAoBhB;AAtBY;EAEI;AAuBhB;AAzBY;EAEI;AA0BhB;AA5BY;EAEI;AA6BhB;AA/BY;EAEI;AAgChB;AAlCY;EAEI;AAmChB;AArCY;EAEI;AAsChB;AAxCY;EAEI;AAyChB;AA3CY;EAEI;AA4ChB;AA9CY;EAEI;AA+ChB;AAjDY;EAEI;AAkDhB;AApDY;EAEI;AAqDhB;AAvDY;EAEI;AAwDhB;AA1DY;EAEI;AA2DhB;AA7DY;EAEI;AA8DhB;AAhEY;EAEI;AAiEhB;AAnEY;EAEI;AAoEhB;AAtEY;EAEI;AAuEhB;AAzEY;EAEI;AA0EhB;AA5EY;EAEI;AA6EhB;AA/EY;EAEI;AAgFhB;AAlFY;EAEI;AAmFhB;AArFY;EAEI;AAsFhB;AAxFY;EAEI;AAyFhB;AA3FY;EAEI;AA4FhB;AA9FY;EAEI;AA+FhB;AAjGY;EAEI;AAkGhB;AApGY;EAEI;AAqGhB;AAvGY;EAEI;AAwGhB;AA1GY;EAEI;AA2GhB;AA7GY;EAEI;AA8GhB;AAhHY;EAEI;AAiHhB;AAnHY;EAEI;AAoHhB;AAtHY;EAEI;AAuHhB;AAzHY;EAEI;AA0HhB;AA5HY;EAEI;AA6HhB;AA/HY;EAEI;AAgIhB;AAlIY;EAEI;AAmIhB;AArIY;EAEI;AAsIhB;AAxIY;EAEI;AAyIhB;AA3IY;EAEI;AA4IhB;AA9IY;EAEI;AA+IhB;AAjJY;EAEI;AAkJhB;AApJY;EAEI;AAqJhB;AAvJY;EAEI;AAwJhB;AA1JY;EAEI;AA2JhB;AA7JY;EAEI;AA8JhB;AAhKY;EAEI;AAiKhB;AAnKY;EAEI;AAoKhB;AAtKY;EAEI;AAuKhB;AAzKY;EAEI;AA0KhB;AA5KY;EAEI;AA6KhB;AA/KY;EAEI;AAgLhB;AAlLY;EAEI;AAmLhB;AArLY;EAEI;AAsLhB;AAxLY;EAEI;AAyLhB;AA3LY;EAEI;AA4LhB;AA9LY;EAEI;AA+LhB;AAjMY;EAEI;AAkMhB;AApMY;EAEI;AAqMhB;AAvMY;EAEI;AAwMhB;AA1MY;EAEI;AA2MhB;AA7MY;EAEI;AA8MhB;AAhNY;EAEI;AAiNhB;AAnNY;EAEI;AAoNhB;AAtNY;EAEI;AAuNhB;AAzNY;EAEI;AA0NhB;AA5NY;EAEI;AA6NhB;AA/NY;EAEI;AAgOhB;AAlOY;EAEI;AAmOhB;AArOY;EAEI;AAsOhB;AAxOY;EAEI;AAyOhB;AA3OY;EAEI;AA4OhB;AA9OY;EAEI;AA+OhB;AAjPY;EAEI;AAkPhB;AApPY;EAEI;AAqPhB;AAvPY;EAEI;AAwPhB;AA1PY;EAEI;AA2PhB;AA7PY;EAEI;AA8PhB;AAhQY;EAEI;AAiQhB;AAnQY;EAEI;AAoQhB;AAtQY;EAEI;AAuQhB;AAzQY;EAEI;AA0QhB;AA5QY;EAEI;AA6QhB;AA/QY;EAEI;AAgRhB;AAlRY;EAEI;AAmRhB;AArRY;EAEI;AAsRhB;AAxRY;EAEI;AAyRhB;AA3RY;EAEI;AA4RhB;AA9RY;EAEI;AA+RhB;AAjSY;EAEI;AAkShB,C","sources":["webpack://martincv-simple-star-rating-block/./src/editor.scss"],"sourcesContent":[".wp-block-create-block-simple-star-rating-block {\n    display: inline-block;\n    font-size: 0;\n    position: relative;\n\n    .ssrb-star {\n        width: 1em; // Adjusted to scale with font size\n        height: 1em; // Adjusted to scale with font size\n        margin: 0 0.1em;\n        display: inline-block;\n        background: lightgray;\n        clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);\n        position: relative;\n\n        &:last-child {\n            margin: 0;\n        }\n\n        &.ssrb-full {\n            background: inherit; // Star color will be inherited from inline styles\n        }\n\n        &::after {\n            content: '';\n            position: absolute;\n            top: 0;\n            left: 0;\n            width: 100%;\n            height: 100%;\n            clip-path: inherit;\n        }\n\n        @for $i from 1 through 99 {\n            &.ssrb-perc-#{$i}::after {\n                $percent: #{$i} + '%';\n                background: linear-gradient(90deg, inherit $percent, transparent $percent); // Star color will be inherited from inline styles\n            }\n        }\n    }\n}\n"],"names":[],"sourceRoot":""}
  • simple-star-rating-block/trunk/build/index.js

    r3133729 r3133802  
    7979    if (useCustomField) {
    8080      const postId = wp.data.select("core/editor").getCurrentPostId();
    81       const postType = wp.data.select("core/editor").getCurrentPostType();
     81      let postType = wp.data.select("core/editor").getCurrentPostType();
     82      if (postType === "page" || postType === "post") {
     83        postType += "s";
     84      }
    8285      _wordpress_api_fetch__WEBPACK_IMPORTED_MODULE_5___default()({
    83         path: `/wp/v2/${postType}s/${postId}`
     86        path: `/wp/v2/${postType}/${postId}`
    8487      }).then(post => {
    8588        const md = {
     
    18651868/******/        }
    18661869/******/       
    1867 /******/        var chunkLoadingGlobal = globalThis["webpackChunksimple_star_rating_block"] = globalThis["webpackChunksimple_star_rating_block"] || [];
     1870/******/        var chunkLoadingGlobal = globalThis["webpackChunkmartincv_simple_star_rating_block"] = globalThis["webpackChunkmartincv_simple_star_rating_block"] || [];
    18681871/******/        chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
    18691872/******/        chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
  • simple-star-rating-block/trunk/build/index.js.map

    r3133729 r3133802  
    1 {"version":3,"file":"index.js","mappings":"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AAEA,4BAA4B;AAC5B;AACA,qCAAqC;;AAErC,gCAAgC;AAChC;AACA;;AAEA,gCAAgC;;AAEhC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;;AAGJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,EAAE;;;AAGF;AACA;AACA,EAAE;;;AAGF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;;AAEvC;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA,sBAAsB;AACtB;AACA,SAAS;AACT,uBAAuB;AACvB;AACA,SAAS;AACT,uBAAuB;AACvB;AACA,SAAS;AACT,wBAAwB;AACxB;AACA,SAAS;AACT,wBAAwB;AACxB;AACA,SAAS;AACT,iCAAiC;AACjC;AACA,SAAS;AACT,2BAA2B;AAC3B;AACA,SAAS;AACT,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,2DAA2D;;AAE3D;AACA;;AAEA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;;AAGT;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA,QAAQ;AACR;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAa,kBAAkB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;;AAEA;AACA;AACA,gFAAgF;AAChF;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kBAAkB;;;AAGlB;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;;AAEA;AACA,IAAI;;;AAGJ;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,8BAA8B;AAC9B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,2HAA2H;AAC3H;AACA;AACA;;AAEA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA,oEAAoE;;AAEpE;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC;;AAEjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;;AAGF;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wCAAwC;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,eAAe;AAC1B,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;;AAER;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;;AAEA;AACA;AACA,kBAAkB;;AAElB;AACA;AACA,oBAAoB;AACpB,2DAA2D,UAAU;AACrE,yBAAyB,UAAU;AACnC;AACA,aAAa,UAAU;AACvB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,SAAS;AACpB,YAAY,SAAS;AACrB;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB,WAAW,GAAG;AACd;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,6DAA6D;AAC7D;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,WAAW;AACtB,WAAW,GAAG;AACd;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN,4CAA4C;;AAE5C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB;;;AAGA;AACA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8CAA8C;AAC9C;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;;AAEA,0DAA0D;AAC1D;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,qBAAqB;AACjD;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,gDAAgD,gDAAgD,MAAM,aAAa;;AAEnH;AACA,iDAAiD,kCAAkC,OAAO;;AAE1F,yGAAyG,cAAc,UAAU,gGAAgG,kBAAkB,UAAU,UAAU;;AAEvQ;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAsC;AACtC;;AAEA;;AAEA,gBAAgB;AAChB,WAAW;AACX,YAAY;AACZ,GAAG;AACH;;;;;;;;;;;ACpzCa;;AAEb,IAAI,KAAqC,EAAE,EAE1C,CAAC;AACF,EAAE,+IAAkE;AACpE;;;;;;;;;;;ACNA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WCzBA;WACA;WACA;WACA;WACA,+BAA+B,wCAAwC;WACvE;WACA;WACA;WACA;WACA,iBAAiB,qBAAqB;WACtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;;;;;UEjDA;UACA;UACA;UACA;UACA","sources":["webpack://simple-star-rating-block/./node_modules/@wordpress/icons/build-module/library/star-half.js","webpack://simple-star-rating-block/./src/edit.js","webpack://simple-star-rating-block/./src/index.js","webpack://simple-star-rating-block/./src/editor.scss?0339","webpack://simple-star-rating-block/./src/style.scss","webpack://simple-star-rating-block/./node_modules/react/cjs/react-jsx-runtime.development.js","webpack://simple-star-rating-block/./node_modules/react/jsx-runtime.js","webpack://simple-star-rating-block/external window \"React\"","webpack://simple-star-rating-block/external window [\"wp\",\"apiFetch\"]","webpack://simple-star-rating-block/external window [\"wp\",\"blockEditor\"]","webpack://simple-star-rating-block/external window [\"wp\",\"blocks\"]","webpack://simple-star-rating-block/external window [\"wp\",\"components\"]","webpack://simple-star-rating-block/external window [\"wp\",\"element\"]","webpack://simple-star-rating-block/external window [\"wp\",\"i18n\"]","webpack://simple-star-rating-block/external window [\"wp\",\"primitives\"]","webpack://simple-star-rating-block/webpack/bootstrap","webpack://simple-star-rating-block/webpack/runtime/chunk loaded","webpack://simple-star-rating-block/webpack/runtime/compat get default export","webpack://simple-star-rating-block/webpack/runtime/define property getters","webpack://simple-star-rating-block/webpack/runtime/hasOwnProperty shorthand","webpack://simple-star-rating-block/webpack/runtime/make namespace object","webpack://simple-star-rating-block/webpack/runtime/jsonp chunk loading","webpack://simple-star-rating-block/webpack/before-startup","webpack://simple-star-rating-block/webpack/startup","webpack://simple-star-rating-block/webpack/after-startup"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SVG, Path } from '@wordpress/primitives';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst starHalf = /*#__PURE__*/_jsx(SVG, {\n  xmlns: \"http://www.w3.org/2000/svg\",\n  viewBox: \"0 0 24 24\",\n  children: /*#__PURE__*/_jsx(Path, {\n    d: \"M9.518 8.783a.25.25 0 00.188-.137l2.069-4.192a.25.25 0 01.448 0l2.07 4.192a.25.25 0 00.187.137l4.626.672a.25.25 0 01.139.427l-3.347 3.262a.25.25 0 00-.072.222l.79 4.607a.25.25 0 01-.363.264l-4.137-2.176a.25.25 0 00-.233 0l-4.138 2.175a.25.25 0 01-.362-.263l.79-4.607a.25.25 0 00-.072-.222L4.753 9.882a.25.25 0 01.14-.427l4.625-.672zM12 14.533c.28 0 .559.067.814.2l1.895.997-.362-2.11a1.75 1.75 0 01.504-1.55l1.533-1.495-2.12-.308a1.75 1.75 0 01-1.317-.957L12 7.39v7.143z\"\n  })\n});\nexport default starHalf;\n//# sourceMappingURL=star-half.js.map","import { __ } from \"@wordpress/i18n\";\nimport {\n\tuseBlockProps,\n\tInspectorControls,\n\tColorPalette,\n} from \"@wordpress/block-editor\";\nimport {\n\tPanelBody,\n\tTextControl,\n\tToggleControl,\n\tComboboxControl,\n\tRangeControl,\n} from \"@wordpress/components\";\nimport { useEffect, useState } from \"@wordpress/element\";\nimport apiFetch from \"@wordpress/api-fetch\";\n\nimport \"./editor.scss\";\n\nexport default function Edit({ attributes, setAttributes }) {\n\tconst { rating, customField, useCustomField, starColor, starSize } =\n\t\tattributes;\n\tconst [customFields, setCustomFields] = useState([]);\n\tconst [postMetaData, setPostMetaData] = useState({});\n\n\tuseEffect(() => {\n\t\tif (useCustomField) {\n\t\t\tconst postId = wp.data.select(\"core/editor\").getCurrentPostId();\n\t\t\tconst postType = wp.data.select(\"core/editor\").getCurrentPostType();\n\t\t\tapiFetch({ path: `/wp/v2/${postType}s/${postId}` }).then((post) => {\n\t\t\t\tconst md = { ...post.meta, ...post.acf };\n\t\t\t\tconst meta = Object.keys(post.meta);\n\t\t\t\tconst acf = Object.keys(post.acf);\n\n\t\t\t\tconst fields = [...meta, ...acf];\n\t\t\t\tsetCustomFields(fields);\n\t\t\t\tsetPostMetaData(md);\n\t\t\t\tupdateRating(md[customField] || rating);\n\t\t\t});\n\t\t}\n\t}, [useCustomField]);\n\n\tconst updateRating = (value) => {\n\t\tconst numericValue = parseFloat(value);\n\t\tif (!isNaN(numericValue) && numericValue >= 0 && numericValue <= 5) {\n\t\t\tsetAttributes({ rating: numericValue });\n\t\t}\n\t};\n\n\tconst updateCustomField = (value) => {\n\t\tsetAttributes({ customField: value });\n\t\tconst newRating = postMetaData[value];\n\t\tif (newRating !== undefined && !isNaN(parseFloat(newRating))) {\n\t\t\tupdateRating(newRating);\n\t\t} else {\n\t\t\tconsole.warn(`Invalid custom field value for ${value}: ${newRating}`);\n\t\t}\n\t};\n\n\tconst fullStars = Math.floor(rating);\n\tconst partialStar = rating - fullStars;\n\n\treturn (\n\t\t<div {...useBlockProps()}>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={__(\"Rating Settings\", \"simple-star-rating-block\")}>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={__(\"Show From Custom Field\", \"simple-star-rating-block\")}\n\t\t\t\t\t\tchecked={useCustomField}\n\t\t\t\t\t\tonChange={(value) => setAttributes({ useCustomField: value })}\n\t\t\t\t\t/>\n\t\t\t\t\t{useCustomField && (\n\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\tlabel={__(\"Custom Field Key\", \"simple-star-rating-block\")}\n\t\t\t\t\t\t\tvalue={customField}\n\t\t\t\t\t\t\toptions={customFields.map((field) => ({\n\t\t\t\t\t\t\t\tlabel: field,\n\t\t\t\t\t\t\t\tvalue: field,\n\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\tonChange={updateCustomField}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{!useCustomField && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\tlabel={__(\"Rating\", \"simple-star-rating-block\")}\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tmin=\"0\"\n\t\t\t\t\t\t\tmax=\"5\"\n\t\t\t\t\t\t\tstep=\"0.01\"\n\t\t\t\t\t\t\treadOnly={useCustomField}\n\t\t\t\t\t\t\tvalue={rating}\n\t\t\t\t\t\t\tonChange={updateRating}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</PanelBody>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={__(\"Style\", \"simple-star-rating-block\")}\n\t\t\t\t\tinitialOpen={false}\n\t\t\t\t>\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tlabel={__(\"Star Color\", \"simple-star-rating-block\")}\n\t\t\t\t\t\tvalue={starColor}\n\t\t\t\t\t\tonChange={(color) => setAttributes({ starColor: color })}\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={__(\"Star Size\", \"simple-star-rating-block\")}\n\t\t\t\t\t\tvalue={starSize}\n\t\t\t\t\t\tonChange={(value) => setAttributes({ starSize: value })}\n\t\t\t\t\t\tmin={10}\n\t\t\t\t\t\tmax={50}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div style={{ fontSize: `${starSize}px` }}>\n\t\t\t\t{Array.from({ length: 5 }, (_, i) => {\n\t\t\t\t\tif (i < fullStars) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\tclassName=\"ssrb-star ssrb-full\"\n\t\t\t\t\t\t\t\tstyle={{ backgroundColor: starColor }}\n\t\t\t\t\t\t\t></span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (i === fullStars && partialStar > 0) {\n\t\t\t\t\t\tconst percentage = Math.round(partialStar * 100);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\tclassName={`ssrb-star ssrb-perc-${percentage}`}\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tbackgroundImage: `linear-gradient(90deg, ${starColor} ${percentage}%, transparent ${percentage}%)`,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn <span key={i} className=\"ssrb-star\"></span>;\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","/**\n * Registers a new block provided a unique name and an object defining its behavior.\n *\n * @see https://developer.wordpress.org/block-editor/reference-guides/block-api/block-registration/\n */\nimport { registerBlockType } from \"@wordpress/blocks\";\nimport { starHalf } from \"@wordpress/icons\";\n\n/**\n * Lets webpack process CSS, SASS or SCSS files referenced in JavaScript files.\n * All files containing `style` keyword are bundled together. The code used\n * gets applied both to the front of your site and to the editor.\n *\n * @see https://www.npmjs.com/package/@wordpress/scripts#using-css\n */\nimport \"./style.scss\";\n\n/**\n * Internal dependencies\n */\nimport Edit from \"./edit\";\nimport metadata from \"./block.json\";\n\n/**\n * Every block starts by registering a new block type definition.\n */\nregisterBlockType(metadata.name, {\n\ticon: starHalf,\n\tedit: Edit,\n});\n","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n  (function() {\n'use strict';\n\nvar React = require('react');\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n  if (maybeIterable === null || typeof maybeIterable !== 'object') {\n    return null;\n  }\n\n  var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n  if (typeof maybeIterator === 'function') {\n    return maybeIterator;\n  }\n\n  return null;\n}\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n  {\n    {\n      for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n        args[_key2 - 1] = arguments[_key2];\n      }\n\n      printWarning('error', format, args);\n    }\n  }\n}\n\nfunction printWarning(level, format, args) {\n  // When changing this logic, you might want to also\n  // update consoleWithStackDev.www.js as well.\n  {\n    var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n    var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n    if (stack !== '') {\n      format += '%s';\n      args = args.concat([stack]);\n    } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n    var argsWithFormat = args.map(function (item) {\n      return String(item);\n    }); // Careful: RN currently depends on this prefix\n\n    argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n    // breaks IE9: https://github.com/facebook/react/issues/13610\n    // eslint-disable-next-line react-internal/no-production-logging\n\n    Function.prototype.apply.call(console[level], console, argsWithFormat);\n  }\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\n\nvar REACT_MODULE_REFERENCE;\n\n{\n  REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');\n}\n\nfunction isValidElementType(type) {\n  if (typeof type === 'string' || typeof type === 'function') {\n    return true;\n  } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n  if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing  || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden  || type === REACT_OFFSCREEN_TYPE || enableScopeAPI  || enableCacheElement  || enableTransitionTracing ) {\n    return true;\n  }\n\n  if (typeof type === 'object' && type !== null) {\n    if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n    // types supported by any Flight configuration anywhere since\n    // we don't know which Flight build this will end up being used\n    // with.\n    type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {\n      return true;\n    }\n  }\n\n  return false;\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n  var displayName = outerType.displayName;\n\n  if (displayName) {\n    return displayName;\n  }\n\n  var functionName = innerType.displayName || innerType.name || '';\n  return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n  return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n  if (type == null) {\n    // Host root, text node or just invalid type.\n    return null;\n  }\n\n  {\n    if (typeof type.tag === 'number') {\n      error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n    }\n  }\n\n  if (typeof type === 'function') {\n    return type.displayName || type.name || null;\n  }\n\n  if (typeof type === 'string') {\n    return type;\n  }\n\n  switch (type) {\n    case REACT_FRAGMENT_TYPE:\n      return 'Fragment';\n\n    case REACT_PORTAL_TYPE:\n      return 'Portal';\n\n    case REACT_PROFILER_TYPE:\n      return 'Profiler';\n\n    case REACT_STRICT_MODE_TYPE:\n      return 'StrictMode';\n\n    case REACT_SUSPENSE_TYPE:\n      return 'Suspense';\n\n    case REACT_SUSPENSE_LIST_TYPE:\n      return 'SuspenseList';\n\n  }\n\n  if (typeof type === 'object') {\n    switch (type.$$typeof) {\n      case REACT_CONTEXT_TYPE:\n        var context = type;\n        return getContextName(context) + '.Consumer';\n\n      case REACT_PROVIDER_TYPE:\n        var provider = type;\n        return getContextName(provider._context) + '.Provider';\n\n      case REACT_FORWARD_REF_TYPE:\n        return getWrappedName(type, type.render, 'ForwardRef');\n\n      case REACT_MEMO_TYPE:\n        var outerName = type.displayName || null;\n\n        if (outerName !== null) {\n          return outerName;\n        }\n\n        return getComponentNameFromType(type.type) || 'Memo';\n\n      case REACT_LAZY_TYPE:\n        {\n          var lazyComponent = type;\n          var payload = lazyComponent._payload;\n          var init = lazyComponent._init;\n\n          try {\n            return getComponentNameFromType(init(payload));\n          } catch (x) {\n            return null;\n          }\n        }\n\n      // eslint-disable-next-line no-fallthrough\n    }\n  }\n\n  return null;\n}\n\nvar assign = Object.assign;\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n  {\n    if (disabledDepth === 0) {\n      /* eslint-disable react-internal/no-production-logging */\n      prevLog = console.log;\n      prevInfo = console.info;\n      prevWarn = console.warn;\n      prevError = console.error;\n      prevGroup = console.group;\n      prevGroupCollapsed = console.groupCollapsed;\n      prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n      var props = {\n        configurable: true,\n        enumerable: true,\n        value: disabledLog,\n        writable: true\n      }; // $FlowFixMe Flow thinks console is immutable.\n\n      Object.defineProperties(console, {\n        info: props,\n        log: props,\n        warn: props,\n        error: props,\n        group: props,\n        groupCollapsed: props,\n        groupEnd: props\n      });\n      /* eslint-enable react-internal/no-production-logging */\n    }\n\n    disabledDepth++;\n  }\n}\nfunction reenableLogs() {\n  {\n    disabledDepth--;\n\n    if (disabledDepth === 0) {\n      /* eslint-disable react-internal/no-production-logging */\n      var props = {\n        configurable: true,\n        enumerable: true,\n        writable: true\n      }; // $FlowFixMe Flow thinks console is immutable.\n\n      Object.defineProperties(console, {\n        log: assign({}, props, {\n          value: prevLog\n        }),\n        info: assign({}, props, {\n          value: prevInfo\n        }),\n        warn: assign({}, props, {\n          value: prevWarn\n        }),\n        error: assign({}, props, {\n          value: prevError\n        }),\n        group: assign({}, props, {\n          value: prevGroup\n        }),\n        groupCollapsed: assign({}, props, {\n          value: prevGroupCollapsed\n        }),\n        groupEnd: assign({}, props, {\n          value: prevGroupEnd\n        })\n      });\n      /* eslint-enable react-internal/no-production-logging */\n    }\n\n    if (disabledDepth < 0) {\n      error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n    }\n  }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n  {\n    if (prefix === undefined) {\n      // Extract the VM specific prefix used by each line.\n      try {\n        throw Error();\n      } catch (x) {\n        var match = x.stack.trim().match(/\\n( *(at )?)/);\n        prefix = match && match[1] || '';\n      }\n    } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n    return '\\n' + prefix + name;\n  }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n  var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n  componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n  // If something asked for a stack inside a fake render, it should get ignored.\n  if ( !fn || reentry) {\n    return '';\n  }\n\n  {\n    var frame = componentFrameCache.get(fn);\n\n    if (frame !== undefined) {\n      return frame;\n    }\n  }\n\n  var control;\n  reentry = true;\n  var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n  Error.prepareStackTrace = undefined;\n  var previousDispatcher;\n\n  {\n    previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n    // for warnings.\n\n    ReactCurrentDispatcher.current = null;\n    disableLogs();\n  }\n\n  try {\n    // This should throw.\n    if (construct) {\n      // Something should be setting the props in the constructor.\n      var Fake = function () {\n        throw Error();\n      }; // $FlowFixMe\n\n\n      Object.defineProperty(Fake.prototype, 'props', {\n        set: function () {\n          // We use a throwing setter instead of frozen or non-writable props\n          // because that won't throw in a non-strict mode function.\n          throw Error();\n        }\n      });\n\n      if (typeof Reflect === 'object' && Reflect.construct) {\n        // We construct a different control for this case to include any extra\n        // frames added by the construct call.\n        try {\n          Reflect.construct(Fake, []);\n        } catch (x) {\n          control = x;\n        }\n\n        Reflect.construct(fn, [], Fake);\n      } else {\n        try {\n          Fake.call();\n        } catch (x) {\n          control = x;\n        }\n\n        fn.call(Fake.prototype);\n      }\n    } else {\n      try {\n        throw Error();\n      } catch (x) {\n        control = x;\n      }\n\n      fn();\n    }\n  } catch (sample) {\n    // This is inlined manually because closure doesn't do it for us.\n    if (sample && control && typeof sample.stack === 'string') {\n      // This extracts the first frame from the sample that isn't also in the control.\n      // Skipping one frame that we assume is the frame that calls the two.\n      var sampleLines = sample.stack.split('\\n');\n      var controlLines = control.stack.split('\\n');\n      var s = sampleLines.length - 1;\n      var c = controlLines.length - 1;\n\n      while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n        // We expect at least one stack frame to be shared.\n        // Typically this will be the root most one. However, stack frames may be\n        // cut off due to maximum stack limits. In this case, one maybe cut off\n        // earlier than the other. We assume that the sample is longer or the same\n        // and there for cut off earlier. So we should find the root most frame in\n        // the sample somewhere in the control.\n        c--;\n      }\n\n      for (; s >= 1 && c >= 0; s--, c--) {\n        // Next we find the first one that isn't the same which should be the\n        // frame that called our sample function and the control.\n        if (sampleLines[s] !== controlLines[c]) {\n          // In V8, the first line is describing the message but other VMs don't.\n          // If we're about to return the first line, and the control is also on the same\n          // line, that's a pretty good indicator that our sample threw at same line as\n          // the control. I.e. before we entered the sample frame. So we ignore this result.\n          // This can happen if you passed a class to function component, or non-function.\n          if (s !== 1 || c !== 1) {\n            do {\n              s--;\n              c--; // We may still have similar intermediate frames from the construct call.\n              // The next one that isn't the same should be our match though.\n\n              if (c < 0 || sampleLines[s] !== controlLines[c]) {\n                // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n                var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n                // but we have a user-provided \"displayName\"\n                // splice it in to make the stack more readable.\n\n\n                if (fn.displayName && _frame.includes('<anonymous>')) {\n                  _frame = _frame.replace('<anonymous>', fn.displayName);\n                }\n\n                {\n                  if (typeof fn === 'function') {\n                    componentFrameCache.set(fn, _frame);\n                  }\n                } // Return the line we found.\n\n\n                return _frame;\n              }\n            } while (s >= 1 && c >= 0);\n          }\n\n          break;\n        }\n      }\n    }\n  } finally {\n    reentry = false;\n\n    {\n      ReactCurrentDispatcher.current = previousDispatcher;\n      reenableLogs();\n    }\n\n    Error.prepareStackTrace = previousPrepareStackTrace;\n  } // Fallback to just using the name if we couldn't make it throw.\n\n\n  var name = fn ? fn.displayName || fn.name : '';\n  var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n  {\n    if (typeof fn === 'function') {\n      componentFrameCache.set(fn, syntheticFrame);\n    }\n  }\n\n  return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n  {\n    return describeNativeComponentFrame(fn, false);\n  }\n}\n\nfunction shouldConstruct(Component) {\n  var prototype = Component.prototype;\n  return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n  if (type == null) {\n    return '';\n  }\n\n  if (typeof type === 'function') {\n    {\n      return describeNativeComponentFrame(type, shouldConstruct(type));\n    }\n  }\n\n  if (typeof type === 'string') {\n    return describeBuiltInComponentFrame(type);\n  }\n\n  switch (type) {\n    case REACT_SUSPENSE_TYPE:\n      return describeBuiltInComponentFrame('Suspense');\n\n    case REACT_SUSPENSE_LIST_TYPE:\n      return describeBuiltInComponentFrame('SuspenseList');\n  }\n\n  if (typeof type === 'object') {\n    switch (type.$$typeof) {\n      case REACT_FORWARD_REF_TYPE:\n        return describeFunctionComponentFrame(type.render);\n\n      case REACT_MEMO_TYPE:\n        // Memo may contain any component type so we recursively resolve it.\n        return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n      case REACT_LAZY_TYPE:\n        {\n          var lazyComponent = type;\n          var payload = lazyComponent._payload;\n          var init = lazyComponent._init;\n\n          try {\n            // Lazy may contain any component type so we recursively resolve it.\n            return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n          } catch (x) {}\n        }\n    }\n  }\n\n  return '';\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n  {\n    if (element) {\n      var owner = element._owner;\n      var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n      ReactDebugCurrentFrame.setExtraStackFrame(stack);\n    } else {\n      ReactDebugCurrentFrame.setExtraStackFrame(null);\n    }\n  }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n  {\n    // $FlowFixMe This is okay but Flow doesn't know it.\n    var has = Function.call.bind(hasOwnProperty);\n\n    for (var typeSpecName in typeSpecs) {\n      if (has(typeSpecs, typeSpecName)) {\n        var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n        // fail the render phase where it didn't fail before. So we log it.\n        // After these have been cleaned up, we'll let them throw.\n\n        try {\n          // This is intentionally an invariant that gets caught. It's the same\n          // behavior as without this statement except with a better message.\n          if (typeof typeSpecs[typeSpecName] !== 'function') {\n            // eslint-disable-next-line react-internal/prod-error-codes\n            var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n            err.name = 'Invariant Violation';\n            throw err;\n          }\n\n          error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n        } catch (ex) {\n          error$1 = ex;\n        }\n\n        if (error$1 && !(error$1 instanceof Error)) {\n          setCurrentlyValidatingElement(element);\n\n          error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n          setCurrentlyValidatingElement(null);\n        }\n\n        if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n          // Only monitor this failure once because there tends to be a lot of the\n          // same error.\n          loggedTypeFailures[error$1.message] = true;\n          setCurrentlyValidatingElement(element);\n\n          error('Failed %s type: %s', location, error$1.message);\n\n          setCurrentlyValidatingElement(null);\n        }\n      }\n    }\n  }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n  return isArrayImpl(a);\n}\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n  {\n    // toStringTag is needed for namespaced types like Temporal.Instant\n    var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n    var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n    return type;\n  }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n  {\n    try {\n      testStringCoercion(value);\n      return false;\n    } catch (e) {\n      return true;\n    }\n  }\n}\n\nfunction testStringCoercion(value) {\n  // If you ended up here by following an exception call stack, here's what's\n  // happened: you supplied an object or symbol value to React (as a prop, key,\n  // DOM attribute, CSS property, string ref, etc.) and when React tried to\n  // coerce it to a string using `'' + value`, an exception was thrown.\n  //\n  // The most common types that will cause this exception are `Symbol` instances\n  // and Temporal objects like `Temporal.Instant`. But any object that has a\n  // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n  // exception. (Library authors do this to prevent users from using built-in\n  // numeric operators like `+` or comparison operators like `>=` because custom\n  // methods are needed to perform accurate arithmetic or comparison.)\n  //\n  // To fix the problem, coerce this object or symbol value to a string before\n  // passing it to React. The most reliable way is usually `String(value)`.\n  //\n  // To find which value is throwing, check the browser or debugger console.\n  // Before this exception was thrown, there should be `console.error` output\n  // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n  // problem and how that type was used: key, atrribute, input value prop, etc.\n  // In most cases, this console output also shows the component and its\n  // ancestor components where the exception happened.\n  //\n  // eslint-disable-next-line react-internal/safe-string-coercion\n  return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n  {\n    if (willCoercionThrow(value)) {\n      error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n      return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n    }\n  }\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar RESERVED_PROPS = {\n  key: true,\n  ref: true,\n  __self: true,\n  __source: true\n};\nvar specialPropKeyWarningShown;\nvar specialPropRefWarningShown;\nvar didWarnAboutStringRefs;\n\n{\n  didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n  {\n    if (hasOwnProperty.call(config, 'ref')) {\n      var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n      if (getter && getter.isReactWarning) {\n        return false;\n      }\n    }\n  }\n\n  return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n  {\n    if (hasOwnProperty.call(config, 'key')) {\n      var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n      if (getter && getter.isReactWarning) {\n        return false;\n      }\n    }\n  }\n\n  return config.key !== undefined;\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config, self) {\n  {\n    if (typeof config.ref === 'string' && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {\n      var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n      if (!didWarnAboutStringRefs[componentName]) {\n        error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);\n\n        didWarnAboutStringRefs[componentName] = true;\n      }\n    }\n  }\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n  {\n    var warnAboutAccessingKey = function () {\n      if (!specialPropKeyWarningShown) {\n        specialPropKeyWarningShown = true;\n\n        error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n      }\n    };\n\n    warnAboutAccessingKey.isReactWarning = true;\n    Object.defineProperty(props, 'key', {\n      get: warnAboutAccessingKey,\n      configurable: true\n    });\n  }\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n  {\n    var warnAboutAccessingRef = function () {\n      if (!specialPropRefWarningShown) {\n        specialPropRefWarningShown = true;\n\n        error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n      }\n    };\n\n    warnAboutAccessingRef.isReactWarning = true;\n    Object.defineProperty(props, 'ref', {\n      get: warnAboutAccessingRef,\n      configurable: true\n    });\n  }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nvar ReactElement = function (type, key, ref, self, source, owner, props) {\n  var element = {\n    // This tag allows us to uniquely identify this as a React Element\n    $$typeof: REACT_ELEMENT_TYPE,\n    // Built-in properties that belong on the element\n    type: type,\n    key: key,\n    ref: ref,\n    props: props,\n    // Record the component responsible for creating this element.\n    _owner: owner\n  };\n\n  {\n    // The validation flag is currently mutative. We put it on\n    // an external backing store so that we can freeze the whole object.\n    // This can be replaced with a WeakMap once they are implemented in\n    // commonly used development environments.\n    element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n    // the validation flag non-enumerable (where possible, which should\n    // include every environment we run tests in), so the test framework\n    // ignores it.\n\n    Object.defineProperty(element._store, 'validated', {\n      configurable: false,\n      enumerable: false,\n      writable: true,\n      value: false\n    }); // self and source are DEV only properties.\n\n    Object.defineProperty(element, '_self', {\n      configurable: false,\n      enumerable: false,\n      writable: false,\n      value: self\n    }); // Two elements created in two different places should be considered\n    // equal for testing purposes and therefore we hide it from enumeration.\n\n    Object.defineProperty(element, '_source', {\n      configurable: false,\n      enumerable: false,\n      writable: false,\n      value: source\n    });\n\n    if (Object.freeze) {\n      Object.freeze(element.props);\n      Object.freeze(element);\n    }\n  }\n\n  return element;\n};\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV(type, config, maybeKey, source, self) {\n  {\n    var propName; // Reserved names are extracted\n\n    var props = {};\n    var key = null;\n    var ref = null; // Currently, key can be spread in as a prop. This causes a potential\n    // issue if key is also explicitly declared (ie. <div {...props} key=\"Hi\" />\n    // or <div key=\"Hi\" {...props} /> ). We want to deprecate key spread,\n    // but as an intermediary step, we will use jsxDEV for everything except\n    // <div {...props} key=\"Hi\" />, because we aren't currently able to tell if\n    // key is explicitly declared to be undefined or not.\n\n    if (maybeKey !== undefined) {\n      {\n        checkKeyStringCoercion(maybeKey);\n      }\n\n      key = '' + maybeKey;\n    }\n\n    if (hasValidKey(config)) {\n      {\n        checkKeyStringCoercion(config.key);\n      }\n\n      key = '' + config.key;\n    }\n\n    if (hasValidRef(config)) {\n      ref = config.ref;\n      warnIfStringRefCannotBeAutoConverted(config, self);\n    } // Remaining properties are added to a new props object\n\n\n    for (propName in config) {\n      if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n        props[propName] = config[propName];\n      }\n    } // Resolve default props\n\n\n    if (type && type.defaultProps) {\n      var defaultProps = type.defaultProps;\n\n      for (propName in defaultProps) {\n        if (props[propName] === undefined) {\n          props[propName] = defaultProps[propName];\n        }\n      }\n    }\n\n    if (key || ref) {\n      var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n      if (key) {\n        defineKeyPropWarningGetter(props, displayName);\n      }\n\n      if (ref) {\n        defineRefPropWarningGetter(props, displayName);\n      }\n    }\n\n    return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n  }\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n  {\n    if (element) {\n      var owner = element._owner;\n      var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n      ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n    } else {\n      ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n    }\n  }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n  propTypesMisspellWarningShown = false;\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\n\nfunction isValidElement(object) {\n  {\n    return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n  }\n}\n\nfunction getDeclarationErrorAddendum() {\n  {\n    if (ReactCurrentOwner$1.current) {\n      var name = getComponentNameFromType(ReactCurrentOwner$1.current.type);\n\n      if (name) {\n        return '\\n\\nCheck the render method of `' + name + '`.';\n      }\n    }\n\n    return '';\n  }\n}\n\nfunction getSourceInfoErrorAddendum(source) {\n  {\n    if (source !== undefined) {\n      var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n      var lineNumber = source.lineNumber;\n      return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n    }\n\n    return '';\n  }\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n  {\n    var info = getDeclarationErrorAddendum();\n\n    if (!info) {\n      var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n      if (parentName) {\n        info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n      }\n    }\n\n    return info;\n  }\n}\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\n\nfunction validateExplicitKey(element, parentType) {\n  {\n    if (!element._store || element._store.validated || element.key != null) {\n      return;\n    }\n\n    element._store.validated = true;\n    var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n    if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n      return;\n    }\n\n    ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n    // property, it may be the creator of the child that's responsible for\n    // assigning it a key.\n\n    var childOwner = '';\n\n    if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) {\n      // Give the component that originally created this child.\n      childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n    }\n\n    setCurrentlyValidatingElement$1(element);\n\n    error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n    setCurrentlyValidatingElement$1(null);\n  }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n  {\n    if (typeof node !== 'object') {\n      return;\n    }\n\n    if (isArray(node)) {\n      for (var i = 0; i < node.length; i++) {\n        var child = node[i];\n\n        if (isValidElement(child)) {\n          validateExplicitKey(child, parentType);\n        }\n      }\n    } else if (isValidElement(node)) {\n      // This element was passed in a valid location.\n      if (node._store) {\n        node._store.validated = true;\n      }\n    } else if (node) {\n      var iteratorFn = getIteratorFn(node);\n\n      if (typeof iteratorFn === 'function') {\n        // Entry iterators used to provide implicit keys,\n        // but now we print a separate warning for them later.\n        if (iteratorFn !== node.entries) {\n          var iterator = iteratorFn.call(node);\n          var step;\n\n          while (!(step = iterator.next()).done) {\n            if (isValidElement(step.value)) {\n              validateExplicitKey(step.value, parentType);\n            }\n          }\n        }\n      }\n    }\n  }\n}\n/**\n * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n  {\n    var type = element.type;\n\n    if (type === null || type === undefined || typeof type === 'string') {\n      return;\n    }\n\n    var propTypes;\n\n    if (typeof type === 'function') {\n      propTypes = type.propTypes;\n    } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n    // Inner props are checked in the reconciler.\n    type.$$typeof === REACT_MEMO_TYPE)) {\n      propTypes = type.propTypes;\n    } else {\n      return;\n    }\n\n    if (propTypes) {\n      // Intentionally inside to avoid triggering lazy initializers:\n      var name = getComponentNameFromType(type);\n      checkPropTypes(propTypes, element.props, 'prop', name, element);\n    } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n      propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n      var _name = getComponentNameFromType(type);\n\n      error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n    }\n\n    if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n      error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n    }\n  }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n  {\n    var keys = Object.keys(fragment.props);\n\n    for (var i = 0; i < keys.length; i++) {\n      var key = keys[i];\n\n      if (key !== 'children' && key !== 'key') {\n        setCurrentlyValidatingElement$1(fragment);\n\n        error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n        setCurrentlyValidatingElement$1(null);\n        break;\n      }\n    }\n\n    if (fragment.ref !== null) {\n      setCurrentlyValidatingElement$1(fragment);\n\n      error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n      setCurrentlyValidatingElement$1(null);\n    }\n  }\n}\n\nvar didWarnAboutKeySpread = {};\nfunction jsxWithValidation(type, props, key, isStaticChildren, source, self) {\n  {\n    var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to\n    // succeed and there will likely be errors in render.\n\n    if (!validType) {\n      var info = '';\n\n      if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n        info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n      }\n\n      var sourceInfo = getSourceInfoErrorAddendum(source);\n\n      if (sourceInfo) {\n        info += sourceInfo;\n      } else {\n        info += getDeclarationErrorAddendum();\n      }\n\n      var typeString;\n\n      if (type === null) {\n        typeString = 'null';\n      } else if (isArray(type)) {\n        typeString = 'array';\n      } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n        typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n        info = ' Did you accidentally export a JSX literal instead of a component?';\n      } else {\n        typeString = typeof type;\n      }\n\n      error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n    }\n\n    var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used.\n    // TODO: Drop this when these are no longer allowed as the type argument.\n\n    if (element == null) {\n      return element;\n    } // Skip key warning if the type isn't valid since our key validation logic\n    // doesn't expect a non-string/function type and can throw confusing errors.\n    // We don't want exception behavior to differ between dev and prod.\n    // (Rendering will throw with a helpful message and as soon as the type is\n    // fixed, the key warnings will appear.)\n\n\n    if (validType) {\n      var children = props.children;\n\n      if (children !== undefined) {\n        if (isStaticChildren) {\n          if (isArray(children)) {\n            for (var i = 0; i < children.length; i++) {\n              validateChildKeys(children[i], type);\n            }\n\n            if (Object.freeze) {\n              Object.freeze(children);\n            }\n          } else {\n            error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.');\n          }\n        } else {\n          validateChildKeys(children, type);\n        }\n      }\n    }\n\n    {\n      if (hasOwnProperty.call(props, 'key')) {\n        var componentName = getComponentNameFromType(type);\n        var keys = Object.keys(props).filter(function (k) {\n          return k !== 'key';\n        });\n        var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}';\n\n        if (!didWarnAboutKeySpread[componentName + beforeExample]) {\n          var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}';\n\n          error('A props object containing a \"key\" prop is being spread into JSX:\\n' + '  let props = %s;\\n' + '  <%s {...props} />\\n' + 'React keys must be passed directly to JSX without using spread:\\n' + '  let props = %s;\\n' + '  <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName);\n\n          didWarnAboutKeySpread[componentName + beforeExample] = true;\n        }\n      }\n    }\n\n    if (type === REACT_FRAGMENT_TYPE) {\n      validateFragmentProps(element);\n    } else {\n      validatePropTypes(element);\n    }\n\n    return element;\n  }\n} // These two functions exist to still get child warnings in dev\n// even with the prod transform. This means that jsxDEV is purely\n// opt-in behavior for better messages but that we won't stop\n// giving you warnings if you use production apis.\n\nfunction jsxWithValidationStatic(type, props, key) {\n  {\n    return jsxWithValidation(type, props, key, true);\n  }\n}\nfunction jsxWithValidationDynamic(type, props, key) {\n  {\n    return jsxWithValidation(type, props, key, false);\n  }\n}\n\nvar jsx =  jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children.\n// for now we can ship identical prod functions\n\nvar jsxs =  jsxWithValidationStatic ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsx;\nexports.jsxs = jsxs;\n  })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n  module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n  module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","module.exports = window[\"React\"];","module.exports = window[\"wp\"][\"apiFetch\"];","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","module.exports = window[\"wp\"][\"primitives\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"index\": 0,\n\t\"./style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunksimple_star_rating_block\"] = globalThis[\"webpackChunksimple_star_rating_block\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"./style-index\"], () => (__webpack_require__(\"./src/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["__","useBlockProps","InspectorControls","ColorPalette","PanelBody","TextControl","ToggleControl","ComboboxControl","RangeControl","useEffect","useState","apiFetch","Edit","attributes","setAttributes","rating","customField","useCustomField","starColor","starSize","customFields","setCustomFields","postMetaData","setPostMetaData","postId","wp","data","select","getCurrentPostId","postType","getCurrentPostType","path","then","post","md","meta","acf","Object","keys","fields","updateRating","value","numericValue","parseFloat","isNaN","updateCustomField","newRating","undefined","console","warn","fullStars","Math","floor","partialStar","createElement","title","label","checked","onChange","options","map","field","type","min","max","step","readOnly","initialOpen","color","style","fontSize","Array","from","length","_","i","key","className","backgroundColor","percentage","round","backgroundImage","registerBlockType","starHalf","metadata","name","icon","edit"],"sourceRoot":""}
     1{"version":3,"file":"index.js","mappings":"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,MAAM;;;AAGN;AACA;AACA,KAAK,GAAG;;AAER,kDAAkD;AAClD;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,4BAA4B;AAC5B;AACA,qCAAqC;;AAErC,gCAAgC;AAChC;AACA;;AAEA,gCAAgC;;AAEhC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;;AAGJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,EAAE;;;AAGF;AACA;AACA,EAAE;;;AAGF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;;AAEvC;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA,sBAAsB;AACtB;AACA,SAAS;AACT,uBAAuB;AACvB;AACA,SAAS;AACT,uBAAuB;AACvB;AACA,SAAS;AACT,wBAAwB;AACxB;AACA,SAAS;AACT,wBAAwB;AACxB;AACA,SAAS;AACT,iCAAiC;AACjC;AACA,SAAS;AACT,2BAA2B;AAC3B;AACA,SAAS;AACT,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,2DAA2D;;AAE3D;AACA;;AAEA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;;AAGT;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA,QAAQ;AACR;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAa,kBAAkB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;;AAEA;AACA;AACA,gFAAgF;AAChF;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kBAAkB;;;AAGlB;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;;AAEA;AACA,IAAI;;;AAGJ;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,8BAA8B;AAC9B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,2HAA2H;AAC3H;AACA;AACA;;AAEA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA,oEAAoE;;AAEpE;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC;;AAEjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;;AAGF;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wCAAwC;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,eAAe;AAC1B,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;;AAER;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;;AAEA;AACA;AACA,kBAAkB;;AAElB;AACA;AACA,oBAAoB;AACpB,2DAA2D,UAAU;AACrE,yBAAyB,UAAU;AACnC;AACA,aAAa,UAAU;AACvB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,SAAS;AACpB,YAAY,SAAS;AACrB;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB,WAAW,GAAG;AACd;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,6DAA6D;AAC7D;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,WAAW;AACtB,WAAW,GAAG;AACd;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN,4CAA4C;;AAE5C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB;;;AAGA;AACA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8CAA8C;AAC9C;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;;AAEA,0DAA0D;AAC1D;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,qBAAqB;AACjD;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,gDAAgD,gDAAgD,MAAM,aAAa;;AAEnH;AACA,iDAAiD,kCAAkC,OAAO;;AAE1F,yGAAyG,cAAc,UAAU,gGAAgG,kBAAkB,UAAU,UAAU;;AAEvQ;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sCAAsC;AACtC;;AAEA;;AAEA,gBAAgB;AAChB,WAAW;AACX,YAAY;AACZ,GAAG;AACH;;;;;;;;;;;ACpzCa;;AAEb,IAAI,KAAqC,EAAE,EAE1C,CAAC;AACF,EAAE,+IAAkE;AACpE;;;;;;;;;;;ACNA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WCzBA;WACA;WACA;WACA;WACA,+BAA+B,wCAAwC;WACvE;WACA;WACA;WACA;WACA,iBAAiB,qBAAqB;WACtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;;;;;UEjDA;UACA;UACA;UACA;UACA","sources":["webpack://martincv-simple-star-rating-block/./node_modules/@wordpress/icons/build-module/library/star-half.js","webpack://martincv-simple-star-rating-block/./src/edit.js","webpack://martincv-simple-star-rating-block/./src/index.js","webpack://martincv-simple-star-rating-block/./src/editor.scss","webpack://martincv-simple-star-rating-block/./src/style.scss","webpack://martincv-simple-star-rating-block/./node_modules/react/cjs/react-jsx-runtime.development.js","webpack://martincv-simple-star-rating-block/./node_modules/react/jsx-runtime.js","webpack://martincv-simple-star-rating-block/external window \"React\"","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"apiFetch\"]","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"blockEditor\"]","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"blocks\"]","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"components\"]","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"element\"]","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"i18n\"]","webpack://martincv-simple-star-rating-block/external window [\"wp\",\"primitives\"]","webpack://martincv-simple-star-rating-block/webpack/bootstrap","webpack://martincv-simple-star-rating-block/webpack/runtime/chunk loaded","webpack://martincv-simple-star-rating-block/webpack/runtime/compat get default export","webpack://martincv-simple-star-rating-block/webpack/runtime/define property getters","webpack://martincv-simple-star-rating-block/webpack/runtime/hasOwnProperty shorthand","webpack://martincv-simple-star-rating-block/webpack/runtime/make namespace object","webpack://martincv-simple-star-rating-block/webpack/runtime/jsonp chunk loading","webpack://martincv-simple-star-rating-block/webpack/before-startup","webpack://martincv-simple-star-rating-block/webpack/startup","webpack://martincv-simple-star-rating-block/webpack/after-startup"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SVG, Path } from '@wordpress/primitives';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst starHalf = /*#__PURE__*/_jsx(SVG, {\n  xmlns: \"http://www.w3.org/2000/svg\",\n  viewBox: \"0 0 24 24\",\n  children: /*#__PURE__*/_jsx(Path, {\n    d: \"M9.518 8.783a.25.25 0 00.188-.137l2.069-4.192a.25.25 0 01.448 0l2.07 4.192a.25.25 0 00.187.137l4.626.672a.25.25 0 01.139.427l-3.347 3.262a.25.25 0 00-.072.222l.79 4.607a.25.25 0 01-.363.264l-4.137-2.176a.25.25 0 00-.233 0l-4.138 2.175a.25.25 0 01-.362-.263l.79-4.607a.25.25 0 00-.072-.222L4.753 9.882a.25.25 0 01.14-.427l4.625-.672zM12 14.533c.28 0 .559.067.814.2l1.895.997-.362-2.11a1.75 1.75 0 01.504-1.55l1.533-1.495-2.12-.308a1.75 1.75 0 01-1.317-.957L12 7.39v7.143z\"\n  })\n});\nexport default starHalf;\n//# sourceMappingURL=star-half.js.map","import { __ } from \"@wordpress/i18n\";\nimport {\n\tuseBlockProps,\n\tInspectorControls,\n\tColorPalette,\n} from \"@wordpress/block-editor\";\nimport {\n\tPanelBody,\n\tTextControl,\n\tToggleControl,\n\tComboboxControl,\n\tRangeControl,\n} from \"@wordpress/components\";\nimport { useEffect, useState } from \"@wordpress/element\";\nimport apiFetch from \"@wordpress/api-fetch\";\n\nimport \"./editor.scss\";\n\nexport default function Edit({ attributes, setAttributes }) {\n\tconst { rating, customField, useCustomField, starColor, starSize } =\n\t\tattributes;\n\tconst [customFields, setCustomFields] = useState([]);\n\tconst [postMetaData, setPostMetaData] = useState({});\n\n\tuseEffect(() => {\n\t\tif (useCustomField) {\n\t\t\tconst postId = wp.data.select(\"core/editor\").getCurrentPostId();\n\t\t\tlet postType = wp.data.select(\"core/editor\").getCurrentPostType();\n\t\t\tif (postType === \"page\" || postType === \"post\") {\n\t\t\t\tpostType += \"s\";\n\t\t\t}\n\t\t\tapiFetch({ path: `/wp/v2/${postType}/${postId}` }).then((post) => {\n\t\t\t\tconst md = { ...post.meta, ...post.acf };\n\t\t\t\tconst meta = Object.keys(post.meta);\n\t\t\t\tconst acf = Object.keys(post.acf);\n\n\t\t\t\tconst fields = [...meta, ...acf];\n\t\t\t\tsetCustomFields(fields);\n\t\t\t\tsetPostMetaData(md);\n\t\t\t\tupdateRating(md[customField] || rating);\n\t\t\t});\n\t\t}\n\t}, [useCustomField]);\n\n\tconst updateRating = (value) => {\n\t\tconst numericValue = parseFloat(value);\n\t\tif (!isNaN(numericValue) && numericValue >= 0 && numericValue <= 5) {\n\t\t\tsetAttributes({ rating: numericValue });\n\t\t}\n\t};\n\n\tconst updateCustomField = (value) => {\n\t\tsetAttributes({ customField: value });\n\t\tconst newRating = postMetaData[value];\n\t\tif (newRating !== undefined && !isNaN(parseFloat(newRating))) {\n\t\t\tupdateRating(newRating);\n\t\t} else {\n\t\t\tconsole.warn(`Invalid custom field value for ${value}: ${newRating}`);\n\t\t}\n\t};\n\n\tconst fullStars = Math.floor(rating);\n\tconst partialStar = rating - fullStars;\n\n\treturn (\n\t\t<div {...useBlockProps()}>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={__(\"Rating Settings\", \"simple-star-rating-block\")}>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={__(\"Show From Custom Field\", \"simple-star-rating-block\")}\n\t\t\t\t\t\tchecked={useCustomField}\n\t\t\t\t\t\tonChange={(value) => setAttributes({ useCustomField: value })}\n\t\t\t\t\t/>\n\t\t\t\t\t{useCustomField && (\n\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\tlabel={__(\"Custom Field Key\", \"simple-star-rating-block\")}\n\t\t\t\t\t\t\tvalue={customField}\n\t\t\t\t\t\t\toptions={customFields.map((field) => ({\n\t\t\t\t\t\t\t\tlabel: field,\n\t\t\t\t\t\t\t\tvalue: field,\n\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\tonChange={updateCustomField}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{!useCustomField && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\tlabel={__(\"Rating\", \"simple-star-rating-block\")}\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tmin=\"0\"\n\t\t\t\t\t\t\tmax=\"5\"\n\t\t\t\t\t\t\tstep=\"0.01\"\n\t\t\t\t\t\t\treadOnly={useCustomField}\n\t\t\t\t\t\t\tvalue={rating}\n\t\t\t\t\t\t\tonChange={updateRating}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</PanelBody>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={__(\"Style\", \"simple-star-rating-block\")}\n\t\t\t\t\tinitialOpen={false}\n\t\t\t\t>\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tlabel={__(\"Star Color\", \"simple-star-rating-block\")}\n\t\t\t\t\t\tvalue={starColor}\n\t\t\t\t\t\tonChange={(color) => setAttributes({ starColor: color })}\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={__(\"Star Size\", \"simple-star-rating-block\")}\n\t\t\t\t\t\tvalue={starSize}\n\t\t\t\t\t\tonChange={(value) => setAttributes({ starSize: value })}\n\t\t\t\t\t\tmin={10}\n\t\t\t\t\t\tmax={50}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div style={{ fontSize: `${starSize}px` }}>\n\t\t\t\t{Array.from({ length: 5 }, (_, i) => {\n\t\t\t\t\tif (i < fullStars) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\tclassName=\"ssrb-star ssrb-full\"\n\t\t\t\t\t\t\t\tstyle={{ backgroundColor: starColor }}\n\t\t\t\t\t\t\t></span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (i === fullStars && partialStar > 0) {\n\t\t\t\t\t\tconst percentage = Math.round(partialStar * 100);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\tclassName={`ssrb-star ssrb-perc-${percentage}`}\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tbackgroundImage: `linear-gradient(90deg, ${starColor} ${percentage}%, transparent ${percentage}%)`,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn <span key={i} className=\"ssrb-star\"></span>;\n\t\t\t\t\t}\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","/**\n * Registers a new block provided a unique name and an object defining its behavior.\n *\n * @see https://developer.wordpress.org/block-editor/reference-guides/block-api/block-registration/\n */\nimport { registerBlockType } from \"@wordpress/blocks\";\nimport { starHalf } from \"@wordpress/icons\";\n\n/**\n * Lets webpack process CSS, SASS or SCSS files referenced in JavaScript files.\n * All files containing `style` keyword are bundled together. The code used\n * gets applied both to the front of your site and to the editor.\n *\n * @see https://www.npmjs.com/package/@wordpress/scripts#using-css\n */\nimport \"./style.scss\";\n\n/**\n * Internal dependencies\n */\nimport Edit from \"./edit\";\nimport metadata from \"./block.json\";\n\n/**\n * Every block starts by registering a new block type definition.\n */\nregisterBlockType(metadata.name, {\n\ticon: starHalf,\n\tedit: Edit,\n});\n","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n  (function() {\n'use strict';\n\nvar React = require('react');\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n  if (maybeIterable === null || typeof maybeIterable !== 'object') {\n    return null;\n  }\n\n  var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n  if (typeof maybeIterator === 'function') {\n    return maybeIterator;\n  }\n\n  return null;\n}\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n  {\n    {\n      for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n        args[_key2 - 1] = arguments[_key2];\n      }\n\n      printWarning('error', format, args);\n    }\n  }\n}\n\nfunction printWarning(level, format, args) {\n  // When changing this logic, you might want to also\n  // update consoleWithStackDev.www.js as well.\n  {\n    var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n    var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n    if (stack !== '') {\n      format += '%s';\n      args = args.concat([stack]);\n    } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n    var argsWithFormat = args.map(function (item) {\n      return String(item);\n    }); // Careful: RN currently depends on this prefix\n\n    argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n    // breaks IE9: https://github.com/facebook/react/issues/13610\n    // eslint-disable-next-line react-internal/no-production-logging\n\n    Function.prototype.apply.call(console[level], console, argsWithFormat);\n  }\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\n\nvar REACT_MODULE_REFERENCE;\n\n{\n  REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');\n}\n\nfunction isValidElementType(type) {\n  if (typeof type === 'string' || typeof type === 'function') {\n    return true;\n  } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n  if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing  || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden  || type === REACT_OFFSCREEN_TYPE || enableScopeAPI  || enableCacheElement  || enableTransitionTracing ) {\n    return true;\n  }\n\n  if (typeof type === 'object' && type !== null) {\n    if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n    // types supported by any Flight configuration anywhere since\n    // we don't know which Flight build this will end up being used\n    // with.\n    type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {\n      return true;\n    }\n  }\n\n  return false;\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n  var displayName = outerType.displayName;\n\n  if (displayName) {\n    return displayName;\n  }\n\n  var functionName = innerType.displayName || innerType.name || '';\n  return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n  return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n  if (type == null) {\n    // Host root, text node or just invalid type.\n    return null;\n  }\n\n  {\n    if (typeof type.tag === 'number') {\n      error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n    }\n  }\n\n  if (typeof type === 'function') {\n    return type.displayName || type.name || null;\n  }\n\n  if (typeof type === 'string') {\n    return type;\n  }\n\n  switch (type) {\n    case REACT_FRAGMENT_TYPE:\n      return 'Fragment';\n\n    case REACT_PORTAL_TYPE:\n      return 'Portal';\n\n    case REACT_PROFILER_TYPE:\n      return 'Profiler';\n\n    case REACT_STRICT_MODE_TYPE:\n      return 'StrictMode';\n\n    case REACT_SUSPENSE_TYPE:\n      return 'Suspense';\n\n    case REACT_SUSPENSE_LIST_TYPE:\n      return 'SuspenseList';\n\n  }\n\n  if (typeof type === 'object') {\n    switch (type.$$typeof) {\n      case REACT_CONTEXT_TYPE:\n        var context = type;\n        return getContextName(context) + '.Consumer';\n\n      case REACT_PROVIDER_TYPE:\n        var provider = type;\n        return getContextName(provider._context) + '.Provider';\n\n      case REACT_FORWARD_REF_TYPE:\n        return getWrappedName(type, type.render, 'ForwardRef');\n\n      case REACT_MEMO_TYPE:\n        var outerName = type.displayName || null;\n\n        if (outerName !== null) {\n          return outerName;\n        }\n\n        return getComponentNameFromType(type.type) || 'Memo';\n\n      case REACT_LAZY_TYPE:\n        {\n          var lazyComponent = type;\n          var payload = lazyComponent._payload;\n          var init = lazyComponent._init;\n\n          try {\n            return getComponentNameFromType(init(payload));\n          } catch (x) {\n            return null;\n          }\n        }\n\n      // eslint-disable-next-line no-fallthrough\n    }\n  }\n\n  return null;\n}\n\nvar assign = Object.assign;\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n  {\n    if (disabledDepth === 0) {\n      /* eslint-disable react-internal/no-production-logging */\n      prevLog = console.log;\n      prevInfo = console.info;\n      prevWarn = console.warn;\n      prevError = console.error;\n      prevGroup = console.group;\n      prevGroupCollapsed = console.groupCollapsed;\n      prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n      var props = {\n        configurable: true,\n        enumerable: true,\n        value: disabledLog,\n        writable: true\n      }; // $FlowFixMe Flow thinks console is immutable.\n\n      Object.defineProperties(console, {\n        info: props,\n        log: props,\n        warn: props,\n        error: props,\n        group: props,\n        groupCollapsed: props,\n        groupEnd: props\n      });\n      /* eslint-enable react-internal/no-production-logging */\n    }\n\n    disabledDepth++;\n  }\n}\nfunction reenableLogs() {\n  {\n    disabledDepth--;\n\n    if (disabledDepth === 0) {\n      /* eslint-disable react-internal/no-production-logging */\n      var props = {\n        configurable: true,\n        enumerable: true,\n        writable: true\n      }; // $FlowFixMe Flow thinks console is immutable.\n\n      Object.defineProperties(console, {\n        log: assign({}, props, {\n          value: prevLog\n        }),\n        info: assign({}, props, {\n          value: prevInfo\n        }),\n        warn: assign({}, props, {\n          value: prevWarn\n        }),\n        error: assign({}, props, {\n          value: prevError\n        }),\n        group: assign({}, props, {\n          value: prevGroup\n        }),\n        groupCollapsed: assign({}, props, {\n          value: prevGroupCollapsed\n        }),\n        groupEnd: assign({}, props, {\n          value: prevGroupEnd\n        })\n      });\n      /* eslint-enable react-internal/no-production-logging */\n    }\n\n    if (disabledDepth < 0) {\n      error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n    }\n  }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n  {\n    if (prefix === undefined) {\n      // Extract the VM specific prefix used by each line.\n      try {\n        throw Error();\n      } catch (x) {\n        var match = x.stack.trim().match(/\\n( *(at )?)/);\n        prefix = match && match[1] || '';\n      }\n    } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n    return '\\n' + prefix + name;\n  }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n  var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n  componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n  // If something asked for a stack inside a fake render, it should get ignored.\n  if ( !fn || reentry) {\n    return '';\n  }\n\n  {\n    var frame = componentFrameCache.get(fn);\n\n    if (frame !== undefined) {\n      return frame;\n    }\n  }\n\n  var control;\n  reentry = true;\n  var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n  Error.prepareStackTrace = undefined;\n  var previousDispatcher;\n\n  {\n    previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n    // for warnings.\n\n    ReactCurrentDispatcher.current = null;\n    disableLogs();\n  }\n\n  try {\n    // This should throw.\n    if (construct) {\n      // Something should be setting the props in the constructor.\n      var Fake = function () {\n        throw Error();\n      }; // $FlowFixMe\n\n\n      Object.defineProperty(Fake.prototype, 'props', {\n        set: function () {\n          // We use a throwing setter instead of frozen or non-writable props\n          // because that won't throw in a non-strict mode function.\n          throw Error();\n        }\n      });\n\n      if (typeof Reflect === 'object' && Reflect.construct) {\n        // We construct a different control for this case to include any extra\n        // frames added by the construct call.\n        try {\n          Reflect.construct(Fake, []);\n        } catch (x) {\n          control = x;\n        }\n\n        Reflect.construct(fn, [], Fake);\n      } else {\n        try {\n          Fake.call();\n        } catch (x) {\n          control = x;\n        }\n\n        fn.call(Fake.prototype);\n      }\n    } else {\n      try {\n        throw Error();\n      } catch (x) {\n        control = x;\n      }\n\n      fn();\n    }\n  } catch (sample) {\n    // This is inlined manually because closure doesn't do it for us.\n    if (sample && control && typeof sample.stack === 'string') {\n      // This extracts the first frame from the sample that isn't also in the control.\n      // Skipping one frame that we assume is the frame that calls the two.\n      var sampleLines = sample.stack.split('\\n');\n      var controlLines = control.stack.split('\\n');\n      var s = sampleLines.length - 1;\n      var c = controlLines.length - 1;\n\n      while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n        // We expect at least one stack frame to be shared.\n        // Typically this will be the root most one. However, stack frames may be\n        // cut off due to maximum stack limits. In this case, one maybe cut off\n        // earlier than the other. We assume that the sample is longer or the same\n        // and there for cut off earlier. So we should find the root most frame in\n        // the sample somewhere in the control.\n        c--;\n      }\n\n      for (; s >= 1 && c >= 0; s--, c--) {\n        // Next we find the first one that isn't the same which should be the\n        // frame that called our sample function and the control.\n        if (sampleLines[s] !== controlLines[c]) {\n          // In V8, the first line is describing the message but other VMs don't.\n          // If we're about to return the first line, and the control is also on the same\n          // line, that's a pretty good indicator that our sample threw at same line as\n          // the control. I.e. before we entered the sample frame. So we ignore this result.\n          // This can happen if you passed a class to function component, or non-function.\n          if (s !== 1 || c !== 1) {\n            do {\n              s--;\n              c--; // We may still have similar intermediate frames from the construct call.\n              // The next one that isn't the same should be our match though.\n\n              if (c < 0 || sampleLines[s] !== controlLines[c]) {\n                // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n                var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n                // but we have a user-provided \"displayName\"\n                // splice it in to make the stack more readable.\n\n\n                if (fn.displayName && _frame.includes('<anonymous>')) {\n                  _frame = _frame.replace('<anonymous>', fn.displayName);\n                }\n\n                {\n                  if (typeof fn === 'function') {\n                    componentFrameCache.set(fn, _frame);\n                  }\n                } // Return the line we found.\n\n\n                return _frame;\n              }\n            } while (s >= 1 && c >= 0);\n          }\n\n          break;\n        }\n      }\n    }\n  } finally {\n    reentry = false;\n\n    {\n      ReactCurrentDispatcher.current = previousDispatcher;\n      reenableLogs();\n    }\n\n    Error.prepareStackTrace = previousPrepareStackTrace;\n  } // Fallback to just using the name if we couldn't make it throw.\n\n\n  var name = fn ? fn.displayName || fn.name : '';\n  var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n  {\n    if (typeof fn === 'function') {\n      componentFrameCache.set(fn, syntheticFrame);\n    }\n  }\n\n  return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n  {\n    return describeNativeComponentFrame(fn, false);\n  }\n}\n\nfunction shouldConstruct(Component) {\n  var prototype = Component.prototype;\n  return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n  if (type == null) {\n    return '';\n  }\n\n  if (typeof type === 'function') {\n    {\n      return describeNativeComponentFrame(type, shouldConstruct(type));\n    }\n  }\n\n  if (typeof type === 'string') {\n    return describeBuiltInComponentFrame(type);\n  }\n\n  switch (type) {\n    case REACT_SUSPENSE_TYPE:\n      return describeBuiltInComponentFrame('Suspense');\n\n    case REACT_SUSPENSE_LIST_TYPE:\n      return describeBuiltInComponentFrame('SuspenseList');\n  }\n\n  if (typeof type === 'object') {\n    switch (type.$$typeof) {\n      case REACT_FORWARD_REF_TYPE:\n        return describeFunctionComponentFrame(type.render);\n\n      case REACT_MEMO_TYPE:\n        // Memo may contain any component type so we recursively resolve it.\n        return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n      case REACT_LAZY_TYPE:\n        {\n          var lazyComponent = type;\n          var payload = lazyComponent._payload;\n          var init = lazyComponent._init;\n\n          try {\n            // Lazy may contain any component type so we recursively resolve it.\n            return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n          } catch (x) {}\n        }\n    }\n  }\n\n  return '';\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n  {\n    if (element) {\n      var owner = element._owner;\n      var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n      ReactDebugCurrentFrame.setExtraStackFrame(stack);\n    } else {\n      ReactDebugCurrentFrame.setExtraStackFrame(null);\n    }\n  }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n  {\n    // $FlowFixMe This is okay but Flow doesn't know it.\n    var has = Function.call.bind(hasOwnProperty);\n\n    for (var typeSpecName in typeSpecs) {\n      if (has(typeSpecs, typeSpecName)) {\n        var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n        // fail the render phase where it didn't fail before. So we log it.\n        // After these have been cleaned up, we'll let them throw.\n\n        try {\n          // This is intentionally an invariant that gets caught. It's the same\n          // behavior as without this statement except with a better message.\n          if (typeof typeSpecs[typeSpecName] !== 'function') {\n            // eslint-disable-next-line react-internal/prod-error-codes\n            var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n            err.name = 'Invariant Violation';\n            throw err;\n          }\n\n          error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n        } catch (ex) {\n          error$1 = ex;\n        }\n\n        if (error$1 && !(error$1 instanceof Error)) {\n          setCurrentlyValidatingElement(element);\n\n          error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n          setCurrentlyValidatingElement(null);\n        }\n\n        if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n          // Only monitor this failure once because there tends to be a lot of the\n          // same error.\n          loggedTypeFailures[error$1.message] = true;\n          setCurrentlyValidatingElement(element);\n\n          error('Failed %s type: %s', location, error$1.message);\n\n          setCurrentlyValidatingElement(null);\n        }\n      }\n    }\n  }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n  return isArrayImpl(a);\n}\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n  {\n    // toStringTag is needed for namespaced types like Temporal.Instant\n    var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n    var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n    return type;\n  }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n  {\n    try {\n      testStringCoercion(value);\n      return false;\n    } catch (e) {\n      return true;\n    }\n  }\n}\n\nfunction testStringCoercion(value) {\n  // If you ended up here by following an exception call stack, here's what's\n  // happened: you supplied an object or symbol value to React (as a prop, key,\n  // DOM attribute, CSS property, string ref, etc.) and when React tried to\n  // coerce it to a string using `'' + value`, an exception was thrown.\n  //\n  // The most common types that will cause this exception are `Symbol` instances\n  // and Temporal objects like `Temporal.Instant`. But any object that has a\n  // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n  // exception. (Library authors do this to prevent users from using built-in\n  // numeric operators like `+` or comparison operators like `>=` because custom\n  // methods are needed to perform accurate arithmetic or comparison.)\n  //\n  // To fix the problem, coerce this object or symbol value to a string before\n  // passing it to React. The most reliable way is usually `String(value)`.\n  //\n  // To find which value is throwing, check the browser or debugger console.\n  // Before this exception was thrown, there should be `console.error` output\n  // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n  // problem and how that type was used: key, atrribute, input value prop, etc.\n  // In most cases, this console output also shows the component and its\n  // ancestor components where the exception happened.\n  //\n  // eslint-disable-next-line react-internal/safe-string-coercion\n  return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n  {\n    if (willCoercionThrow(value)) {\n      error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n      return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n    }\n  }\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar RESERVED_PROPS = {\n  key: true,\n  ref: true,\n  __self: true,\n  __source: true\n};\nvar specialPropKeyWarningShown;\nvar specialPropRefWarningShown;\nvar didWarnAboutStringRefs;\n\n{\n  didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n  {\n    if (hasOwnProperty.call(config, 'ref')) {\n      var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n      if (getter && getter.isReactWarning) {\n        return false;\n      }\n    }\n  }\n\n  return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n  {\n    if (hasOwnProperty.call(config, 'key')) {\n      var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n      if (getter && getter.isReactWarning) {\n        return false;\n      }\n    }\n  }\n\n  return config.key !== undefined;\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config, self) {\n  {\n    if (typeof config.ref === 'string' && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {\n      var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n      if (!didWarnAboutStringRefs[componentName]) {\n        error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);\n\n        didWarnAboutStringRefs[componentName] = true;\n      }\n    }\n  }\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n  {\n    var warnAboutAccessingKey = function () {\n      if (!specialPropKeyWarningShown) {\n        specialPropKeyWarningShown = true;\n\n        error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n      }\n    };\n\n    warnAboutAccessingKey.isReactWarning = true;\n    Object.defineProperty(props, 'key', {\n      get: warnAboutAccessingKey,\n      configurable: true\n    });\n  }\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n  {\n    var warnAboutAccessingRef = function () {\n      if (!specialPropRefWarningShown) {\n        specialPropRefWarningShown = true;\n\n        error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n      }\n    };\n\n    warnAboutAccessingRef.isReactWarning = true;\n    Object.defineProperty(props, 'ref', {\n      get: warnAboutAccessingRef,\n      configurable: true\n    });\n  }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nvar ReactElement = function (type, key, ref, self, source, owner, props) {\n  var element = {\n    // This tag allows us to uniquely identify this as a React Element\n    $$typeof: REACT_ELEMENT_TYPE,\n    // Built-in properties that belong on the element\n    type: type,\n    key: key,\n    ref: ref,\n    props: props,\n    // Record the component responsible for creating this element.\n    _owner: owner\n  };\n\n  {\n    // The validation flag is currently mutative. We put it on\n    // an external backing store so that we can freeze the whole object.\n    // This can be replaced with a WeakMap once they are implemented in\n    // commonly used development environments.\n    element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n    // the validation flag non-enumerable (where possible, which should\n    // include every environment we run tests in), so the test framework\n    // ignores it.\n\n    Object.defineProperty(element._store, 'validated', {\n      configurable: false,\n      enumerable: false,\n      writable: true,\n      value: false\n    }); // self and source are DEV only properties.\n\n    Object.defineProperty(element, '_self', {\n      configurable: false,\n      enumerable: false,\n      writable: false,\n      value: self\n    }); // Two elements created in two different places should be considered\n    // equal for testing purposes and therefore we hide it from enumeration.\n\n    Object.defineProperty(element, '_source', {\n      configurable: false,\n      enumerable: false,\n      writable: false,\n      value: source\n    });\n\n    if (Object.freeze) {\n      Object.freeze(element.props);\n      Object.freeze(element);\n    }\n  }\n\n  return element;\n};\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV(type, config, maybeKey, source, self) {\n  {\n    var propName; // Reserved names are extracted\n\n    var props = {};\n    var key = null;\n    var ref = null; // Currently, key can be spread in as a prop. This causes a potential\n    // issue if key is also explicitly declared (ie. <div {...props} key=\"Hi\" />\n    // or <div key=\"Hi\" {...props} /> ). We want to deprecate key spread,\n    // but as an intermediary step, we will use jsxDEV for everything except\n    // <div {...props} key=\"Hi\" />, because we aren't currently able to tell if\n    // key is explicitly declared to be undefined or not.\n\n    if (maybeKey !== undefined) {\n      {\n        checkKeyStringCoercion(maybeKey);\n      }\n\n      key = '' + maybeKey;\n    }\n\n    if (hasValidKey(config)) {\n      {\n        checkKeyStringCoercion(config.key);\n      }\n\n      key = '' + config.key;\n    }\n\n    if (hasValidRef(config)) {\n      ref = config.ref;\n      warnIfStringRefCannotBeAutoConverted(config, self);\n    } // Remaining properties are added to a new props object\n\n\n    for (propName in config) {\n      if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n        props[propName] = config[propName];\n      }\n    } // Resolve default props\n\n\n    if (type && type.defaultProps) {\n      var defaultProps = type.defaultProps;\n\n      for (propName in defaultProps) {\n        if (props[propName] === undefined) {\n          props[propName] = defaultProps[propName];\n        }\n      }\n    }\n\n    if (key || ref) {\n      var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n      if (key) {\n        defineKeyPropWarningGetter(props, displayName);\n      }\n\n      if (ref) {\n        defineRefPropWarningGetter(props, displayName);\n      }\n    }\n\n    return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n  }\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n  {\n    if (element) {\n      var owner = element._owner;\n      var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n      ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n    } else {\n      ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n    }\n  }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n  propTypesMisspellWarningShown = false;\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\n\nfunction isValidElement(object) {\n  {\n    return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n  }\n}\n\nfunction getDeclarationErrorAddendum() {\n  {\n    if (ReactCurrentOwner$1.current) {\n      var name = getComponentNameFromType(ReactCurrentOwner$1.current.type);\n\n      if (name) {\n        return '\\n\\nCheck the render method of `' + name + '`.';\n      }\n    }\n\n    return '';\n  }\n}\n\nfunction getSourceInfoErrorAddendum(source) {\n  {\n    if (source !== undefined) {\n      var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n      var lineNumber = source.lineNumber;\n      return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n    }\n\n    return '';\n  }\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n  {\n    var info = getDeclarationErrorAddendum();\n\n    if (!info) {\n      var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n      if (parentName) {\n        info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n      }\n    }\n\n    return info;\n  }\n}\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\n\nfunction validateExplicitKey(element, parentType) {\n  {\n    if (!element._store || element._store.validated || element.key != null) {\n      return;\n    }\n\n    element._store.validated = true;\n    var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n    if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n      return;\n    }\n\n    ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n    // property, it may be the creator of the child that's responsible for\n    // assigning it a key.\n\n    var childOwner = '';\n\n    if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) {\n      // Give the component that originally created this child.\n      childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n    }\n\n    setCurrentlyValidatingElement$1(element);\n\n    error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n    setCurrentlyValidatingElement$1(null);\n  }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n  {\n    if (typeof node !== 'object') {\n      return;\n    }\n\n    if (isArray(node)) {\n      for (var i = 0; i < node.length; i++) {\n        var child = node[i];\n\n        if (isValidElement(child)) {\n          validateExplicitKey(child, parentType);\n        }\n      }\n    } else if (isValidElement(node)) {\n      // This element was passed in a valid location.\n      if (node._store) {\n        node._store.validated = true;\n      }\n    } else if (node) {\n      var iteratorFn = getIteratorFn(node);\n\n      if (typeof iteratorFn === 'function') {\n        // Entry iterators used to provide implicit keys,\n        // but now we print a separate warning for them later.\n        if (iteratorFn !== node.entries) {\n          var iterator = iteratorFn.call(node);\n          var step;\n\n          while (!(step = iterator.next()).done) {\n            if (isValidElement(step.value)) {\n              validateExplicitKey(step.value, parentType);\n            }\n          }\n        }\n      }\n    }\n  }\n}\n/**\n * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n  {\n    var type = element.type;\n\n    if (type === null || type === undefined || typeof type === 'string') {\n      return;\n    }\n\n    var propTypes;\n\n    if (typeof type === 'function') {\n      propTypes = type.propTypes;\n    } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n    // Inner props are checked in the reconciler.\n    type.$$typeof === REACT_MEMO_TYPE)) {\n      propTypes = type.propTypes;\n    } else {\n      return;\n    }\n\n    if (propTypes) {\n      // Intentionally inside to avoid triggering lazy initializers:\n      var name = getComponentNameFromType(type);\n      checkPropTypes(propTypes, element.props, 'prop', name, element);\n    } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n      propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n      var _name = getComponentNameFromType(type);\n\n      error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n    }\n\n    if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n      error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n    }\n  }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n  {\n    var keys = Object.keys(fragment.props);\n\n    for (var i = 0; i < keys.length; i++) {\n      var key = keys[i];\n\n      if (key !== 'children' && key !== 'key') {\n        setCurrentlyValidatingElement$1(fragment);\n\n        error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n        setCurrentlyValidatingElement$1(null);\n        break;\n      }\n    }\n\n    if (fragment.ref !== null) {\n      setCurrentlyValidatingElement$1(fragment);\n\n      error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n      setCurrentlyValidatingElement$1(null);\n    }\n  }\n}\n\nvar didWarnAboutKeySpread = {};\nfunction jsxWithValidation(type, props, key, isStaticChildren, source, self) {\n  {\n    var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to\n    // succeed and there will likely be errors in render.\n\n    if (!validType) {\n      var info = '';\n\n      if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n        info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n      }\n\n      var sourceInfo = getSourceInfoErrorAddendum(source);\n\n      if (sourceInfo) {\n        info += sourceInfo;\n      } else {\n        info += getDeclarationErrorAddendum();\n      }\n\n      var typeString;\n\n      if (type === null) {\n        typeString = 'null';\n      } else if (isArray(type)) {\n        typeString = 'array';\n      } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n        typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n        info = ' Did you accidentally export a JSX literal instead of a component?';\n      } else {\n        typeString = typeof type;\n      }\n\n      error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n    }\n\n    var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used.\n    // TODO: Drop this when these are no longer allowed as the type argument.\n\n    if (element == null) {\n      return element;\n    } // Skip key warning if the type isn't valid since our key validation logic\n    // doesn't expect a non-string/function type and can throw confusing errors.\n    // We don't want exception behavior to differ between dev and prod.\n    // (Rendering will throw with a helpful message and as soon as the type is\n    // fixed, the key warnings will appear.)\n\n\n    if (validType) {\n      var children = props.children;\n\n      if (children !== undefined) {\n        if (isStaticChildren) {\n          if (isArray(children)) {\n            for (var i = 0; i < children.length; i++) {\n              validateChildKeys(children[i], type);\n            }\n\n            if (Object.freeze) {\n              Object.freeze(children);\n            }\n          } else {\n            error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.');\n          }\n        } else {\n          validateChildKeys(children, type);\n        }\n      }\n    }\n\n    {\n      if (hasOwnProperty.call(props, 'key')) {\n        var componentName = getComponentNameFromType(type);\n        var keys = Object.keys(props).filter(function (k) {\n          return k !== 'key';\n        });\n        var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}';\n\n        if (!didWarnAboutKeySpread[componentName + beforeExample]) {\n          var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}';\n\n          error('A props object containing a \"key\" prop is being spread into JSX:\\n' + '  let props = %s;\\n' + '  <%s {...props} />\\n' + 'React keys must be passed directly to JSX without using spread:\\n' + '  let props = %s;\\n' + '  <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName);\n\n          didWarnAboutKeySpread[componentName + beforeExample] = true;\n        }\n      }\n    }\n\n    if (type === REACT_FRAGMENT_TYPE) {\n      validateFragmentProps(element);\n    } else {\n      validatePropTypes(element);\n    }\n\n    return element;\n  }\n} // These two functions exist to still get child warnings in dev\n// even with the prod transform. This means that jsxDEV is purely\n// opt-in behavior for better messages but that we won't stop\n// giving you warnings if you use production apis.\n\nfunction jsxWithValidationStatic(type, props, key) {\n  {\n    return jsxWithValidation(type, props, key, true);\n  }\n}\nfunction jsxWithValidationDynamic(type, props, key) {\n  {\n    return jsxWithValidation(type, props, key, false);\n  }\n}\n\nvar jsx =  jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children.\n// for now we can ship identical prod functions\n\nvar jsxs =  jsxWithValidationStatic ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsx;\nexports.jsxs = jsxs;\n  })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n  module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n  module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","module.exports = window[\"React\"];","module.exports = window[\"wp\"][\"apiFetch\"];","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","module.exports = window[\"wp\"][\"primitives\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"index\": 0,\n\t\"./style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkmartincv_simple_star_rating_block\"] = globalThis[\"webpackChunkmartincv_simple_star_rating_block\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"./style-index\"], () => (__webpack_require__(\"./src/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["__","useBlockProps","InspectorControls","ColorPalette","PanelBody","TextControl","ToggleControl","ComboboxControl","RangeControl","useEffect","useState","apiFetch","Edit","attributes","setAttributes","rating","customField","useCustomField","starColor","starSize","customFields","setCustomFields","postMetaData","setPostMetaData","postId","wp","data","select","getCurrentPostId","postType","getCurrentPostType","path","then","post","md","meta","acf","Object","keys","fields","updateRating","value","numericValue","parseFloat","isNaN","updateCustomField","newRating","undefined","console","warn","fullStars","Math","floor","partialStar","createElement","title","label","checked","onChange","options","map","field","type","min","max","step","readOnly","initialOpen","color","style","fontSize","Array","from","length","_","i","key","className","backgroundColor","percentage","round","backgroundImage","registerBlockType","starHalf","metadata","name","icon","edit"],"sourceRoot":""}
  • simple-star-rating-block/trunk/build/render.php

    r3133729 r3133802  
    77 * @package SimpleStarRatingBlock
    88 */
     9
     10if ( ! defined( 'ABSPATH' ) ) {
     11    exit; // Exit if accessed directly.
     12}
    913
    1014$rating = 0;
  • simple-star-rating-block/trunk/build/style-index.css

    r3133729 r3133802  
    1 .wp-block-create-block-simple-star-rating-block{display:inline-block;font-size:0;position:relative}.wp-block-create-block-simple-star-rating-block .ssrb-star{background:#d3d3d3;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);display:inline-block;height:1em;margin:0 .1em;position:relative;width:1em}.wp-block-create-block-simple-star-rating-block .ssrb-star:last-child{margin:0}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-full{background:inherit}.wp-block-create-block-simple-star-rating-block .ssrb-star:after{clip-path:inherit;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-1:after{background:linear-gradient(90deg,inherit 1%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-2:after{background:linear-gradient(90deg,inherit 2%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-3:after{background:linear-gradient(90deg,inherit 3%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-4:after{background:linear-gradient(90deg,inherit 4%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-5:after{background:linear-gradient(90deg,inherit 5%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-6:after{background:linear-gradient(90deg,inherit 6%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-7:after{background:linear-gradient(90deg,inherit 7%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-8:after{background:linear-gradient(90deg,inherit 8%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-9:after{background:linear-gradient(90deg,inherit 9%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-10:after{background:linear-gradient(90deg,inherit 10%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-11:after{background:linear-gradient(90deg,inherit 11%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-12:after{background:linear-gradient(90deg,inherit 12%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-13:after{background:linear-gradient(90deg,inherit 13%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-14:after{background:linear-gradient(90deg,inherit 14%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-15:after{background:linear-gradient(90deg,inherit 15%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-16:after{background:linear-gradient(90deg,inherit 16%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-17:after{background:linear-gradient(90deg,inherit 17%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-18:after{background:linear-gradient(90deg,inherit 18%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-19:after{background:linear-gradient(90deg,inherit 19%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-20:after{background:linear-gradient(90deg,inherit 20%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-21:after{background:linear-gradient(90deg,inherit 21%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-22:after{background:linear-gradient(90deg,inherit 22%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-23:after{background:linear-gradient(90deg,inherit 23%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-24:after{background:linear-gradient(90deg,inherit 24%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-25:after{background:linear-gradient(90deg,inherit 25%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-26:after{background:linear-gradient(90deg,inherit 26%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-27:after{background:linear-gradient(90deg,inherit 27%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-28:after{background:linear-gradient(90deg,inherit 28%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-29:after{background:linear-gradient(90deg,inherit 29%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-30:after{background:linear-gradient(90deg,inherit 30%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-31:after{background:linear-gradient(90deg,inherit 31%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-32:after{background:linear-gradient(90deg,inherit 32%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-33:after{background:linear-gradient(90deg,inherit 33%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-34:after{background:linear-gradient(90deg,inherit 34%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-35:after{background:linear-gradient(90deg,inherit 35%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-36:after{background:linear-gradient(90deg,inherit 36%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-37:after{background:linear-gradient(90deg,inherit 37%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-38:after{background:linear-gradient(90deg,inherit 38%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-39:after{background:linear-gradient(90deg,inherit 39%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-40:after{background:linear-gradient(90deg,inherit 40%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-41:after{background:linear-gradient(90deg,inherit 41%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-42:after{background:linear-gradient(90deg,inherit 42%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-43:after{background:linear-gradient(90deg,inherit 43%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-44:after{background:linear-gradient(90deg,inherit 44%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-45:after{background:linear-gradient(90deg,inherit 45%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-46:after{background:linear-gradient(90deg,inherit 46%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-47:after{background:linear-gradient(90deg,inherit 47%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-48:after{background:linear-gradient(90deg,inherit 48%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-49:after{background:linear-gradient(90deg,inherit 49%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-50:after{background:linear-gradient(90deg,inherit 50%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-51:after{background:linear-gradient(90deg,inherit 51%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-52:after{background:linear-gradient(90deg,inherit 52%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-53:after{background:linear-gradient(90deg,inherit 53%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-54:after{background:linear-gradient(90deg,inherit 54%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-55:after{background:linear-gradient(90deg,inherit 55%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-56:after{background:linear-gradient(90deg,inherit 56%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-57:after{background:linear-gradient(90deg,inherit 57%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-58:after{background:linear-gradient(90deg,inherit 58%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-59:after{background:linear-gradient(90deg,inherit 59%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-60:after{background:linear-gradient(90deg,inherit 60%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-61:after{background:linear-gradient(90deg,inherit 61%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-62:after{background:linear-gradient(90deg,inherit 62%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-63:after{background:linear-gradient(90deg,inherit 63%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-64:after{background:linear-gradient(90deg,inherit 64%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-65:after{background:linear-gradient(90deg,inherit 65%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-66:after{background:linear-gradient(90deg,inherit 66%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-67:after{background:linear-gradient(90deg,inherit 67%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-68:after{background:linear-gradient(90deg,inherit 68%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-69:after{background:linear-gradient(90deg,inherit 69%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-70:after{background:linear-gradient(90deg,inherit 70%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-71:after{background:linear-gradient(90deg,inherit 71%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-72:after{background:linear-gradient(90deg,inherit 72%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-73:after{background:linear-gradient(90deg,inherit 73%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-74:after{background:linear-gradient(90deg,inherit 74%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-75:after{background:linear-gradient(90deg,inherit 75%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-76:after{background:linear-gradient(90deg,inherit 76%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-77:after{background:linear-gradient(90deg,inherit 77%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-78:after{background:linear-gradient(90deg,inherit 78%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-79:after{background:linear-gradient(90deg,inherit 79%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-80:after{background:linear-gradient(90deg,inherit 80%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-81:after{background:linear-gradient(90deg,inherit 81%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-82:after{background:linear-gradient(90deg,inherit 82%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-83:after{background:linear-gradient(90deg,inherit 83%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-84:after{background:linear-gradient(90deg,inherit 84%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-85:after{background:linear-gradient(90deg,inherit 85%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-86:after{background:linear-gradient(90deg,inherit 86%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-87:after{background:linear-gradient(90deg,inherit 87%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-88:after{background:linear-gradient(90deg,inherit 88%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-89:after{background:linear-gradient(90deg,inherit 89%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-90:after{background:linear-gradient(90deg,inherit 90%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-91:after{background:linear-gradient(90deg,inherit 91%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-92:after{background:linear-gradient(90deg,inherit 92%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-93:after{background:linear-gradient(90deg,inherit 93%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-94:after{background:linear-gradient(90deg,inherit 94%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-95:after{background:linear-gradient(90deg,inherit 95%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-96:after{background:linear-gradient(90deg,inherit 96%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-97:after{background:linear-gradient(90deg,inherit 97%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-98:after{background:linear-gradient(90deg,inherit 98%,transparent 0)}.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-99:after{background:linear-gradient(90deg,inherit 99%,transparent 0)}
     1/*!***************************************************************************************************************************************************************************************************************************************!*\
     2  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./src/style.scss ***!
     3  \***************************************************************************************************************************************************************************************************************************************/
     4.wp-block-create-block-simple-star-rating-block {
     5  display: inline-block;
     6  font-size: 0;
     7  position: relative;
     8}
     9.wp-block-create-block-simple-star-rating-block .ssrb-star {
     10  width: 1em;
     11  height: 1em;
     12  margin: 0 0.1em;
     13  display: inline-block;
     14  background: lightgray;
     15  clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
     16  position: relative;
     17}
     18.wp-block-create-block-simple-star-rating-block .ssrb-star:last-child {
     19  margin: 0;
     20}
     21.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-full {
     22  background: inherit;
     23}
     24.wp-block-create-block-simple-star-rating-block .ssrb-star::after {
     25  content: "";
     26  position: absolute;
     27  top: 0;
     28  left: 0;
     29  width: 100%;
     30  height: 100%;
     31  clip-path: inherit;
     32}
     33.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-1::after {
     34  background: linear-gradient(90deg, inherit 1%, transparent 1%);
     35}
     36.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-2::after {
     37  background: linear-gradient(90deg, inherit 2%, transparent 2%);
     38}
     39.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-3::after {
     40  background: linear-gradient(90deg, inherit 3%, transparent 3%);
     41}
     42.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-4::after {
     43  background: linear-gradient(90deg, inherit 4%, transparent 4%);
     44}
     45.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-5::after {
     46  background: linear-gradient(90deg, inherit 5%, transparent 5%);
     47}
     48.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-6::after {
     49  background: linear-gradient(90deg, inherit 6%, transparent 6%);
     50}
     51.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-7::after {
     52  background: linear-gradient(90deg, inherit 7%, transparent 7%);
     53}
     54.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-8::after {
     55  background: linear-gradient(90deg, inherit 8%, transparent 8%);
     56}
     57.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-9::after {
     58  background: linear-gradient(90deg, inherit 9%, transparent 9%);
     59}
     60.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-10::after {
     61  background: linear-gradient(90deg, inherit 10%, transparent 10%);
     62}
     63.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-11::after {
     64  background: linear-gradient(90deg, inherit 11%, transparent 11%);
     65}
     66.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-12::after {
     67  background: linear-gradient(90deg, inherit 12%, transparent 12%);
     68}
     69.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-13::after {
     70  background: linear-gradient(90deg, inherit 13%, transparent 13%);
     71}
     72.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-14::after {
     73  background: linear-gradient(90deg, inherit 14%, transparent 14%);
     74}
     75.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-15::after {
     76  background: linear-gradient(90deg, inherit 15%, transparent 15%);
     77}
     78.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-16::after {
     79  background: linear-gradient(90deg, inherit 16%, transparent 16%);
     80}
     81.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-17::after {
     82  background: linear-gradient(90deg, inherit 17%, transparent 17%);
     83}
     84.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-18::after {
     85  background: linear-gradient(90deg, inherit 18%, transparent 18%);
     86}
     87.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-19::after {
     88  background: linear-gradient(90deg, inherit 19%, transparent 19%);
     89}
     90.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-20::after {
     91  background: linear-gradient(90deg, inherit 20%, transparent 20%);
     92}
     93.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-21::after {
     94  background: linear-gradient(90deg, inherit 21%, transparent 21%);
     95}
     96.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-22::after {
     97  background: linear-gradient(90deg, inherit 22%, transparent 22%);
     98}
     99.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-23::after {
     100  background: linear-gradient(90deg, inherit 23%, transparent 23%);
     101}
     102.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-24::after {
     103  background: linear-gradient(90deg, inherit 24%, transparent 24%);
     104}
     105.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-25::after {
     106  background: linear-gradient(90deg, inherit 25%, transparent 25%);
     107}
     108.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-26::after {
     109  background: linear-gradient(90deg, inherit 26%, transparent 26%);
     110}
     111.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-27::after {
     112  background: linear-gradient(90deg, inherit 27%, transparent 27%);
     113}
     114.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-28::after {
     115  background: linear-gradient(90deg, inherit 28%, transparent 28%);
     116}
     117.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-29::after {
     118  background: linear-gradient(90deg, inherit 29%, transparent 29%);
     119}
     120.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-30::after {
     121  background: linear-gradient(90deg, inherit 30%, transparent 30%);
     122}
     123.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-31::after {
     124  background: linear-gradient(90deg, inherit 31%, transparent 31%);
     125}
     126.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-32::after {
     127  background: linear-gradient(90deg, inherit 32%, transparent 32%);
     128}
     129.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-33::after {
     130  background: linear-gradient(90deg, inherit 33%, transparent 33%);
     131}
     132.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-34::after {
     133  background: linear-gradient(90deg, inherit 34%, transparent 34%);
     134}
     135.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-35::after {
     136  background: linear-gradient(90deg, inherit 35%, transparent 35%);
     137}
     138.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-36::after {
     139  background: linear-gradient(90deg, inherit 36%, transparent 36%);
     140}
     141.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-37::after {
     142  background: linear-gradient(90deg, inherit 37%, transparent 37%);
     143}
     144.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-38::after {
     145  background: linear-gradient(90deg, inherit 38%, transparent 38%);
     146}
     147.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-39::after {
     148  background: linear-gradient(90deg, inherit 39%, transparent 39%);
     149}
     150.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-40::after {
     151  background: linear-gradient(90deg, inherit 40%, transparent 40%);
     152}
     153.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-41::after {
     154  background: linear-gradient(90deg, inherit 41%, transparent 41%);
     155}
     156.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-42::after {
     157  background: linear-gradient(90deg, inherit 42%, transparent 42%);
     158}
     159.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-43::after {
     160  background: linear-gradient(90deg, inherit 43%, transparent 43%);
     161}
     162.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-44::after {
     163  background: linear-gradient(90deg, inherit 44%, transparent 44%);
     164}
     165.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-45::after {
     166  background: linear-gradient(90deg, inherit 45%, transparent 45%);
     167}
     168.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-46::after {
     169  background: linear-gradient(90deg, inherit 46%, transparent 46%);
     170}
     171.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-47::after {
     172  background: linear-gradient(90deg, inherit 47%, transparent 47%);
     173}
     174.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-48::after {
     175  background: linear-gradient(90deg, inherit 48%, transparent 48%);
     176}
     177.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-49::after {
     178  background: linear-gradient(90deg, inherit 49%, transparent 49%);
     179}
     180.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-50::after {
     181  background: linear-gradient(90deg, inherit 50%, transparent 50%);
     182}
     183.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-51::after {
     184  background: linear-gradient(90deg, inherit 51%, transparent 51%);
     185}
     186.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-52::after {
     187  background: linear-gradient(90deg, inherit 52%, transparent 52%);
     188}
     189.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-53::after {
     190  background: linear-gradient(90deg, inherit 53%, transparent 53%);
     191}
     192.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-54::after {
     193  background: linear-gradient(90deg, inherit 54%, transparent 54%);
     194}
     195.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-55::after {
     196  background: linear-gradient(90deg, inherit 55%, transparent 55%);
     197}
     198.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-56::after {
     199  background: linear-gradient(90deg, inherit 56%, transparent 56%);
     200}
     201.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-57::after {
     202  background: linear-gradient(90deg, inherit 57%, transparent 57%);
     203}
     204.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-58::after {
     205  background: linear-gradient(90deg, inherit 58%, transparent 58%);
     206}
     207.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-59::after {
     208  background: linear-gradient(90deg, inherit 59%, transparent 59%);
     209}
     210.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-60::after {
     211  background: linear-gradient(90deg, inherit 60%, transparent 60%);
     212}
     213.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-61::after {
     214  background: linear-gradient(90deg, inherit 61%, transparent 61%);
     215}
     216.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-62::after {
     217  background: linear-gradient(90deg, inherit 62%, transparent 62%);
     218}
     219.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-63::after {
     220  background: linear-gradient(90deg, inherit 63%, transparent 63%);
     221}
     222.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-64::after {
     223  background: linear-gradient(90deg, inherit 64%, transparent 64%);
     224}
     225.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-65::after {
     226  background: linear-gradient(90deg, inherit 65%, transparent 65%);
     227}
     228.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-66::after {
     229  background: linear-gradient(90deg, inherit 66%, transparent 66%);
     230}
     231.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-67::after {
     232  background: linear-gradient(90deg, inherit 67%, transparent 67%);
     233}
     234.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-68::after {
     235  background: linear-gradient(90deg, inherit 68%, transparent 68%);
     236}
     237.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-69::after {
     238  background: linear-gradient(90deg, inherit 69%, transparent 69%);
     239}
     240.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-70::after {
     241  background: linear-gradient(90deg, inherit 70%, transparent 70%);
     242}
     243.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-71::after {
     244  background: linear-gradient(90deg, inherit 71%, transparent 71%);
     245}
     246.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-72::after {
     247  background: linear-gradient(90deg, inherit 72%, transparent 72%);
     248}
     249.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-73::after {
     250  background: linear-gradient(90deg, inherit 73%, transparent 73%);
     251}
     252.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-74::after {
     253  background: linear-gradient(90deg, inherit 74%, transparent 74%);
     254}
     255.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-75::after {
     256  background: linear-gradient(90deg, inherit 75%, transparent 75%);
     257}
     258.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-76::after {
     259  background: linear-gradient(90deg, inherit 76%, transparent 76%);
     260}
     261.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-77::after {
     262  background: linear-gradient(90deg, inherit 77%, transparent 77%);
     263}
     264.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-78::after {
     265  background: linear-gradient(90deg, inherit 78%, transparent 78%);
     266}
     267.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-79::after {
     268  background: linear-gradient(90deg, inherit 79%, transparent 79%);
     269}
     270.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-80::after {
     271  background: linear-gradient(90deg, inherit 80%, transparent 80%);
     272}
     273.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-81::after {
     274  background: linear-gradient(90deg, inherit 81%, transparent 81%);
     275}
     276.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-82::after {
     277  background: linear-gradient(90deg, inherit 82%, transparent 82%);
     278}
     279.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-83::after {
     280  background: linear-gradient(90deg, inherit 83%, transparent 83%);
     281}
     282.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-84::after {
     283  background: linear-gradient(90deg, inherit 84%, transparent 84%);
     284}
     285.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-85::after {
     286  background: linear-gradient(90deg, inherit 85%, transparent 85%);
     287}
     288.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-86::after {
     289  background: linear-gradient(90deg, inherit 86%, transparent 86%);
     290}
     291.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-87::after {
     292  background: linear-gradient(90deg, inherit 87%, transparent 87%);
     293}
     294.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-88::after {
     295  background: linear-gradient(90deg, inherit 88%, transparent 88%);
     296}
     297.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-89::after {
     298  background: linear-gradient(90deg, inherit 89%, transparent 89%);
     299}
     300.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-90::after {
     301  background: linear-gradient(90deg, inherit 90%, transparent 90%);
     302}
     303.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-91::after {
     304  background: linear-gradient(90deg, inherit 91%, transparent 91%);
     305}
     306.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-92::after {
     307  background: linear-gradient(90deg, inherit 92%, transparent 92%);
     308}
     309.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-93::after {
     310  background: linear-gradient(90deg, inherit 93%, transparent 93%);
     311}
     312.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-94::after {
     313  background: linear-gradient(90deg, inherit 94%, transparent 94%);
     314}
     315.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-95::after {
     316  background: linear-gradient(90deg, inherit 95%, transparent 95%);
     317}
     318.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-96::after {
     319  background: linear-gradient(90deg, inherit 96%, transparent 96%);
     320}
     321.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-97::after {
     322  background: linear-gradient(90deg, inherit 97%, transparent 97%);
     323}
     324.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-98::after {
     325  background: linear-gradient(90deg, inherit 98%, transparent 98%);
     326}
     327.wp-block-create-block-simple-star-rating-block .ssrb-star.ssrb-perc-99::after {
     328  background: linear-gradient(90deg, inherit 99%, transparent 99%);
     329}
     330
     331/*# sourceMappingURL=style-index.css.map*/
  • simple-star-rating-block/trunk/build/style-index.css.map

    r3133729 r3133802  
    1 {"version":3,"file":"./style-index.css","mappings":";;;AAAA;EACI;EACA;EACA;AACJ;AACI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AACR;AACQ;EACI;AACZ;AAEQ;EACI;AAAZ;AAGQ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AADZ;AAKY;EAEI;AAJhB;AAEY;EAEI;AADhB;AADY;EAEI;AAEhB;AAJY;EAEI;AAKhB;AAPY;EAEI;AAQhB;AAVY;EAEI;AAWhB;AAbY;EAEI;AAchB;AAhBY;EAEI;AAiBhB;AAnBY;EAEI;AAoBhB;AAtBY;EAEI;AAuBhB;AAzBY;EAEI;AA0BhB;AA5BY;EAEI;AA6BhB;AA/BY;EAEI;AAgChB;AAlCY;EAEI;AAmChB;AArCY;EAEI;AAsChB;AAxCY;EAEI;AAyChB;AA3CY;EAEI;AA4ChB;AA9CY;EAEI;AA+ChB;AAjDY;EAEI;AAkDhB;AApDY;EAEI;AAqDhB;AAvDY;EAEI;AAwDhB;AA1DY;EAEI;AA2DhB;AA7DY;EAEI;AA8DhB;AAhEY;EAEI;AAiEhB;AAnEY;EAEI;AAoEhB;AAtEY;EAEI;AAuEhB;AAzEY;EAEI;AA0EhB;AA5EY;EAEI;AA6EhB;AA/EY;EAEI;AAgFhB;AAlFY;EAEI;AAmFhB;AArFY;EAEI;AAsFhB;AAxFY;EAEI;AAyFhB;AA3FY;EAEI;AA4FhB;AA9FY;EAEI;AA+FhB;AAjGY;EAEI;AAkGhB;AApGY;EAEI;AAqGhB;AAvGY;EAEI;AAwGhB;AA1GY;EAEI;AA2GhB;AA7GY;EAEI;AA8GhB;AAhHY;EAEI;AAiHhB;AAnHY;EAEI;AAoHhB;AAtHY;EAEI;AAuHhB;AAzHY;EAEI;AA0HhB;AA5HY;EAEI;AA6HhB;AA/HY;EAEI;AAgIhB;AAlIY;EAEI;AAmIhB;AArIY;EAEI;AAsIhB;AAxIY;EAEI;AAyIhB;AA3IY;EAEI;AA4IhB;AA9IY;EAEI;AA+IhB;AAjJY;EAEI;AAkJhB;AApJY;EAEI;AAqJhB;AAvJY;EAEI;AAwJhB;AA1JY;EAEI;AA2JhB;AA7JY;EAEI;AA8JhB;AAhKY;EAEI;AAiKhB;AAnKY;EAEI;AAoKhB;AAtKY;EAEI;AAuKhB;AAzKY;EAEI;AA0KhB;AA5KY;EAEI;AA6KhB;AA/KY;EAEI;AAgLhB;AAlLY;EAEI;AAmLhB;AArLY;EAEI;AAsLhB;AAxLY;EAEI;AAyLhB;AA3LY;EAEI;AA4LhB;AA9LY;EAEI;AA+LhB;AAjMY;EAEI;AAkMhB;AApMY;EAEI;AAqMhB;AAvMY;EAEI;AAwMhB;AA1MY;EAEI;AA2MhB;AA7MY;EAEI;AA8MhB;AAhNY;EAEI;AAiNhB;AAnNY;EAEI;AAoNhB;AAtNY;EAEI;AAuNhB;AAzNY;EAEI;AA0NhB;AA5NY;EAEI;AA6NhB;AA/NY;EAEI;AAgOhB;AAlOY;EAEI;AAmOhB;AArOY;EAEI;AAsOhB;AAxOY;EAEI;AAyOhB;AA3OY;EAEI;AA4OhB;AA9OY;EAEI;AA+OhB;AAjPY;EAEI;AAkPhB;AApPY;EAEI;AAqPhB;AAvPY;EAEI;AAwPhB;AA1PY;EAEI;AA2PhB;AA7PY;EAEI;AA8PhB;AAhQY;EAEI;AAiQhB;AAnQY;EAEI;AAoQhB;AAtQY;EAEI;AAuQhB;AAzQY;EAEI;AA0QhB;AA5QY;EAEI;AA6QhB;AA/QY;EAEI;AAgRhB;AAlRY;EAEI;AAmRhB;AArRY;EAEI;AAsRhB;AAxRY;EAEI;AAyRhB;AA3RY;EAEI;AA4RhB;AA9RY;EAEI;AA+RhB;AAjSY;EAEI;AAkShB,C","sources":["webpack://simple-star-rating-block/./src/style.scss"],"sourcesContent":[".wp-block-create-block-simple-star-rating-block {\n    display: inline-block;\n    font-size: 0;\n    position: relative;\n\n    .ssrb-star {\n        width: 1em; // Adjusted to scale with font size\n        height: 1em; // Adjusted to scale with font size\n        margin: 0 0.1em;\n        display: inline-block;\n        background: lightgray;\n        clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);\n        position: relative;\n\n        &:last-child {\n            margin: 0;\n        }\n\n        &.ssrb-full {\n            background: inherit; // Star color will be inherited from inline styles\n        }\n\n        &::after {\n            content: '';\n            position: absolute;\n            top: 0;\n            left: 0;\n            width: 100%;\n            height: 100%;\n            clip-path: inherit;\n        }\n\n        @for $i from 1 through 99 {\n            &.ssrb-perc-#{$i}::after {\n                $percent: #{$i} + '%';\n                background: linear-gradient(90deg, inherit $percent, transparent $percent); // Star color will be inherited from inline styles\n            }\n        }\n    }\n}\n"],"names":[],"sourceRoot":""}
     1{"version":3,"file":"./style-index.css","mappings":";;;AAAA;EACI;EACA;EACA;AACJ;AACI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AACR;AACQ;EACI;AACZ;AAEQ;EACI;AAAZ;AAGQ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;AADZ;AAKY;EAEI;AAJhB;AAEY;EAEI;AADhB;AADY;EAEI;AAEhB;AAJY;EAEI;AAKhB;AAPY;EAEI;AAQhB;AAVY;EAEI;AAWhB;AAbY;EAEI;AAchB;AAhBY;EAEI;AAiBhB;AAnBY;EAEI;AAoBhB;AAtBY;EAEI;AAuBhB;AAzBY;EAEI;AA0BhB;AA5BY;EAEI;AA6BhB;AA/BY;EAEI;AAgChB;AAlCY;EAEI;AAmChB;AArCY;EAEI;AAsChB;AAxCY;EAEI;AAyChB;AA3CY;EAEI;AA4ChB;AA9CY;EAEI;AA+ChB;AAjDY;EAEI;AAkDhB;AApDY;EAEI;AAqDhB;AAvDY;EAEI;AAwDhB;AA1DY;EAEI;AA2DhB;AA7DY;EAEI;AA8DhB;AAhEY;EAEI;AAiEhB;AAnEY;EAEI;AAoEhB;AAtEY;EAEI;AAuEhB;AAzEY;EAEI;AA0EhB;AA5EY;EAEI;AA6EhB;AA/EY;EAEI;AAgFhB;AAlFY;EAEI;AAmFhB;AArFY;EAEI;AAsFhB;AAxFY;EAEI;AAyFhB;AA3FY;EAEI;AA4FhB;AA9FY;EAEI;AA+FhB;AAjGY;EAEI;AAkGhB;AApGY;EAEI;AAqGhB;AAvGY;EAEI;AAwGhB;AA1GY;EAEI;AA2GhB;AA7GY;EAEI;AA8GhB;AAhHY;EAEI;AAiHhB;AAnHY;EAEI;AAoHhB;AAtHY;EAEI;AAuHhB;AAzHY;EAEI;AA0HhB;AA5HY;EAEI;AA6HhB;AA/HY;EAEI;AAgIhB;AAlIY;EAEI;AAmIhB;AArIY;EAEI;AAsIhB;AAxIY;EAEI;AAyIhB;AA3IY;EAEI;AA4IhB;AA9IY;EAEI;AA+IhB;AAjJY;EAEI;AAkJhB;AApJY;EAEI;AAqJhB;AAvJY;EAEI;AAwJhB;AA1JY;EAEI;AA2JhB;AA7JY;EAEI;AA8JhB;AAhKY;EAEI;AAiKhB;AAnKY;EAEI;AAoKhB;AAtKY;EAEI;AAuKhB;AAzKY;EAEI;AA0KhB;AA5KY;EAEI;AA6KhB;AA/KY;EAEI;AAgLhB;AAlLY;EAEI;AAmLhB;AArLY;EAEI;AAsLhB;AAxLY;EAEI;AAyLhB;AA3LY;EAEI;AA4LhB;AA9LY;EAEI;AA+LhB;AAjMY;EAEI;AAkMhB;AApMY;EAEI;AAqMhB;AAvMY;EAEI;AAwMhB;AA1MY;EAEI;AA2MhB;AA7MY;EAEI;AA8MhB;AAhNY;EAEI;AAiNhB;AAnNY;EAEI;AAoNhB;AAtNY;EAEI;AAuNhB;AAzNY;EAEI;AA0NhB;AA5NY;EAEI;AA6NhB;AA/NY;EAEI;AAgOhB;AAlOY;EAEI;AAmOhB;AArOY;EAEI;AAsOhB;AAxOY;EAEI;AAyOhB;AA3OY;EAEI;AA4OhB;AA9OY;EAEI;AA+OhB;AAjPY;EAEI;AAkPhB;AApPY;EAEI;AAqPhB;AAvPY;EAEI;AAwPhB;AA1PY;EAEI;AA2PhB;AA7PY;EAEI;AA8PhB;AAhQY;EAEI;AAiQhB;AAnQY;EAEI;AAoQhB;AAtQY;EAEI;AAuQhB;AAzQY;EAEI;AA0QhB;AA5QY;EAEI;AA6QhB;AA/QY;EAEI;AAgRhB;AAlRY;EAEI;AAmRhB;AArRY;EAEI;AAsRhB;AAxRY;EAEI;AAyRhB;AA3RY;EAEI;AA4RhB;AA9RY;EAEI;AA+RhB;AAjSY;EAEI;AAkShB,C","sources":["webpack://martincv-simple-star-rating-block/./src/style.scss"],"sourcesContent":[".wp-block-create-block-simple-star-rating-block {\n    display: inline-block;\n    font-size: 0;\n    position: relative;\n\n    .ssrb-star {\n        width: 1em; // Adjusted to scale with font size\n        height: 1em; // Adjusted to scale with font size\n        margin: 0 0.1em;\n        display: inline-block;\n        background: lightgray;\n        clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);\n        position: relative;\n\n        &:last-child {\n            margin: 0;\n        }\n\n        &.ssrb-full {\n            background: inherit; // Star color will be inherited from inline styles\n        }\n\n        &::after {\n            content: '';\n            position: absolute;\n            top: 0;\n            left: 0;\n            width: 100%;\n            height: 100%;\n            clip-path: inherit;\n        }\n\n        @for $i from 1 through 99 {\n            &.ssrb-perc-#{$i}::after {\n                $percent: #{$i} + '%';\n                background: linear-gradient(90deg, inherit $percent, transparent $percent); // Star color will be inherited from inline styles\n            }\n        }\n    }\n}\n"],"names":[],"sourceRoot":""}
  • simple-star-rating-block/trunk/src/edit.js

    r3133729 r3133802  
    2626        if (useCustomField) {
    2727            const postId = wp.data.select("core/editor").getCurrentPostId();
    28             const postType = wp.data.select("core/editor").getCurrentPostType();
    29             apiFetch({ path: `/wp/v2/${postType}s/${postId}` }).then((post) => {
     28            let postType = wp.data.select("core/editor").getCurrentPostType();
     29            if (postType === "page" || postType === "post") {
     30                postType += "s";
     31            }
     32            apiFetch({ path: `/wp/v2/${postType}/${postId}` }).then((post) => {
    3033                const md = { ...post.meta, ...post.acf };
    3134                const meta = Object.keys(post.meta);
Note: See TracChangeset for help on using the changeset viewer.