Plugin Directory

Changeset 3267354


Ignore:
Timestamp:
04/06/2025 01:32:24 AM (11 months ago)
Author:
fraktvalg
Message:

Version 1.1.0

Location:
fraktvalg
Files:
58 added
29 edited

Legend:

Unmodified
Added
Removed
  • fraktvalg/trunk/Fraktvalg/Api.php

    r3260012 r3267354  
    66
    77    private static function headers() {
    8         $options = \get_option( 'fraktvalg_options', [] );
    9 
    108        return [
    119            'X-Api-Key' => \get_option( 'fraktvalg_api_key' ),
    1210            'X-API-Environment' => ( Options::get( 'useProduction' ) ? 'production' : 'development' ),
    1311            'X-Request-Locale' => \get_user_locale(),
     12            'Accept' => 'application/json',
    1413        ];
    1514    }
  • fraktvalg/trunk/Fraktvalg/REST/Settings/Onboarding.php

    r3260012 r3267354  
    44
    55use Fraktvalg\Fraktvalg\REST\Base;
     6use Automattic\WooCommerce\Blocks\Utils\BlockTemplateUtils;
    67
    78class Onboarding extends Base {
     
    2021            ]
    2122        );
     23
     24        \register_rest_route(
     25            $this->namespace,
     26            '/onboarding/theme-status',
     27            [
     28                'methods'             => \WP_REST_Server::READABLE,
     29                'callback'            => array( $this, 'get_theme_status' ),
     30                'permission_callback' => array( $this, 'permission_callback' ),
     31            ]
     32        );
     33
     34        \register_rest_route(
     35            $this->namespace,
     36            '/onboarding/create-template',
     37            [
     38                'methods'             => \WP_REST_Server::EDITABLE,
     39                'callback'            => array( $this, 'create_template' ),
     40                'permission_callback' => array( $this, 'permission_callback' ),
     41                'args'                => [
     42                    'template' => [
     43                        'required'          => true,
     44                        'type'              => 'string',
     45                        'sanitize_callback' => 'sanitize_text_field',
     46                        'validate_callback' => function($param) {
     47                            return in_array($param, ['cart', 'checkout']);
     48                        },
     49                    ],
     50                ],
     51            ]
     52        );
     53    }
     54
     55    /**
     56     * Get the current theme status and WooCommerce block template information.
     57     *
     58     * @return \WP_REST_Response Response containing theme and template status.
     59     */
     60    public function get_theme_status() {
     61        $is_block_cart_template = \has_blocks( \wc_get_page_id( 'cart' ) );
     62        $is_block_checkout_template = \has_blocks( \wc_get_page_id( 'checkout' ) );
     63
     64        // Get Site Editor URLs.
     65        $urls = [
     66            'cart'     => \add_query_arg( [ 'post' => \wc_get_page_id( 'cart' ), 'action' => 'edit' ], \admin_url( 'post.php' ) ),
     67            'checkout' => \add_query_arg( [ 'post' => \wc_get_page_id( 'checkout' ), 'action' => 'edit' ], \admin_url( 'post.php' ) ),
     68        ];
     69
     70        return new \WP_REST_Response(
     71            [
     72                'urls'           => $urls,
     73                'isBlockCartTemplate' => $is_block_cart_template,
     74                'isBlockCheckoutTemplate' => $is_block_checkout_template,
     75            ]
     76        );
     77    }
     78
     79    /**
     80     * Create and return a WooCommerce block template for cart or checkout.
     81     *
     82     * @param \WP_REST_Request $request Request object containing template parameter.
     83     * @return \WP_REST_Response Response containing template data.
     84     */
     85    public function create_template( $request ) {
     86        $template_type = $request->get_param('template');
     87        $template_name = $template_type;
     88       
     89        // Retrieve template.
     90        $page_id = \wc_get_page_id( $template_type );
     91        $template = get_post( $page_id );
     92
     93        $content = $template->post_content;
     94        // Check if the content contains the Fraktvalg block.
     95        if ( strpos( $content, 'fraktvalg' ) !== false ) {
     96            return new \WP_REST_Response(
     97                [
     98                    'error' => 'Template already contains Fraktvalg block',
     99                    'status' => 'error'
     100                ],
     101            );
     102        }
     103
     104        // Inject the Fraktvalg block in our desired location.
     105        switch ( $template_type ) {
     106            case 'cart':
     107                $inject_after = '<!-- /wp:woocommerce/cart-order-summary-taxes-block -->';
     108                break;
     109            case 'checkout':
     110                $inject_after = '<!-- /wp:woocommerce/checkout-shipping-methods-block -->';
     111                break;
     112        }
     113        $content = str_replace( $inject_after, $inject_after . '<!-- wp:fraktvalg/shipping-selector /-->', $content );
     114
     115        // Update the page content.
     116        $template->post_content = $content;
     117        wp_update_post( $template );
     118
     119        return new \WP_REST_Response(
     120            [
     121                'status'   => 'success',
     122                'url'      => \add_query_arg( [ 'post' => $template->ID, 'action' => 'edit' ], \admin_url( 'post.php' ) ),
     123            ]
     124        );
    22125    }
    23126
    24127    public function finalize_onboarding() {
    25128        \update_option( 'fraktvalg_configured', true );
    26 
    27         return new \WP_Rest_Response( [ 'status' => 'ok' ] );
     129        return new \WP_REST_Response( [ 'status' => 'ok' ] );
    28130    }
    29131
  • fraktvalg/trunk/Fraktvalg/REST/Settings/Providers.php

    r3260012 r3267354  
    137137    public function store_providers( \WP_REST_Request $request ) {
    138138        $provider = $request->get_param( 'providerId' );
    139         $fields = $request->get_param( 'fieldValues' );
     139        $fields = $request->get_param( 'fieldValues' ) ?: [];
    140140
    141141        if ( ! $provider ) {
     
    143143        }
    144144
    145         Api::post(
     145        $response = Api::post(
    146146            '/shipper/register',
    147147            array_merge(
     
    151151        );
    152152
    153         \update_option( 'fraktvalg_configured', true );
     153        if ( \is_wp_error( $response ) || 200 !== $response['response']['code'] ) {
     154            $error_message = 'Could not store providers';
     155           
     156            if ( ! \is_wp_error( $response ) && isset( $response['body'] ) ) {
     157                $response_body = json_decode( $response['body'], true );
     158                if ( isset( $response_body['message'] ) ) {
     159                    $error_message = $response_body['message'];
     160                }
     161            }
     162           
     163            return new \WP_Error( 'api_error', $error_message, [ 'status' => 400 ] );
     164        }
    154165
    155166        return new \WP_Rest_Response( [ 'status' => 'OK' ] );
  • fraktvalg/trunk/Fraktvalg/Setup.php

    r3260012 r3267354  
    1010
    1111    public function __construct() {
     12        new Privacy();
     13        new WooCommerce\Blocks\Shipping();
     14
     15        // If Fraktvalg has not been configured yet, do not include any more classes.
    1216        if ( ! \get_option( 'fraktvalg_configured', false ) ) {
    1317            new Onboarding();
    1418            return;
    15         } else {
    16             new Settings();
    1719        }
    1820
    19         new Privacy();
     21        new Settings();
     22
    2023        new ShippingMethod();
    2124        new CreateShipment();
    2225
    2326        new WooCommerce\Admin\ShippingLabel();
    24 
    25         new WooCommerce\Blocks\Shipping();
    2627    }
    2728
  • fraktvalg/trunk/Fraktvalg/WooCommerce/Blocks/Shipping.php

    r3260012 r3267354  
    99    public function __construct() {
    1010        new ShippingOptions();
    11 
    12 //      add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_shipping_selector' ] );
    13 
    14         add_filter( 'render_block', function( $block_content, $block ) {
    15             // TODO: Don't do this.
    16             return $block_content;
    17 
    18             if ( $block['blockName'] === 'woocommerce/cart-order-summary-block' ) {
    19                 $block_content = preg_replace(
    20                     '/(data-block-name="woocommerce\/cart-order-summary-shipping-block".+?<\/div>)/sm',
    21                     '$1<div id="fraktvalg-shipping"></div>',
    22                     $block_content
    23                 );
    24             }
    25 
    26             if ( $block['blockName'] === 'woocommerce/checkout-shipping-methods-block' ) {
    27                 $block_content = preg_replace(
    28                     '/(data-block-name="woocommerce\/checkout-shipping-methods-block".+?<\/div>)/sm',
    29                     '$1<div id="fraktvalg-shipping"></div>',
    30                     $block_content
    31                 );
    32             }
    33 
    34             return $block_content;
    35         }, 20, 2);
    3611
    3712        add_action( 'init', [ $this, 'register_fraktvalg_block' ] );
     
    5328        register_block_type_from_metadata( $blockPath );
    5429    }
    55 
    56     public function enqueue_shipping_selector() {
    57         if ( ( ! function_exists( 'is_cart' ) || ! \is_cart() ) || ( ! function_exists( 'is_checkout' ) ) &&  ! \is_checkout() ) {
    58             return;
    59         }
    60 
    61         $block_asset = require \plugin_dir_path( FRAKTVALG_BASE_FILE ) . 'build/shipping-selector.asset.php';
    62 
    63         \wp_enqueue_script(
    64             'fraktvalg-shipping-selector',
    65             \plugin_dir_url( FRAKTVALG_BASE_FILE ) . 'build/shipping-selector.js',
    66             $block_asset['dependencies'],
    67             $block_asset['version'],
    68             true
    69         );
    70 
    71         wp_enqueue_style(
    72             'fraktvalg-shipping-selector',
    73             \plugin_dir_url( FRAKTVALG_BASE_FILE ) . 'build/shipping-selector.css',
    74             [],
    75             $block_asset['version']
    76         );
    77     }
    7830}
  • fraktvalg/trunk/Fraktvalg/WooCommerce/ShippingMethod/Fraktvalg.php

    r3260012 r3267354  
    3131
    3232        $total_weight = 0;
     33        $total_length = 0;
     34        $total_width = 0;
     35        $total_height = 0;
     36        $total_volume = 0;
     37
     38        // Get units once before the loop
     39        $weight_unit = get_option( 'woocommerce_weight_unit' );
     40        $dimension_unit = get_option( 'woocommerce_dimension_unit' );
     41       
     42        // Set up dimension conversion factor
     43        $dimension_conversion_factor = 1;
     44        switch ( $dimension_unit ) {
     45            case 'm':
     46                $dimension_conversion_factor = 1000;
     47                break;
     48            case 'cm':
     49                $dimension_conversion_factor = 10;
     50                break;
     51            case 'in':
     52                $dimension_conversion_factor = 25.4;
     53                break;
     54            case 'yd':
     55                $dimension_conversion_factor = 914.4;
     56                break;
     57            // 'mm' needs no conversion
     58        }
     59
    3360        foreach ( $package['contents'] as $data ) {
    3461            $product = $data['data'];
     
    3764            }
    3865
     66            // Get the weight and convert to grams
    3967            $product_weight = $product->get_weight();
     68            if ( $product_weight ) {
     69                switch ( $weight_unit ) {
     70                    case 'kg':
     71                        $product_weight *= 1000;
     72                        break;
     73                    case 'lbs':
     74                        $product_weight *= 453.59237;
     75                        break;
     76                    case 'oz':
     77                        $product_weight *= 28.3495231;
     78                        break;
     79                    // 'g' needs no conversion
     80                }
     81            }
     82
     83            // Get dimensions and convert to millimeters
     84            $product_length = $product->get_length();
     85            $product_width = $product->get_width();
     86            $product_height = $product->get_height();
     87            $product_volume = 0;
     88
     89            if ( $product_length || $product_width || $product_height ) {
     90                if ( $product_length ) {
     91                    $product_length *= $dimension_conversion_factor;
     92                }
     93                if ( $product_width ) {
     94                    $product_width *= $dimension_conversion_factor;
     95                }
     96                if ( $product_height ) {
     97                    $product_height *= $dimension_conversion_factor;
     98                }
     99               
     100                // Recalculate volume if it wasn't explicitly set
     101                if ( $product_length && $product_width && $product_height ) {
     102                    $product_volume = $product_length * $product_width * $product_height;
     103                }
     104            }
    40105
    41106            if ( $product_weight ) {
    42107                $total_weight += ( (float) $product_weight * $data['quantity'] );
    43108            }
    44         }
    45 
     109            if ( $product_length && $product_width && $product_height ) {
     110                $total_length = max( $total_length, (float) $product_length );
     111                $total_width = max( $total_width, (float) $product_width );
     112                $total_height = max( $total_height, (float) $product_height );
     113
     114                $total_volume += ( ( (float) $product_length * (float) $product_width * (float) $product_height ) * $data['quantity'] );
     115            }
     116        }
     117
     118        // Ensure minimum weight of 1g instead of 1kg
    46119        if ( $total_weight < 1 ) {
    47120            $total_weight = 1;
     
    52125                'country'    => \get_option( 'woocommerce_default_country' ),
    53126                'postalCode' => \get_option( 'woocommerce_store_postcode' ),
     127                'city'       => \get_option( 'woocommerce_store_city' ),
     128                'address'    => \get_option( 'woocommerce_store_address' ),
    54129            ],
    55130            'recipient' => [
     
    61136            'packages' => [
    62137                [
    63                     'packageWeight' => $total_weight
     138                    'packageWeight' => ceil( $total_weight )
    64139                ]
    65140            ],
    66141        ];
     142
     143        // Add dimensions if they are available
     144        if ($total_length > 0) {
     145            $shipping_options_array['packages'][0]['packageLength'] = ceil( $total_length );
     146        }
     147        if ($total_width > 0) {
     148            $shipping_options_array['packages'][0]['packageWidth'] = ceil( $total_width );
     149        }
     150        if ($total_height > 0) {
     151            $shipping_options_array['packages'][0]['packageHeight'] = ceil( $total_height );
     152        }
     153        if ($total_volume > 0) {
     154            $shipping_options_array['packages'][0]['packageVolume'] = ceil( $total_volume );
     155        }
    67156
    68157        $shippers = Api::post(
     
    73162        $settings        = Options::get();
    74163        $shippingOptions = [];
    75 
    76         if ( ! \is_wp_error( $shippers ) ) {
     164        $priorityProvider = \get_option( "fraktvalg['priorityProvider']", [ 'providerId' => '', 'discount' => 0, 'discountType' => 'percent' ] );
     165
     166        if ( ! \is_wp_error( $shippers ) && 200 === $shippers['response']['code'] ) {
    77167            $shippingOptions = \json_decode( $shippers['body'] );
    78168            if ( ! is_array( $shippingOptions ) && ! is_object( $shippingOptions ) ) {
     
    81171        }
    82172
     173        // Check if we're using a block theme
     174        $is_block_theme = function_exists('wp_is_block_theme') && wp_is_block_theme();
     175
    83176        if ( ! empty( $shippingOptions) ) {
    84             foreach ( $shippingOptions as $shipper => $options ) {
    85                 foreach ( $options as $count => $option ) {
    86                     $shipping_id = $shipper . ':' . $count;
     177            // Find the cheapest shipping method from non-priority providers
     178            $cheapest_price = $this->get_cheapest_shipping_price( $shippingOptions, $priorityProvider['providerId'], $settings );
     179           
     180            // First, add the priority provider if it exists
     181            if ( ! empty( $priorityProvider['providerId'] ) && isset( $shippingOptions->{$priorityProvider['providerId']} ) ) {
     182                foreach ( $shippingOptions->{$priorityProvider['providerId']} as $count => $option ) {
     183                    $shipping_id = $priorityProvider['providerId'] . ':' . $count;
    87184
    88185                    $price = $option->price->withVAT;
     186                   
     187                    // Apply priority provider discount if set and if priority provider is more expensive than cheapest option
     188                    if ( ! empty( $priorityProvider['discount'] ) && $price > $cheapest_price ) {
     189                        // Calculate the discount amount needed to match or beat the cheapest price
     190                        $discount_amount = $price - $cheapest_price;
     191                       
     192                        // Apply the configured discount type and amount
     193                        if ( 'percent' === $priorityProvider['discountType'] ) {
     194                            // Calculate what percentage discount would be needed to match the cheapest price
     195                            $needed_percent_discount = ( $discount_amount / $price ) * 100;
     196                           
     197                            // Apply the configured discount, but not more than needed to match the cheapest price
     198                            $applied_percent_discount = min( $priorityProvider['discount'], $needed_percent_discount );
     199                            $price = $price * ( 1 - ( $applied_percent_discount / 100 ) );
     200                        } else {
     201                            // Apply the configured fixed discount, but not more than needed to match the cheapest price
     202                            $applied_fixed_discount = min( $priorityProvider['discount'], $discount_amount );
     203                            $price = $price - $applied_fixed_discount;
     204                        }
     205                    }
     206                   
     207                    // Apply added cost from settings
    89208                    if ( isset( $settings['freight']['addedCost'] ) ) {
    90                         if ( ! empty( $settings['freight']['addedCostType'] ) && $settings['freight']['addedCostType'] === 'percent' ) {
     209                        if ( ! empty( $settings['freight']['addedCostType'] ) && 'percent' === $settings['freight']['addedCostType'] ) {
    91210                            $price += $price * ( $settings['freight']['addedCost'] / 100 );
    92211                        } else {
    93212                            $price += $settings['freight']['addedCost'];
    94213                        }
     214                    }                   
     215                   
     216                    // Set the label based on theme type
     217                    $label = $option->texts->displayName;
     218                    if ( ! $is_block_theme && isset( $option->texts->shipperName ) ) {
     219                        $label = $option->texts->shipperName . ' - ' . $label;
     220
     221                        if ( isset( $option->texts->description ) ) {
     222                            $label .= ' (' . $option->texts->description . ')';
     223                        }
    95224                    }
    96225
    97                     $this->add_rate( [
    98                         'id'        => $shipping_id,
    99                         'label'     => $option->texts->displayName,
    100                         'cost'      => $price,
    101                         'taxes'     => false,
    102                         'package'   => $package,
    103                         'meta_data' => [
    104                             'fraktvalg' => true,
    105                             'shipper'   => $shipper,
    106                             'option'    => $option,
    107                         ],
     226                    $this->add_shipping_rate( $shipping_id, $label, $price, $package, [
     227                        'fraktvalg' => true,
     228                        'shipper'   => $priorityProvider['providerId'],
     229                        'option'    => $option,
     230                        'priority'  => true,
    108231                    ] );
    109232                }
    110233            }
     234
     235            // Then add all other providers
     236            foreach ( $shippingOptions as $shipper => $options ) {
     237                // Skip the priority provider as it's already been added
     238                if ( $shipper === $priorityProvider['providerId'] ) {
     239                    continue;
     240                }
     241
     242                foreach ( $options as $count => $option ) {
     243                    $shipping_id = $shipper . ':' . $count;
     244
     245                    $price = $option->price->withVAT;
     246                    if ( isset( $settings['freight']['addedCost'] ) ) {
     247                        if ( ! empty( $settings['freight']['addedCostType'] ) && 'percent' === $settings['freight']['addedCostType'] ) {
     248                            $price += $price * ( $settings['freight']['addedCost'] / 100 );
     249                        } else {
     250                            $price += $settings['freight']['addedCost'];
     251                        }
     252                    }                   
     253                    // Set the label based on theme type
     254                    $label = $option->texts->displayName;
     255                    if ( ! $is_block_theme && isset( $option->texts->shipperName ) ) {
     256                        $label = $option->texts->shipperName . ' - ' . $label;
     257
     258                        if ( isset( $option->texts->description ) ) {
     259                            $label .= ' (' . $option->texts->description . ')';
     260                        }
     261                    }
     262
     263                    $this->add_shipping_rate( $shipping_id, $label, $price, $package, [
     264                        'fraktvalg' => true,
     265                        'shipper'   => $shipper,
     266                        'option'    => $option,
     267                    ] );
     268                }
     269            }
    111270        } else {
    112             // If an error happened when fetching shipping providers, use the fallback shipping option.
     271            // If an error happened when fetching shipping providers, or no options exist, use the fallback shipping option.
    113272            if ( ! empty( $settings['freight'] ) ) {
    114273                if ( 'fixed' === $settings['freight']['custom']['type'] ) {
     
    122281                }
    123282
    124                 $this->add_rate( [
    125                     'id'        => 'fallback',
    126                     'label'     => $settings['freight']['custom']['name'],
    127                     'cost'      => $price,
    128                     'taxes'     => false,
    129                     'package'   => $package,
    130                     'meta_data' => [
    131                         'fraktvalg' => true,
    132                         'shipper'   => 'fallback',
    133                         'option'    => array_merge(
    134                             [
    135                                 'delivery' => [
    136                                     'estimatedDays' => '3-5',
    137                                 ],
     283                $this->add_shipping_rate( 'fallback', $settings['freight']['custom']['name'], $price, $package, [
     284                    'fraktvalg' => true,
     285                    'shipper'   => 'fallback',
     286                    'option'    => array_merge(
     287                        [
     288                            'delivery' => [
     289                                'estimatedDays' => '3-5',
    138290                            ],
    139                             $settings['freight']['custom']
    140                         ),
    141                     ],
     291                        ],
     292                        $settings['freight']['custom']
     293                    ),
    142294                ] );
    143295            }
     
    145297    }
    146298
     299    /**
     300     * Add a shipping rate to WooCommerce
     301     *
     302     * @param string $shipping_id The shipping ID
     303     * @param string $label The shipping label
     304     * @param float  $price The shipping price
     305     * @param array  $package The package data
     306     * @param array  $meta_data Additional meta data for the shipping rate
     307     * @return void
     308     */
     309    private function add_shipping_rate( $shipping_id, $label, $price, $package, $meta_data ) {
     310        $this->add_rate( [
     311            'id'        => $shipping_id,
     312            'label'     => $label,
     313            'cost'      => $price,
     314            'taxes'     => false,
     315            'package'   => $package,
     316            'meta_data' => $meta_data,
     317        ] );
     318    }
     319
     320    /**
     321     * Find the cheapest shipping price from non-priority providers
     322     *
     323     * @param object $shipping_options The shipping options returned from the API
     324     * @param string $priority_provider_id The ID of the priority provider to exclude
     325     * @param array  $settings The plugin settings
     326     * @return float The cheapest shipping price found
     327     */
     328    private function get_cheapest_shipping_price( $shipping_options, $priority_provider_id, $settings ) {
     329        $cheapest_price = PHP_FLOAT_MAX;
     330        $has_other_providers = false;
     331       
     332        // Loop through all providers to find the cheapest price
     333        foreach ( $shipping_options as $shipper => $options ) {
     334            // Skip the priority provider
     335            if ( $shipper === $priority_provider_id ) {
     336                continue;
     337            }
     338           
     339            $has_other_providers = true;
     340           
     341            foreach ( $options as $option ) {
     342                $price = $option->price->withVAT;
     343               
     344                // Apply added cost from settings
     345                if ( isset( $settings['freight']['addedCost'] ) ) {
     346                    if ( ! empty( $settings['freight']['addedCostType'] ) && 'percent' === $settings['freight']['addedCostType'] ) {
     347                        $price += $price * ( $settings['freight']['addedCost'] / 100 );
     348                    } else {
     349                        $price += $settings['freight']['addedCost'];
     350                    }
     351                }
     352               
     353                if ( $price < $cheapest_price ) {
     354                    $cheapest_price = $price;
     355                }
     356            }
     357        }
     358       
     359        // If no other providers exist, set cheapest price to 0 to avoid applying discount
     360        if ( ! $has_other_providers ) {
     361            $cheapest_price = 0;
     362        }
     363       
     364        return $cheapest_price;
     365    }
     366
    147367}
  • fraktvalg/trunk/build/Blocks/ShippingSelector/block.json

    r3260012 r3267354  
    2222        "move": false
    2323      }
     24    },
     25    "primaryColor": {
     26      "type": "string",
     27      "default": "#2F463E"
     28    },
     29    "secondaryColor": {
     30      "type": "string",
     31      "default": "#4D8965"
     32    },
     33    "tertiaryColor": {
     34      "type": "string",
     35      "default": "#65C7A4"
     36    },
     37    "style": {
     38      "type": "object"
    2439    }
    2540  },
     
    2944    "reusable": false,
    3045    "inserter": false,
    31     "lock": false
     46    "lock": false,
     47    "color": false,
     48    "spacing": false,
     49    "typography": false,
     50    "__experimentalBorder": false
    3251  },
     52  "styles": [
     53    {
     54      "name": "default",
     55      "label": "Default",
     56      "isDefault": true
     57    }
     58  ],
    3359  "textdomain": "fraktvalg",
    3460  "editorScript": "file:./index.js",
  • fraktvalg/trunk/build/Blocks/ShippingSelector/frontend.asset.php

    r3260012 r3267354  
    1 <?php return array('dependencies' => array('react', 'react-dom', 'wc-blocks-checkout', 'wp-block-editor', 'wp-element', 'wp-i18n'), 'version' => 'd7903327bbffeab98a4c');
     1<?php return array('dependencies' => array('react', 'react-dom', 'wc-blocks-checkout', 'wc-blocks-data-store', 'wp-api-fetch', 'wp-block-editor', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => '4de089affb66c785bb90');
  • fraktvalg/trunk/build/Blocks/ShippingSelector/frontend.js

    r3260012 r3267354  
    1 (()=>{"use strict";var e,t={420:(e,t,r)=>{const i=window.wc.blocksCheckout,a=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"fraktvalg/shipping-selector","version":"1.0.0","title":"Fraktvalg","category":"widgets","description":"Shipping selector from Fraktvalg","parent":["woocommerce/checkout-fields-block","woocommerce/cart-order-summary-totals-block"],"keywords":["fraktvalg","shipping"],"attributes":{"lock":{"type":"object","default":{"remove":true,"move":false}}},"supports":{"html":false,"multiple":false,"reusable":false,"inserter":false,"lock":false},"textdomain":"fraktvalg","editorScript":"file:./index.js","viewScript":"file:./frontend.js","style":"file:./style-frontend.css","render":"file:./render.php"}'),s=window.wp.element,l=window.wp.blockEditor,n=window.wp.i18n;var o=r(609);function c({title:e,titleId:t,...r},i){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?o.createElement("title",{id:t},e):null,o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const d=o.forwardRef(c);function p({title:e,titleId:t,...r},i){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?o.createElement("title",{id:t},e):null,o.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const m=o.forwardRef(p);var f=r(848);function h(){return(0,f.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,f.jsx)(m,{className:"h-8 w-8 animate-spin text-primary"}),(0,f.jsx)("div",{className:"text-lg",children:(0,n.__)("Fetching the best shipping options...","fraktvalg")})]})}function u({title:e,titleId:t,...r},i){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?o.createElement("title",{id:t},e):null,o.createElement("path",{fillRule:"evenodd",d:"M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"}))}const v=o.forwardRef(u);function g({title:e,titleId:t,...r},i){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?o.createElement("title",{id:t},e):null,o.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const x=o.forwardRef(g);function w(e){var t,r,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(r=w(e[t]))&&(i&&(i+=" "),i+=r)}else for(r in e)e[r]&&(i&&(i+=" "),i+=r);return i}function k(){for(var e,t,r=0,i="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=w(e))&&(i&&(i+=" "),i+=t);return i}const y=e=>"function"==typeof wc.priceFormat.formatPrice?wc.priceFormat.formatPrice(e):(e/100).toFixed(2);function j({methods:e,selectedShippingMethod:t,onSelectMethod:r,setSelectedShipper:i}){return(0,f.jsxs)("div",{className:"p-4",children:[(0,f.jsxs)("button",{className:"mb-4 px-4 py-2 pl-0 transition-all bg-transparent hover:text-secondary rounded-lg",onClick:()=>i(null),children:[(0,f.jsx)(v,{className:"w-4 h-4 inline-block mr-2"}),(0,n.__)("Return to shipping providers","fraktvalg")]}),(0,f.jsx)("div",{className:"flex flex-col gap-2",children:e.map(((e,i)=>(0,f.jsxs)("div",{className:k("border rounded-lg p-4 flex flex-col sm:flex-row transition-all duraction-300 items-center justify-between cursor-pointer hover:bg-tertiary/10 hover:shadow-md"),onClick:()=>r(e),children:[(0,f.jsxs)("div",{className:"flex items-center",children:[e?.rate_id===t?(0,f.jsx)(x,{className:"w-10 h-10 mr-4 text-primary inline-block"}):e?.icon&&e.icon,(0,f.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,f.jsx)("span",{className:"text-md font-semibold",children:e.name}),(0,f.jsx)("p",{className:"text-sm text-gray-600 flex items-center",children:e.shippingTime})]})]}),(0,f.jsx)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:y(e.price)})]},i)))})]})}function b({logo:e=null,...t}){const{alt:r=""}=t;return e?e.startsWith("http")?(0,f.jsx)("img",{src:e,alt:r,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,f.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:r,...t})):(0,f.jsx)(d,{...t})}function _({title:e,titleId:t,...r},i){return o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?o.createElement("title",{id:t},e):null,o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const O=o.forwardRef(_);function E({shippers:e,onSelectShipper:t}){return(0,f.jsx)("div",{className:"p-4 flex flex-col gap-2",children:Object.entries(e).map((([e,r])=>(0,f.jsxs)("div",{className:"border rounded-lg p-4 bg-white flex flex-col sm:flex-row transition-all duration-300 items-center justify-between cursor-pointer hover:bg-tertiary/10 hover:shadow-md",onClick:()=>t(r),children:[(0,f.jsxs)("div",{className:"flex items-center",children:[(0,f.jsx)(b,{logo:r?.texts?.logo?.url,alt:r?.details?.label,className:"w-8 h-8 mr-2"}),(0,f.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,f.jsxs)("span",{className:"text-md font-semibold",children:["Fraktes av ",r?.details?.label]}),(0,f.jsxs)("p",{className:"text-sm text-gray-600 flex items-center",children:[(0,f.jsx)(O,{className:"w-4 h-4 inline-block mr-2"}),r?.details?.quickestShippingTime]})]})]}),(0,f.jsxs)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:["Fra ",y(r?.details?.LowestPrice)]})]},e)))})}function S({className:e,isEditor:t=!1}){const[r,i]=(0,s.useState)(null),[a,o]=(0,s.useState)(null),[c,p]=(0,s.useState)(!0),[m,u]=(0,s.useState)({}),v=(0,l.useBlockProps)();return(0,s.useEffect)((()=>{t||(p(!0),fetch("/wp-json/wc/store/v1/cart").then((e=>e.json())).then((e=>{let t=function(e){let t=[],r={},i=null,a={},s=null;return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{e?.meta_data?.some((e=>"fraktvalg"===e.key))&&(r=e?.meta_data?.find((e=>"option"===e.key))?.value||{},i=e?.rate_id.split(":")[0],t.some((e=>e.id===i))?(s=t.find((e=>e.id===i)),s&&e.price<s.details.LowestPrice&&(s.details.LowestPrice=e.price)):(a=e?.meta_data.find((e=>"option"===e.key))?.value||{},t.push({id:i,details:{label:r?.texts?.shipperName,quickestShippingTime:"2 virkedager",LowestPrice:e.price},shippingOptions:[],...a})))}))})),t}(e);t.forEach((t=>{const r=function(e,t){let r=[];return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{if(!e?.meta_data?.some((e=>"fraktvalg"===e.key)))return;let i=e?.rate_id.split(":")[0],a=e?.meta_data.find((e=>"option"===e.key))?.value,s=a?.delivery?.estimatedDate||(new Date).toISOString().split("T")[0];i===t.id&&r.push({rate_id:e?.rate_id,name:e?.name,price:e?.price,selected:e?.selected||!1,delivery:{date:s,days:Math.max(1,Math.ceil((new Date(s)-new Date)/864e5))}})}))})),r}(e,t);t.shippingOptions=r.map((e=>({rate_id:e.rate_id,name:e.name,price:e.price,shippingTime:"1-3 virkedager",icon:(0,f.jsx)(d,{className:"w-10 h-10 mr-4 text-tertiary inline-block"}),selected:e.selected,delivery:{days:e.delivery.days}})));const a=t?.shippingOptions.find((e=>e.selected))||null;a&&(i(t),o(a.rate_id)),t.details.LowestPrice=Math.min(...t.shippingOptions.map((e=>e.price))),t.details.quickestShippingTime=Math.min(...t.shippingOptions.map((e=>e.delivery.days)))+(0,n.__)(" business days","fraktvalg")})),u(t),p(!1)})).catch((e=>console.error("Error fetching shipping options:",e))))}),[]),t?(0,f.jsx)("div",{...v,children:(0,f.jsx)(h,{})}):(0,f.jsxs)(f.Fragment,{children:[c&&(0,f.jsx)(h,{}),!c&&!r&&(0,f.jsx)(E,{shippers:m,onSelectShipper:i}),!c&&r&&(0,f.jsx)(j,{methods:r.shippingOptions,setSelectedShipper:i,selectedShippingMethod:a,onSelectMethod:e=>{fetch("/wp-json/wc/store/v1/cart/select-shipping-rate",{method:"POST",body:JSON.stringify({package_id:0,rate_id:e?.rate_id})}).then((e=>e.json())).then((t=>{o(e?.rate_id),console.log(t)})).catch((e=>console.error("Error selecting shipping method:",e)))}})]})}var N=r(338);(0,i.registerCheckoutBlock)({metadata:a,component:()=>(0,f.jsx)(S,{})});let R=0;const C=()=>{const e=document.getElementById("fraktvalg-shipping");e?(0,N.H)(e).render((0,f.jsx)(S,{})):R<60&&(R++,setTimeout(C,1e3))};C()},338:(e,t,r)=>{var i=r(795);t.H=i.createRoot,i.hydrateRoot},20:(e,t,r)=>{var i=r(609),a=Symbol.for("react.element"),s=Symbol.for("react.fragment"),l=Object.prototype.hasOwnProperty,n=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var i,s={},c=null,d=null;for(i in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)l.call(t,i)&&!o.hasOwnProperty(i)&&(s[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps)void 0===s[i]&&(s[i]=t[i]);return{$$typeof:a,type:e,key:c,ref:d,props:s,_owner:n.current}}t.Fragment=s,t.jsx=c,t.jsxs=c},848:(e,t,r)=>{e.exports=r(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},r={};function i(e){var a=r[e];if(void 0!==a)return a.exports;var s=r[e]={exports:{}};return t[e](s,s.exports,i),s.exports}i.m=t,e=[],i.O=(t,r,a,s)=>{if(!r){var l=1/0;for(d=0;d<e.length;d++){r=e[d][0],a=e[d][1],s=e[d][2];for(var n=!0,o=0;o<r.length;o++)(!1&s||l>=s)&&Object.keys(i.O).every((e=>i.O[e](r[o])))?r.splice(o--,1):(n=!1,s<l&&(l=s));if(n){e.splice(d--,1);var c=a();void 0!==c&&(t=c)}}return t}s=s||0;for(var d=e.length;d>0&&e[d-1][2]>s;d--)e[d]=e[d-1];e[d]=[r,a,s]},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={64:0,920:0};i.O.j=t=>0===e[t];var t=(t,r)=>{var a,s,l=r[0],n=r[1],o=r[2],c=0;if(l.some((t=>0!==e[t]))){for(a in n)i.o(n,a)&&(i.m[a]=n[a]);if(o)var d=o(i)}for(t&&t(r);c<l.length;c++)s=l[c],i.o(e,s)&&e[s]&&e[s][0](),e[s]=0;return i.O(d)},r=self.webpackChunkfraktvalg=self.webpackChunkfraktvalg||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var a=i.O(void 0,[920],(()=>i(420)));a=i.O(a)})();
     1(()=>{"use strict";var e,t={380:(e,t,r)=>{const i=window.wc.blocksCheckout,a=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"fraktvalg/shipping-selector","version":"1.0.0","title":"Fraktvalg","category":"widgets","description":"Shipping selector from Fraktvalg","parent":["woocommerce/checkout-fields-block","woocommerce/cart-order-summary-totals-block"],"keywords":["fraktvalg","shipping"],"attributes":{"lock":{"type":"object","default":{"remove":true,"move":false}},"primaryColor":{"type":"string","default":"#2F463E"},"secondaryColor":{"type":"string","default":"#4D8965"},"tertiaryColor":{"type":"string","default":"#65C7A4"},"style":{"type":"object"}},"supports":{"html":false,"multiple":false,"reusable":false,"inserter":false,"lock":false,"color":false,"spacing":false,"typography":false,"__experimentalBorder":false},"styles":[{"name":"default","label":"Default","isDefault":true}],"textdomain":"fraktvalg","editorScript":"file:./index.js","viewScript":"file:./frontend.js","style":"file:./style-frontend.css","render":"file:./render.php"}'),s=window.wp.element,l=window.wp.blockEditor,o=window.wp.i18n,n=window.wp.apiFetch;var c=r.n(n);const d=window.wp.data;window.wc.wcBlocksData;var p=r(609);function m({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const h=p.forwardRef(m);function u({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m2.25 12 8.954-8.955c.44-.439 1.152-.439 1.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25"}))}const f=p.forwardRef(u);function g({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m20.25 7.5-.625 10.632a2.25 2.25 0 0 1-2.247 2.118H6.622a2.25 2.25 0 0 1-2.247-2.118L3.75 7.5M10 11.25h4M3.375 7.5h17.25c.621 0 1.125-.504 1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125H3.375c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125Z"}))}const v=p.forwardRef(g);var w=r(848);const x=e=>{switch(e){case"Parcel":default:return(0,w.jsx)(h,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}});case"HomeDelivery":return(0,w.jsx)(f,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}});case"ServiceParcel":return(0,w.jsx)(v,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}})}};function y({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const k=p.forwardRef(y);function b(){return(0,w.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,w.jsx)(k,{className:"h-8 w-8 animate-spin text-primary"}),(0,w.jsx)("div",{className:"text-lg",children:(0,o.__)("Fetching the best shipping options...","fraktvalg")})]})}function j({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{fillRule:"evenodd",d:"M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"}))}const _=p.forwardRef(j);function O({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const S=p.forwardRef(O);function E(e){var t,r,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(r=E(e[t]))&&(i&&(i+=" "),i+=r)}else for(r in e)e[r]&&(i&&(i+=" "),i+=r);return i}function N(){for(var e,t,r=0,i="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=E(e))&&(i&&(i+=" "),i+=t);return i}const C=e=>"function"==typeof wc.priceFormat.formatPrice?wc.priceFormat.formatPrice(e):(e/100).toFixed(2);function R({methods:e,selectedShippingMethod:t,onSelectMethod:r,setSelectedShipper:i,showReturnButton:a=!0,isEditor:s=!1,isLoading:l=!1}){return(0,w.jsxs)("div",{className:"py-4",children:[a&&(0,w.jsxs)("button",{className:"mb-4 px-4 py-2 pl-0 transition-all bg-transparent hover:text-secondary rounded-lg",onClick:()=>i(null),disabled:s||l,style:{opacity:s||l?.5:1,cursor:s||l?"not-allowed":"pointer"},children:[(0,w.jsx)(_,{className:"w-4 h-4 inline-block mr-2"}),(0,o.__)("Return to shipping providers","fraktvalg")]}),(0,w.jsx)("div",{className:"flex flex-col gap-2",children:e.map(((e,i)=>(0,w.jsxs)("div",{className:N("border rounded-lg p-4 flex flex-col sm:flex-row transition-all duraction-300 items-center justify-between",{"cursor-pointer hover:bg-tertiary/10 hover:shadow-md":!l,"cursor-not-allowed opacity-50":l&&e?.rate_id!==t}),onClick:()=>!l&&r(e),children:[(0,w.jsxs)("div",{className:"flex items-center",children:[e?.rate_id===t?(0,w.jsx)(S,{className:"w-10 h-10 mr-4 text-primary inline-block"}):e?.icon&&e.icon,(0,w.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,w.jsx)("span",{className:"text-md font-semibold",children:e.name}),(0,w.jsx)("span",{className:"text-sm italic",children:e.description}),(0,w.jsx)("p",{className:"text-sm text-gray-600 flex items-center",children:e.shippingTime})]})]}),(0,w.jsx)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:C(e.price)})]},i)))})]})}function M({logo:e=null,...t}){const{alt:r=""}=t;return e?e.startsWith("http")||e.startsWith("data:image")?(0,w.jsx)("img",{src:e,alt:r,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,w.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:r,...t})):(0,w.jsx)(h,{...t})}function L({title:e,titleId:t,...r},i){return p.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?p.createElement("title",{id:t},e):null,p.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const T=p.forwardRef(L);function P({shippers:e,onSelectShipper:t,editorMode:r}){return(0,w.jsx)("div",{className:"py-4 flex flex-col gap-2",children:Object.entries(e).map((([e,i])=>(0,w.jsxs)("div",{className:"border rounded-lg p-4 bg-white flex flex-col sm:flex-row transition-all duration-300 items-center justify-between cursor-pointer hover:bg-tertiary/10 hover:shadow-md",onClick:()=>"multiple"!==r&&t(i),children:[(0,w.jsxs)("div",{className:"flex items-center",children:[(0,w.jsx)(M,{logo:i?.texts?.logo?.url,alt:i?.details?.label,className:"w-8 h-8 mr-2"}),(0,w.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,w.jsxs)("span",{className:"text-md font-semibold",children:["Fraktes av ",i?.details?.label]}),(0,w.jsxs)("p",{className:"text-sm text-gray-600 flex items-center",children:[(0,w.jsx)(T,{className:"w-4 h-4 inline-block mr-2"}),i?.details?.quickestShippingTime]})]})]}),(0,w.jsxs)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:["Fra ",C(i?.details?.LowestPrice)]})]},e)))})}function D({attributes:e={}}){const{primaryColor:t="#2F463E",secondaryColor:r="#4D8965",tertiaryColor:i="#65C7A4"}=e,[a,n]=(0,s.useState)(null),[p,m]=(0,s.useState)(null),[h,u]=(0,s.useState)(!0),[f,g]=(0,s.useState)(!1),[v,y]=(0,s.useState)({}),[k,j]=(0,s.useState)(!1),_=(0,l.useBlockProps)({className:"wp-block-fraktvalg-shipping-selector"}),O={"--fraktvalg-primary-color":t,"--fraktvalg-secondary-color":r,"--fraktvalg-tertiary-color":i},S=e=>{e&&e.rate_id&&(g(!0),c()({path:"/wc/store/v1/cart/select-shipping-rate",method:"POST",data:{package_id:0,rate_id:e.rate_id}}).then((t=>{m(e.rate_id),(0,d.dispatch)("wc/store/cart").invalidateResolutionForStore()})).catch((e=>{m(null)})).finally((()=>{g(!1)})))},E=()=>{u(!0),c()({path:"/wc/store/v1/cart",method:"GET"}).then((e=>{let t=function(e){let t=[],r={},i=null,a={},s=null;return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{e?.meta_data?.some((e=>"fraktvalg"===e.key))&&(r=e?.meta_data?.find((e=>"option"===e.key))?.value||{},i=e?.rate_id.split(":")[0],t.some((e=>e.id===i))?(s=t.find((e=>e.id===i)),s&&e.price<s.details.LowestPrice&&(s.details.LowestPrice=e.price)):(a=e?.meta_data.find((e=>"option"===e.key))?.value||{},t.push({id:i,details:{label:r?.texts?.shipperName,quickestShippingTime:"2 virkedager",LowestPrice:e.price},shippingOptions:[],...a})))}))})),t}(e);t.forEach((t=>{const r=function(e,t){let r=[];return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{if(!e?.meta_data?.some((e=>"fraktvalg"===e.key)))return;let i=e?.rate_id.split(":")[0],a=e?.meta_data.find((e=>"option"===e.key))?.value,s=a?.delivery?.estimatedDate||(new Date).toISOString().split("T")[0];i===t.id&&r.push({rate_id:e?.rate_id,name:e?.name,description:a?.texts?.description,price:e?.price,icon:a?.delivery?.serviceCode,selected:e?.selected||!1,delivery:{date:s,days:Math.max(1,Math.ceil((new Date(s)-new Date)/864e5))}})}))})),r}(e,t);t.shippingOptions=r.map((e=>({rate_id:e.rate_id,name:e.name,description:e.description,price:e.price,shippingTime:"1-3 virkedager",icon:x(e.delivery.serviceCode),selected:e.selected,delivery:{days:e.delivery.days}})));const i=t?.shippingOptions.find((e=>e.selected))||null;i&&(n(t),m(i.rate_id)),t.details.LowestPrice=Math.min(...t.shippingOptions.map((e=>e.price))),t.details.quickestShippingTime=Math.min(...t.shippingOptions.map((e=>e.delivery.days)))+(0,o.__)(" business days","fraktvalg")})),y(t)})).catch((e=>console.error("Error fetching shipping options:",e))).finally((()=>{u(!1)}))},N=(0,s.useCallback)((()=>{window.shippingOptionsTimeout&&clearTimeout(window.shippingOptionsTimeout),window.shippingOptionsTimeout=setTimeout((()=>{E()}),1e3)}),[]);return(0,s.useEffect)((()=>{E();const e=(0,d.select)("wc/store/cart").getCartData();console.log("Initial Cart Data:",e);let t=JSON.stringify(e.shippingAddress);const r=(0,d.subscribe)((()=>{const e=(0,d.select)("wc/store/cart").getCartData(),r=JSON.stringify(e.shippingAddress);t!==r&&(console.log("Shipping Address Changed:",e.shippingAddress),t=r,N())}));return()=>{r(),window.shippingOptionsTimeout&&clearTimeout(window.shippingOptionsTimeout)}}),[N]),(0,w.jsx)("div",{..._,style:O,children:h?(0,w.jsx)(b,{}):1!==v.length||k?!a||k?(0,w.jsx)(P,{shippers:v,onSelectShipper:e=>{n(e),j(!1)},selectedShippingMethod:p}):(0,w.jsx)(R,{methods:a.shippingOptions,setSelectedShipper:()=>n(null),selectedShippingMethod:p,onSelectMethod:S,isLoading:f}):(0,w.jsx)(R,{methods:v[0].shippingOptions,setSelectedShipper:()=>j(!0),selectedShippingMethod:p,onSelectMethod:S,isLoading:f,showReturnButton:!1})})}var B=r(338);(0,i.registerCheckoutBlock)({metadata:a,component:()=>(0,w.jsx)(D,{})});let F=0;const I=()=>{const e=document.getElementById("fraktvalg-shipping");if(e){let t={};try{const r=e.getAttribute("data-attributes");r&&(t=JSON.parse(r))}catch(e){console.error("Error parsing Fraktvalg block attributes:",e)}(0,B.H)(e).render((0,w.jsx)(D,{attributes:t}))}else F<60&&(F++,setTimeout(I,1e3))};I()},338:(e,t,r)=>{var i=r(795);t.H=i.createRoot,i.hydrateRoot},20:(e,t,r)=>{var i=r(609),a=Symbol.for("react.element"),s=(Symbol.for("react.fragment"),Object.prototype.hasOwnProperty),l=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function n(e,t,r){var i,n={},c=null,d=null;for(i in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)s.call(t,i)&&!o.hasOwnProperty(i)&&(n[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps)void 0===n[i]&&(n[i]=t[i]);return{$$typeof:a,type:e,key:c,ref:d,props:n,_owner:l.current}}t.jsx=n,t.jsxs=n},848:(e,t,r)=>{e.exports=r(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},r={};function i(e){var a=r[e];if(void 0!==a)return a.exports;var s=r[e]={exports:{}};return t[e](s,s.exports,i),s.exports}i.m=t,e=[],i.O=(t,r,a,s)=>{if(!r){var l=1/0;for(d=0;d<e.length;d++){for(var[r,a,s]=e[d],o=!0,n=0;n<r.length;n++)(!1&s||l>=s)&&Object.keys(i.O).every((e=>i.O[e](r[n])))?r.splice(n--,1):(o=!1,s<l&&(l=s));if(o){e.splice(d--,1);var c=a();void 0!==c&&(t=c)}}return t}s=s||0;for(var d=e.length;d>0&&e[d-1][2]>s;d--)e[d]=e[d-1];e[d]=[r,a,s]},i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={64:0,920:0};i.O.j=t=>0===e[t];var t=(t,r)=>{var a,s,[l,o,n]=r,c=0;if(l.some((t=>0!==e[t]))){for(a in o)i.o(o,a)&&(i.m[a]=o[a]);if(n)var d=n(i)}for(t&&t(r);c<l.length;c++)s=l[c],i.o(e,s)&&e[s]&&e[s][0](),e[s]=0;return i.O(d)},r=globalThis.webpackChunkfraktvalg=globalThis.webpackChunkfraktvalg||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var a=i.O(void 0,[920],(()=>i(380)));a=i.O(a)})();
  • fraktvalg/trunk/build/Blocks/ShippingSelector/index.asset.php

    r3260012 r3267354  
    1 <?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n'), 'version' => 'a6a3abae1fd63a003ffe');
     1<?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-data-store', 'wp-api-fetch', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n'), 'version' => 'd0aedb33e9727e643b63');
  • fraktvalg/trunk/build/Blocks/ShippingSelector/index.js

    r3260012 r3267354  
    1 (()=>{"use strict";var e,t={658:(e,t,r)=>{const i=window.wp.blocks,s=window.wc.blocksCheckout,a=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"fraktvalg/shipping-selector","version":"1.0.0","title":"Fraktvalg","category":"widgets","description":"Shipping selector from Fraktvalg","parent":["woocommerce/checkout-fields-block","woocommerce/cart-order-summary-totals-block"],"keywords":["fraktvalg","shipping"],"attributes":{"lock":{"type":"object","default":{"remove":true,"move":false}}},"supports":{"html":false,"multiple":false,"reusable":false,"inserter":false,"lock":false},"textdomain":"fraktvalg","editorScript":"file:./index.js","viewScript":"file:./frontend.js","style":"file:./style-frontend.css","render":"file:./render.php"}'),l=window.wp.blockEditor,n=window.wp.components,o=window.wp.element,c=window.wp.i18n;var d=r(609);function p({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const m=d.forwardRef(p);function f({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const h=d.forwardRef(f);var u=r(848);function v(){return(0,u.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,u.jsx)(h,{className:"h-8 w-8 animate-spin text-primary"}),(0,u.jsx)("div",{className:"text-lg",children:(0,c.__)("Fetching the best shipping options...","fraktvalg")})]})}function g({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{fillRule:"evenodd",d:"M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"}))}const x=d.forwardRef(g);function w({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const k=d.forwardRef(w);function j(e){var t,r,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==typeof e)if(Array.isArray(e)){var s=e.length;for(t=0;t<s;t++)e[t]&&(r=j(e[t]))&&(i&&(i+=" "),i+=r)}else for(r in e)e[r]&&(i&&(i+=" "),i+=r);return i}function y(){for(var e,t,r=0,i="",s=arguments.length;r<s;r++)(e=arguments[r])&&(t=j(e))&&(i&&(i+=" "),i+=t);return i}const b=e=>"function"==typeof wc.priceFormat.formatPrice?wc.priceFormat.formatPrice(e):(e/100).toFixed(2);function _({methods:e,selectedShippingMethod:t,onSelectMethod:r,setSelectedShipper:i}){return(0,u.jsxs)("div",{className:"p-4",children:[(0,u.jsxs)("button",{className:"mb-4 px-4 py-2 pl-0 transition-all bg-transparent hover:text-secondary rounded-lg",onClick:()=>i(null),children:[(0,u.jsx)(x,{className:"w-4 h-4 inline-block mr-2"}),(0,c.__)("Return to shipping providers","fraktvalg")]}),(0,u.jsx)("div",{className:"flex flex-col gap-2",children:e.map(((e,i)=>(0,u.jsxs)("div",{className:y("border rounded-lg p-4 flex flex-col sm:flex-row transition-all duraction-300 items-center justify-between cursor-pointer hover:bg-tertiary/10 hover:shadow-md"),onClick:()=>r(e),children:[(0,u.jsxs)("div",{className:"flex items-center",children:[e?.rate_id===t?(0,u.jsx)(k,{className:"w-10 h-10 mr-4 text-primary inline-block"}):e?.icon&&e.icon,(0,u.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,u.jsx)("span",{className:"text-md font-semibold",children:e.name}),(0,u.jsx)("p",{className:"text-sm text-gray-600 flex items-center",children:e.shippingTime})]})]}),(0,u.jsx)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:b(e.price)})]},i)))})]})}function O({logo:e=null,...t}){const{alt:r=""}=t;return e?e.startsWith("http")?(0,u.jsx)("img",{src:e,alt:r,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,u.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:r,...t})):(0,u.jsx)(m,{...t})}function E({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const N=d.forwardRef(E);function S({shippers:e,onSelectShipper:t}){return(0,u.jsx)("div",{className:"p-4 flex flex-col gap-2",children:Object.entries(e).map((([e,r])=>(0,u.jsxs)("div",{className:"border rounded-lg p-4 bg-white flex flex-col sm:flex-row transition-all duration-300 items-center justify-between cursor-pointer hover:bg-tertiary/10 hover:shadow-md",onClick:()=>t(r),children:[(0,u.jsxs)("div",{className:"flex items-center",children:[(0,u.jsx)(O,{logo:r?.texts?.logo?.url,alt:r?.details?.label,className:"w-8 h-8 mr-2"}),(0,u.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,u.jsxs)("span",{className:"text-md font-semibold",children:["Fraktes av ",r?.details?.label]}),(0,u.jsxs)("p",{className:"text-sm text-gray-600 flex items-center",children:[(0,u.jsx)(N,{className:"w-4 h-4 inline-block mr-2"}),r?.details?.quickestShippingTime]})]})]}),(0,u.jsxs)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:["Fra ",b(r?.details?.LowestPrice)]})]},e)))})}function R({className:e,isEditor:t=!1}){const[r,i]=(0,o.useState)(null),[s,a]=(0,o.useState)(null),[n,d]=(0,o.useState)(!0),[p,f]=(0,o.useState)({}),h=(0,l.useBlockProps)();return(0,o.useEffect)((()=>{t||(d(!0),fetch("/wp-json/wc/store/v1/cart").then((e=>e.json())).then((e=>{let t=function(e){let t=[],r={},i=null,s={},a=null;return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{e?.meta_data?.some((e=>"fraktvalg"===e.key))&&(r=e?.meta_data?.find((e=>"option"===e.key))?.value||{},i=e?.rate_id.split(":")[0],t.some((e=>e.id===i))?(a=t.find((e=>e.id===i)),a&&e.price<a.details.LowestPrice&&(a.details.LowestPrice=e.price)):(s=e?.meta_data.find((e=>"option"===e.key))?.value||{},t.push({id:i,details:{label:r?.texts?.shipperName,quickestShippingTime:"2 virkedager",LowestPrice:e.price},shippingOptions:[],...s})))}))})),t}(e);t.forEach((t=>{const r=function(e,t){let r=[];return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{if(!e?.meta_data?.some((e=>"fraktvalg"===e.key)))return;let i=e?.rate_id.split(":")[0],s=e?.meta_data.find((e=>"option"===e.key))?.value,a=s?.delivery?.estimatedDate||(new Date).toISOString().split("T")[0];i===t.id&&r.push({rate_id:e?.rate_id,name:e?.name,price:e?.price,selected:e?.selected||!1,delivery:{date:a,days:Math.max(1,Math.ceil((new Date(a)-new Date)/864e5))}})}))})),r}(e,t);t.shippingOptions=r.map((e=>({rate_id:e.rate_id,name:e.name,price:e.price,shippingTime:"1-3 virkedager",icon:(0,u.jsx)(m,{className:"w-10 h-10 mr-4 text-tertiary inline-block"}),selected:e.selected,delivery:{days:e.delivery.days}})));const s=t?.shippingOptions.find((e=>e.selected))||null;s&&(i(t),a(s.rate_id)),t.details.LowestPrice=Math.min(...t.shippingOptions.map((e=>e.price))),t.details.quickestShippingTime=Math.min(...t.shippingOptions.map((e=>e.delivery.days)))+(0,c.__)(" business days","fraktvalg")})),f(t),d(!1)})).catch((e=>console.error("Error fetching shipping options:",e))))}),[]),t?(0,u.jsx)("div",{...h,children:(0,u.jsx)(v,{})}):(0,u.jsxs)(u.Fragment,{children:[n&&(0,u.jsx)(v,{}),!n&&!r&&(0,u.jsx)(S,{shippers:p,onSelectShipper:i}),!n&&r&&(0,u.jsx)(_,{methods:r.shippingOptions,setSelectedShipper:i,selectedShippingMethod:s,onSelectMethod:e=>{fetch("/wp-json/wc/store/v1/cart/select-shipping-rate",{method:"POST",body:JSON.stringify({package_id:0,rate_id:e?.rate_id})}).then((e=>e.json())).then((t=>{a(e?.rate_id),console.log(t)})).catch((e=>console.error("Error selecting shipping method:",e)))}})]})}(0,i.registerBlockType)(a,{edit:function({attributes:e}){const{className:t}=e,r=(0,l.useBlockProps)();return(0,u.jsx)("div",{...r,children:(0,u.jsx)(n.Disabled,{children:(0,u.jsx)(R,{isEditor:!0,className:t})})})},save:()=>null}),(0,s.registerCheckoutBlock)({metadata:a,component:()=>(0,u.jsx)(R,{})})},20:(e,t,r)=>{var i=r(609),s=Symbol.for("react.element"),a=Symbol.for("react.fragment"),l=Object.prototype.hasOwnProperty,n=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var i,a={},c=null,d=null;for(i in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)l.call(t,i)&&!o.hasOwnProperty(i)&&(a[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps)void 0===a[i]&&(a[i]=t[i]);return{$$typeof:s,type:e,key:c,ref:d,props:a,_owner:n.current}}t.Fragment=a,t.jsx=c,t.jsxs=c},848:(e,t,r)=>{e.exports=r(20)},609:e=>{e.exports=window.React}},r={};function i(e){var s=r[e];if(void 0!==s)return s.exports;var a=r[e]={exports:{}};return t[e](a,a.exports,i),a.exports}i.m=t,e=[],i.O=(t,r,s,a)=>{if(!r){var l=1/0;for(d=0;d<e.length;d++){r=e[d][0],s=e[d][1],a=e[d][2];for(var n=!0,o=0;o<r.length;o++)(!1&a||l>=a)&&Object.keys(i.O).every((e=>i.O[e](r[o])))?r.splice(o--,1):(n=!1,a<l&&(l=a));if(n){e.splice(d--,1);var c=s();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[r,s,a]},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={328:0,920:0};i.O.j=t=>0===e[t];var t=(t,r)=>{var s,a,l=r[0],n=r[1],o=r[2],c=0;if(l.some((t=>0!==e[t]))){for(s in n)i.o(n,s)&&(i.m[s]=n[s]);if(o)var d=o(i)}for(t&&t(r);c<l.length;c++)a=l[c],i.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return i.O(d)},r=self.webpackChunkfraktvalg=self.webpackChunkfraktvalg||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var s=i.O(void 0,[920],(()=>i(658)));s=i.O(s)})();
     1(()=>{"use strict";var e,t={870:(e,t,r)=>{const i=window.wp.blocks,a=window.wc.blocksCheckout,s=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":3,"name":"fraktvalg/shipping-selector","version":"1.0.0","title":"Fraktvalg","category":"widgets","description":"Shipping selector from Fraktvalg","parent":["woocommerce/checkout-fields-block","woocommerce/cart-order-summary-totals-block"],"keywords":["fraktvalg","shipping"],"attributes":{"lock":{"type":"object","default":{"remove":true,"move":false}},"primaryColor":{"type":"string","default":"#2F463E"},"secondaryColor":{"type":"string","default":"#4D8965"},"tertiaryColor":{"type":"string","default":"#65C7A4"},"style":{"type":"object"}},"supports":{"html":false,"multiple":false,"reusable":false,"inserter":false,"lock":false,"color":false,"spacing":false,"typography":false,"__experimentalBorder":false},"styles":[{"name":"default","label":"Default","isDefault":true}],"textdomain":"fraktvalg","editorScript":"file:./index.js","viewScript":"file:./frontend.js","style":"file:./style-frontend.css","render":"file:./render.php"}'),l=window.wp.element,n=window.wp.blockEditor,o=window.wp.i18n,c=window.wp.components;var d=r(609);function p({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const h=d.forwardRef(p),m=JSON.parse('{"single":[{"id":"1","name":"Express Shipping","details":{"LowestPrice":99,"quickestShippingTime":"1-2 business days"},"shippingOptions":[{"rate_id":"express_standard","name":"Standard Delivery","price":99,"shippingTime":"2-3 virkedager","delivery":{"days":2}},{"rate_id":"express_priority","name":"Priority Delivery","price":149,"shippingTime":"1-2 virkedager","delivery":{"days":1}}]}],"multiple":[{"id":"1","name":"Fast Shipping","details":{"LowestPrice":149,"quickestShippingTime":"1 business day"},"shippingOptions":[{"rate_id":"fast_priority","name":"Priority Delivery","price":149,"shippingTime":"1-2 virkedager","delivery":{"days":1}},{"rate_id":"fast_express","name":"Express Delivery","price":199,"shippingTime":"Same Day","delivery":{"days":0}}]},{"id":"2","name":"Budget Shipping","details":{"LowestPrice":49,"quickestShippingTime":"3 business days"},"shippingOptions":[{"rate_id":"budget_standard","name":"Standard Delivery","price":49,"shippingTime":"3-5 virkedager","delivery":{"days":3}},{"rate_id":"budget_express","name":"Express Delivery","price":79,"shippingTime":"2-3 virkedager","delivery":{"days":2}}]}]}');function u({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{fillRule:"evenodd",d:"M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"}))}const g=d.forwardRef(u);function f({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const v=d.forwardRef(f);function y(e){var t,r,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(r=y(e[t]))&&(i&&(i+=" "),i+=r)}else for(r in e)e[r]&&(i&&(i+=" "),i+=r);return i}function x(){for(var e,t,r=0,i="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=y(e))&&(i&&(i+=" "),i+=t);return i}const w=e=>"function"==typeof wc.priceFormat.formatPrice?wc.priceFormat.formatPrice(e):(e/100).toFixed(2);var k=r(848);function j({methods:e,selectedShippingMethod:t,onSelectMethod:r,setSelectedShipper:i,showReturnButton:a=!0,isEditor:s=!1,isLoading:l=!1}){return(0,k.jsxs)("div",{className:"py-4",children:[a&&(0,k.jsxs)("button",{className:"mb-4 px-4 py-2 pl-0 transition-all bg-transparent hover:text-secondary rounded-lg",onClick:()=>i(null),disabled:s||l,style:{opacity:s||l?.5:1,cursor:s||l?"not-allowed":"pointer"},children:[(0,k.jsx)(g,{className:"w-4 h-4 inline-block mr-2"}),(0,o.__)("Return to shipping providers","fraktvalg")]}),(0,k.jsx)("div",{className:"flex flex-col gap-2",children:e.map(((e,i)=>(0,k.jsxs)("div",{className:x("border rounded-lg p-4 flex flex-col sm:flex-row transition-all duraction-300 items-center justify-between",{"cursor-pointer hover:bg-tertiary/10 hover:shadow-md":!l,"cursor-not-allowed opacity-50":l&&e?.rate_id!==t}),onClick:()=>!l&&r(e),children:[(0,k.jsxs)("div",{className:"flex items-center",children:[e?.rate_id===t?(0,k.jsx)(v,{className:"w-10 h-10 mr-4 text-primary inline-block"}):e?.icon&&e.icon,(0,k.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,k.jsx)("span",{className:"text-md font-semibold",children:e.name}),(0,k.jsx)("span",{className:"text-sm italic",children:e.description}),(0,k.jsx)("p",{className:"text-sm text-gray-600 flex items-center",children:e.shippingTime})]})]}),(0,k.jsx)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:w(e.price)})]},i)))})]})}function b({logo:e=null,...t}){const{alt:r=""}=t;return e?e.startsWith("http")||e.startsWith("data:image")?(0,k.jsx)("img",{src:e,alt:r,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,k.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:r,...t})):(0,k.jsx)(h,{...t})}function _({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"}))}const S=d.forwardRef(_);function C({shippers:e,onSelectShipper:t,editorMode:r}){return(0,k.jsx)("div",{className:"py-4 flex flex-col gap-2",children:Object.entries(e).map((([e,i])=>(0,k.jsxs)("div",{className:"border rounded-lg p-4 bg-white flex flex-col sm:flex-row transition-all duration-300 items-center justify-between cursor-pointer hover:bg-tertiary/10 hover:shadow-md",onClick:()=>"multiple"!==r&&t(i),children:[(0,k.jsxs)("div",{className:"flex items-center",children:[(0,k.jsx)(b,{logo:i?.texts?.logo?.url,alt:i?.details?.label,className:"w-8 h-8 mr-2"}),(0,k.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,k.jsxs)("span",{className:"text-md font-semibold",children:["Fraktes av ",i?.details?.label]}),(0,k.jsxs)("p",{className:"text-sm text-gray-600 flex items-center",children:[(0,k.jsx)(S,{className:"w-4 h-4 inline-block mr-2"}),i?.details?.quickestShippingTime]})]})]}),(0,k.jsxs)("p",{className:"text-md font-medium mt-2 sm:mt-0",children:["Fra ",w(i?.details?.LowestPrice)]})]},e)))})}function O({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const E=d.forwardRef(O);function N(){return(0,k.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,k.jsx)(E,{className:"h-8 w-8 animate-spin text-primary"}),(0,k.jsx)("div",{className:"text-lg",children:(0,o.__)("Fetching the best shipping options...","fraktvalg")})]})}const M=window.wp.apiFetch;var P=r.n(M);const T=window.wp.data;function R({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m2.25 12 8.954-8.955c.44-.439 1.152-.439 1.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25"}))}window.wc.wcBlocksData;const B=d.forwardRef(R);function L({title:e,titleId:t,...r},i){return d.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?d.createElement("title",{id:t},e):null,d.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m20.25 7.5-.625 10.632a2.25 2.25 0 0 1-2.247 2.118H6.622a2.25 2.25 0 0 1-2.247-2.118L3.75 7.5M10 11.25h4M3.375 7.5h17.25c.621 0 1.125-.504 1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125H3.375c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125Z"}))}const D=d.forwardRef(L),F=e=>{switch(e){case"Parcel":default:return(0,k.jsx)(h,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}});case"HomeDelivery":return(0,k.jsx)(B,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}});case"ServiceParcel":return(0,k.jsx)(D,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}})}};(0,i.registerBlockType)(s.name,{...s,edit:function({attributes:e,setAttributes:t}){const{primaryColor:r="#2F463E",secondaryColor:i="#4D8965",tertiaryColor:a="#65C7A4",editorMode:s="single"}=e,[d,p]=(0,l.useState)(null),[u,g]=(0,l.useState)(null),[f,v]=(0,l.useState)(!0),[y,x]=(0,l.useState)({}),[w,b]=(0,l.useState)(null),_=(0,n.useBlockProps)(),S={"--fraktvalg-primary-color":r,"--fraktvalg-secondary-color":i,"--fraktvalg-tertiary-color":a},O=e=>{g(e?.rate_id)};return(0,l.useEffect)((()=>{const e=m[s];if(e){const t=e.map((e=>({...e,shippingOptions:e.shippingOptions.map((e=>({...e,icon:(0,k.jsx)(h,{className:"w-10 h-10 mr-4",style:{color:"var(--fraktvalg-tertiary-color)"}})})))})));x(t),p(null),g(null),v(!1)}}),[s]),(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(n.InspectorControls,{children:(0,k.jsx)(c.PanelBody,{title:(0,o.__)("Preview Settings","fraktvalg"),initialOpen:!0,children:(0,k.jsx)(c.PanelRow,{children:(0,k.jsxs)(c.__experimentalVStack,{spacing:2,children:[(0,k.jsx)("p",{className:"text-sm",children:(0,o.__)("Preview Mode:","fraktvalg")}),(0,k.jsxs)(c.ButtonGroup,{children:[(0,k.jsx)(c.Button,{variant:"single"===s?"primary":"secondary",onClick:()=>t({editorMode:"single"}),children:(0,o.__)("Shipping methods","fraktvalg")}),(0,k.jsx)(c.Button,{variant:"multiple"===s?"primary":"secondary",onClick:()=>t({editorMode:"multiple"}),children:(0,o.__)("Shipping providers","fraktvalg")})]})]})})})}),(0,k.jsx)(n.InspectorControls,{group:"styles",children:(0,k.jsx)(c.PanelBody,{title:(0,o.__)("Color Settings","fraktvalg"),initialOpen:!0,children:(0,k.jsx)(c.PanelRow,{children:(0,k.jsxs)(c.__experimentalVStack,{spacing:4,children:[(0,k.jsxs)("div",{className:"flex items-center gap-2",children:[(0,k.jsx)(c.ColorIndicator,{colorValue:r}),(0,k.jsx)(c.Button,{variant:"link",onClick:()=>b("primary"===w?null:"primary"),children:(0,o.__)("Primary Color","fraktvalg")})]}),"primary"===w&&(0,k.jsx)(c.ColorPicker,{color:r,onChange:e=>t({primaryColor:e}),enableAlpha:!1}),(0,k.jsxs)("div",{className:"flex items-center gap-2",children:[(0,k.jsx)(c.ColorIndicator,{colorValue:i}),(0,k.jsx)(c.Button,{variant:"link",onClick:()=>b("secondary"===w?null:"secondary"),children:(0,o.__)("Secondary Color","fraktvalg")})]}),"secondary"===w&&(0,k.jsx)(c.ColorPicker,{color:i,onChange:e=>t({secondaryColor:e}),enableAlpha:!1}),(0,k.jsxs)("div",{className:"flex items-center gap-2",children:[(0,k.jsx)(c.ColorIndicator,{colorValue:a}),(0,k.jsx)(c.Button,{variant:"link",onClick:()=>b("tertiary"===w?null:"tertiary"),children:(0,o.__)("Tertiary Color","fraktvalg")})]}),"tertiary"===w&&(0,k.jsx)(c.ColorPicker,{color:a,onChange:e=>t({tertiaryColor:e}),enableAlpha:!1})]})})})}),(0,k.jsx)("div",{..._,style:S,children:f?(0,k.jsx)(N,{}):(0,k.jsx)(k.Fragment,{children:1===y.length?(0,k.jsx)(j,{methods:y[0].shippingOptions,setSelectedShipper:p,selectedShippingMethod:u,onSelectMethod:O}):(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(C,{shippers:y,onSelectShipper:e=>{"multiple"!==s&&p(e)},selectedShippingMethod:u,editorMode:s}),d&&"multiple"!==s&&(0,k.jsx)(j,{methods:d.shippingOptions,setSelectedShipper:p,selectedShippingMethod:u,onSelectMethod:O})]})})})]})},save:()=>null}),(0,a.registerCheckoutBlock)({metadata:s,component:function({attributes:e={}}){const{primaryColor:t="#2F463E",secondaryColor:r="#4D8965",tertiaryColor:i="#65C7A4"}=e,[a,s]=(0,l.useState)(null),[c,d]=(0,l.useState)(null),[p,h]=(0,l.useState)(!0),[m,u]=(0,l.useState)(!1),[g,f]=(0,l.useState)({}),[v,y]=(0,l.useState)(!1),x=(0,n.useBlockProps)({className:"wp-block-fraktvalg-shipping-selector"}),w={"--fraktvalg-primary-color":t,"--fraktvalg-secondary-color":r,"--fraktvalg-tertiary-color":i},b=e=>{e&&e.rate_id&&(u(!0),P()({path:"/wc/store/v1/cart/select-shipping-rate",method:"POST",data:{package_id:0,rate_id:e.rate_id}}).then((t=>{d(e.rate_id),(0,T.dispatch)("wc/store/cart").invalidateResolutionForStore()})).catch((e=>{d(null)})).finally((()=>{u(!1)})))},_=()=>{h(!0),P()({path:"/wc/store/v1/cart",method:"GET"}).then((e=>{let t=function(e){let t=[],r={},i=null,a={},s=null;return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{e?.meta_data?.some((e=>"fraktvalg"===e.key))&&(r=e?.meta_data?.find((e=>"option"===e.key))?.value||{},i=e?.rate_id.split(":")[0],t.some((e=>e.id===i))?(s=t.find((e=>e.id===i)),s&&e.price<s.details.LowestPrice&&(s.details.LowestPrice=e.price)):(a=e?.meta_data.find((e=>"option"===e.key))?.value||{},t.push({id:i,details:{label:r?.texts?.shipperName,quickestShippingTime:"2 virkedager",LowestPrice:e.price},shippingOptions:[],...a})))}))})),t}(e);t.forEach((t=>{const r=function(e,t){let r=[];return e?.shipping_rates?.forEach((e=>{e?.shipping_rates?.forEach((e=>{if(!e?.meta_data?.some((e=>"fraktvalg"===e.key)))return;let i=e?.rate_id.split(":")[0],a=e?.meta_data.find((e=>"option"===e.key))?.value,s=a?.delivery?.estimatedDate||(new Date).toISOString().split("T")[0];i===t.id&&r.push({rate_id:e?.rate_id,name:e?.name,description:a?.texts?.description,price:e?.price,icon:a?.delivery?.serviceCode,selected:e?.selected||!1,delivery:{date:s,days:Math.max(1,Math.ceil((new Date(s)-new Date)/864e5))}})}))})),r}(e,t);t.shippingOptions=r.map((e=>({rate_id:e.rate_id,name:e.name,description:e.description,price:e.price,shippingTime:"1-3 virkedager",icon:F(e.delivery.serviceCode),selected:e.selected,delivery:{days:e.delivery.days}})));const i=t?.shippingOptions.find((e=>e.selected))||null;i&&(s(t),d(i.rate_id)),t.details.LowestPrice=Math.min(...t.shippingOptions.map((e=>e.price))),t.details.quickestShippingTime=Math.min(...t.shippingOptions.map((e=>e.delivery.days)))+(0,o.__)(" business days","fraktvalg")})),f(t)})).catch((e=>console.error("Error fetching shipping options:",e))).finally((()=>{h(!1)}))},S=(0,l.useCallback)((()=>{window.shippingOptionsTimeout&&clearTimeout(window.shippingOptionsTimeout),window.shippingOptionsTimeout=setTimeout((()=>{_()}),1e3)}),[]);return(0,l.useEffect)((()=>{_();const e=(0,T.select)("wc/store/cart").getCartData();console.log("Initial Cart Data:",e);let t=JSON.stringify(e.shippingAddress);const r=(0,T.subscribe)((()=>{const e=(0,T.select)("wc/store/cart").getCartData(),r=JSON.stringify(e.shippingAddress);t!==r&&(console.log("Shipping Address Changed:",e.shippingAddress),t=r,S())}));return()=>{r(),window.shippingOptionsTimeout&&clearTimeout(window.shippingOptionsTimeout)}}),[S]),(0,k.jsx)("div",{...x,style:w,children:p?(0,k.jsx)(N,{}):1!==g.length||v?!a||v?(0,k.jsx)(C,{shippers:g,onSelectShipper:e=>{s(e),y(!1)},selectedShippingMethod:c}):(0,k.jsx)(j,{methods:a.shippingOptions,setSelectedShipper:()=>s(null),selectedShippingMethod:c,onSelectMethod:b,isLoading:m}):(0,k.jsx)(j,{methods:g[0].shippingOptions,setSelectedShipper:()=>y(!0),selectedShippingMethod:c,onSelectMethod:b,isLoading:m,showReturnButton:!1})})}})},20:(e,t,r)=>{var i=r(609),a=Symbol.for("react.element"),s=Symbol.for("react.fragment"),l=Object.prototype.hasOwnProperty,n=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var i,s={},c=null,d=null;for(i in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)l.call(t,i)&&!o.hasOwnProperty(i)&&(s[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps)void 0===s[i]&&(s[i]=t[i]);return{$$typeof:a,type:e,key:c,ref:d,props:s,_owner:n.current}}t.Fragment=s,t.jsx=c,t.jsxs=c},848:(e,t,r)=>{e.exports=r(20)},609:e=>{e.exports=window.React}},r={};function i(e){var a=r[e];if(void 0!==a)return a.exports;var s=r[e]={exports:{}};return t[e](s,s.exports,i),s.exports}i.m=t,e=[],i.O=(t,r,a,s)=>{if(!r){var l=1/0;for(d=0;d<e.length;d++){for(var[r,a,s]=e[d],n=!0,o=0;o<r.length;o++)(!1&s||l>=s)&&Object.keys(i.O).every((e=>i.O[e](r[o])))?r.splice(o--,1):(n=!1,s<l&&(l=s));if(n){e.splice(d--,1);var c=a();void 0!==c&&(t=c)}}return t}s=s||0;for(var d=e.length;d>0&&e[d-1][2]>s;d--)e[d]=e[d-1];e[d]=[r,a,s]},i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={328:0,920:0};i.O.j=t=>0===e[t];var t=(t,r)=>{var a,s,[l,n,o]=r,c=0;if(l.some((t=>0!==e[t]))){for(a in n)i.o(n,a)&&(i.m[a]=n[a]);if(o)var d=o(i)}for(t&&t(r);c<l.length;c++)s=l[c],i.o(e,s)&&e[s]&&e[s][0](),e[s]=0;return i.O(d)},r=globalThis.webpackChunkfraktvalg=globalThis.webpackChunkfraktvalg||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var a=i.O(void 0,[920],(()=>i(870)));a=i.O(a)})();
  • fraktvalg/trunk/build/Blocks/ShippingSelector/render.php

    r3260012 r3267354  
    99    die();
    1010}
     11
     12$wrapper_attributes = get_block_wrapper_attributes();
     13$attributes        = $attributes ?? []; // Get block attributes
     14$encoded_attrs     = htmlspecialchars( json_encode( $attributes ), ENT_QUOTES, 'UTF-8' );
    1115?>
    1216
    1317<div
    1418    data-block-name="fraktvalg/shipping-selector"
     19    data-attributes="<?php echo $encoded_attrs; ?>"
    1520    id="fraktvalg-shipping"
    16     <?php echo get_block_wrapper_attributes(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Core function for outputting pre-escaped content. ?>
     21    <?php echo $wrapper_attributes; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Core function for outputting pre-escaped content. ?>
    1722></div>
  • fraktvalg/trunk/build/Blocks/ShippingSelector/style-frontend-rtl.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-right: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-right: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-left: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11121143  transition-duration: 150ms;
    11131144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
     1147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1148  transition-duration: 150ms;
     1149}
    11141150.duration-200 {
    11151151  transition-duration: 200ms;
     
    11231159.wp-block-woocommerce-checkout-shipping-methods-block {
    11241160    display: none;
     1161}
     1162
     1163/* Define color variables with fallback values from Tailwind config */
     1164.wp-block-fraktvalg-shipping-selector {
     1165    --fraktvalg-primary-color: #2F463E;
     1166    --fraktvalg-secondary-color: #4D8965;
     1167    --fraktvalg-tertiary-color: #65C7A4;
     1168
     1169    /* Inherit theme typography */
     1170    font-family: var(--wp--preset--font-family--system-font, inherit);
     1171    font-size: var(--wp--preset--font-size--normal, inherit);
     1172    line-height: var(--wp--custom--typography--line-height--normal, inherit);
     1173
     1174    h1, h2, h3, h4, h5, h6 {
     1175        font-family: var(--wp--preset--font-family--heading, inherit);
     1176        line-height: var(--wp--custom--typography--line-height--heading, inherit);
     1177    }
     1178
     1179    p {
     1180        font-family: var(--wp--preset--font-family--body, inherit);
     1181        line-height: var(--wp--custom--typography--line-height--paragraph, inherit);
     1182    }
     1183}
     1184
     1185/* Override Tailwind color classes with CSS variables */
     1186.wp-block-fraktvalg-shipping-selector {
     1187    /* Text colors */
     1188    .text-primary {
     1189        color: var(--fraktvalg-primary-color) !important;
     1190    }
     1191
     1192    .text-secondary {
     1193        color: var(--fraktvalg-secondary-color) !important;
     1194    }
     1195
     1196    .text-tertiary {
     1197        color: var(--fraktvalg-tertiary-color) !important;
     1198    }
     1199
     1200    /* Background colors */
     1201    .bg-primary {
     1202        background-color: var(--fraktvalg-primary-color) !important;
     1203    }
     1204
     1205    .bg-secondary {
     1206        background-color: var(--fraktvalg-secondary-color) !important;
     1207    }
     1208
     1209    .bg-tertiary {
     1210        background-color: var(--fraktvalg-tertiary-color) !important;
     1211    }
     1212
     1213    /* Hover text colors */
     1214    .hover\:text-primary:hover {
     1215        color: var(--fraktvalg-primary-color) !important;
     1216    }
     1217
     1218    .hover\:text-secondary:hover {
     1219        color: var(--fraktvalg-secondary-color) !important;
     1220    }
     1221
     1222    .hover\:text-tertiary:hover {
     1223        color: var(--fraktvalg-tertiary-color) !important;
     1224    }
     1225
     1226    /* Hover background colors */
     1227    .hover\:bg-primary:hover {
     1228        background-color: var(--fraktvalg-primary-color) !important;
     1229    }
     1230
     1231    .hover\:bg-secondary:hover {
     1232        background-color: var(--fraktvalg-secondary-color) !important;
     1233    }
     1234
     1235    .hover\:bg-tertiary:hover {
     1236        background-color: var(--fraktvalg-tertiary-color) !important;
     1237    }
     1238
     1239    /* Border colors */
     1240    .border-primary {
     1241        border-color: var(--fraktvalg-primary-color) !important;
     1242    }
     1243
     1244    .border-secondary {
     1245        border-color: var(--fraktvalg-secondary-color) !important;
     1246    }
     1247
     1248    .border-tertiary {
     1249        border-color: var(--fraktvalg-tertiary-color) !important;
     1250    }
     1251
     1252    /* Hover border colors */
     1253    .hover\:border-primary:hover {
     1254        border-color: var(--fraktvalg-primary-color) !important;
     1255    }
     1256
     1257    .hover\:border-secondary:hover {
     1258        border-color: var(--fraktvalg-secondary-color) !important;
     1259    }
     1260
     1261    .hover\:border-tertiary:hover {
     1262        border-color: var(--fraktvalg-tertiary-color) !important;
     1263    }
    11251264}
    11261265.after\:absolute::after {
     
    11841323  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11851324}
     1325.hover\:bg-gray-50:hover {
     1326  --tw-bg-opacity: 1;
     1327  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1328}
    11861329.hover\:bg-green-700:hover {
    11871330  --tw-bg-opacity: 1;
     
    12541397  color: rgb(255 255 255 / var(--tw-text-opacity));
    12551398}
     1399.disabled\:cursor-not-allowed:disabled {
     1400  cursor: not-allowed;
     1401}
    12561402.disabled\:bg-black\/80:disabled {
    12571403  background-color: rgb(0 0 0 / 0.8);
     1404}
     1405.disabled\:opacity-50:disabled {
     1406  opacity: 0.5;
    12581407}
    12591408.peer:checked ~ .peer-checked\:block {
     
    13021451  }
    13031452
     1453  .sm\:inline {
     1454    display: inline;
     1455  }
     1456
    13041457  .sm\:flex {
    13051458    display: flex;
  • fraktvalg/trunk/build/Blocks/ShippingSelector/style-frontend.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-left: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-left: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-right: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11121143  transition-duration: 150ms;
    11131144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
     1147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1148  transition-duration: 150ms;
     1149}
    11141150.duration-200 {
    11151151  transition-duration: 200ms;
     
    11231159.wp-block-woocommerce-checkout-shipping-methods-block {
    11241160    display: none;
     1161}
     1162
     1163/* Define color variables with fallback values from Tailwind config */
     1164.wp-block-fraktvalg-shipping-selector {
     1165    --fraktvalg-primary-color: #2F463E;
     1166    --fraktvalg-secondary-color: #4D8965;
     1167    --fraktvalg-tertiary-color: #65C7A4;
     1168
     1169    /* Inherit theme typography */
     1170    font-family: var(--wp--preset--font-family--system-font, inherit);
     1171    font-size: var(--wp--preset--font-size--normal, inherit);
     1172    line-height: var(--wp--custom--typography--line-height--normal, inherit);
     1173
     1174    h1, h2, h3, h4, h5, h6 {
     1175        font-family: var(--wp--preset--font-family--heading, inherit);
     1176        line-height: var(--wp--custom--typography--line-height--heading, inherit);
     1177    }
     1178
     1179    p {
     1180        font-family: var(--wp--preset--font-family--body, inherit);
     1181        line-height: var(--wp--custom--typography--line-height--paragraph, inherit);
     1182    }
     1183}
     1184
     1185/* Override Tailwind color classes with CSS variables */
     1186.wp-block-fraktvalg-shipping-selector {
     1187    /* Text colors */
     1188    .text-primary {
     1189        color: var(--fraktvalg-primary-color) !important;
     1190    }
     1191
     1192    .text-secondary {
     1193        color: var(--fraktvalg-secondary-color) !important;
     1194    }
     1195
     1196    .text-tertiary {
     1197        color: var(--fraktvalg-tertiary-color) !important;
     1198    }
     1199
     1200    /* Background colors */
     1201    .bg-primary {
     1202        background-color: var(--fraktvalg-primary-color) !important;
     1203    }
     1204
     1205    .bg-secondary {
     1206        background-color: var(--fraktvalg-secondary-color) !important;
     1207    }
     1208
     1209    .bg-tertiary {
     1210        background-color: var(--fraktvalg-tertiary-color) !important;
     1211    }
     1212
     1213    /* Hover text colors */
     1214    .hover\:text-primary:hover {
     1215        color: var(--fraktvalg-primary-color) !important;
     1216    }
     1217
     1218    .hover\:text-secondary:hover {
     1219        color: var(--fraktvalg-secondary-color) !important;
     1220    }
     1221
     1222    .hover\:text-tertiary:hover {
     1223        color: var(--fraktvalg-tertiary-color) !important;
     1224    }
     1225
     1226    /* Hover background colors */
     1227    .hover\:bg-primary:hover {
     1228        background-color: var(--fraktvalg-primary-color) !important;
     1229    }
     1230
     1231    .hover\:bg-secondary:hover {
     1232        background-color: var(--fraktvalg-secondary-color) !important;
     1233    }
     1234
     1235    .hover\:bg-tertiary:hover {
     1236        background-color: var(--fraktvalg-tertiary-color) !important;
     1237    }
     1238
     1239    /* Border colors */
     1240    .border-primary {
     1241        border-color: var(--fraktvalg-primary-color) !important;
     1242    }
     1243
     1244    .border-secondary {
     1245        border-color: var(--fraktvalg-secondary-color) !important;
     1246    }
     1247
     1248    .border-tertiary {
     1249        border-color: var(--fraktvalg-tertiary-color) !important;
     1250    }
     1251
     1252    /* Hover border colors */
     1253    .hover\:border-primary:hover {
     1254        border-color: var(--fraktvalg-primary-color) !important;
     1255    }
     1256
     1257    .hover\:border-secondary:hover {
     1258        border-color: var(--fraktvalg-secondary-color) !important;
     1259    }
     1260
     1261    .hover\:border-tertiary:hover {
     1262        border-color: var(--fraktvalg-tertiary-color) !important;
     1263    }
    11251264}
    11261265.after\:absolute::after {
     
    11841323  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11851324}
     1325.hover\:bg-gray-50:hover {
     1326  --tw-bg-opacity: 1;
     1327  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1328}
    11861329.hover\:bg-green-700:hover {
    11871330  --tw-bg-opacity: 1;
     
    12541397  color: rgb(255 255 255 / var(--tw-text-opacity));
    12551398}
     1399.disabled\:cursor-not-allowed:disabled {
     1400  cursor: not-allowed;
     1401}
    12561402.disabled\:bg-black\/80:disabled {
    12571403  background-color: rgb(0 0 0 / 0.8);
     1404}
     1405.disabled\:opacity-50:disabled {
     1406  opacity: 0.5;
    12581407}
    12591408.peer:checked ~ .peer-checked\:block {
     
    13021451  }
    13031452
     1453  .sm\:inline {
     1454    display: inline;
     1455  }
     1456
    13041457  .sm\:flex {
    13051458    display: flex;
  • fraktvalg/trunk/build/fraktvalg-rtl.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-right: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-right: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-left: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11091140.transition-all {
    11101141  transition-property: all;
     1142  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1143  transition-duration: 150ms;
     1144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    11111147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    11121148  transition-duration: 150ms;
     
    11781214  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11791215}
     1216.hover\:bg-gray-50:hover {
     1217  --tw-bg-opacity: 1;
     1218  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1219}
    11801220.hover\:bg-green-700:hover {
    11811221  --tw-bg-opacity: 1;
     
    12481288  color: rgb(255 255 255 / var(--tw-text-opacity));
    12491289}
     1290.disabled\:cursor-not-allowed:disabled {
     1291  cursor: not-allowed;
     1292}
    12501293.disabled\:bg-black\/80:disabled {
    12511294  background-color: rgb(0 0 0 / 0.8);
     1295}
     1296.disabled\:opacity-50:disabled {
     1297  opacity: 0.5;
    12521298}
    12531299.peer:checked ~ .peer-checked\:block {
     
    12961342  }
    12971343
     1344  .sm\:inline {
     1345    display: inline;
     1346  }
     1347
    12981348  .sm\:flex {
    12991349    display: flex;
  • fraktvalg/trunk/build/fraktvalg.asset.php

    r3260012 r3267354  
    1 <?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-i18n'), 'version' => '53a587df87d5c7e13bbf');
     1<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-i18n'), 'version' => 'e35a277769283e6546f1');
  • fraktvalg/trunk/build/fraktvalg.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-left: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-left: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-right: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11091140.transition-all {
    11101141  transition-property: all;
     1142  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1143  transition-duration: 150ms;
     1144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    11111147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    11121148  transition-duration: 150ms;
     
    11781214  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11791215}
     1216.hover\:bg-gray-50:hover {
     1217  --tw-bg-opacity: 1;
     1218  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1219}
    11801220.hover\:bg-green-700:hover {
    11811221  --tw-bg-opacity: 1;
     
    12481288  color: rgb(255 255 255 / var(--tw-text-opacity));
    12491289}
     1290.disabled\:cursor-not-allowed:disabled {
     1291  cursor: not-allowed;
     1292}
    12501293.disabled\:bg-black\/80:disabled {
    12511294  background-color: rgb(0 0 0 / 0.8);
     1295}
     1296.disabled\:opacity-50:disabled {
     1297  opacity: 0.5;
    12521298}
    12531299.peer:checked ~ .peer-checked\:block {
     
    12961342  }
    12971343
     1344  .sm\:inline {
     1345    display: inline;
     1346  }
     1347
    12981348  .sm\:flex {
    12991349    display: flex;
  • fraktvalg/trunk/build/fraktvalg.js

    r3260012 r3267354  
    1 (()=>{"use strict";var e={338:(e,t,g)=>{var a=g(795);t.H=a.createRoot,a.hydrateRoot},20:(e,t,g)=>{var a=g(609),s=Symbol.for("react.element"),i=Symbol.for("react.fragment"),l=Object.prototype.hasOwnProperty,M=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,r={key:!0,ref:!0,__self:!0,__source:!0};function I(e,t,g){var a,i={},I=null,c=null;for(a in void 0!==g&&(I=""+g),void 0!==t.key&&(I=""+t.key),void 0!==t.ref&&(c=t.ref),t)l.call(t,a)&&!r.hasOwnProperty(a)&&(i[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===i[a]&&(i[a]=t[a]);return{$$typeof:s,type:e,key:I,ref:c,props:i,_owner:M.current}}t.Fragment=i,t.jsx=I,t.jsxs=I},848:(e,t,g)=>{e.exports=g(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},t={};function g(a){var s=t[a];if(void 0!==s)return s.exports;var i=t[a]={exports:{}};return e[a](i,i.exports,g),i.exports}g.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return g.d(t,{a:t}),t},g.d=(e,t)=>{for(var a in t)g.o(t,a)&&!g.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},g.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var a=g(609),s=g(338);function i(e){var t,g,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e)){var s=e.length;for(t=0;t<s;t++)e[t]&&(g=i(e[t]))&&(a&&(a+=" "),a+=g)}else for(g in e)e[g]&&(a&&(a+=" "),a+=g);return a}function l(){for(var e,t,g=0,a="",s=arguments.length;g<s;g++)(e=arguments[g])&&(t=i(e))&&(a&&(a+=" "),a+=t);return a}var M=g(848);function r({tabs:e,activeTab:t,setTab:g}){return(0,M.jsx)("div",{className:"border-b border-gray-200 bg-white",children:(0,M.jsx)("div",{className:"mx-auto max-w-7xl px-4 sm:px-6 lg:px-8",children:(0,M.jsx)("nav",{children:(0,M.jsx)("div",{className:"flex h-16 justify-between",children:(0,M.jsxs)("div",{className:"flex",children:[(0,M.jsx)("div",{className:"flex shrink-0 items-center",children:(0,M.jsx)("img",{className:"block h-8 w-auto",src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMzUwIgogICBoZWlnaHQ9Ijk2LjI3NzM1OSIKICAgdmlld0JveD0iMCAwIDkyLjYwNDE1NiAyNS40NzMzODEiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzEiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTI1Mi4zNDE1NiwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTAzIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMjgwLjk3OTcxLC03OS41OTE4MDIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTAzIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMDUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zMDAuNTQ2MzgsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMDUiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwNyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTMzMi42ODExOCwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwNyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTA5Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMzYzLjIyNDYzLC03MS4yMTg3NTIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTA5IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTEiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zODIuODQ4MTYsLTc5Ljc0OTk5OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTEiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExMyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTQxMi41OTQ3NCwtNzguODk2NDg0KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExMyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTE1Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTIzMS42MzE5LC00OTYuNzEwOTYpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTE1IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTciPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC00NTUuNjIxMzQsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTciIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExOSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY5OC42ODA4OSwtNTc1LjAyNzM2KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExOSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTIxIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTgwLjY3NDc4LC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTIxIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjMiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC03NTEuMTA3NDcsLTUyMi4yOTEwNCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjMiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEyNSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY3Mi4wMDIxOSwtNDk1LjkyMTg5KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEyNSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTI3Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTY3LjQ4MjQzLC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTI3IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjkiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC02NDUuOTQyMTcsLTQ5NS45MjE4OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjkiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEzMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTEzNS4xOTA5NSwtNDIuMDk5NjExKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEzMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgogIDxnCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA4MDY4NDUsLTAuMzc3MjQwNDgpIj4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwMCIKICAgICAgIGQ9Im0gNTkxLjI2NjYsNTExLjczOTE3IHYgLTgyLjgxNTMxIGggNDkuODYxNDUgdiAxMy44NTgxNSBoIC0zNi4wMDA0OSB2IDIwLjY0Njc5IGggMzYuMDAwNDkgdiAxMy44MDI2MSBoIC0zNi4wMDA0OSB2IDM0LjUwNzc2IHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTQ2LjU0ODIyNiwtNDguNTk4OTE1KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDEwMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMDIiCiAgICAgICBkPSJtIDYyMC41NDE5OSw1MDEuNjU5MTUgdiAtNjIuMTEyNDkgaCAxMi4yNTEyMiB2IDE1LjEyNTYxIGwgLTEuNDk5NTEsLTEuOTU0NTMgYyAwLjc3MTYxLC0yLjA3MTIzIDEuNzk0MTksLTMuOTU4NDkgMy4wODAyLC01LjY2MzY5IDEuMjg1ODksLTEuNzA1MjYgMi44MjY5MSwtMy4xMTc2OCA0LjYyOTAzLC00LjIyOTQzIDEuNTM1MTYsLTEuMDM0NjEgMy4yMjgzOSwtMS44NDk2NyA1LjA4OTk3LC0yLjQ0MzEyIDEuODU5NjEsLTAuNTkxNDkgMy43Njg1NSwtMC45NTc0NiA1LjcyNDk3LC0xLjA5MTk4IDEuOTU0NTksLTAuMTM0NTIgMy44NDk3MywtMC4wNDk0IDUuNjg5NDUsMC4yNTcxNCB2IDEyLjk0MTU5IGMgLTEuODM5NzIsLTAuNTM4MDkgLTMuOTU2NTQsLTAuNzEwMiAtNi4zNTIxNywtMC41MTgzMSAtMi4zOTk0MSwwLjE5IC00LjU1MzgzLDAuODYyNTUgLTYuNDcwODIsMi4wMTM4NiAtMS45MTY3NSwxLjAzMjcxIC0zLjQ3OTYyLDIuMzU2MDcgLTQuNjg2MjgsMy45NjYzIC0xLjIwODc0LDEuNjEyMzEgLTIuMTAyOTEsMy40NDQyMiAtMi42NzQ2OSw1LjQ5NTU1IC0wLjU3NTU2LDIuMDQ5NTYgLTAuODY0MzgsNC4yNjMxOCAtMC44NjQzOCw2LjYzODk4IHYgMzEuNTc0NTIgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNDIuNzkyODYzLC00Ny4yNzcxMDEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTAzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwNCIKICAgICAgIGQ9Im0gNjYxLjM2Mjc5LDUwNC4wODE0OCBjIC00LjQ4NjU3LDAgLTguMjgyODMsLTAuODU0NjEgLTExLjM5MDUsLTIuNTU5ODEgLTMuMTAxOTMsLTEuNzA1MiAtNS40NTQxLC0zLjk3ODIxIC03LjA0MjYsLTYuODE1IC0xLjU5MjQxLC0yLjgzNjc0IC0yLjM4NTc0LC01Ljk2MjQxIC0yLjM4NTc0LC05LjM3NDg4IDAsLTIuOTkwOTcgMC40OTY1OCwtNS42ODM0MSAxLjQ5MTU3LC04LjA4MTA2IDAuOTk5MDMsLTIuMzk1NjMgMi41MzQxOCwtNC40NjQ4NCA0LjYwMTU2LC02LjIxMTYxIDIuMDczLC0xLjc0Mjg2IDQuNzU1NSwtMy4xNjkxMiA4LjA1MzIzLC00LjI4Mjg5IDIuNDkyNTUsLTAuODA1MTIgNS40MTYzOCwtMS41MzMwOSA4Ljc2OTQxLC0yLjE4Mzk2IDMuMzU3MTcsLTAuNjUwODIgNi45OTkxNCwtMS4yNTYxNyAxMC45Mjc4NSwtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQzNTgsLTEuMTU3MjkgMTIuMzM2MzEsLTEuODEyMDEgbCAtNC45NDU2OCwyLjgxODkxIGMgMC4wMzc2LC00LjI5MjczIC0wLjkxOTkyLC03LjQ1Nzg5IC0yLjg3NDI3LC05LjQ4OTU3IC0xLjk1NDU5LC0yLjAzMTY3IC01LjI1MjIsLTMuMDQ4NDYgLTkuODkzMTksLTMuMDQ4NDYgLTIuNzk5MTksMCAtNS41MDE0NiwwLjY1MjgzIC04LjExMDg0LDEuOTU0NTMgLTIuNjA3MTgsMS4zMDU2IC00LjQyNzI0LDMuNTQ4OTUgLTUuNDYxNzksNi43MzE4NyBsIC0xMi42NTA4OCwtMy45NzAyNyBjIDEuNTMzMiwtNS4yNTIyIDQuNDU1MDgsLTkuNDY3NzggOC43Njk1MywtMTIuNjUyNzcgNC4zMTA1NSwtMy4xODA5NyAxMC4xMzA2MiwtNC43NzM0NCAxNy40NTM5OCwtNC43NzM0NCA1LjUyMTI0LDAgMTAuMzgxODQsMC45MDAwMiAxNC41Nzk1OSwyLjcwMjIxIDQuMTk3NzYsMS44MDIxOCA3LjMxMzQ4LDQuNzU1NjEgOS4zNDUyMiw4Ljg1ODUyIDEuMTExNjksMi4xODM5NiAxLjc4NDE4LDQuNDE5MzcgMi4wMTE3Miw2LjcwMDI2IDAuMjMxNTYsMi4yODA5NCAwLjM0ODI2LDQuNzY1NjIgMC4zNDgyNiw3LjQ0NjEgdiAzOC4xMzAzNyBIIDY4My4xNTcxIHYgLTEzLjQ1Nzg4IGwgMi4wMTM5MiwyLjE4Nzg2IGMgLTIuNzk5MzIsNC40ODQ2OCAtNi4wNjU0Myw3Ljc3MjU5IC05LjgwNDIsOS44NjE1NyAtMy43Mzg3NywyLjA4ODkzIC04LjQwNzU5LDMuMTM1NDQgLTE0LjAwNDAzLDMuMTM1NDQgbSAyLjc1OTc3LC0xMS4wNDI0OCBjIDMuMTQzNDMsMCA1LjgyNzg4LC0wLjU1NTg1IDguMDUxNTEsLTEuNjY3NiAyLjIyMzM5LC0xLjExMzgzIDMuOTk1ODUsLTIuNDc0NzkgNS4zMTkyMiwtNC4wODUwOCAxLjMyMzQ4LC0xLjYwODM0IDIuMjEzNzQsLTMuMTI1NjEgMi42NzY2MywtNC41NDIgMC43MjYwOCwtMS43NjQ1OCAxLjEzNzU4LC0zLjc4NjMxIDEuMjM0MzgsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2NDgsLTQuMTMwNjEgMC4xNDY0OCwtNS41NTA5IGwgNC4yNTMwNSwxLjI2NTk5IGMgLTQuMTc3OTgsMC42NTA5NCAtNy43NjQ1MiwxLjIyNjU2IC0xMC43NTM1NCwxLjcyNzExIC0yLjk5MTIxLDAuNDk2NTIgLTUuNTYwNzksMC45NjU0IC03LjcwNzI3LDEuNDA2NSAtMi4xNDgzMiwwLjQ0MTEgLTQuMDQzNDYsMC45Mjk3NSAtNS42OTMyNCwxLjQ2NzgzIC0xLjYxMDM1LDAuNTczNjcgLTIuOTcxNDQsMS4yNDYyOCAtNC4wODUwOCwyLjAxMTg0IC0xLjExMTcsMC43Njc2NCAtMS45NjI0MSwxLjY0OTg0IC0yLjU1Nzg2LDIuNjQ2OTEgLTAuNTk3NDIsMC45OTUgLTAuODkyMjIsMi4xNjQxMyAtMC44OTIyMiwzLjUwNzMzIDAsMS41MzUxNSAwLjM4Mzc5LDIuODg0MjggMS4xNTEzNyw0LjA1NTQyIDAuNzY3NTgsMS4xNjkxMyAxLjg4NzIxLDIuMDk2OTIgMy4zNjQ5OSwyLjc4NzM1IDEuNDc1NzEsMC42OTIzMiAzLjMwNzYyLDEuMDM2NTYgNS40OTE1OCwxLjAzNjU2IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC00MC4yMjcwNTQsLTQ3LjM2ODI3OSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMDUpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTA2IgogICAgICAgZD0ibSA2NzMuMzkzOTIsNTExLjczOTE3IDAuMTE0MDEsLTgyLjgxNTMxIGggMTQuMDM2MjYgdiA1MC42MDk0MyBsIDIyLjcxNDk3LC0yOS45MDcwNCBoIDE3LjMxMDkxIGwgLTI0LjA5NjgsMzEuMDU3ODYgMjYuMTY3OTcsMzEuMDU1MDYgaCAtMTguMzQ3OTEgbCAtMjMuNzQ5MTQsLTI5LjkwNjk5IHYgMjkuOTA2OTkgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtMzYuMDEzMTY5LC00OC41OTg5MTUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA3KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwOCIKICAgICAgIGQ9Im0gNzA5LjQ0OTg5LDQ0Ny45MjAxNCBoIDI3LjIwMjUxIHYgMTAuODcwNDIgaCAtMjcuMjAyNTEgeiBtIDI3LjIwMjUxLDYyLjExMjQ4IGMgLTQuMTA0NzMsMC43NjU2OSAtOC4xMTg1MywxLjEwMTg3IC0xMi4wNDkzMSwxLjAwODk4IC0zLjkyODgzLC0wLjEwMDk2IC03LjQ1MDA3LC0wLjgyNzAzIC0xMC41NTE4OCwtMi4xODc5OSAtMy4xMDc3OSwtMS4zNTkwMSAtNS40NjU5NCwtMy41MTczNCAtNy4wNzQyMiwtNi40NzA3NyAtMS40MjAyOSwtMi42ODI1NSAtMi4xNjgwOSwtNS40MjIzNiAtMi4yNDMyOSwtOC4yMjM1NyAtMC4wNzkyLC0yLjc5OTEzIC0wLjExNjgyLC01Ljk1ODM3IC0wLjExNjgyLC05LjQ4NzU1IFYgNDMwLjY2OCBoIDEzLjgwMjM3IHYgNTMuMTk2NTkgYyAwLDIuNDkyNTYgMC4wMjk3LDQuNjgwNTUgMC4wODY5LDYuNTU3ODYgMC4wNTk2LDEuODc5MzQgMC40NDkxLDMuNDEyNDggMS4xODA5MSw0LjYwMTM4IDEuMzc4OTEsMi4yOTg3MSAzLjU4MjY0LDMuNTg0NDggNi42MTM0MSwzLjg1MzU4IDMuMDI4NTYsMC4yNjUwOCA2LjQ3ODc2LDAuMTEyNzMgMTAuMzUxOTIsLTAuNDYwOTQgdiAxMS42MTYxNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC0zMi4wMDc5NiwtNDguMzc1MDcpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA5KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExMCIKICAgICAgIGQ9Im0gNzQ3LjIyMDAzLDUwMS41MDE5MiAtMjIuNTQyODQsLTYyLjExMjkxIGggMTMuODYxMDggbCAxNS42NDI4Miw0NS4wMzI4MyAxNS41ODQ2LC00NS4wMzI4MyBoIDEzLjkxNjI2IGwgLTIyLjU0MjQ4LDYyLjExMjkxIHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI5LjQzNDY5OSwtNDcuMjU2MzU2KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTIiCiAgICAgICBkPSJtIDc3NS45MDY5Miw1MDQuMDgxNDggYyAtNC40ODg2NSwwIC04LjI4Mjg0LC0wLjg1NDYxIC0xMS4zODg3OSwtMi41NTk4MSAtMy4xMDM3NiwtMS43MDUyIC01LjQ1NTgxLC0zLjk3ODIxIC03LjA0NDMxLC02LjgxNSAtMS41OTI1MywtMi44MzY3NCAtMi4zODc4MiwtNS45NjI0MSAtMi4zODc4MiwtOS4zNzQ4OCAwLC0yLjk5MDk3IDAuNDk2NDYsLTUuNjgzNDEgMS40OTM1MywtOC4wODEwNiAwLjk5OTAyLC0yLjM5NTYzIDIuNTMyMSwtNC40NjQ4NCA0LjYwMzM5LC02LjIxMTYxIDIuMDcxMjksLTEuNzQyODYgNC43NTM2NiwtMy4xNjkxMiA4LjA1MTM5LC00LjI4Mjg5IDIuNDkwNiwtMC44MDUxMiA1LjQxNjM5LC0xLjUzMzA5IDguNzY5NTQsLTIuMTgzOTYgMy4zNTUxLC0wLjY1MDgyIDYuOTk4OSwtMS4yNTYxNyAxMC45Mjc3MywtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQxNSwtMS4xNTcyOSAxMi4zMzYzLC0xLjgxMjAxIGwgLTQuOTQ1NjgsMi44MTg5MSBjIDAuMDM3NiwtNC4yOTI3MyAtMC45MTk4LC03LjQ1Nzg5IC0yLjg3NDM5LC05LjQ4OTU3IC0xLjk1NDQ2LC0yLjAzMTY3IC01LjI1MjE5LC0zLjA0ODQ2IC05Ljg5NTAxLC0zLjA0ODQ2IC0yLjc5NzI1LDAgLTUuNDk5NjQsMC42NTI4MyAtOC4xMDg3NywxLjk1NDUzIC0yLjYwNzQyLDEuMzA1NiAtNC40MjczNywzLjU0ODk1IC01LjQ2MTkxLDYuNzMxODcgbCAtMTIuNjUyODQsLTMuOTcwMjcgYyAxLjUzNTE2LC01LjI1MjIgNC40NTQ5NiwtOS40Njc3OCA4Ljc2OTU0LC0xMi42NTI3NyA0LjMxMjYyLC0zLjE4MDk3IDEwLjEzMDQ5LC00Ljc3MzQ0IDE3LjQ1Mzk4LC00Ljc3MzQ0IDUuNTIxMjQsMCAxMC4zODE3MSwwLjkwMDAyIDE0LjU3OTU5LDIuNzAyMjEgNC4xOTc3NSwxLjgwMjE4IDcuMzE1NDIsNC43NTU2MSA5LjM0NTA5LDguODU4NTIgMS4xMTM3NywyLjE4Mzk2IDEuNzg2MzcsNC40MTkzNyAyLjAxMzkxLDYuNzAwMjYgMC4yMjkzNywyLjI4MDk0IDAuMzQ2Miw0Ljc2NTYyIDAuMzQ2Miw3LjQ0NjEgdiAzOC4xMzAzNyBoIC0xMi4xMzY0OCB2IC0xMy40NTc4OCBsIDIuMDExODQsMi4xODc4NiBjIC0yLjc5NzI0LDQuNDg0NjggLTYuMDYzMjMsNy43NzI1OSAtOS44MDIyNCw5Ljg2MTU3IC0zLjc0MDczLDIuMDg4OTMgLTguNDA3NDgsMy4xMzU0NCAtMTQuMDAzNzksMy4xMzU0NCBtIDIuNzU5NTIsLTExLjA0MjQ4IGMgMy4xNDM0NCwwIDUuODI4MDEsLTAuNTU1ODUgOC4wNTEzOSwtMS42Njc2IDIuMjIxNTYsLTEuMTEzODMgMy45OTYyMiwtMi40NzQ3OSA1LjMxOTU4LC00LjA4NTA4IDEuMzIzNDksLTEuNjA4MzQgMi4yMTM2MywtMy4xMjU2MSAyLjY3NDU3LC00LjU0MiAwLjcyNzksLTEuNzY0NTggMS4xMzk0LC0zLjc4NjMxIDEuMjM2NDUsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2MzYsLTQuMTMwNjEgMC4xNDYzNiwtNS41NTA5IGwgNC4yNTMxNywxLjI2NTk5IGMgLTQuMTc4MSwwLjY1MDk0IC03Ljc2NDUyLDEuMjI2NTYgLTEwLjc1MzY2LDEuNzI3MTEgLTIuOTkxMDksMC40OTY1MiAtNS41NjA5MSwwLjk2NTQgLTcuNzA5MjMsMS40MDY1IC0yLjE0NjM2LDAuNDQxMSAtNC4wNDE1LDAuOTI5NzUgLTUuNjkzMjQsMS40Njc4MyAtMS42MDgyNywwLjU3MzY3IC0yLjk3MTQzLDEuMjQ2MjggLTQuMDgzMTMsMi4wMTE4NCAtMS4xMDk4NiwwLjc2NzY0IC0xLjk2MjUyLDEuNjQ5ODQgLTIuNTU5OTMsMi42NDY5MSAtMC41OTUzNCwwLjk5NSAtMC44OTAwMiwyLjE2NDEzIC0wLjg5MDAyLDMuNTA3MzMgMCwxLjUzNTE1IDAuMzgxNzIsMi44ODQyOCAxLjE1MTI1LDQuMDU1NDIgMC43Njc0NSwxLjE2OTEzIDEuODg3MDgsMi4wOTY5MiAzLjM2NDg3LDIuNzg3MzUgMS40NzU4MywwLjY5MjMyIDMuMzA1NzgsMS4wMzY1NiA1LjQ5MTU3LDEuMDM2NTYiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI1LjUzMzk4NiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTQiCiAgICAgICBkPSJNIDAsMCBIIDEzLjg2MDk2IFYgODQuNTQxNzQ4IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDgxLjg2NzU4Myw3LjQyMDM1NzYpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTE1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExNiIKICAgICAgIGQ9Im0gODI3LjQyNTksNTA0LjA3OTUzIGMgLTUuNzE0OTYsMCAtMTAuNzAwMzEsLTEuNDM4MTcgLTE0Ljk1MzQ5LC00LjMxMjU2IC00LjI1NzA4LC0yLjg3NDMzIC03LjU1NDgxLC02Ljc4NTI4IC05Ljg5MTExLC0xMS43MzA4NCAtMi4zNDAyMSwtNC45NDk2NCAtMy41MTEyMywtMTAuNTI0MjkgLTMuNTExMjMsLTE2LjczNzg1IDAsLTYuMjg2ODcgMS4xNzg5NSwtMTEuODk1MDggMy41MzkwNiwtMTYuODIwOTIgMi4zNTU5NiwtNC45Mjc4IDUuNzAzMTMsLTguODE4OTEgMTAuMDM1NCwtMTEuNjc1NDggNC4zMzI0LC0yLjg1NDY4IDkuNDMyMjUsLTQuMjg0ODUgMTUuMjk3NzMsLTQuMjg0ODUgNS45MDI5NSwwIDEwLjg1ODUyLDEuNDMwMTcgMTQuODY2MzMsNC4yODQ4NSA0LjAwNDAzLDIuODU2NTcgNy4wNDQ2OCw2Ljc1NTYyIDkuMTE1NzMsMTEuNzA1MTQgMi4wNjkyMSw0Ljk0NTYyIDMuMTA1ODMsMTAuNTQxOTkgMy4xMDU4MywxNi43OTEyNiAwLDYuMTc0MDcgLTEuMDM2NjIsMTEuNzQyNzQgLTMuMTA1ODMsMTYuNzA4MTMgLTIuMDcxMDUsNC45NjMzOCAtNS4xNTcxMSw4Ljg4NjIzIC05LjI2MDE0LDExLjc2MDU2IC00LjEwMDgzLDIuODc0MzkgLTkuMTgyODYsNC4zMTI1NiAtMTUuMjM4MjgsNC4zMTI1NiBtIDEuMjA0NzIsMjcuNjA4MTUgYyAtMy40NDgsMCAtNi43NTU1LC0wLjUzODA4IC05LjkxODgzLC0xLjYxMjI0IC0zLjE2MzA4LC0xLjA3MjE0IC02LjAxMTcyLC0yLjYxNTIzIC04LjU0MTg3LC00LjYyOTAzIC0yLjUzMDI3LC0yLjAxMzkxIC00LjYwMTU2LC00LjQzOTE1IC02LjIwOTcxLC03LjI3NTg4IGwgMTIuNzY1MzgsLTYuMzI2NDcgYyAxLjE4ODk2LDIuMjYzMTIgMi44Njg1MywzLjk0MDY3IDUuMDMyNzEsNS4wMzI2NSAyLjE2ODIxLDEuMDkxOTggNC40Nzg2NCwxLjYzOCA2LjkzMTc2LDEuNjM4IDIuODc0MjcsMCA1LjQ0MjE0LC0wLjUwODQyIDcuNzA1MDgsLTEuNTIzMjUgMi4yNjEyMywtMS4wMTQ5IDQuMDE3ODIsLTIuNTEyNDYgNS4yNjIyMSwtNC40ODQ2OSAxLjI0NDI2LC0xLjk3ODI3IDEuODMxNzksLTQuNDM3MTMgMS43NTQ2NCwtNy4zOTA2MiB2IC0xNy42NTU3NiBoIDEuNzI2OTMgViA0NDAuMjQyIGggMTIuMTMyNjkgdiA2NS4xMDE2MyBjIDAsMS41NzQ2NCAtMC4wNjc1LDMuMDgwMTQgLTAuMTk5ODMsNC41MTYyOSAtMC4xMzQ1MiwxLjQzODE4IC0wLjM1NjA4LDIuODQ4NjQgLTAuNjYyODQsNC4yMjc0MiAtMC45MTk4LDQuMDI1NzYgLTIuNjgyMzgsNy4zMzEzNiAtNS4yODk4LDkuOTIwOSAtMi42MDkxMywyLjU4NzUyIC01LjgzNzY1LDQuNTE0MzQgLTkuNjg5MzMsNS43ODA0IC0zLjg1NTU5LDEuMjY0MDkgLTguMTE4NTMsMS44OTkwNCAtMTIuNzk5MTksMS44OTkwNCBtIDAuOTIxODcsLTQwLjAyOTQ4IGMgMy43MTcxNiwwIDYuNzE4MTQsLTAuODUyNTQgOS4wMDMwNSwtMi41NTk4MSAyLjI3Njk4LC0xLjcwNTIgMy45NDY1NCwtNC4wOTA5NCA1LjAwMDg2LC03LjE1OTE4IDEuMDU0NDQsLTMuMDY2MjkgMS41ODI1MiwtNi42MTMyOCAxLjU4MjUyLC0xMC42NDA5MyAwLC00LjA2MzI5IC0wLjUyODA4LC03LjYxODE3IC0xLjU4MjUyLC0xMC42Njg2NCAtMS4wNTQzMiwtMy4wNDY0NSAtMi42OTQzNCwtNS40MjQzMiAtNC45MTU3NywtNy4xMzE0NyAtMi4yMjc1NCwtMS43MDUyNiAtNS4xMDE5MywtMi41NTc4NiAtOC42MjcyLC0yLjU1Nzg2IC0zLjcyMTA3LDAgLTYuNzg5MTksMC45MTE5OCAtOS4yMDI3NiwyLjcyOTk4IC0yLjQxNTQxLDEuODIzOTEgLTQuMTk5NzEsNC4yNzY4NSAtNS4zNDcwNSw3LjM2MjkxIC0xLjE1MTM2LDMuMDg2MDYgLTEuNzI3MDUsNi41MDg0MyAtMS43MjcwNSwxMC4yNjUwOCAwLDMuNzk2MTQgMC41Njc3NSw3LjIzODM0IDEuNjk3MjcsMTAuMzIyMzkgMS4xMjk2NCwzLjA4ODA3IDIuODY2NTgsNS41MzMwOCA1LjIwMjc2LDcuMzMzMzEgMi4zNDAzMywxLjgwNDA4IDUuMzA5NjksMi43MDQyMiA4LjkxNTg5LDIuNzA0MjIiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTE5Ljg5MTg0MiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExNykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTgiCiAgICAgICBkPSJNIDAsMCBIIDM2LjU5MDYzMyBWIDEwLjIyNDExMiBIIDAgWiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwxMS45ODA5MjIsMTcuNjkwMTA3KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExOSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMjAiCiAgICAgICBkPSJNIDU0OS40ODQ2Miw0NzcuNTcyMzYgSCA1MTguMDA1IHYgLTEwLjIyMzUxIGggMjYuMzY3NjggViA0NDAuOTgzIGggMTAuMjIzNjMgdiAzMS40Nzc2IGMgMCwyLjgyNDk1IC0yLjI5MDc3LDUuMTExNzYgLTUuMTExNjksNS4xMTE3NiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNTUuOTQ1OTk3LC00Ny4wNTE5NzUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIxKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyMiIKICAgICAgIGQ9Ik0gMCwwIEggMTAuMjI0MTEyIFYgNjIuOTYwMTA2IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDE4Ljg1NTY5NywxMC43NzQ3MTEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNCIKICAgICAgIGQ9Ik0gMCwwIEggMzYuNTkzNDg3IFYgMTAuMjI0MTEyIEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDguNDgyNTAzMyw3LjMxNjg4NDgpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTI1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNiIKICAgICAgIGQ9Ik0gNTE0Ljc0NDM4LDQ3Ny41NzIzNiBIIDUwNC41MTkwMSBWIDQ0Ni4wOTQ3IGMgMCwtMi44MjI4MiAyLjI5MDgzLC01LjExMTcgNS4xMTE3NiwtNS4xMTE3IGggMzEuNDgxNjYgdiAxMC4yMjM1MSBoIC0yNi4zNjgwNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC01Ny42NzU5MzEsLTQ3LjA1MTk3NSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjcpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTI4IgogICAgICAgZD0iTSAwLDAgSCAxMC4yMjQxMTIgViA2Mi45NjAxMDYgSCAwIFoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsNS4wNjUyMTQ4LDcuMzE2ODg0OCkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjkpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTMwIgogICAgICAgZD0ibSA1NjguNjM4MTIsNTk1LjE1OTMgYyAtNTMuNTU2NTIsMCAtOTcuMTI5MTUsLTQzLjU3MjUxIC05Ny4xMjkxNSwtOTcuMTI5MTUgMCwtNTMuNTU2NyA0My41NzI2MywtOTcuMTI5MTUgOTcuMTI5MTUsLTk3LjEyOTE1IDUzLjU1Njc3LDAgOTcuMTI5MTUsNDMuNTcyNDUgOTcuMTI5MTUsOTcuMTI5MTUgMCw1My41NTY2NCAtNDMuNTcyMzgsOTcuMTI5MTUgLTk3LjEyOTE1LDk3LjEyOTE1IG0gMCwtMTg0LjAzNDc5IGMgLTQ3LjkxODUyLDAgLTg2LjkwMzU2LDM4Ljk4Njk0IC04Ni45MDM1Niw4Ni45MDU2NCAwLDQ3LjkyMjYxIDM4Ljk4NTA0LDg2LjkwNTY0IDg2LjkwMzU2LDg2LjkwNTY0IDQ3LjkxODgzLDAgODYuOTA1NzYsLTM4Ljk4MzAzIDg2LjkwNTc2LC04Ni45MDU2NCAwLC00Ny45MTg3IC0zOC45ODY5MywtODYuOTA1NjQgLTg2LjkwNTc2LC04Ni45MDU2NCIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNjEuOTEwMzYzLC01Mi4xOTM1MDkpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTMxKSIgLz4KICA8L2c+Cjwvc3ZnPgo=",alt:""})}),(0,M.jsx)("div",{className:"hidden sm:-my-px sm:ml-6 sm:flex sm:space-x-8",children:e.map((e=>(0,M.jsx)("button",{type:"button",className:l("border-transparent text-gray-500 hover:text-secondary hover:border-secondary whitespace-nowrap py-4 px-1 border-b-2 font-medium text-sm",e.value===t?"text-primary border-primary":""),onClick:()=>g(e.value),children:e.label},e.value)))})]})})})})})}const I=window.wp.apiFetch;var c=g.n(I);const n=window.wp.i18n;function C({title:e,children:t}){return(0,M.jsxs)("div",{className:"py-10",children:[(0,M.jsx)("header",{children:(0,M.jsx)("div",{className:"mx-auto max-w-7xl px-4 sm:px-6 lg:px-8",children:(0,M.jsx)("h1",{className:"text-3xl font-bold tracking-tight text-gray-900",children:e})})}),(0,M.jsx)("main",{children:(0,M.jsx)("div",{className:"mx-auto max-w-7xl px-4 py-8 sm:px-6 lg:px-8",children:t})})]})}function N({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const o=a.forwardRef(N);function d({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}))}const A=a.forwardRef(d);function j({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M12.97 3.97a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 1 1-1.06-1.06l6.22-6.22H3a.75.75 0 0 1 0-1.5h16.19l-6.22-6.22a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"}))}const x=a.forwardRef(j);function u({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const w=a.forwardRef(u);function D({type:e="notice",title:t,children:g,className:a=""}){const s=l("border rounded-md p-2","success"===e?"bg-green-100 border-green-200":"","notice"===e?"bg-yellow-100 border-yellow-200":"","error"===e?"bg-red-100 border-red-200":"",a);return(0,M.jsxs)("div",{className:s,children:[(0,M.jsx)("div",{className:"text-md text-black font-semibold",children:t}),g&&(0,M.jsx)("div",{className:"text-sm text-black",children:g})]})}function m({children:e}){return(0,M.jsx)("div",{className:"w-full mt-2 bg-gray-50 rounded-lg p-5 help-content border border-gray-200 space-y-4",children:(0,M.jsx)("div",{className:"text-sm text-gray-600",children:e})})}function T({field:e,name:t,label:g,value:s=!1,callback:i,required:l=!1,children:r}){const[I,c]=(0,a.useState)(s);return(0,M.jsxs)("div",{className:"relative",children:[(0,M.jsxs)("label",{className:"inline-flex items-center cursor-pointer",children:[(0,M.jsx)("input",{name:t,type:"checkbox",checked:s,onChange:e=>{c(e.target.checked),i(e)},required:l,className:"sr-only peer"}),(0,M.jsx)("div",{className:"relative w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 rounded-full peer dark:bg-gray-200 peer-checked:after:translate-x-full rtl:peer-checked:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-primary"}),(0,M.jsx)("span",{className:"ms-3 mr-2 text-sm",children:g})]}),r,e?.stateDescriptions?.enabled&&I&&(0,M.jsx)(m,{children:e?.stateDescriptions?.enabled}),e?.stateDescriptions?.disabled&&!I&&(0,M.jsx)(m,{children:e?.stateDescriptions?.disabled})]})}function L({name:e,label:t,value:g="",placeholder:a="",required:s=!1,callback:i,children:l}){return(0,M.jsxs)("div",{children:[(0,M.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,M.jsx)("input",{name:e,type:"password",value:g,onChange:i,placeholder:a,required:s,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),l]})}function p({name:e,label:t,value:g="",placeholder:a="",required:s=!1,callback:i,children:l}){return(0,M.jsxs)("div",{children:[(0,M.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,M.jsx)("input",{name:e,type:"text",value:g,onChange:i,placeholder:a,required:s,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),l]})}function y({name:e,label:t,value:g="",placeholder:s="",required:i=!1,callback:l,children:r,...I}){const[c,n]=(0,a.useState)(null!=g?g:0);return(0,M.jsxs)("div",{children:[(0,M.jsxs)("div",{className:"flex items-center justify-between",children:[(0,M.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,M.jsx)("input",{name:e,type:"number",value:c,onChange:l,placeholder:s,required:i,min:"0",className:"hidden"}),(0,M.jsxs)("div",{className:"inline-flex items-center gap-4",children:[(0,M.jsx)("button",{onClick:()=>{c>0&&n(c-1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"-"}),(0,M.jsx)("span",{className:"text-lg font-mono font-semibold",children:c}),(0,M.jsx)("button",{onClick:()=>{n(c+1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"+"})]})]}),r]})}function h({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z",clipRule:"evenodd"}))}const z=a.forwardRef(h);function b({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"}))}const v=a.forwardRef(b);function k({includeOptional:e=!1,provider:t,fields:g,callback:s}){const[i,l]=(0,a.useState)({}),[r,I]=(0,a.useState)(!1),c=e=>{"checkbox"!==e.target.type?(l({...i,[e.target.name]:e.target.value}),s(t,i)):l({...i,[e.target.name]:e.target.checked})};(0,a.useEffect)((()=>{g.forEach((e=>{e?.value&&l({...i,[e.name]:e.value})}))}),[]);const C=e=>{switch(e.type){case"boolean":return(0,M.jsx)(T,{name:e.name,label:e.label,value:i?.[e.name],callback:c,required:e.required,field:e,children:(0,M.jsx)(M.Fragment,{children:e?.description&&(0,M.jsx)(m,{children:e?.description})})});case"password":return(0,M.jsx)(L,{name:e.name,label:e.label,value:i?.[e.name],placeholder:e.placeholder,callback:c,required:e.required,field:e,children:(0,M.jsx)(M.Fragment,{children:e?.description&&(0,M.jsx)(m,{children:e?.description})})});case"number":return(0,M.jsx)(y,{name:e.name,label:e.label,value:i?.[e.name],placeholder:e.placeholder,callback:c,required:e.required,field:e,children:(0,M.jsx)(M.Fragment,{children:e?.description&&(0,M.jsx)(m,{children:e?.description})})});default:return(0,M.jsx)(p,{name:e.name,label:e.label,value:i?.[e.name],placeholder:e.placeholder,callback:c,required:e.required,field:e,children:(0,M.jsx)(M.Fragment,{children:e?.description&&(0,M.jsx)(m,{children:e?.description})})})}};return(0,M.jsx)(M.Fragment,{children:g.flatMap(((t,g)=>t?.optional&&!e?[]:(0,M.jsxs)("div",{children:[C(t),t?.help&&(0,M.jsxs)("div",{className:"mt-2",children:[(0,M.jsxs)("button",{type:"button",className:"text-sm text-custom hover:text-custom-dark flex items-center cursor-pointer help-toggle",onClick:()=>I(!r),children:[(0,M.jsx)(v,{className:"w-5 h-5 mr-1"}),(0,M.jsx)("span",{children:t?.help?.label||(0,n.__)("Help","fraktvalg")})]}),r&&(0,M.jsxs)(m,{children:[(0,M.jsx)("p",{children:t?.help?.text}),t?.help?.url?.link&&(0,M.jsx)("div",{className:"mt-3",children:(0,M.jsxs)("a",{href:t?.help?.url?.link,target:"_blank",className:"inline-flex items-center text-custom hover:text-custom-dark font-medium",children:[(0,M.jsx)("span",{children:t?.help?.url?.label}),(0,M.jsx)(z,{className:"ml-1 w-4 h-4"})]})})]})]})]},g)))})}function O({disabled:e=!1,plain:t=!1,className:g,children:a,onClick:s=()=>{},...i}){const r=l("block w-full bg-primary text-white rounded-md p-3","hover:bg-primary/90 hover:text-white","active:bg-primary/90 active:text-white","focus:bg-primary/90 focus:text-white","disabled:bg-black/80",g);return i.href?(0,M.jsx)("a",{className:r,...i,children:a}):(0,M.jsx)("button",{onClick:s,disabled:e,className:r,...i,children:a})}function f({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z",clipRule:"evenodd"}))}const E=a.forwardRef(f);function S({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z",clipRule:"evenodd"}))}const Y=a.forwardRef(S);function U({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const Q=a.forwardRef(U);function G({logo:e=null,...t}){const{alt:g=""}=t;return e?e.startsWith("http")?(0,M.jsx)("img",{src:e,alt:g,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,M.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:g,...t})):(0,M.jsx)(Q,{...t})}function B({supplierId:e,supplier:t,title:g,content:s,isConnected:i=!1,visible:r=!0,classNames:I="",innerClassNames:c=""}){const[C,N]=(0,a.useState)(r),o=l("border bg-white rounded-md",I),d=l("border-t-2 border-gray-100 p-4",c);return(0,M.jsxs)("div",{className:o,children:[(0,M.jsx)("button",{className:"flex w-full p-4 items-center justify-between",onClick:()=>N(!C),children:(0,M.jsx)("h2",{className:"text-lg font-bold w-full",children:(0,M.jsxs)("div",{className:"flex item-center justify-between focus:outline-none w-full",children:[(0,M.jsxs)("div",{className:"flex",children:[t?.logo&&(0,M.jsx)("div",{children:(0,M.jsx)(G,{logo:t?.logo,alt:g,className:"w-8 h-8 mr-2"})}),(0,M.jsx)("div",{className:"inline-flex items-center gap-4",children:(0,M.jsx)("span",{children:g})})]}),(0,M.jsxs)("div",{className:"flex items-center gap-4",children:[i&&(0,M.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-green-100 text-green-600",children:(0,n.__)("Connected","fraktvalg")}),!i&&(0,M.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-red-100 text-red-600",children:(0,n.__)("Disconnected","fraktvalg")}),C?(0,M.jsx)(E,{className:"h-6 w-6 text-gray-600"}):(0,M.jsx)(Y,{className:"h-6 w-6 text-gray-600"})]})]})})}),C&&(0,M.jsx)("div",{className:d,children:s})]})}function Z({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{d:"M6.5 2.25a.75.75 0 0 0-1.5 0v3a.75.75 0 0 0 1.5 0V4.5h6.75a.75.75 0 0 0 0-1.5H6.5v-.75ZM11 6.5a.75.75 0 0 0-1.5 0v3a.75.75 0 0 0 1.5 0v-.75h2.25a.75.75 0 0 0 0-1.5H11V6.5ZM5.75 10a.75.75 0 0 1 .75.75v.75h6.75a.75.75 0 0 1 0 1.5H6.5v.75a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 .75-.75ZM2.75 7.25H8.5v1.5H2.75a.75.75 0 0 1 0-1.5ZM4 3H2.75a.75.75 0 0 0 0 1.5H4V3ZM2.75 11.5H4V13H2.75a.75.75 0 0 1 0-1.5Z"}))}const X=a.forwardRef(Z);function R({setProvider:e,setTab:t}){const[g,s]=(0,a.useState)({}),[i,l]=(0,a.useState)({}),[r,I]=(0,a.useState)(null),[N,d]=(0,a.useState)(!0),[j,u]=(0,a.useState)(null),[m,T]=(0,a.useState)(10),[L,p]=(0,a.useState)("percent"),[y,h]=(0,a.useState)(""),[z,b]=(0,a.useState)({}),v=(e,t)=>{b({...z,[e]:t})},f=()=>{I(null),c()({path:"fraktvalg/v1/settings/providers/mine",method:"GET"}).then((e=>{l(e?.mine?.data||{}),s(e?.available?.data||{}),e?.available?.data&&Object.keys(e?.available?.data).map((t=>{b({...z,[t]:e?.available?.data[t]?.fields})})),e?.mine?.data&&e?.mine?.data?.forEach((e=>{if(g[e?.id]){let t={...g};delete t[e?.id],s(t)}b({...z,[e?.id]:e?.fields})}))})).catch((e=>{I(e?.message)})).then((()=>{d(!1)}))},E=e=>{h(e),c()({path:"fraktvalg/v1/settings/providers/store",method:"POST",data:{providerId:e,fieldValues:z[e]}}).then((()=>{h("")}))};return(0,a.useEffect)((()=>{f(),c()({path:"fraktvalg/v1/settings/providers/priority",method:"GET"}).then((e=>{u(e?.data?.providerId),T(e?.data?.discount),p(e?.data?.discountType)}))}),[]),N?(0,M.jsx)(C,{title:"My providers",children:(0,M.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,M.jsx)(o,{className:"h-8 w-8 animate-spin text-primary"}),(0,M.jsx)("div",{className:"text-lg",children:(0,n.__)("Fetching available providers...","fraktvalg")})]})}):(0,M.jsx)(C,{title:"My providers",children:(0,M.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[r&&(0,M.jsx)(D,{type:"error",title:"Error fetching providers",children:r}),Object.keys(i).map((g=>(0,M.jsx)(B,{isConnected:!0,title:i[g]?.name,supplierId:g,supplier:i[g],content:(0,M.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[y===g&&(0,M.jsxs)("div",{className:"absolute w-full h-full top-0 left-0 bg-white flex flex-col justify-center items-center gap-2",children:[(0,M.jsx)(o,{className:"h-6 w-6 animate-spin text-primary"}),(0,M.jsx)("span",{children:(0,n.__)("Saving provider settings, one moment please...","fraktvalg")})]}),(0,M.jsx)(k,{includeOptional:!0,provider:g,fields:i[g]?.fields||[],callback:v}),(0,M.jsxs)("div",{className:"flex flex-col md:flex-row justify-between gap-2",children:[(0,M.jsx)("div",{className:"flex flex-col md:flex-row justify-start gap-2",children:(0,M.jsxs)(O,{type:"button",className:"md:inline-block md:w-fit",onClick:()=>{e(i[g]),t("shipping-methods")},children:[(0,M.jsx)(X,{className:"w-4 h-4 mr-2 inline-block"}),(0,n.__)("Configure shipping methods","fraktvalg")]})}),(0,M.jsxs)("div",{className:"flex flex-col md:flex-row justify-end gap-2",children:[(0,M.jsx)(O,{className:"md:inline-block md:w-fit bg-red-600 hover:bg-red-500 active:bg-red-500 focus:bg-red-500",type:"button",onClick:()=>{return e=i[g],void(confirm((0,n.__)("Are you sure you want to disconnect this provider?","fraktvalg"))&&(h(e?.id),c()({path:"fraktvalg/v1/settings/providers/disconnect",method:"POST",data:{provider:e?.id}}).then((e=>{f()}))));var e},children:(0,n.__)("Disconnect provider","fraktvalg")}),(0,M.jsx)(O,{className:"md:inline-block md:w-fit",type:"button",onClick:()=>E(g),children:(0,n.__)("Update provider settings","fraktvalg")})]})]})]})},g))),(0,M.jsx)("hr",{className:"border-gray-200 my-2"}),Object.keys(g).map((e=>(0,M.jsx)(B,{title:g[e]?.name,supplierId:e,supplier:g[e],visible:!1,content:(0,M.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[y===e&&(0,M.jsxs)("div",{className:"absolute w-full h-full top-0 left-0 bg-white flex flex-col justify-center items-center gap-2",children:[(0,M.jsx)(o,{className:"h-6 w-6 animate-spin text-primary"}),(0,M.jsx)("span",{children:(0,n.__)("Connecting provider, one moment please...","fraktvalg")})]}),(0,M.jsx)(k,{provider:e,fields:g[e]?.fields||[],callback:v}),(0,M.jsx)(O,{type:"button",onClick:()=>E(e),children:(0,n.__)("Connect to this provider","fraktvalg")})]})},e))),(0,M.jsx)("div",{className:"bg-white rounded-lg shadow p-6 border-2 border-dashed border-gray-300",children:(0,M.jsxs)("div",{className:"flex flex-col items-center text-center",children:[(0,M.jsx)("div",{className:"w-16 h-16 bg-primary/10 rounded-full flex items-center justify-center mb-4",children:(0,M.jsx)(A,{className:"w-8 h-8 text-primary"})}),(0,M.jsx)("h2",{className:"text-xl font-semibold text-gray-900 mb-2",children:(0,n.__)("More providers are coming 🥳","fraktvalg")}),(0,M.jsx)("p",{className:"text-gray-600 mb-4",children:(0,n.__)("We are continually working to integrate more shipping providers to you you more opportunities.","fraktvalg")}),(0,M.jsxs)("div",{className:"space-y-2",children:[(0,M.jsx)("p",{className:"text-sm text-gray-600",children:(0,n.__)("Is there someone you would like to see here?","fraktvalg")}),(0,M.jsxs)("a",{href:"mailto:[email protected]",className:"inline-flex items-center text-custom hover:text-custom-dark font-medium",children:[(0,M.jsx)("span",{children:(0,n.__)("Send us an e-mail","fraktvalg")}),(0,M.jsx)(x,{className:"ml-1 w-4 h-4"})]})]})]})}),Object.keys(i).length>1&&(0,M.jsxs)("div",{className:"bg-white rounded-lg shadow p-6",children:[(0,M.jsx)("h2",{className:"text-xl font-semibold text-gray-900 mb-2",children:(0,n.__)("Preferred provider","fraktvalg")}),(0,M.jsx)("p",{className:"text-gray-600 mb-4",children:(0,n.__)("Choose which provider should always be the cheapest option in your store. This gives you the opportunity to prioritize one provider by making their prices more competitive.","fraktvalg")}),(0,M.jsxs)("div",{className:"grid grid-cols-1 gap-4",children:[(0,M.jsx)("p",{children:(0,n.__)("Price reduction for your preferred provider","fraktvalg")}),(0,M.jsxs)("div",{className:"flex items-center gap-3",children:[(0,M.jsx)("input",{value:m,onChange:e=>T(e.target.value),type:"number",min:"0",step:"1",placeholder:"10",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,M.jsxs)("select",{className:"border border-gray-300 rounded-md p-2",value:L,onChange:e=>p(e.target.value),children:[(0,M.jsx)("option",{value:"percent",children:"%"}),(0,M.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,M.jsx)("label",{htmlFor:"something",children:(0,n.__)("Determine how much cheaper your preferred provider should be compared to the cheapest competitor.","fraktvalg")})]}),(0,M.jsx)("div",{className:"flex gap-4",children:Object.keys(i).map((e=>(0,M.jsxs)("label",{className:"relative cursor-pointer grow flex flex-col gap-2 items-center border-2 border-gray-300 rounded-lg p-4 hover:border-primary peer-checked:border-primary transition-all duration-200",children:[(0,M.jsx)("input",{type:"radio",name:"preferred_provider",value:e,className:"sr-only peer",defaultChecked:j===e,onChange:()=>u(j===e?null:e)}),i[e]?.logo&&(0,M.jsx)(G,{logo:i[e]?.logo,className:"w-8 h-8"}),(0,M.jsx)("span",{className:"text-lg font-medium text-gray-900",children:i[e]?.name}),(0,M.jsx)("div",{className:"absolute top-2 right-2 hidden peer-checked:block",children:(0,M.jsx)(w,{className:"w-6 h-6 text-primary"})}),(0,M.jsx)("p",{className:"text-sm text-gray-5400 text-center",children:i[e]?.description}),(0,M.jsx)("p",{className:"text-xs text-primary font-medium peer-checked:block hidden",children:(0,n.__)("Currently chosen as your preferred provider","fraktvalg")})]},e)))}),(0,M.jsx)(O,{type:"button",onClick:()=>{c()({path:"fraktvalg/v1/settings/providers/priority/store",method:"POST",data:{priorityProvider:{providerId:j,discount:m,discountType:L}}})},children:(0,n.__)("Save preferred provider preferences","fraktvalg")})]})]})]})})}function F({title:e,children:t,open:g=!1}){const[s,i]=(0,a.useState)(g||!1);return(0,M.jsxs)("div",{className:"border bg-white rounded-md",children:[(0,M.jsxs)("button",{className:"w-full flex p-4 justify-between",onClick:()=>i(!s),children:[(0,M.jsx)("h2",{className:"text-lg text-left font-bold w-full",children:e}),(0,M.jsx)("div",{className:"relative inline-block",children:s?(0,M.jsx)(E,{className:"h-6 w-6 text-primary"}):(0,M.jsx)(Y,{className:"h-6 w-6 text-primary"})})]}),s&&(0,M.jsx)("div",{className:"p-4",children:t})]})}function P({}){const[e,t]=(0,a.useState)(null),[g,s]=(0,a.useState)({freight:{addedCost:0,addedCostType:"fixed",custom:{name:(0,n.__)("Shipping & handling","fraktvalg"),price:100,type:"fixed"}},useProduction:!0,names:[]}),[i,l]=(0,a.useState)(!0),r=e=>{switch(e.target.name){case"freight[addedCost]":s({...g,freight:{...g.freight,addedCost:e.target.value}});break;case"freight[addedCostType]":s({...g,freight:{...g.freight,addedCostType:e.target.value}});break;case"freight[custom][name]":s({...g,freight:{...g.freight,custom:{...g.freight.custom,name:e.target.value}}});break;case"freight[custom][price]":s({...g,freight:{...g.freight,custom:{...g.freight.custom,price:e.target.value}}});break;case"freight[custom][type]":s({...g,freight:{...g.freight,custom:{...g.freight.custom,type:e.target.value}}});break;case"useProduction":s({...g,useProduction:e.target.checked});break;default:s({...g,[e.target.name]:e.target.value})}};return(0,a.useEffect)((()=>{t(null),l(!0),c()({path:"/fraktvalg/v1/settings/optional-settings",method:"GET"}).then((e=>{s(e?.data||g),l(!1)})).catch((e=>{t({type:"error",title:(0,n.__)("Error fetching optional settings","fraktvalg"),message:e?.message}),l(!1)}))}),[]),i?(0,M.jsx)(C,{title:"My providers",children:(0,M.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,M.jsx)(o,{className:"h-8 w-8 animate-spin text-primary"}),(0,M.jsx)("div",{className:"text-lg",children:"Fetching optional settings..."})]})}):(0,M.jsx)(C,{title:"Optional settings",children:(0,M.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[(0,M.jsxs)(F,{title:(0,n.__)("Backup shipping option","fraktvalg"),open:!0,children:[(0,M.jsx)("p",{children:(0,n.__)("If Fraktvalg should ever become unavailable, create a shipping alternative that will be used instead.","fraktvalg")}),(0,M.jsxs)("div",{className:"mt-2 grid grid-cols-1 gap-4",children:[(0,M.jsx)(p,{label:(0,n.__)("Shipping option name","fraktvalg"),name:"freight[custom][name]",value:g.freight.custom.name,callback:r}),(0,M.jsxs)("div",{className:"flex items-center gap-3",children:[(0,M.jsx)("input",{name:"freight[custom][price]",value:g.freight.custom.price,onChange:r,type:"number",min:"0",step:"1",placeholder:"25",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,M.jsxs)("select",{name:"freight[custom][type]",className:"border border-gray-300 rounded-md p-2",value:g.freight.custom.type,onChange:r,children:[(0,M.jsx)("option",{value:"percent",children:"%"}),(0,M.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,M.jsxs)("div",{children:[(0,M.jsx)("label",{htmlFor:"something",children:(0,n.__)("Backup shipping cost","fraktvalg")}),(0,M.jsx)("p",{className:"text-xs italic",children:(0,n.__)("The backup shipping cost can be set to either a fixed value, or a percentage of the order total.","fraktvalg")})]})]})]})]}),(0,M.jsxs)(F,{title:(0,n.__)("Shipping cost adjustments","fraktvalg"),open:!0,children:[(0,n.__)("Safeguard your shipping costs with these optional alternatives.","fraktvalg"),(0,M.jsxs)("div",{className:"flex items-center gap-3",children:[(0,M.jsx)("input",{name:"freight[addedCost]",value:g.freight.addedCost,onChange:r,type:"number",min:"0",step:"1",placeholder:"10",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,M.jsxs)("select",{name:"freight[addedCostType]",className:"border border-gray-300 rounded-md p-2",value:g.freight.addedCostType,onChange:r,children:[(0,M.jsx)("option",{value:"percent",children:"%"}),(0,M.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,M.jsxs)("div",{children:[(0,M.jsx)("label",{htmlFor:"something",children:(0,n.__)("Add an optional surcharge to all shipping options","fraktvalg")}),(0,M.jsx)("p",{className:"text-xs italic",children:(0,n.__)("Additional shipping surcharges are meant to cover administrative- and handling costs, and is automatically added to all shipping alternatives.","fraktvalg")})]})]})]}),(0,M.jsxs)(F,{title:(0,n.__)("Shop environment","fraktvalg"),open:!0,children:[(0,M.jsx)("p",{children:(0,n.__)("Some times, you wish to use the shipping providers test environments, for example on a staging site. Doing so will not create legitimate shipping requests, and prevents yo ufrom incurring charges while testing your store setup.","fraktvalg")}),(0,M.jsx)("div",{className:"mt-2 grid grid-cols-1 gap-4",children:(0,M.jsx)(T,{label:(0,n.__)("Use production environments","fraktvalg"),name:"useProduction",value:g.useProduction,callback:r})})]}),e&&(0,M.jsx)(D,{type:e.type,title:e.title,children:e.message}),(0,M.jsx)(O,{type:"button",onClick:()=>{t(null),c()({path:"/fraktvalg/v1/settings/optional-settings",method:"POST",data:{options:g}}).then((e=>{t({type:e?.type,title:e?.title,message:e?.message})})).catch((e=>{t({type:"error",title:(0,n.__)("Error saving optional settings","fraktvalg"),message:e?.message})}))},children:(0,n.__)("Save optional settings","fraktvalg")})]})})}function W({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M19.449 8.448 16.388 11a4.52 4.52 0 0 1 0 2.002l3.061 2.55a8.275 8.275 0 0 0 0-7.103ZM15.552 19.45 13 16.388a4.52 4.52 0 0 1-2.002 0l-2.55 3.061a8.275 8.275 0 0 0 7.103 0ZM4.55 15.552 7.612 13a4.52 4.52 0 0 1 0-2.002L4.551 8.45a8.275 8.275 0 0 0 0 7.103ZM8.448 4.55 11 7.612a4.52 4.52 0 0 1 2.002 0l2.55-3.061a8.275 8.275 0 0 0-7.103 0Zm8.657-.86a9.776 9.776 0 0 1 1.79 1.415 9.776 9.776 0 0 1 1.414 1.788 9.764 9.764 0 0 1 0 10.211 9.777 9.777 0 0 1-1.415 1.79 9.777 9.777 0 0 1-1.788 1.414 9.764 9.764 0 0 1-10.212 0 9.776 9.776 0 0 1-1.788-1.415 9.776 9.776 0 0 1-1.415-1.788 9.764 9.764 0 0 1 0-10.212 9.774 9.774 0 0 1 1.415-1.788A9.774 9.774 0 0 1 6.894 3.69a9.764 9.764 0 0 1 10.211 0ZM14.121 9.88a2.985 2.985 0 0 0-1.11-.704 3.015 3.015 0 0 0-2.022 0 2.985 2.985 0 0 0-1.11.704c-.326.325-.56.705-.704 1.11a3.015 3.015 0 0 0 0 2.022c.144.405.378.785.704 1.11.325.326.705.56 1.11.704.652.233 1.37.233 2.022 0a2.985 2.985 0 0 0 1.11-.704c.326-.325.56-.705.704-1.11a3.016 3.016 0 0 0 0-2.022 2.985 2.985 0 0 0-.704-1.11Z",clipRule:"evenodd"}))}const J=a.forwardRef(W);function K({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{d:"M4.913 2.658c2.075-.27 4.19-.408 6.337-.408 2.147 0 4.262.139 6.337.408 1.922.25 3.291 1.861 3.405 3.727a4.403 4.403 0 0 0-1.032-.211 50.89 50.89 0 0 0-8.42 0c-2.358.196-4.04 2.19-4.04 4.434v4.286a4.47 4.47 0 0 0 2.433 3.984L7.28 21.53A.75.75 0 0 1 6 21v-4.03a48.527 48.527 0 0 1-1.087-.128C2.905 16.58 1.5 14.833 1.5 12.862V6.638c0-1.97 1.405-3.718 3.413-3.979Z"}),a.createElement("path",{d:"M15.75 7.5c-1.376 0-2.739.057-4.086.169C10.124 7.797 9 9.103 9 10.609v4.285c0 1.507 1.128 2.814 2.67 2.94 1.243.102 2.5.157 3.768.165l2.782 2.781a.75.75 0 0 0 1.28-.53v-2.39l.33-.026c1.542-.125 2.67-1.433 2.67-2.94v-4.286c0-1.505-1.125-2.811-2.664-2.94A49.392 49.392 0 0 0 15.75 7.5Z"}))}const _=a.forwardRef(K);function H({}){return(0,M.jsx)(C,{title:"Support",children:(0,M.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-5",children:[(0,M.jsxs)("div",{className:"grid grid-cols-1 gap-3 bg-tertiary/10 p-5 rounded-md",children:[(0,M.jsx)("h2",{className:"text-lg font-semibold",children:(0,n.__)("Fraktvalg support","fraktvalg")}),(0,M.jsx)("p",{className:"text-sm",children:(0,n.__)("For help with the Fraktvalg API, your subscription, or other questions, please contact us directly.","fraktvalg")}),(0,M.jsx)("div",{className:"justify-end align-bottom",children:(0,M.jsxs)(O,{href:"mailto:[email protected]",className:"inline-flex items-center gap-3",children:[(0,M.jsx)(J,{className:"w-4 h-4 inline-block"}),(0,n.__)("Contact Fraktvalg support","fraktvalg")]})})]}),(0,M.jsxs)("div",{className:"grid grid-cols-1 gap-3 bg-tertiary/10 p-5 rounded-md",children:[(0,M.jsx)("h2",{className:"text-lg font-semibold",children:(0,n.__)("Community support","fraktvalg")}),(0,M.jsx)("p",{className:"text-sm",children:(0,n.__)("If you are having trouble with WordPress, or using the plugin, please use the community support forums at WordPress.org.","fraktvalg")}),(0,M.jsx)("div",{className:"justify-end align-bottom",children:(0,M.jsxs)(O,{href:"https://wordpress.org/support/plugin/fraktvalg/",className:"inline-flex items-center gap-3",children:[(0,M.jsx)(_,{className:"w-4 h-4 inline-block"}),(0,n.__)("Visit the WordPress.org support forums","fraktvalg"),(0,M.jsx)("span",{className:"sr-only",children:(0,n.__)("External link, opens in a new tab","frakt")})]})})]})]})})}function V({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"}))}const q=a.forwardRef(V);function $({supplier:e,setTab:t}){const[g,s]=(0,a.useState)(!1),[i,l]=(0,a.useState)([]);return(0,a.useEffect)((()=>{s(!0),c()({path:"fraktvalg/v1/settings/providers/methods",method:"POST",data:{shipper_id:e.id}}).then((e=>{l(e),s(!1)}))}),[]),(0,M.jsxs)(C,{title:(0,M.jsxs)("div",{className:"flex justify-between",children:[(0,M.jsxs)("div",{className:"flex items-center gap-2",children:[e?.logo&&(0,M.jsx)("div",{children:(0,M.jsx)(G,{logo:e?.logo,alt:e?.name,className:"w-8 h-8 mr-2"})}),(0,M.jsx)("div",{className:"inline-flex items-center gap-4",children:(0,M.jsx)("span",{children:e?.name})})]}),(0,M.jsx)("div",{children:(0,M.jsxs)(O,{type:"button",onClick:()=>t("providers"),className:"text-sm",children:[(0,M.jsx)(q,{className:"h-4 w-4 mr-2 inline-block"}),(0,n.__)("Back to providers","fraktvalg")]})})]}),children:[g&&(0,M.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,M.jsx)(o,{className:"h-8 w-8 animate-spin text-primary"}),(0,M.jsx)("div",{className:"text-lg",children:(0,n.__)("Loading shipping methods...","fraktvalg")})]}),!g&&0===i.length&&(0,M.jsx)(D,{children:(0,n.__)("This provider does not offer any shipping methods that can be modified.","fraktvalg")}),!g&&i.length>0&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)("table",{className:"min-w-full divide-y divide-gray-200",children:[(0,M.jsx)("thead",{className:"bg-gray-50",children:(0,M.jsxs)("tr",{children:[(0,M.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:(0,n.__)("Active","fraktvalg")}),(0,M.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:(0,n.__)("Name","fraktvalg")}),(0,M.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:(0,n.__)("Price","fraktvalg")})]})}),(0,M.jsx)("tbody",{className:"bg-white divide-y divide-gray-200",children:i.map(((e,t)=>(0,M.jsxs)("tr",{children:[(0,M.jsx)("td",{className:"px-6 py-4 whitespace-nowrap text-sm text-gray-500",children:(0,M.jsxs)("label",{children:[(0,M.jsx)("input",{type:"checkbox",checked:e.active,onChange:()=>{const e=[...i];e[t].active=!e[t].active,l(e)}}),(0,M.jsx)("span",{className:"ml",children:(0,n.__)("Active","fraktvalg")})]})}),(0,M.jsx)("td",{className:"px-6 py-4 whitespace-nowrap text-sm font-medium text-gray-900",children:(0,M.jsxs)("div",{className:"flex flex-col",children:[(0,M.jsx)("small",{className:"text-gray-500",children:e.originalName}),(0,M.jsx)("input",{type:"text",value:e.name,onChange:e=>{const g=[...i];g[t].name=e.target.value,l(g)},className:"border border-gray-300 rounded-md p-2"})]})}),(0,M.jsx)("td",{className:"px-6 py-4 whitespace-nowrap text-sm text-right text-gray-500",children:(0,M.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,M.jsxs)("label",{children:[(0,M.jsx)("span",{className:"mr-2",children:(0,n.__)("Set a fixed price for this shipping method","fraktvalg")}),(0,M.jsx)("input",{type:"checkbox",checked:e.canEditPrice,onChange:()=>{const e=[...i];e[t].canEditPrice=!e[t].canEditPrice,l(e)}})]}),(0,M.jsx)("input",{type:"number",value:e.price||"",disabled:!e.canEditPrice,onChange:e=>{const g=[...i];g[t].price=e.target.value,l(g)},className:"border border-gray-300 rounded-md p-2"})]})})]},e.id)))})]}),(0,M.jsx)(O,{type:"button",onClick:()=>{c()({path:"fraktvalg/v1/settings/providers/methods/store",method:"POST",data:{shipper_id:e.id,fields:i}}).then((e=>{console.log(e)}))},className:"mt-4",children:(0,n.__)("Save","fraktvalg")})]})]})}function ee({}){const[e,t]=(0,a.useState)("providers"),[g,s]=(0,a.useState)(null);return(0,M.jsxs)("div",{className:"min-h-full",children:[(0,M.jsx)(r,{tabs:[{label:"My providers",value:"providers"},{label:"Optional settings",value:"settings"},{label:"Support",value:"support"}],activeTab:e,setTab:t}),"providers"===e&&(0,M.jsx)(R,{setProvider:s,setTab:t}),"shipping-methods"===e&&(0,M.jsx)($,{supplier:g,setTab:t}),"settings"===e&&(0,M.jsx)(P,{}),"support"===e&&(0,M.jsx)(H,{})]})}const te=document.getElementById("fraktvalg-settings");te&&(0,s.H)(te).render((0,M.jsx)(ee,{}))})();
     1(()=>{"use strict";var e={338:(e,t,a)=>{var g=a(795);t.H=g.createRoot,g.hydrateRoot},20:(e,t,a)=>{var g=a(609),i=Symbol.for("react.element"),s=Symbol.for("react.fragment"),l=Object.prototype.hasOwnProperty,r=g.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,M={key:!0,ref:!0,__self:!0,__source:!0};function I(e,t,a){var g,s={},I=null,c=null;for(g in void 0!==a&&(I=""+a),void 0!==t.key&&(I=""+t.key),void 0!==t.ref&&(c=t.ref),t)l.call(t,g)&&!M.hasOwnProperty(g)&&(s[g]=t[g]);if(e&&e.defaultProps)for(g in t=e.defaultProps)void 0===s[g]&&(s[g]=t[g]);return{$$typeof:i,type:e,key:I,ref:c,props:s,_owner:r.current}}t.Fragment=s,t.jsx=I,t.jsxs=I},848:(e,t,a)=>{e.exports=a(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},t={};function a(g){var i=t[g];if(void 0!==i)return i.exports;var s=t[g]={exports:{}};return e[g](s,s.exports,a),s.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var g in t)a.o(t,g)&&!a.o(e,g)&&Object.defineProperty(e,g,{enumerable:!0,get:t[g]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var g=a(609),i=a(338);function s(e){var t,a,g="";if("string"==typeof e||"number"==typeof e)g+=e;else if("object"==typeof e)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(a=s(e[t]))&&(g&&(g+=" "),g+=a)}else for(a in e)e[a]&&(g&&(g+=" "),g+=a);return g}function l(){for(var e,t,a=0,g="",i=arguments.length;a<i;a++)(e=arguments[a])&&(t=s(e))&&(g&&(g+=" "),g+=t);return g}var r=a(848);function M({tabs:e,activeTab:t,setTab:a}){return(0,r.jsx)("div",{className:"border-b border-gray-200 bg-white",children:(0,r.jsx)("div",{className:"mx-auto max-w-7xl px-4 sm:px-6 lg:px-8",children:(0,r.jsx)("nav",{children:(0,r.jsx)("div",{className:"flex h-16 justify-between",children:(0,r.jsxs)("div",{className:"flex",children:[(0,r.jsx)("div",{className:"flex shrink-0 items-center",children:(0,r.jsx)("img",{className:"block h-8 w-auto",src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMzUwIgogICBoZWlnaHQ9Ijk2LjI3NzM1OSIKICAgdmlld0JveD0iMCAwIDkyLjYwNDE1NiAyNS40NzMzODEiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzEiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTI1Mi4zNDE1NiwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTAzIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMjgwLjk3OTcxLC03OS41OTE4MDIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTAzIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMDUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zMDAuNTQ2MzgsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMDUiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwNyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTMzMi42ODExOCwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwNyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTA5Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMzYzLjIyNDYzLC03MS4yMTg3NTIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTA5IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTEiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zODIuODQ4MTYsLTc5Ljc0OTk5OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTEiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExMyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTQxMi41OTQ3NCwtNzguODk2NDg0KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExMyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTE1Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTIzMS42MzE5LC00OTYuNzEwOTYpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTE1IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTciPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC00NTUuNjIxMzQsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTciIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExOSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY5OC42ODA4OSwtNTc1LjAyNzM2KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExOSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTIxIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTgwLjY3NDc4LC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTIxIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjMiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC03NTEuMTA3NDcsLTUyMi4yOTEwNCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjMiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEyNSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY3Mi4wMDIxOSwtNDk1LjkyMTg5KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEyNSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTI3Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTY3LjQ4MjQzLC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTI3IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjkiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC02NDUuOTQyMTcsLTQ5NS45MjE4OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjkiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEzMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTEzNS4xOTA5NSwtNDIuMDk5NjExKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEzMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgogIDxnCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA4MDY4NDUsLTAuMzc3MjQwNDgpIj4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwMCIKICAgICAgIGQ9Im0gNTkxLjI2NjYsNTExLjczOTE3IHYgLTgyLjgxNTMxIGggNDkuODYxNDUgdiAxMy44NTgxNSBoIC0zNi4wMDA0OSB2IDIwLjY0Njc5IGggMzYuMDAwNDkgdiAxMy44MDI2MSBoIC0zNi4wMDA0OSB2IDM0LjUwNzc2IHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTQ2LjU0ODIyNiwtNDguNTk4OTE1KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDEwMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMDIiCiAgICAgICBkPSJtIDYyMC41NDE5OSw1MDEuNjU5MTUgdiAtNjIuMTEyNDkgaCAxMi4yNTEyMiB2IDE1LjEyNTYxIGwgLTEuNDk5NTEsLTEuOTU0NTMgYyAwLjc3MTYxLC0yLjA3MTIzIDEuNzk0MTksLTMuOTU4NDkgMy4wODAyLC01LjY2MzY5IDEuMjg1ODksLTEuNzA1MjYgMi44MjY5MSwtMy4xMTc2OCA0LjYyOTAzLC00LjIyOTQzIDEuNTM1MTYsLTEuMDM0NjEgMy4yMjgzOSwtMS44NDk2NyA1LjA4OTk3LC0yLjQ0MzEyIDEuODU5NjEsLTAuNTkxNDkgMy43Njg1NSwtMC45NTc0NiA1LjcyNDk3LC0xLjA5MTk4IDEuOTU0NTksLTAuMTM0NTIgMy44NDk3MywtMC4wNDk0IDUuNjg5NDUsMC4yNTcxNCB2IDEyLjk0MTU5IGMgLTEuODM5NzIsLTAuNTM4MDkgLTMuOTU2NTQsLTAuNzEwMiAtNi4zNTIxNywtMC41MTgzMSAtMi4zOTk0MSwwLjE5IC00LjU1MzgzLDAuODYyNTUgLTYuNDcwODIsMi4wMTM4NiAtMS45MTY3NSwxLjAzMjcxIC0zLjQ3OTYyLDIuMzU2MDcgLTQuNjg2MjgsMy45NjYzIC0xLjIwODc0LDEuNjEyMzEgLTIuMTAyOTEsMy40NDQyMiAtMi42NzQ2OSw1LjQ5NTU1IC0wLjU3NTU2LDIuMDQ5NTYgLTAuODY0MzgsNC4yNjMxOCAtMC44NjQzOCw2LjYzODk4IHYgMzEuNTc0NTIgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNDIuNzkyODYzLC00Ny4yNzcxMDEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTAzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwNCIKICAgICAgIGQ9Im0gNjYxLjM2Mjc5LDUwNC4wODE0OCBjIC00LjQ4NjU3LDAgLTguMjgyODMsLTAuODU0NjEgLTExLjM5MDUsLTIuNTU5ODEgLTMuMTAxOTMsLTEuNzA1MiAtNS40NTQxLC0zLjk3ODIxIC03LjA0MjYsLTYuODE1IC0xLjU5MjQxLC0yLjgzNjc0IC0yLjM4NTc0LC01Ljk2MjQxIC0yLjM4NTc0LC05LjM3NDg4IDAsLTIuOTkwOTcgMC40OTY1OCwtNS42ODM0MSAxLjQ5MTU3LC04LjA4MTA2IDAuOTk5MDMsLTIuMzk1NjMgMi41MzQxOCwtNC40NjQ4NCA0LjYwMTU2LC02LjIxMTYxIDIuMDczLC0xLjc0Mjg2IDQuNzU1NSwtMy4xNjkxMiA4LjA1MzIzLC00LjI4Mjg5IDIuNDkyNTUsLTAuODA1MTIgNS40MTYzOCwtMS41MzMwOSA4Ljc2OTQxLC0yLjE4Mzk2IDMuMzU3MTcsLTAuNjUwODIgNi45OTkxNCwtMS4yNTYxNyAxMC45Mjc4NSwtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQzNTgsLTEuMTU3MjkgMTIuMzM2MzEsLTEuODEyMDEgbCAtNC45NDU2OCwyLjgxODkxIGMgMC4wMzc2LC00LjI5MjczIC0wLjkxOTkyLC03LjQ1Nzg5IC0yLjg3NDI3LC05LjQ4OTU3IC0xLjk1NDU5LC0yLjAzMTY3IC01LjI1MjIsLTMuMDQ4NDYgLTkuODkzMTksLTMuMDQ4NDYgLTIuNzk5MTksMCAtNS41MDE0NiwwLjY1MjgzIC04LjExMDg0LDEuOTU0NTMgLTIuNjA3MTgsMS4zMDU2IC00LjQyNzI0LDMuNTQ4OTUgLTUuNDYxNzksNi43MzE4NyBsIC0xMi42NTA4OCwtMy45NzAyNyBjIDEuNTMzMiwtNS4yNTIyIDQuNDU1MDgsLTkuNDY3NzggOC43Njk1MywtMTIuNjUyNzcgNC4zMTA1NSwtMy4xODA5NyAxMC4xMzA2MiwtNC43NzM0NCAxNy40NTM5OCwtNC43NzM0NCA1LjUyMTI0LDAgMTAuMzgxODQsMC45MDAwMiAxNC41Nzk1OSwyLjcwMjIxIDQuMTk3NzYsMS44MDIxOCA3LjMxMzQ4LDQuNzU1NjEgOS4zNDUyMiw4Ljg1ODUyIDEuMTExNjksMi4xODM5NiAxLjc4NDE4LDQuNDE5MzcgMi4wMTE3Miw2LjcwMDI2IDAuMjMxNTYsMi4yODA5NCAwLjM0ODI2LDQuNzY1NjIgMC4zNDgyNiw3LjQ0NjEgdiAzOC4xMzAzNyBIIDY4My4xNTcxIHYgLTEzLjQ1Nzg4IGwgMi4wMTM5MiwyLjE4Nzg2IGMgLTIuNzk5MzIsNC40ODQ2OCAtNi4wNjU0Myw3Ljc3MjU5IC05LjgwNDIsOS44NjE1NyAtMy43Mzg3NywyLjA4ODkzIC04LjQwNzU5LDMuMTM1NDQgLTE0LjAwNDAzLDMuMTM1NDQgbSAyLjc1OTc3LC0xMS4wNDI0OCBjIDMuMTQzNDMsMCA1LjgyNzg4LC0wLjU1NTg1IDguMDUxNTEsLTEuNjY3NiAyLjIyMzM5LC0xLjExMzgzIDMuOTk1ODUsLTIuNDc0NzkgNS4zMTkyMiwtNC4wODUwOCAxLjMyMzQ4LC0xLjYwODM0IDIuMjEzNzQsLTMuMTI1NjEgMi42NzY2MywtNC41NDIgMC43MjYwOCwtMS43NjQ1OCAxLjEzNzU4LC0zLjc4NjMxIDEuMjM0MzgsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2NDgsLTQuMTMwNjEgMC4xNDY0OCwtNS41NTA5IGwgNC4yNTMwNSwxLjI2NTk5IGMgLTQuMTc3OTgsMC42NTA5NCAtNy43NjQ1MiwxLjIyNjU2IC0xMC43NTM1NCwxLjcyNzExIC0yLjk5MTIxLDAuNDk2NTIgLTUuNTYwNzksMC45NjU0IC03LjcwNzI3LDEuNDA2NSAtMi4xNDgzMiwwLjQ0MTEgLTQuMDQzNDYsMC45Mjk3NSAtNS42OTMyNCwxLjQ2NzgzIC0xLjYxMDM1LDAuNTczNjcgLTIuOTcxNDQsMS4yNDYyOCAtNC4wODUwOCwyLjAxMTg0IC0xLjExMTcsMC43Njc2NCAtMS45NjI0MSwxLjY0OTg0IC0yLjU1Nzg2LDIuNjQ2OTEgLTAuNTk3NDIsMC45OTUgLTAuODkyMjIsMi4xNjQxMyAtMC44OTIyMiwzLjUwNzMzIDAsMS41MzUxNSAwLjM4Mzc5LDIuODg0MjggMS4xNTEzNyw0LjA1NTQyIDAuNzY3NTgsMS4xNjkxMyAxLjg4NzIxLDIuMDk2OTIgMy4zNjQ5OSwyLjc4NzM1IDEuNDc1NzEsMC42OTIzMiAzLjMwNzYyLDEuMDM2NTYgNS40OTE1OCwxLjAzNjU2IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC00MC4yMjcwNTQsLTQ3LjM2ODI3OSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMDUpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTA2IgogICAgICAgZD0ibSA2NzMuMzkzOTIsNTExLjczOTE3IDAuMTE0MDEsLTgyLjgxNTMxIGggMTQuMDM2MjYgdiA1MC42MDk0MyBsIDIyLjcxNDk3LC0yOS45MDcwNCBoIDE3LjMxMDkxIGwgLTI0LjA5NjgsMzEuMDU3ODYgMjYuMTY3OTcsMzEuMDU1MDYgaCAtMTguMzQ3OTEgbCAtMjMuNzQ5MTQsLTI5LjkwNjk5IHYgMjkuOTA2OTkgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtMzYuMDEzMTY5LC00OC41OTg5MTUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA3KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwOCIKICAgICAgIGQ9Im0gNzA5LjQ0OTg5LDQ0Ny45MjAxNCBoIDI3LjIwMjUxIHYgMTAuODcwNDIgaCAtMjcuMjAyNTEgeiBtIDI3LjIwMjUxLDYyLjExMjQ4IGMgLTQuMTA0NzMsMC43NjU2OSAtOC4xMTg1MywxLjEwMTg3IC0xMi4wNDkzMSwxLjAwODk4IC0zLjkyODgzLC0wLjEwMDk2IC03LjQ1MDA3LC0wLjgyNzAzIC0xMC41NTE4OCwtMi4xODc5OSAtMy4xMDc3OSwtMS4zNTkwMSAtNS40NjU5NCwtMy41MTczNCAtNy4wNzQyMiwtNi40NzA3NyAtMS40MjAyOSwtMi42ODI1NSAtMi4xNjgwOSwtNS40MjIzNiAtMi4yNDMyOSwtOC4yMjM1NyAtMC4wNzkyLC0yLjc5OTEzIC0wLjExNjgyLC01Ljk1ODM3IC0wLjExNjgyLC05LjQ4NzU1IFYgNDMwLjY2OCBoIDEzLjgwMjM3IHYgNTMuMTk2NTkgYyAwLDIuNDkyNTYgMC4wMjk3LDQuNjgwNTUgMC4wODY5LDYuNTU3ODYgMC4wNTk2LDEuODc5MzQgMC40NDkxLDMuNDEyNDggMS4xODA5MSw0LjYwMTM4IDEuMzc4OTEsMi4yOTg3MSAzLjU4MjY0LDMuNTg0NDggNi42MTM0MSwzLjg1MzU4IDMuMDI4NTYsMC4yNjUwOCA2LjQ3ODc2LDAuMTEyNzMgMTAuMzUxOTIsLTAuNDYwOTQgdiAxMS42MTYxNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC0zMi4wMDc5NiwtNDguMzc1MDcpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA5KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExMCIKICAgICAgIGQ9Im0gNzQ3LjIyMDAzLDUwMS41MDE5MiAtMjIuNTQyODQsLTYyLjExMjkxIGggMTMuODYxMDggbCAxNS42NDI4Miw0NS4wMzI4MyAxNS41ODQ2LC00NS4wMzI4MyBoIDEzLjkxNjI2IGwgLTIyLjU0MjQ4LDYyLjExMjkxIHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI5LjQzNDY5OSwtNDcuMjU2MzU2KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTIiCiAgICAgICBkPSJtIDc3NS45MDY5Miw1MDQuMDgxNDggYyAtNC40ODg2NSwwIC04LjI4Mjg0LC0wLjg1NDYxIC0xMS4zODg3OSwtMi41NTk4MSAtMy4xMDM3NiwtMS43MDUyIC01LjQ1NTgxLC0zLjk3ODIxIC03LjA0NDMxLC02LjgxNSAtMS41OTI1MywtMi44MzY3NCAtMi4zODc4MiwtNS45NjI0MSAtMi4zODc4MiwtOS4zNzQ4OCAwLC0yLjk5MDk3IDAuNDk2NDYsLTUuNjgzNDEgMS40OTM1MywtOC4wODEwNiAwLjk5OTAyLC0yLjM5NTYzIDIuNTMyMSwtNC40NjQ4NCA0LjYwMzM5LC02LjIxMTYxIDIuMDcxMjksLTEuNzQyODYgNC43NTM2NiwtMy4xNjkxMiA4LjA1MTM5LC00LjI4Mjg5IDIuNDkwNiwtMC44MDUxMiA1LjQxNjM5LC0xLjUzMzA5IDguNzY5NTQsLTIuMTgzOTYgMy4zNTUxLC0wLjY1MDgyIDYuOTk4OSwtMS4yNTYxNyAxMC45Mjc3MywtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQxNSwtMS4xNTcyOSAxMi4zMzYzLC0xLjgxMjAxIGwgLTQuOTQ1NjgsMi44MTg5MSBjIDAuMDM3NiwtNC4yOTI3MyAtMC45MTk4LC03LjQ1Nzg5IC0yLjg3NDM5LC05LjQ4OTU3IC0xLjk1NDQ2LC0yLjAzMTY3IC01LjI1MjE5LC0zLjA0ODQ2IC05Ljg5NTAxLC0zLjA0ODQ2IC0yLjc5NzI1LDAgLTUuNDk5NjQsMC42NTI4MyAtOC4xMDg3NywxLjk1NDUzIC0yLjYwNzQyLDEuMzA1NiAtNC40MjczNywzLjU0ODk1IC01LjQ2MTkxLDYuNzMxODcgbCAtMTIuNjUyODQsLTMuOTcwMjcgYyAxLjUzNTE2LC01LjI1MjIgNC40NTQ5NiwtOS40Njc3OCA4Ljc2OTU0LC0xMi42NTI3NyA0LjMxMjYyLC0zLjE4MDk3IDEwLjEzMDQ5LC00Ljc3MzQ0IDE3LjQ1Mzk4LC00Ljc3MzQ0IDUuNTIxMjQsMCAxMC4zODE3MSwwLjkwMDAyIDE0LjU3OTU5LDIuNzAyMjEgNC4xOTc3NSwxLjgwMjE4IDcuMzE1NDIsNC43NTU2MSA5LjM0NTA5LDguODU4NTIgMS4xMTM3NywyLjE4Mzk2IDEuNzg2MzcsNC40MTkzNyAyLjAxMzkxLDYuNzAwMjYgMC4yMjkzNywyLjI4MDk0IDAuMzQ2Miw0Ljc2NTYyIDAuMzQ2Miw3LjQ0NjEgdiAzOC4xMzAzNyBoIC0xMi4xMzY0OCB2IC0xMy40NTc4OCBsIDIuMDExODQsMi4xODc4NiBjIC0yLjc5NzI0LDQuNDg0NjggLTYuMDYzMjMsNy43NzI1OSAtOS44MDIyNCw5Ljg2MTU3IC0zLjc0MDczLDIuMDg4OTMgLTguNDA3NDgsMy4xMzU0NCAtMTQuMDAzNzksMy4xMzU0NCBtIDIuNzU5NTIsLTExLjA0MjQ4IGMgMy4xNDM0NCwwIDUuODI4MDEsLTAuNTU1ODUgOC4wNTEzOSwtMS42Njc2IDIuMjIxNTYsLTEuMTEzODMgMy45OTYyMiwtMi40NzQ3OSA1LjMxOTU4LC00LjA4NTA4IDEuMzIzNDksLTEuNjA4MzQgMi4yMTM2MywtMy4xMjU2MSAyLjY3NDU3LC00LjU0MiAwLjcyNzksLTEuNzY0NTggMS4xMzk0LC0zLjc4NjMxIDEuMjM2NDUsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2MzYsLTQuMTMwNjEgMC4xNDYzNiwtNS41NTA5IGwgNC4yNTMxNywxLjI2NTk5IGMgLTQuMTc4MSwwLjY1MDk0IC03Ljc2NDUyLDEuMjI2NTYgLTEwLjc1MzY2LDEuNzI3MTEgLTIuOTkxMDksMC40OTY1MiAtNS41NjA5MSwwLjk2NTQgLTcuNzA5MjMsMS40MDY1IC0yLjE0NjM2LDAuNDQxMSAtNC4wNDE1LDAuOTI5NzUgLTUuNjkzMjQsMS40Njc4MyAtMS42MDgyNywwLjU3MzY3IC0yLjk3MTQzLDEuMjQ2MjggLTQuMDgzMTMsMi4wMTE4NCAtMS4xMDk4NiwwLjc2NzY0IC0xLjk2MjUyLDEuNjQ5ODQgLTIuNTU5OTMsMi42NDY5MSAtMC41OTUzNCwwLjk5NSAtMC44OTAwMiwyLjE2NDEzIC0wLjg5MDAyLDMuNTA3MzMgMCwxLjUzNTE1IDAuMzgxNzIsMi44ODQyOCAxLjE1MTI1LDQuMDU1NDIgMC43Njc0NSwxLjE2OTEzIDEuODg3MDgsMi4wOTY5MiAzLjM2NDg3LDIuNzg3MzUgMS40NzU4MywwLjY5MjMyIDMuMzA1NzgsMS4wMzY1NiA1LjQ5MTU3LDEuMDM2NTYiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI1LjUzMzk4NiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTQiCiAgICAgICBkPSJNIDAsMCBIIDEzLjg2MDk2IFYgODQuNTQxNzQ4IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDgxLjg2NzU4Myw3LjQyMDM1NzYpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTE1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExNiIKICAgICAgIGQ9Im0gODI3LjQyNTksNTA0LjA3OTUzIGMgLTUuNzE0OTYsMCAtMTAuNzAwMzEsLTEuNDM4MTcgLTE0Ljk1MzQ5LC00LjMxMjU2IC00LjI1NzA4LC0yLjg3NDMzIC03LjU1NDgxLC02Ljc4NTI4IC05Ljg5MTExLC0xMS43MzA4NCAtMi4zNDAyMSwtNC45NDk2NCAtMy41MTEyMywtMTAuNTI0MjkgLTMuNTExMjMsLTE2LjczNzg1IDAsLTYuMjg2ODcgMS4xNzg5NSwtMTEuODk1MDggMy41MzkwNiwtMTYuODIwOTIgMi4zNTU5NiwtNC45Mjc4IDUuNzAzMTMsLTguODE4OTEgMTAuMDM1NCwtMTEuNjc1NDggNC4zMzI0LC0yLjg1NDY4IDkuNDMyMjUsLTQuMjg0ODUgMTUuMjk3NzMsLTQuMjg0ODUgNS45MDI5NSwwIDEwLjg1ODUyLDEuNDMwMTcgMTQuODY2MzMsNC4yODQ4NSA0LjAwNDAzLDIuODU2NTcgNy4wNDQ2OCw2Ljc1NTYyIDkuMTE1NzMsMTEuNzA1MTQgMi4wNjkyMSw0Ljk0NTYyIDMuMTA1ODMsMTAuNTQxOTkgMy4xMDU4MywxNi43OTEyNiAwLDYuMTc0MDcgLTEuMDM2NjIsMTEuNzQyNzQgLTMuMTA1ODMsMTYuNzA4MTMgLTIuMDcxMDUsNC45NjMzOCAtNS4xNTcxMSw4Ljg4NjIzIC05LjI2MDE0LDExLjc2MDU2IC00LjEwMDgzLDIuODc0MzkgLTkuMTgyODYsNC4zMTI1NiAtMTUuMjM4MjgsNC4zMTI1NiBtIDEuMjA0NzIsMjcuNjA4MTUgYyAtMy40NDgsMCAtNi43NTU1LC0wLjUzODA4IC05LjkxODgzLC0xLjYxMjI0IC0zLjE2MzA4LC0xLjA3MjE0IC02LjAxMTcyLC0yLjYxNTIzIC04LjU0MTg3LC00LjYyOTAzIC0yLjUzMDI3LC0yLjAxMzkxIC00LjYwMTU2LC00LjQzOTE1IC02LjIwOTcxLC03LjI3NTg4IGwgMTIuNzY1MzgsLTYuMzI2NDcgYyAxLjE4ODk2LDIuMjYzMTIgMi44Njg1MywzLjk0MDY3IDUuMDMyNzEsNS4wMzI2NSAyLjE2ODIxLDEuMDkxOTggNC40Nzg2NCwxLjYzOCA2LjkzMTc2LDEuNjM4IDIuODc0MjcsMCA1LjQ0MjE0LC0wLjUwODQyIDcuNzA1MDgsLTEuNTIzMjUgMi4yNjEyMywtMS4wMTQ5IDQuMDE3ODIsLTIuNTEyNDYgNS4yNjIyMSwtNC40ODQ2OSAxLjI0NDI2LC0xLjk3ODI3IDEuODMxNzksLTQuNDM3MTMgMS43NTQ2NCwtNy4zOTA2MiB2IC0xNy42NTU3NiBoIDEuNzI2OTMgViA0NDAuMjQyIGggMTIuMTMyNjkgdiA2NS4xMDE2MyBjIDAsMS41NzQ2NCAtMC4wNjc1LDMuMDgwMTQgLTAuMTk5ODMsNC41MTYyOSAtMC4xMzQ1MiwxLjQzODE4IC0wLjM1NjA4LDIuODQ4NjQgLTAuNjYyODQsNC4yMjc0MiAtMC45MTk4LDQuMDI1NzYgLTIuNjgyMzgsNy4zMzEzNiAtNS4yODk4LDkuOTIwOSAtMi42MDkxMywyLjU4NzUyIC01LjgzNzY1LDQuNTE0MzQgLTkuNjg5MzMsNS43ODA0IC0zLjg1NTU5LDEuMjY0MDkgLTguMTE4NTMsMS44OTkwNCAtMTIuNzk5MTksMS44OTkwNCBtIDAuOTIxODcsLTQwLjAyOTQ4IGMgMy43MTcxNiwwIDYuNzE4MTQsLTAuODUyNTQgOS4wMDMwNSwtMi41NTk4MSAyLjI3Njk4LC0xLjcwNTIgMy45NDY1NCwtNC4wOTA5NCA1LjAwMDg2LC03LjE1OTE4IDEuMDU0NDQsLTMuMDY2MjkgMS41ODI1MiwtNi42MTMyOCAxLjU4MjUyLC0xMC42NDA5MyAwLC00LjA2MzI5IC0wLjUyODA4LC03LjYxODE3IC0xLjU4MjUyLC0xMC42Njg2NCAtMS4wNTQzMiwtMy4wNDY0NSAtMi42OTQzNCwtNS40MjQzMiAtNC45MTU3NywtNy4xMzE0NyAtMi4yMjc1NCwtMS43MDUyNiAtNS4xMDE5MywtMi41NTc4NiAtOC42MjcyLC0yLjU1Nzg2IC0zLjcyMTA3LDAgLTYuNzg5MTksMC45MTE5OCAtOS4yMDI3NiwyLjcyOTk4IC0yLjQxNTQxLDEuODIzOTEgLTQuMTk5NzEsNC4yNzY4NSAtNS4zNDcwNSw3LjM2MjkxIC0xLjE1MTM2LDMuMDg2MDYgLTEuNzI3MDUsNi41MDg0MyAtMS43MjcwNSwxMC4yNjUwOCAwLDMuNzk2MTQgMC41Njc3NSw3LjIzODM0IDEuNjk3MjcsMTAuMzIyMzkgMS4xMjk2NCwzLjA4ODA3IDIuODY2NTgsNS41MzMwOCA1LjIwMjc2LDcuMzMzMzEgMi4zNDAzMywxLjgwNDA4IDUuMzA5NjksMi43MDQyMiA4LjkxNTg5LDIuNzA0MjIiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTE5Ljg5MTg0MiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExNykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTgiCiAgICAgICBkPSJNIDAsMCBIIDM2LjU5MDYzMyBWIDEwLjIyNDExMiBIIDAgWiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwxMS45ODA5MjIsMTcuNjkwMTA3KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExOSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMjAiCiAgICAgICBkPSJNIDU0OS40ODQ2Miw0NzcuNTcyMzYgSCA1MTguMDA1IHYgLTEwLjIyMzUxIGggMjYuMzY3NjggViA0NDAuOTgzIGggMTAuMjIzNjMgdiAzMS40Nzc2IGMgMCwyLjgyNDk1IC0yLjI5MDc3LDUuMTExNzYgLTUuMTExNjksNS4xMTE3NiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNTUuOTQ1OTk3LC00Ny4wNTE5NzUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIxKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyMiIKICAgICAgIGQ9Ik0gMCwwIEggMTAuMjI0MTEyIFYgNjIuOTYwMTA2IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDE4Ljg1NTY5NywxMC43NzQ3MTEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNCIKICAgICAgIGQ9Ik0gMCwwIEggMzYuNTkzNDg3IFYgMTAuMjI0MTEyIEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDguNDgyNTAzMyw3LjMxNjg4NDgpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTI1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNiIKICAgICAgIGQ9Ik0gNTE0Ljc0NDM4LDQ3Ny41NzIzNiBIIDUwNC41MTkwMSBWIDQ0Ni4wOTQ3IGMgMCwtMi44MjI4MiAyLjI5MDgzLC01LjExMTcgNS4xMTE3NiwtNS4xMTE3IGggMzEuNDgxNjYgdiAxMC4yMjM1MSBoIC0yNi4zNjgwNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC01Ny42NzU5MzEsLTQ3LjA1MTk3NSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjcpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTI4IgogICAgICAgZD0iTSAwLDAgSCAxMC4yMjQxMTIgViA2Mi45NjAxMDYgSCAwIFoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsNS4wNjUyMTQ4LDcuMzE2ODg0OCkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjkpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTMwIgogICAgICAgZD0ibSA1NjguNjM4MTIsNTk1LjE1OTMgYyAtNTMuNTU2NTIsMCAtOTcuMTI5MTUsLTQzLjU3MjUxIC05Ny4xMjkxNSwtOTcuMTI5MTUgMCwtNTMuNTU2NyA0My41NzI2MywtOTcuMTI5MTUgOTcuMTI5MTUsLTk3LjEyOTE1IDUzLjU1Njc3LDAgOTcuMTI5MTUsNDMuNTcyNDUgOTcuMTI5MTUsOTcuMTI5MTUgMCw1My41NTY2NCAtNDMuNTcyMzgsOTcuMTI5MTUgLTk3LjEyOTE1LDk3LjEyOTE1IG0gMCwtMTg0LjAzNDc5IGMgLTQ3LjkxODUyLDAgLTg2LjkwMzU2LDM4Ljk4Njk0IC04Ni45MDM1Niw4Ni45MDU2NCAwLDQ3LjkyMjYxIDM4Ljk4NTA0LDg2LjkwNTY0IDg2LjkwMzU2LDg2LjkwNTY0IDQ3LjkxODgzLDAgODYuOTA1NzYsLTM4Ljk4MzAzIDg2LjkwNTc2LC04Ni45MDU2NCAwLC00Ny45MTg3IC0zOC45ODY5MywtODYuOTA1NjQgLTg2LjkwNTc2LC04Ni45MDU2NCIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNjEuOTEwMzYzLC01Mi4xOTM1MDkpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTMxKSIgLz4KICA8L2c+Cjwvc3ZnPgo=",alt:""})}),(0,r.jsx)("div",{className:"hidden sm:-my-px sm:ml-6 sm:flex sm:space-x-8",children:e.map((e=>(0,r.jsx)("button",{type:"button",className:l("border-transparent text-gray-500 hover:text-secondary hover:border-secondary whitespace-nowrap py-4 px-1 border-b-2 font-medium text-sm",e.value===t?"text-primary border-primary":""),onClick:()=>a(e.value),children:e.label},e.value)))})]})})})})})}const I=window.wp.apiFetch;var c=a.n(I);const n=window.wp.i18n;function C({title:e,children:t}){return(0,r.jsxs)("div",{className:"py-10",children:[(0,r.jsx)("header",{children:(0,r.jsx)("div",{className:"mx-auto max-w-7xl px-4 sm:px-6 lg:px-8",children:(0,r.jsx)("h1",{className:"text-3xl font-bold tracking-tight text-gray-900",children:e})})}),(0,r.jsx)("main",{children:(0,r.jsx)("div",{className:"mx-auto max-w-7xl px-4 py-8 sm:px-6 lg:px-8",children:t})})]})}function N({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const o=g.forwardRef(N);function d({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}))}const A=g.forwardRef(d);function j({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M12.97 3.97a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 1 1-1.06-1.06l6.22-6.22H3a.75.75 0 0 1 0-1.5h16.19l-6.22-6.22a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"}))}const x=g.forwardRef(j);function u({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const w=g.forwardRef(u);function D({type:e="notice",title:t,children:a,className:g=""}){const i=l("border rounded-md p-2","success"===e?"bg-green-100 border-green-200":"","notice"===e?"bg-yellow-100 border-yellow-200":"","error"===e?"bg-red-100 border-red-200":"",g);return(0,r.jsxs)("div",{className:i,children:[(0,r.jsx)("div",{className:"text-md text-black font-semibold",children:t}),a&&(0,r.jsx)("div",{className:"text-sm text-black",children:a})]})}function m({children:e}){return(0,r.jsx)("div",{className:"w-full mt-2 bg-gray-50 rounded-lg p-5 help-content border border-gray-200 space-y-4",children:(0,r.jsx)("div",{className:"text-sm text-gray-600",children:e})})}function T({field:e,name:t,label:a,value:i=!1,callback:s,required:l=!1,children:M}){const[I,c]=(0,g.useState)(i);return(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsxs)("label",{className:"inline-flex items-center cursor-pointer",children:[(0,r.jsx)("input",{name:t,type:"checkbox",checked:i,onChange:e=>{c(e.target.checked),s(e)},required:l,className:"sr-only peer"}),(0,r.jsx)("div",{className:"relative w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 rounded-full peer dark:bg-gray-200 peer-checked:after:translate-x-full rtl:peer-checked:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-primary"}),(0,r.jsx)("span",{className:"ms-3 mr-2 text-sm",children:a})]}),M,e?.stateDescriptions?.enabled&&I&&(0,r.jsx)(m,{children:e?.stateDescriptions?.enabled}),e?.stateDescriptions?.disabled&&!I&&(0,r.jsx)(m,{children:e?.stateDescriptions?.disabled})]})}function L({name:e,label:t,value:a="",placeholder:g="",required:i=!1,callback:s,children:l}){return(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,r.jsx)("input",{name:e,type:"password",value:a,onChange:s,onPaste:s,placeholder:g,required:i,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),l]})}function p({name:e,label:t,value:a="",placeholder:g="",required:i=!1,callback:s,children:l}){return(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,r.jsx)("input",{name:e,type:"text",value:a,onChange:s,onPaste:s,placeholder:g,required:i,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),l]})}function y({name:e,label:t,value:a="",placeholder:i="",required:s=!1,callback:l,children:M,...I}){const[c,n]=(0,g.useState)(null!=a?a:0);return(0,r.jsxs)("div",{children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,r.jsx)("input",{name:e,type:"number",value:c,onChange:l,onPaste:e=>{const t=e.clipboardData.getData("text"),a=parseInt(t,10);!isNaN(a)&&a>=0&&n(a),l(e)},placeholder:i,required:s,min:"0",className:"hidden"}),(0,r.jsxs)("div",{className:"inline-flex items-center gap-4",children:[(0,r.jsx)("button",{onClick:()=>{c>0&&n(c-1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"-"}),(0,r.jsx)("span",{className:"text-lg font-mono font-semibold",children:c}),(0,r.jsx)("button",{onClick:()=>{n(c+1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"+"})]})]}),M]})}function h({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z",clipRule:"evenodd"}))}const z=g.forwardRef(h);function b({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"}))}const v=g.forwardRef(b);function k({includeOptional:e=!1,provider:t,fields:a,callback:i}){const[s,l]=(0,g.useState)({}),[M,I]=(0,g.useState)({}),[c,C]=(0,g.useState)(null),N=e=>{if("paste"===e.type){const a={target:{name:e.target.name,value:e.clipboardData.getData("text"),type:e.target.type}},g={...s};return"checkbox"===a.target.type?g[a.target.name]=a.target.checked:g[a.target.name]=a.target.value,l(g),i(t,g),C(a.target.name),void setTimeout((()=>{C(null)}),100)}if(c===e.target.name)return;const a={...s};"checkbox"===e.target.type?a[e.target.name]=e.target.checked:a[e.target.name]=e.target.value,l(a),i(t,a)};(0,g.useEffect)((()=>{a.forEach((e=>{e?.value&&l({...s,[e.name]:e.value})}))}),[]);const o=e=>{switch(e.type){case"boolean":return(0,r.jsx)(T,{name:e.name,label:e.label,value:s?.[e.name],callback:N,required:e.required,field:e,children:(0,r.jsx)(r.Fragment,{children:e?.description&&(0,r.jsx)(m,{children:e?.description})})});case"password":return(0,r.jsx)(L,{name:e.name,label:e.label,value:s?.[e.name],placeholder:e.placeholder,callback:N,required:e.required,field:e,children:(0,r.jsx)(r.Fragment,{children:e?.description&&(0,r.jsx)(m,{children:e?.description})})});case"number":return(0,r.jsx)(y,{name:e.name,label:e.label,value:s?.[e.name],placeholder:e.placeholder,callback:N,required:e.required,field:e,children:(0,r.jsx)(r.Fragment,{children:e?.description&&(0,r.jsx)(m,{children:e?.description})})});default:return(0,r.jsx)(p,{name:e.name,label:e.label,value:s?.[e.name],placeholder:e.placeholder,callback:N,required:e.required,field:e,children:(0,r.jsx)(r.Fragment,{children:e?.description&&(0,r.jsx)(m,{children:e?.description})})})}};return(0,r.jsx)(r.Fragment,{children:a.flatMap(((t,a)=>t?.optional&&!e?[]:(0,r.jsxs)("div",{children:[o(t),t?.help&&(0,r.jsxs)("div",{className:"mt-2",children:[(0,r.jsxs)("button",{type:"button",className:"text-sm text-custom hover:text-custom-dark flex items-center cursor-pointer help-toggle",onClick:()=>{return e=t.name,void I((t=>({...t,[e]:!t[e]})));var e},children:[(0,r.jsx)(v,{className:"w-5 h-5 mr-1"}),(0,r.jsx)("span",{children:t?.help?.label||(0,n.__)("Help","fraktvalg")})]}),M[t.name]&&(0,r.jsxs)(m,{children:[(0,r.jsx)("p",{children:t?.help?.text}),t?.help?.url?.link&&(0,r.jsx)("div",{className:"mt-3",children:(0,r.jsxs)("a",{href:t?.help?.url?.link,target:"_blank",className:"inline-flex items-center text-custom hover:text-custom-dark font-medium",children:[(0,r.jsx)("span",{children:t?.help?.url?.label}),(0,r.jsx)(z,{className:"ml-1 w-4 h-4"})]})})]})]})]},a)))})}function f({disabled:e=!1,plain:t=!1,className:a,children:g,onClick:i=()=>{},...s}){const M=l("block w-full bg-primary text-white rounded-md p-3","hover:bg-primary/90 hover:text-white","active:bg-primary/90 active:text-white","focus:bg-primary/90 focus:text-white","disabled:bg-black/80",a);return s.href?(0,r.jsx)("a",{className:M,...s,children:g}):(0,r.jsx)("button",{onClick:i,disabled:e,className:M,...s,children:g})}function O({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z",clipRule:"evenodd"}))}const E=g.forwardRef(O);function S({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z",clipRule:"evenodd"}))}const Y=g.forwardRef(S);function U({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const Q=g.forwardRef(U);function G({logo:e=null,...t}){const{alt:a=""}=t;return e?e.startsWith("http")||e.startsWith("data:image")?(0,r.jsx)("img",{src:e,alt:a,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,r.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:a,...t})):(0,r.jsx)(Q,{...t})}function B({supplierId:e,supplier:t,title:a,content:i,isConnected:s=!1,visible:M=!0,classNames:I="",innerClassNames:c=""}){const[C,N]=(0,g.useState)(M),o=l("border bg-white rounded-md",I),d=l("border-t-2 border-gray-100 p-4",c);return(0,r.jsxs)("div",{className:o,children:[(0,r.jsx)("button",{className:"flex w-full p-4 items-center justify-between",onClick:()=>N(!C),children:(0,r.jsx)("h2",{className:"text-lg font-bold w-full",children:(0,r.jsxs)("div",{className:"flex item-center justify-between focus:outline-none w-full",children:[(0,r.jsxs)("div",{className:"flex",children:[t?.logo&&(0,r.jsx)("div",{children:(0,r.jsx)(G,{logo:t?.logo,alt:a,className:"w-8 h-8 mr-2"})}),(0,r.jsx)("div",{className:"inline-flex items-center gap-4",children:(0,r.jsx)("span",{children:a})})]}),(0,r.jsxs)("div",{className:"flex items-center gap-4",children:[s&&(0,r.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-green-100 text-green-600",children:(0,n.__)("Connected","fraktvalg")}),!s&&(0,r.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-red-100 text-red-600",children:(0,n.__)("Disconnected","fraktvalg")}),C?(0,r.jsx)(E,{className:"h-6 w-6 text-gray-600"}):(0,r.jsx)(Y,{className:"h-6 w-6 text-gray-600"})]})]})})}),C&&(0,r.jsx)("div",{className:d,children:i})]})}function Z({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{d:"M6.5 2.25a.75.75 0 0 0-1.5 0v3a.75.75 0 0 0 1.5 0V4.5h6.75a.75.75 0 0 0 0-1.5H6.5v-.75ZM11 6.5a.75.75 0 0 0-1.5 0v3a.75.75 0 0 0 1.5 0v-.75h2.25a.75.75 0 0 0 0-1.5H11V6.5ZM5.75 10a.75.75 0 0 1 .75.75v.75h6.75a.75.75 0 0 1 0 1.5H6.5v.75a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 .75-.75ZM2.75 7.25H8.5v1.5H2.75a.75.75 0 0 1 0-1.5ZM4 3H2.75a.75.75 0 0 0 0 1.5H4V3ZM2.75 11.5H4V13H2.75a.75.75 0 0 1 0-1.5Z"}))}const X=g.forwardRef(Z);function R({setProvider:e,setTab:t}){const[a,i]=(0,g.useState)({}),[s,l]=(0,g.useState)({}),[M,I]=(0,g.useState)(null),[N,d]=(0,g.useState)(""),[j,u]=(0,g.useState)(!0),[m,T]=(0,g.useState)(null),[L,p]=(0,g.useState)(10),[y,h]=(0,g.useState)("percent"),[z,b]=(0,g.useState)(""),[v,O]=(0,g.useState)({}),E=(e,t)=>{O({...v,[e]:t})},S=()=>{I(null),d(""),c()({path:"fraktvalg/v1/settings/providers/mine",method:"GET"}).then((e=>{l(e?.mine?.data||{}),i(e?.available?.data||{}),e?.available?.data&&Object.keys(e?.available?.data).map((t=>{O({...v,[t]:e?.available?.data[t]?.fields})})),e?.mine?.data&&e?.mine?.data?.forEach((e=>{if(a[e?.id]){let t={...a};delete t[e?.id],i(t)}O({...v,[e?.id]:e?.fields})}))})).catch((e=>{d("fetching providers"),I(e?.message)})).then((()=>{u(!1)}))},Y=()=>{c()({path:"fraktvalg/v1/settings/providers/priority",method:"GET"}).then((e=>{T(e?.data?.providerId),p(e?.data?.discount),h(e?.data?.discountType)}))},U=e=>{b(e),I(null),d(""),c()({path:"fraktvalg/v1/settings/providers/store",method:"POST",data:{providerId:e,fieldValues:v[e]}}).then((e=>{b(""),S()})).catch((e=>{b(""),d("saving provider settings"),I(e?.message||(0,n.__)("Failed to save provider settings","fraktvalg"))}))};return(0,g.useEffect)((()=>{S(),Y()}),[]),j?(0,r.jsx)(C,{title:"My providers",children:(0,r.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,r.jsx)(o,{className:"h-8 w-8 animate-spin text-primary"}),(0,r.jsx)("div",{className:"text-lg",children:(0,n.__)("Fetching available providers...","fraktvalg")})]})}):(0,r.jsx)(C,{title:"My providers",children:(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[M&&(0,r.jsx)(D,{type:"error",title:`Error ${N||"fetching providers"}`,children:M}),Object.keys(s).map((a=>(0,r.jsx)(B,{isConnected:!0,title:s[a]?.name,supplierId:a,supplier:s[a],content:(0,r.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[z===a&&(0,r.jsxs)("div",{className:"absolute w-full h-full top-0 left-0 bg-white flex flex-col justify-center items-center gap-2",children:[(0,r.jsx)(o,{className:"h-6 w-6 animate-spin text-primary"}),(0,r.jsx)("span",{children:(0,n.__)("Saving provider settings, one moment please...","fraktvalg")})]}),(0,r.jsx)(k,{includeOptional:!0,provider:a,fields:s[a]?.fields||[],callback:E}),(0,r.jsxs)("div",{className:"flex flex-col md:flex-row justify-between gap-2",children:[(0,r.jsx)("div",{className:"flex flex-col md:flex-row justify-start gap-2",children:(0,r.jsxs)(f,{type:"button",className:"md:inline-block md:w-fit",onClick:()=>{e(s[a]),t("shipping-methods")},children:[(0,r.jsx)(X,{className:"w-4 h-4 mr-2 inline-block"}),(0,n.__)("Configure shipping methods","fraktvalg")]})}),(0,r.jsxs)("div",{className:"flex flex-col md:flex-row justify-end gap-2",children:[(0,r.jsx)(f,{className:"md:inline-block md:w-fit bg-red-600 hover:bg-red-500 active:bg-red-500 focus:bg-red-500",type:"button",onClick:()=>{return e=s[a],void(confirm((0,n.__)("Are you sure you want to disconnect this provider?","fraktvalg"))&&(b(e?.id),I(null),d(""),c()({path:"fraktvalg/v1/settings/providers/disconnect",method:"POST",data:{provider:e?.id}}).then((e=>{b(""),S()})).catch((e=>{b(""),d("disconnecting provider"),I(e?.message||(0,n.__)("Failed to disconnect provider","fraktvalg"))}))));var e},children:(0,n.__)("Disconnect provider","fraktvalg")}),(0,r.jsx)(f,{className:"md:inline-block md:w-fit",type:"button",onClick:()=>U(s[a]),children:(0,n.__)("Update provider settings","fraktvalg")})]})]})]})},a))),(0,r.jsx)("hr",{className:"border-gray-200 my-2"}),Object.keys(a).map((e=>(0,r.jsx)(B,{title:a[e]?.name,supplierId:e,supplier:a[e],visible:!1,content:(0,r.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[z===e&&(0,r.jsxs)("div",{className:"absolute w-full h-full top-0 left-0 bg-white flex flex-col justify-center items-center gap-2",children:[(0,r.jsx)(o,{className:"h-6 w-6 animate-spin text-primary"}),(0,r.jsx)("span",{children:(0,n.__)("Connecting provider, one moment please...","fraktvalg")})]}),(0,r.jsx)(k,{provider:e,fields:a[e]?.fields||[],callback:E}),(0,r.jsx)(f,{type:"button",onClick:()=>U(e),children:(0,n.__)("Connect to this provider","fraktvalg")})]})},e))),(0,r.jsx)("div",{className:"bg-white rounded-lg shadow p-6 border-2 border-dashed border-gray-300",children:(0,r.jsxs)("div",{className:"flex flex-col items-center text-center",children:[(0,r.jsx)("div",{className:"w-16 h-16 bg-primary/10 rounded-full flex items-center justify-center mb-4",children:(0,r.jsx)(A,{className:"w-8 h-8 text-primary"})}),(0,r.jsx)("h2",{className:"text-xl font-semibold text-gray-900 mb-2",children:(0,n.__)("More providers are coming 🥳","fraktvalg")}),(0,r.jsx)("p",{className:"text-gray-600 mb-4",children:(0,n.__)("We are continually working to integrate more shipping providers to you you more opportunities.","fraktvalg")}),(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsx)("p",{className:"text-sm text-gray-600",children:(0,n.__)("Is there someone you would like to see here?","fraktvalg")}),(0,r.jsxs)("a",{href:"mailto:[email protected]",className:"inline-flex items-center text-custom hover:text-custom-dark font-medium",children:[(0,r.jsx)("span",{children:(0,n.__)("Send us an e-mail","fraktvalg")}),(0,r.jsx)(x,{className:"ml-1 w-4 h-4"})]})]})]})}),Object.keys(s).length>1&&(0,r.jsxs)("div",{className:"bg-white rounded-lg shadow p-6",children:[(0,r.jsx)("h2",{className:"text-xl font-semibold text-gray-900 mb-2",children:(0,n.__)("Preferred provider","fraktvalg")}),(0,r.jsx)("p",{className:"text-gray-600 mb-4",children:(0,n.__)("Choose which provider should always be the cheapest option in your store. This gives you the opportunity to prioritize one provider by making their prices more competitive.","fraktvalg")}),(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-4",children:[(0,r.jsx)("p",{children:(0,n.__)("Price reduction for your preferred provider","fraktvalg")}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("input",{value:L,onChange:e=>p(e.target.value),type:"number",min:"0",step:"1",placeholder:"10",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,r.jsxs)("select",{className:"border border-gray-300 rounded-md p-2",value:y,onChange:e=>h(e.target.value),children:[(0,r.jsx)("option",{value:"percent",children:"%"}),(0,r.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,r.jsx)("label",{htmlFor:"something",children:(0,n.__)("Determine how much cheaper your preferred provider should be compared to the cheapest competitor.","fraktvalg")})]}),(0,r.jsx)("div",{className:"flex gap-4",children:Object.keys(s).map((e=>(0,r.jsxs)("label",{className:"relative cursor-pointer grow flex flex-col gap-2 items-center border-2 border-gray-300 rounded-lg p-4 hover:border-primary peer-checked:border-primary transition-all duration-200",children:[(0,r.jsx)("input",{type:"radio",name:"preferred_provider",value:e,className:"sr-only peer",defaultChecked:m===e,onChange:()=>T(m===e?null:e)}),s[e]?.logo&&(0,r.jsx)(G,{logo:s[e]?.logo,className:"w-8 h-8"}),(0,r.jsx)("span",{className:"text-lg font-medium text-gray-900",children:s[e]?.name}),(0,r.jsx)("div",{className:"absolute top-2 right-2 hidden peer-checked:block",children:(0,r.jsx)(w,{className:"w-6 h-6 text-primary"})}),(0,r.jsx)("p",{className:"text-sm text-gray-5400 text-center",children:s[e]?.description}),(0,r.jsx)("p",{className:"text-xs text-primary font-medium peer-checked:block hidden",children:(0,n.__)("Currently chosen as your preferred provider","fraktvalg")})]},e)))}),(0,r.jsx)(f,{type:"button",onClick:()=>{I(null),d(""),c()({path:"fraktvalg/v1/settings/providers/priority/store",method:"POST",data:{priorityProvider:{providerId:m,discount:L,discountType:y}}}).then((e=>{Y()})).catch((e=>{d("saving priority provider settings"),I(e?.message||(0,n.__)("Failed to save priority provider settings","fraktvalg"))}))},children:(0,n.__)("Save preferred provider preferences","fraktvalg")})]})]})]})})}function F({title:e,children:t,open:a=!1}){const[i,s]=(0,g.useState)(a||!1);return(0,r.jsxs)("div",{className:"border bg-white rounded-md",children:[(0,r.jsxs)("button",{className:"w-full flex p-4 justify-between",onClick:()=>s(!i),children:[(0,r.jsx)("h2",{className:"text-lg text-left font-bold w-full",children:e}),(0,r.jsx)("div",{className:"relative inline-block",children:i?(0,r.jsx)(E,{className:"h-6 w-6 text-primary"}):(0,r.jsx)(Y,{className:"h-6 w-6 text-primary"})})]}),i&&(0,r.jsx)("div",{className:"p-4",children:t})]})}function P({}){const[e,t]=(0,g.useState)(null),[a,i]=(0,g.useState)({freight:{addedCost:0,addedCostType:"fixed",custom:{name:(0,n.__)("Shipping & handling","fraktvalg"),price:100,type:"fixed"}},useProduction:!0,names:[]}),[s,l]=(0,g.useState)(!0),M=e=>{switch(e.target.name){case"freight[addedCost]":i({...a,freight:{...a.freight,addedCost:e.target.value}});break;case"freight[addedCostType]":i({...a,freight:{...a.freight,addedCostType:e.target.value}});break;case"freight[custom][name]":i({...a,freight:{...a.freight,custom:{...a.freight.custom,name:e.target.value}}});break;case"freight[custom][price]":i({...a,freight:{...a.freight,custom:{...a.freight.custom,price:e.target.value}}});break;case"freight[custom][type]":i({...a,freight:{...a.freight,custom:{...a.freight.custom,type:e.target.value}}});break;case"useProduction":i({...a,useProduction:e.target.checked});break;default:i({...a,[e.target.name]:e.target.value})}};return(0,g.useEffect)((()=>{t(null),l(!0),c()({path:"/fraktvalg/v1/settings/optional-settings",method:"GET"}).then((e=>{i(e?.data||a),l(!1)})).catch((e=>{t({type:"error",title:(0,n.__)("Error fetching optional settings","fraktvalg"),message:e?.message}),l(!1)}))}),[]),s?(0,r.jsx)(C,{title:"My providers",children:(0,r.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,r.jsx)(o,{className:"h-8 w-8 animate-spin text-primary"}),(0,r.jsx)("div",{className:"text-lg",children:"Fetching optional settings..."})]})}):(0,r.jsx)(C,{title:"Optional settings",children:(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[(0,r.jsxs)(F,{title:(0,n.__)("Backup shipping option","fraktvalg"),open:!0,children:[(0,r.jsx)("p",{children:(0,n.__)("If Fraktvalg should ever become unavailable, or no shiopping options are returned, returns this shipping alternative by default.","fraktvalg")}),(0,r.jsxs)("div",{className:"mt-2 grid grid-cols-1 gap-4",children:[(0,r.jsx)(p,{label:(0,n.__)("Shipping option name","fraktvalg"),name:"freight[custom][name]",value:a.freight.custom.name,callback:M}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("input",{name:"freight[custom][price]",value:a.freight.custom.price,onChange:M,type:"number",min:"0",step:"1",placeholder:"25",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,r.jsxs)("select",{name:"freight[custom][type]",className:"border border-gray-300 rounded-md p-2",value:a.freight.custom.type,onChange:M,children:[(0,r.jsx)("option",{value:"percent",children:"%"}),(0,r.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{htmlFor:"something",children:(0,n.__)("Backup shipping cost","fraktvalg")}),(0,r.jsx)("p",{className:"text-xs italic",children:(0,n.__)("The backup shipping cost can be set to either a fixed value, or a percentage of the order total.","fraktvalg")})]})]})]})]}),(0,r.jsxs)(F,{title:(0,n.__)("Shipping cost adjustments","fraktvalg"),open:!0,children:[(0,n.__)("Safeguard your shipping costs with these optional alternatives.","fraktvalg"),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("input",{name:"freight[addedCost]",value:a.freight.addedCost,onChange:M,type:"number",min:"0",step:"1",placeholder:"10",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,r.jsxs)("select",{name:"freight[addedCostType]",className:"border border-gray-300 rounded-md p-2",value:a.freight.addedCostType,onChange:M,children:[(0,r.jsx)("option",{value:"percent",children:"%"}),(0,r.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("label",{htmlFor:"something",children:(0,n.__)("Add an optional surcharge to all shipping options","fraktvalg")}),(0,r.jsx)("p",{className:"text-xs italic",children:(0,n.__)("Additional shipping surcharges are meant to cover administrative- and handling costs, and is automatically added to all shipping alternatives.","fraktvalg")})]})]})]}),(0,r.jsxs)(F,{title:(0,n.__)("Shop environment","fraktvalg"),open:!0,children:[(0,r.jsx)("p",{children:(0,n.__)("Some times, you wish to use the shipping providers test environments, for example on a staging site. Doing so will not create legitimate shipping requests, and prevents yo ufrom incurring charges while testing your store setup.","fraktvalg")}),(0,r.jsx)("div",{className:"mt-2 grid grid-cols-1 gap-4",children:(0,r.jsx)(T,{label:(0,n.__)("Use production environments","fraktvalg"),name:"useProduction",value:a.useProduction,callback:M})})]}),e&&(0,r.jsx)(D,{type:e.type,title:e.title,children:e.message}),(0,r.jsx)(f,{type:"button",onClick:()=>{t(null),c()({path:"/fraktvalg/v1/settings/optional-settings",method:"POST",data:{options:a}}).then((e=>{t({type:e?.type,title:e?.title,message:e?.message})})).catch((e=>{t({type:"error",title:(0,n.__)("Error saving optional settings","fraktvalg"),message:e?.message})}))},children:(0,n.__)("Save optional settings","fraktvalg")})]})})}function _({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M19.449 8.448 16.388 11a4.52 4.52 0 0 1 0 2.002l3.061 2.55a8.275 8.275 0 0 0 0-7.103ZM15.552 19.45 13 16.388a4.52 4.52 0 0 1-2.002 0l-2.55 3.061a8.275 8.275 0 0 0 7.103 0ZM4.55 15.552 7.612 13a4.52 4.52 0 0 1 0-2.002L4.551 8.45a8.275 8.275 0 0 0 0 7.103ZM8.448 4.55 11 7.612a4.52 4.52 0 0 1 2.002 0l2.55-3.061a8.275 8.275 0 0 0-7.103 0Zm8.657-.86a9.776 9.776 0 0 1 1.79 1.415 9.776 9.776 0 0 1 1.414 1.788 9.764 9.764 0 0 1 0 10.211 9.777 9.777 0 0 1-1.415 1.79 9.777 9.777 0 0 1-1.788 1.414 9.764 9.764 0 0 1-10.212 0 9.776 9.776 0 0 1-1.788-1.415 9.776 9.776 0 0 1-1.415-1.788 9.764 9.764 0 0 1 0-10.212 9.774 9.774 0 0 1 1.415-1.788A9.774 9.774 0 0 1 6.894 3.69a9.764 9.764 0 0 1 10.211 0ZM14.121 9.88a2.985 2.985 0 0 0-1.11-.704 3.015 3.015 0 0 0-2.022 0 2.985 2.985 0 0 0-1.11.704c-.326.325-.56.705-.704 1.11a3.015 3.015 0 0 0 0 2.022c.144.405.378.785.704 1.11.325.326.705.56 1.11.704.652.233 1.37.233 2.022 0a2.985 2.985 0 0 0 1.11-.704c.326-.325.56-.705.704-1.11a3.016 3.016 0 0 0 0-2.022 2.985 2.985 0 0 0-.704-1.11Z",clipRule:"evenodd"}))}const W=g.forwardRef(_);function J({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{d:"M4.913 2.658c2.075-.27 4.19-.408 6.337-.408 2.147 0 4.262.139 6.337.408 1.922.25 3.291 1.861 3.405 3.727a4.403 4.403 0 0 0-1.032-.211 50.89 50.89 0 0 0-8.42 0c-2.358.196-4.04 2.19-4.04 4.434v4.286a4.47 4.47 0 0 0 2.433 3.984L7.28 21.53A.75.75 0 0 1 6 21v-4.03a48.527 48.527 0 0 1-1.087-.128C2.905 16.58 1.5 14.833 1.5 12.862V6.638c0-1.97 1.405-3.718 3.413-3.979Z"}),g.createElement("path",{d:"M15.75 7.5c-1.376 0-2.739.057-4.086.169C10.124 7.797 9 9.103 9 10.609v4.285c0 1.507 1.128 2.814 2.67 2.94 1.243.102 2.5.157 3.768.165l2.782 2.781a.75.75 0 0 0 1.28-.53v-2.39l.33-.026c1.542-.125 2.67-1.433 2.67-2.94v-4.286c0-1.505-1.125-2.811-2.664-2.94A49.392 49.392 0 0 0 15.75 7.5Z"}))}const K=g.forwardRef(J);function H({}){return(0,r.jsx)(C,{title:"Support",children:(0,r.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-5",children:[(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-3 bg-tertiary/10 p-5 rounded-md",children:[(0,r.jsx)("h2",{className:"text-lg font-semibold",children:(0,n.__)("Fraktvalg support","fraktvalg")}),(0,r.jsx)("p",{className:"text-sm",children:(0,n.__)("For help with the Fraktvalg API, your subscription, or other questions, please contact us directly.","fraktvalg")}),(0,r.jsx)("div",{className:"justify-end align-bottom",children:(0,r.jsxs)(f,{href:"mailto:[email protected]",className:"inline-flex items-center gap-3",children:[(0,r.jsx)(W,{className:"w-4 h-4 inline-block"}),(0,n.__)("Contact Fraktvalg support","fraktvalg")]})})]}),(0,r.jsxs)("div",{className:"grid grid-cols-1 gap-3 bg-tertiary/10 p-5 rounded-md",children:[(0,r.jsx)("h2",{className:"text-lg font-semibold",children:(0,n.__)("Community support","fraktvalg")}),(0,r.jsx)("p",{className:"text-sm",children:(0,n.__)("If you are having trouble with WordPress, or using the plugin, please use the community support forums at WordPress.org.","fraktvalg")}),(0,r.jsx)("div",{className:"justify-end align-bottom",children:(0,r.jsxs)(f,{href:"https://wordpress.org/support/plugin/fraktvalg/",className:"inline-flex items-center gap-3",children:[(0,r.jsx)(K,{className:"w-4 h-4 inline-block"}),(0,n.__)("Visit the WordPress.org support forums","fraktvalg"),(0,r.jsx)("span",{className:"sr-only",children:(0,n.__)("External link, opens in a new tab","frakt")})]})})]})]})})}function V({title:e,titleId:t,...a},i){return g.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},a),e?g.createElement("title",{id:t},e):null,g.createElement("path",{fillRule:"evenodd",d:"M11.03 3.97a.75.75 0 0 1 0 1.06l-6.22 6.22H21a.75.75 0 0 1 0 1.5H4.81l6.22 6.22a.75.75 0 1 1-1.06 1.06l-7.5-7.5a.75.75 0 0 1 0-1.06l7.5-7.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"}))}const q=g.forwardRef(V);function $({supplier:e,setTab:t}){const[a,i]=(0,g.useState)(!1),[s,l]=(0,g.useState)([]);return(0,g.useEffect)((()=>{i(!0),c()({path:"fraktvalg/v1/settings/providers/methods",method:"POST",data:{shipper_id:e.id}}).then((e=>{l(e),i(!1)}))}),[]),(0,r.jsxs)(C,{title:(0,r.jsxs)("div",{className:"flex justify-between",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[e?.logo&&(0,r.jsx)("div",{children:(0,r.jsx)(G,{logo:e?.logo,alt:e?.name,className:"w-8 h-8 mr-2"})}),(0,r.jsx)("div",{className:"inline-flex items-center gap-4",children:(0,r.jsx)("span",{children:e?.name})})]}),(0,r.jsx)("div",{children:(0,r.jsxs)(f,{type:"button",onClick:()=>t("providers"),className:"text-sm",children:[(0,r.jsx)(q,{className:"h-4 w-4 mr-2 inline-block"}),(0,n.__)("Back to providers","fraktvalg")]})})]}),children:[a&&(0,r.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,r.jsx)(o,{className:"h-8 w-8 animate-spin text-primary"}),(0,r.jsx)("div",{className:"text-lg",children:(0,n.__)("Loading shipping methods...","fraktvalg")})]}),!a&&0===s.length&&(0,r.jsx)(D,{children:(0,n.__)("This provider does not offer any shipping methods that can be modified.","fraktvalg")}),!a&&s.length>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("table",{className:"min-w-full divide-y divide-gray-200",children:[(0,r.jsx)("thead",{className:"bg-gray-50",children:(0,r.jsxs)("tr",{children:[(0,r.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:(0,n.__)("Active","fraktvalg")}),(0,r.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:(0,n.__)("Name","fraktvalg")}),(0,r.jsx)("th",{className:"px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider",children:(0,n.__)("Price","fraktvalg")})]})}),(0,r.jsx)("tbody",{className:"bg-white divide-y divide-gray-200",children:s.map(((e,t)=>(0,r.jsxs)("tr",{children:[(0,r.jsx)("td",{className:"px-6 py-4 whitespace-nowrap text-sm text-gray-500",children:(0,r.jsxs)("label",{children:[(0,r.jsx)("input",{type:"checkbox",checked:e.active,onChange:()=>{const e=[...s];e[t].active=!e[t].active,l(e)}}),(0,r.jsx)("span",{className:"ml",children:(0,n.__)("Active","fraktvalg")})]})}),(0,r.jsx)("td",{className:"px-6 py-4 whitespace-nowrap text-sm font-medium text-gray-900",children:(0,r.jsxs)("div",{className:"flex flex-col",children:[(0,r.jsx)("small",{className:"text-gray-500",children:e.originalName}),(0,r.jsx)("input",{type:"text",value:e.name,onChange:e=>{const a=[...s];a[t].name=e.target.value,l(a)},className:"border border-gray-300 rounded-md p-2"})]})}),(0,r.jsx)("td",{className:"px-6 py-4 whitespace-nowrap text-sm text-right text-gray-500",children:(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsxs)("label",{children:[(0,r.jsx)("span",{className:"mr-2",children:(0,n.__)("Set a fixed price for this shipping method","fraktvalg")}),(0,r.jsx)("input",{type:"checkbox",checked:e.canEditPrice,onChange:()=>{const e=[...s];e[t].canEditPrice=!e[t].canEditPrice,l(e)}})]}),(0,r.jsx)("input",{type:"number",value:e.price||"",disabled:!e.canEditPrice,onChange:e=>{const a=[...s];a[t].price=e.target.value,l(a)},className:"border border-gray-300 rounded-md p-2"})]})})]},e.id)))})]}),(0,r.jsx)("div",{className:"flex flex-col md:flex-row justify-end gap-2 mt-4",children:(0,r.jsx)(f,{type:"button",onClick:()=>{c()({path:"fraktvalg/v1/settings/providers/methods/store",method:"POST",data:{shipper_id:e.id,fields:s}}).then((e=>{console.log(e)}))},className:"md:inline-block md:w-fit",children:(0,n.__)("Save shipping overrides","fraktvalg")})})]})]})}function ee({}){const[e,t]=(0,g.useState)("providers"),[a,i]=(0,g.useState)(null);return(0,r.jsxs)("div",{className:"min-h-full",children:[(0,r.jsx)(M,{tabs:[{label:"My providers",value:"providers"},{label:"Optional settings",value:"settings"},{label:"Support",value:"support"}],activeTab:e,setTab:t}),"providers"===e&&(0,r.jsx)(R,{setProvider:i,setTab:t}),"shipping-methods"===e&&(0,r.jsx)($,{supplier:a,setTab:t}),"settings"===e&&(0,r.jsx)(P,{}),"support"===e&&(0,r.jsx)(H,{})]})}const te=document.getElementById("fraktvalg-settings");te&&(0,i.H)(te).render((0,r.jsx)(ee,{}))})();
  • fraktvalg/trunk/build/label-rtl.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-right: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-right: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-left: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11091140.transition-all {
    11101141  transition-property: all;
     1142  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1143  transition-duration: 150ms;
     1144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    11111147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    11121148  transition-duration: 150ms;
     
    11781214  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11791215}
     1216.hover\:bg-gray-50:hover {
     1217  --tw-bg-opacity: 1;
     1218  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1219}
    11801220.hover\:bg-green-700:hover {
    11811221  --tw-bg-opacity: 1;
     
    12481288  color: rgb(255 255 255 / var(--tw-text-opacity));
    12491289}
     1290.disabled\:cursor-not-allowed:disabled {
     1291  cursor: not-allowed;
     1292}
    12501293.disabled\:bg-black\/80:disabled {
    12511294  background-color: rgb(0 0 0 / 0.8);
     1295}
     1296.disabled\:opacity-50:disabled {
     1297  opacity: 0.5;
    12521298}
    12531299.peer:checked ~ .peer-checked\:block {
     
    12961342  }
    12971343
     1344  .sm\:inline {
     1345    display: inline;
     1346  }
     1347
    12981348  .sm\:flex {
    12991349    display: flex;
  • fraktvalg/trunk/build/label.asset.php

    r3260012 r3267354  
    1 <?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-i18n'), 'version' => 'cf9f2f3816a05082dce8');
     1<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-i18n'), 'version' => '3a54e5c16bf4c3e5e68c');
  • fraktvalg/trunk/build/label.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-left: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-left: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-right: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11091140.transition-all {
    11101141  transition-property: all;
     1142  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1143  transition-duration: 150ms;
     1144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    11111147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    11121148  transition-duration: 150ms;
     
    11781214  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11791215}
     1216.hover\:bg-gray-50:hover {
     1217  --tw-bg-opacity: 1;
     1218  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1219}
    11801220.hover\:bg-green-700:hover {
    11811221  --tw-bg-opacity: 1;
     
    12481288  color: rgb(255 255 255 / var(--tw-text-opacity));
    12491289}
     1290.disabled\:cursor-not-allowed:disabled {
     1291  cursor: not-allowed;
     1292}
    12501293.disabled\:bg-black\/80:disabled {
    12511294  background-color: rgb(0 0 0 / 0.8);
     1295}
     1296.disabled\:opacity-50:disabled {
     1297  opacity: 0.5;
    12521298}
    12531299.peer:checked ~ .peer-checked\:block {
     
    12961342  }
    12971343
     1344  .sm\:inline {
     1345    display: inline;
     1346  }
     1347
    12981348  .sm\:flex {
    12991349    display: flex;
  • fraktvalg/trunk/build/label.js

    r3260012 r3267354  
    1 (()=>{"use strict";var e={338:(e,t,r)=>{var a=r(795);t.H=a.createRoot,a.hydrateRoot},20:(e,t,r)=>{var a=r(609),n=Symbol.for("react.element"),l=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,s=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var a,l={},c=null,d=null;for(a in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)o.call(t,a)&&!i.hasOwnProperty(a)&&(l[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===l[a]&&(l[a]=t[a]);return{$$typeof:n,type:e,key:c,ref:d,props:l,_owner:s.current}}t.Fragment=l,t.jsx=c,t.jsxs=c},848:(e,t,r)=>{e.exports=r(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var l=t[a]={exports:{}};return e[a](l,l.exports,r),l.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var a=r(609),n=r(338);const l=window.wp.apiFetch;var o=r.n(l);const s=window.wp.i18n;function i({title:e,titleId:t,...r},n){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const c=a.forwardRef(i);var d=r(848);function u({setIsModalOpen:e}){const[t,r]=(0,a.useState)(!1),[n,l]=(0,a.useState)(null),i=new URLSearchParams(window.location.search).get("id");return(0,a.useEffect)((()=>{r(!0),o()({path:"fraktvalg/v1/woocommerce/shipping-label",method:"POST",data:{order_id:i}}).then((e=>{l(e?.url||null)})).finally((()=>{r(!1)}))}),[]),(0,d.jsx)("div",{className:"fixed inset-0 flex items-center justify-center bg-gray-900 bg-opacity-50 z-[999999]",children:(0,d.jsxs)("div",{className:"relative bg-white p-6 rounded-md shadow-lg w-96",children:[(0,d.jsx)("button",{type:"button",className:"absolute top-0 right-1 text-gray-600 hover:text-gray-900 text-xl font-bold",onClick:()=>e(!1),children:"×"}),t?(0,d.jsx)("div",{className:"flex justify-center items-center",children:(0,d.jsx)(c,{className:"h-8 w-8 animate-spin text-primary"})}):n?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("img",{src:n,alt:"Shipping Label",className:"max-w-full w-full h-auto mb-4 shadow-lg"}),(0,d.jsx)("button",{type:"button",className:"bg-green-600 hover:bg-green-700 text-white font-bold py-2 px-4 rounded w-full",onClick:()=>{if(n){const e=window.open("","_blank");e.document.write(`\n                <html>\n                    <head><title>${(0,s.__)("Print","fraktvalg")}</title></head>\n                    <body class="flex justify-center items-center min-h-screen">\n                        <img src="${n}" class="max-w-full h-auto">\n                    </body>\n                </html>\n            `),e.document.close(),e.print()}},children:(0,s.__)("Print","fraktvalg")})]}):(0,d.jsx)("p",{className:"text-red-500 text-center",children:(0,s.__)("Failed to load shipping label.","fraktvalg")})]})})}function p({}){const[e,t]=(0,a.useState)(!1);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"bg-primary hover:bg-primary/90 text-white font-bold py-2 px-4 rounded w-full",onClick:()=>{t(!0)},children:(0,s.__)("Fetch & print shipping label","fraktvalg")}),e&&(0,d.jsx)(u,{setIsModalOpen:t})]})}const f=document.getElementById("fraktvalg-label-meta-box");f&&(0,n.H)(f).render((0,d.jsx)(p,{}))})();
     1(()=>{"use strict";var e={338:(e,t,r)=>{var a=r(795);t.H=a.createRoot,a.hydrateRoot},20:(e,t,r)=>{var a=r(609),n=Symbol.for("react.element"),l=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,s=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var a,l={},c=null,d=null;for(a in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)o.call(t,a)&&!i.hasOwnProperty(a)&&(l[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===l[a]&&(l[a]=t[a]);return{$$typeof:n,type:e,key:c,ref:d,props:l,_owner:s.current}}t.Fragment=l,t.jsx=c,t.jsxs=c},848:(e,t,r)=>{e.exports=r(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var l=t[a]={exports:{}};return e[a](l,l.exports,r),l.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var a=r(609),n=r(338);const l=window.wp.apiFetch;var o=r.n(l);const s=window.wp.i18n;function i({title:e,titleId:t,...r},n){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const c=a.forwardRef(i);var d=r(848);function u({setIsModalOpen:e}){const[t,r]=(0,a.useState)(!1),[n,l]=(0,a.useState)(null),i=new URLSearchParams(window.location.search).get("id");return(0,a.useEffect)((()=>{r(!0),o()({path:"fraktvalg/v1/woocommerce/shipping-label",method:"POST",data:{order_id:i}}).then((e=>{l(e?.url||null)})).finally((()=>{r(!1)}))}),[]),(0,d.jsx)("div",{className:"fixed inset-0 flex items-center justify-center bg-gray-900 bg-opacity-50 z-[999999]",children:(0,d.jsxs)("div",{className:"relative bg-white p-6 rounded-md shadow-lg w-96",children:[(0,d.jsx)("button",{type:"button",className:"absolute top-0 right-1 text-gray-600 hover:text-gray-900 text-xl font-bold",onClick:()=>e(!1),children:"×"}),t?(0,d.jsx)("div",{className:"flex justify-center items-center",children:(0,d.jsx)(c,{className:"h-8 w-8 animate-spin text-primary"})}):n?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"bg-green-600 hover:bg-green-700 text-white font-bold py-2 px-4 rounded w-full",onClick:()=>{if(n){const e=window.open("","_blank");e.document.write(`\n                <html>\n                    <head><title>${(0,s.__)("Print","fraktvalg")}</title></head>\n                    <body class="flex justify-center items-center min-h-screen">\n                        <img src="${n}" class="max-w-full h-auto">\n                    </body>\n                </html>\n            `),e.document.close(),e.print()}},children:(0,s.__)("Print","fraktvalg")}),(0,d.jsx)("img",{src:n,alt:"Shipping Label",className:"max-w-full w-full h-auto mb-4 shadow-lg"})]}):(0,d.jsx)("p",{className:"text-red-500 text-center",children:(0,s.__)("Failed to load shipping label.","fraktvalg")})]})})}function p({}){const[e,t]=(0,a.useState)(!1);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",className:"bg-primary hover:bg-primary/90 text-white font-bold py-2 px-4 rounded w-full",onClick:()=>{t(!0)},children:(0,s.__)("Fetch & print shipping label","fraktvalg")}),e&&(0,d.jsx)(u,{setIsModalOpen:t})]})}const f=document.getElementById("fraktvalg-label-meta-box");f&&(0,n.H)(f).render((0,d.jsx)(p,{}))})();
  • fraktvalg/trunk/build/onboarding-rtl.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-right: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-right: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-left: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11091140.transition-all {
    11101141  transition-property: all;
     1142  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1143  transition-duration: 150ms;
     1144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    11111147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    11121148  transition-duration: 150ms;
     
    11781214  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11791215}
     1216.hover\:bg-gray-50:hover {
     1217  --tw-bg-opacity: 1;
     1218  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1219}
    11801220.hover\:bg-green-700:hover {
    11811221  --tw-bg-opacity: 1;
     
    12481288  color: rgb(255 255 255 / var(--tw-text-opacity));
    12491289}
     1290.disabled\:cursor-not-allowed:disabled {
     1291  cursor: not-allowed;
     1292}
    12501293.disabled\:bg-black\/80:disabled {
    12511294  background-color: rgb(0 0 0 / 0.8);
     1295}
     1296.disabled\:opacity-50:disabled {
     1297  opacity: 0.5;
    12521298}
    12531299.peer:checked ~ .peer-checked\:block {
     
    12961342  }
    12971343
     1344  .sm\:inline {
     1345    display: inline;
     1346  }
     1347
    12981348  .sm\:flex {
    12991349    display: flex;
  • fraktvalg/trunk/build/onboarding.asset.php

    r3260012 r3267354  
    1 <?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-i18n'), 'version' => 'c06250184b913da02cdb');
     1<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-i18n'), 'version' => 'a4c185f7fadc98631e4b');
  • fraktvalg/trunk/build/onboarding.css

    r3260012 r3267354  
    563563  margin-bottom: 1rem;
    564564}
     565.mb-6 {
     566  margin-bottom: 1.5rem;
     567}
    565568.ml-1 {
    566569  margin-left: 0.25rem;
    567570}
     571.ml-2 {
     572  margin-left: 0.5rem;
     573}
    568574.mr-1 {
    569575  margin-right: 0.25rem;
     
    602608  display: inline-block;
    603609}
     610.inline {
     611  display: inline;
     612}
    604613.flex {
    605614  display: flex;
     
    704713  max-width: 100%;
    705714}
     715.flex-1 {
     716  flex: 1 1 0%;
     717}
    706718.shrink-0 {
    707719  flex-shrink: 0;
     
    718730.animate-spin {
    719731  animation: spin 1s linear infinite;
     732}
     733.cursor-not-allowed {
     734  cursor: not-allowed;
    720735}
    721736.cursor-pointer {
     
    858873  border-color: rgb(254 202 202 / var(--tw-border-opacity));
    859874}
     875.border-red-400 {
     876  --tw-border-opacity: 1;
     877  border-color: rgb(248 113 113 / var(--tw-border-opacity));
     878}
    860879.border-transparent {
    861880  border-color: transparent;
     
    10651084  color: rgb(17 24 39 / var(--tw-text-opacity));
    10661085}
     1086.text-green-500 {
     1087  --tw-text-opacity: 1;
     1088  color: rgb(34 197 94 / var(--tw-text-opacity));
     1089}
    10671090.text-green-600 {
    10681091  --tw-text-opacity: 1;
     
    10841107  color: rgb(220 38 38 / var(--tw-text-opacity));
    10851108}
    1086 .text-tertiary {
    1087   --tw-text-opacity: 1;
    1088   color: rgb(101 199 164 / var(--tw-text-opacity));
     1109.text-red-700 {
     1110  --tw-text-opacity: 1;
     1111  color: rgb(185 28 28 / var(--tw-text-opacity));
    10891112}
    10901113.text-white {
    10911114  --tw-text-opacity: 1;
    10921115  color: rgb(255 255 255 / var(--tw-text-opacity));
     1116}
     1117.opacity-50 {
     1118  opacity: 0.5;
    10931119}
    10941120.shadow {
     
    11021128  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    11031129}
     1130.shadow-md {
     1131  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
     1132  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
     1133  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
     1134}
    11041135.shadow-sm {
    11051136  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
     
    11091140.transition-all {
    11101141  transition-property: all;
     1142  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
     1143  transition-duration: 150ms;
     1144}
     1145.transition-colors {
     1146  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    11111147  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    11121148  transition-duration: 150ms;
     
    11781214  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
    11791215}
     1216.hover\:bg-gray-50:hover {
     1217  --tw-bg-opacity: 1;
     1218  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
     1219}
    11801220.hover\:bg-green-700:hover {
    11811221  --tw-bg-opacity: 1;
     
    12481288  color: rgb(255 255 255 / var(--tw-text-opacity));
    12491289}
     1290.disabled\:cursor-not-allowed:disabled {
     1291  cursor: not-allowed;
     1292}
    12501293.disabled\:bg-black\/80:disabled {
    12511294  background-color: rgb(0 0 0 / 0.8);
     1295}
     1296.disabled\:opacity-50:disabled {
     1297  opacity: 0.5;
    12521298}
    12531299.peer:checked ~ .peer-checked\:block {
     
    12961342  }
    12971343
     1344  .sm\:inline {
     1345    display: inline;
     1346  }
     1347
    12981348  .sm\:flex {
    12991349    display: flex;
  • fraktvalg/trunk/build/onboarding.js

    r3260012 r3267354  
    1 (()=>{"use strict";var e={338:(e,g,M)=>{var I=M(795);g.H=I.createRoot,I.hydrateRoot},20:(e,g,M)=>{var I=M(609),t=Symbol.for("react.element"),i=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,C=I.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function a(e,g,M){var I,i={},a=null,N=null;for(I in void 0!==M&&(a=""+M),void 0!==g.key&&(a=""+g.key),void 0!==g.ref&&(N=g.ref),g)s.call(g,I)&&!l.hasOwnProperty(I)&&(i[I]=g[I]);if(e&&e.defaultProps)for(I in g=e.defaultProps)void 0===i[I]&&(i[I]=g[I]);return{$$typeof:t,type:e,key:a,ref:N,props:i,_owner:C.current}}g.Fragment=i,g.jsx=a,g.jsxs=a},848:(e,g,M)=>{e.exports=M(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},g={};function M(I){var t=g[I];if(void 0!==t)return t.exports;var i=g[I]={exports:{}};return e[I](i,i.exports,M),i.exports}M.n=e=>{var g=e&&e.__esModule?()=>e.default:()=>e;return M.d(g,{a:g}),g},M.d=(e,g)=>{for(var I in g)M.o(g,I)&&!M.o(e,I)&&Object.defineProperty(e,I,{enumerable:!0,get:g[I]})},M.o=(e,g)=>Object.prototype.hasOwnProperty.call(e,g);var I=M(609),t=M(338);const i=window.wp.apiFetch;var s=M.n(i);const C=window.wp.i18n;function l(e){var g,M,I="";if("string"==typeof e||"number"==typeof e)I+=e;else if("object"==typeof e)if(Array.isArray(e)){var t=e.length;for(g=0;g<t;g++)e[g]&&(M=l(e[g]))&&(I&&(I+=" "),I+=M)}else for(M in e)e[M]&&(I&&(I+=" "),I+=M);return I}function a(){for(var e,g,M=0,I="",t=arguments.length;M<t;M++)(e=arguments[M])&&(g=l(e))&&(I&&(I+=" "),I+=g);return I}var N=M(848);function A({disabled:e=!1,plain:g=!1,className:M,children:I,onClick:t=()=>{},...i}){const s=a("block w-full bg-primary text-white rounded-md p-3","hover:bg-primary/90 hover:text-white","active:bg-primary/90 active:text-white","focus:bg-primary/90 focus:text-white","disabled:bg-black/80",M);return i.href?(0,N.jsx)("a",{className:s,...i,children:I}):(0,N.jsx)("button",{onClick:t,disabled:e,className:s,...i,children:I})}function c({type:e="notice",title:g,children:M,className:I=""}){const t=a("border rounded-md p-2","success"===e?"bg-green-100 border-green-200":"","notice"===e?"bg-yellow-100 border-yellow-200":"","error"===e?"bg-red-100 border-red-200":"",I);return(0,N.jsxs)("div",{className:t,children:[(0,N.jsx)("div",{className:"text-md text-black font-semibold",children:g}),M&&(0,N.jsx)("div",{className:"text-sm text-black",children:M})]})}function r({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm8.706-1.442c1.146-.573 2.437.463 2.126 1.706l-.709 2.836.042-.02a.75.75 0 0 1 .67 1.34l-.04.022c-1.147.573-2.438-.463-2.127-1.706l.71-2.836-.042.02a.75.75 0 1 1-.671-1.34l.041-.022ZM12 9a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z",clipRule:"evenodd"}))}const j=I.forwardRef(r);function n({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{fillRule:"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z",clipRule:"evenodd"}))}const D=I.forwardRef(n);function w({nextStep:e}){const[g,M]=(0,I.useState)(""),[t,i]=(0,I.useState)(null);return(0,N.jsxs)("div",{className:"space-y-8",children:[(0,N.jsxs)("div",{children:[(0,N.jsx)("h2",{className:"text-xl font-semibold text-gray-900",children:(0,C.__)("Activate license","fraktvalg")}),(0,N.jsx)("p",{className:"mt-1 text-sm text-gray-500",children:(0,C.__)("Your license will be activated for the domain: ","fraktvalg")+window.location.host})]}),(0,N.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-5 gap-6",children:[(0,N.jsx)("div",{className:"md:col-span-3 bg-white rounded-lg border border-gra-200 p-6",children:(0,N.jsxs)("div",{className:"space-y-4",children:[(0,N.jsxs)("div",{children:[(0,N.jsx)("label",{className:"block text-sm font-medium text-gray-700 mb-1",htmlFor:"license",children:(0,C.__)("License key","fraktvalg")}),(0,N.jsx)("input",{type:"text",name:"license",id:"license",value:g,className:"w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-primary",placeholder:(0,C.__)("Enter your license key","fraktvalg"),onChange:e=>M(e.target.value)})]}),t&&(0,N.jsx)(c,{type:t.type,title:t.title,className:"my-2",children:t.message}),(0,N.jsx)("div",{className:"w-full mt-1",children:(0,N.jsx)(A,{onClick:()=>{i(null),s()({path:"/fraktvalg/v1/settings/api-key",method:"POST",data:{api_key:g}}).then((g=>{e()})).catch((e=>{i({type:"error",title:(0,C.__)("An error was encountered when validating your API key","fraktvalg"),message:e?.message})}))},disabled:!g.length>0,children:(0,C.__)("Activate license","fraktvalg")})})]})}),(0,N.jsxs)("div",{className:"md:col-span-2 bg-tertiary/10 rounded-lg p-6 flex flex-col",children:[(0,N.jsxs)("div",{className:"flex items-center space-x-2 text-custom mb-4",children:[(0,N.jsx)(j,{className:"w-5 h-5"}),(0,N.jsx)("span",{className:"font-medium",children:(0,C.__)("Need a license?","fraktvalg")})]}),(0,N.jsx)("p",{className:"text-sm text-gray-600 mb-4",children:(0,C.__)("To use Fraktvalg you first need to register an account. It only takes a moment to get started.","fraktvalg")}),(0,N.jsxs)("a",{href:"https://Fraktvalg.no?utm_source=plugin&utm_medium=register&utm_campaign=onboarding",className:"mt-auto group inline-flex items-center text-cuistom hover:text-custom-dark font-medium",children:[(0,N.jsx)("span",{children:(0,C.__)("Register at fraktvalg.no","fraktvalg")}),(0,N.jsx)(D,{className:"ml-1 w-4 h-4"})]})]})]})]})}function x({children:e}){return(0,N.jsx)("div",{className:"w-full mt-2 bg-gray-50 rounded-lg p-5 help-content border border-gray-200 space-y-4",children:(0,N.jsx)("div",{className:"text-sm text-gray-600",children:e})})}function T({field:e,name:g,label:M,value:t=!1,callback:i,required:s=!1,children:C}){const[l,a]=(0,I.useState)(t);return(0,N.jsxs)("div",{className:"relative",children:[(0,N.jsxs)("label",{className:"inline-flex items-center cursor-pointer",children:[(0,N.jsx)("input",{name:g,type:"checkbox",checked:t,onChange:e=>{a(e.target.checked),i(e)},required:s,className:"sr-only peer"}),(0,N.jsx)("div",{className:"relative w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 rounded-full peer dark:bg-gray-200 peer-checked:after:translate-x-full rtl:peer-checked:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-primary"}),(0,N.jsx)("span",{className:"ms-3 mr-2 text-sm",children:M})]}),C,e?.stateDescriptions?.enabled&&l&&(0,N.jsx)(x,{children:e?.stateDescriptions?.enabled}),e?.stateDescriptions?.disabled&&!l&&(0,N.jsx)(x,{children:e?.stateDescriptions?.disabled})]})}function L({name:e,label:g,value:M="",placeholder:I="",required:t=!1,callback:i,children:s}){return(0,N.jsxs)("div",{children:[(0,N.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:g}),(0,N.jsx)("input",{name:e,type:"password",value:M,onChange:i,placeholder:I,required:t,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),s]})}function u({name:e,label:g,value:M="",placeholder:I="",required:t=!1,callback:i,children:s}){return(0,N.jsxs)("div",{children:[(0,N.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:g}),(0,N.jsx)("input",{name:e,type:"text",value:M,onChange:i,placeholder:I,required:t,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),s]})}function o({name:e,label:g,value:M="",placeholder:t="",required:i=!1,callback:s,children:C,...l}){const[a,A]=(0,I.useState)(null!=M?M:0);return(0,N.jsxs)("div",{children:[(0,N.jsxs)("div",{className:"flex items-center justify-between",children:[(0,N.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:g}),(0,N.jsx)("input",{name:e,type:"number",value:a,onChange:s,placeholder:t,required:i,min:"0",className:"hidden"}),(0,N.jsxs)("div",{className:"inline-flex items-center gap-4",children:[(0,N.jsx)("button",{onClick:()=>{a>0&&A(a-1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"-"}),(0,N.jsx)("span",{className:"text-lg font-mono font-semibold",children:a}),(0,N.jsx)("button",{onClick:()=>{A(a+1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"+"})]})]}),C]})}function d({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"}))}const y=I.forwardRef(d);function m({includeOptional:e=!1,provider:g,fields:M,callback:t}){const[i,s]=(0,I.useState)({}),[l,a]=(0,I.useState)(!1),A=e=>{"checkbox"!==e.target.type?(s({...i,[e.target.name]:e.target.value}),t(g,i)):s({...i,[e.target.name]:e.target.checked})};(0,I.useEffect)((()=>{M.forEach((e=>{e?.value&&s({...i,[e.name]:e.value})}))}),[]);const c=e=>{switch(e.type){case"boolean":return(0,N.jsx)(T,{name:e.name,label:e.label,value:i?.[e.name],callback:A,required:e.required,field:e,children:(0,N.jsx)(N.Fragment,{children:e?.description&&(0,N.jsx)(x,{children:e?.description})})});case"password":return(0,N.jsx)(L,{name:e.name,label:e.label,value:i?.[e.name],placeholder:e.placeholder,callback:A,required:e.required,field:e,children:(0,N.jsx)(N.Fragment,{children:e?.description&&(0,N.jsx)(x,{children:e?.description})})});case"number":return(0,N.jsx)(o,{name:e.name,label:e.label,value:i?.[e.name],placeholder:e.placeholder,callback:A,required:e.required,field:e,children:(0,N.jsx)(N.Fragment,{children:e?.description&&(0,N.jsx)(x,{children:e?.description})})});default:return(0,N.jsx)(u,{name:e.name,label:e.label,value:i?.[e.name],placeholder:e.placeholder,callback:A,required:e.required,field:e,children:(0,N.jsx)(N.Fragment,{children:e?.description&&(0,N.jsx)(x,{children:e?.description})})})}};return(0,N.jsx)(N.Fragment,{children:M.flatMap(((g,M)=>g?.optional&&!e?[]:(0,N.jsxs)("div",{children:[c(g),g?.help&&(0,N.jsxs)("div",{className:"mt-2",children:[(0,N.jsxs)("button",{type:"button",className:"text-sm text-custom hover:text-custom-dark flex items-center cursor-pointer help-toggle",onClick:()=>a(!l),children:[(0,N.jsx)(y,{className:"w-5 h-5 mr-1"}),(0,N.jsx)("span",{children:g?.help?.label||(0,C.__)("Help","fraktvalg")})]}),l&&(0,N.jsxs)(x,{children:[(0,N.jsx)("p",{children:g?.help?.text}),g?.help?.url?.link&&(0,N.jsx)("div",{className:"mt-3",children:(0,N.jsxs)("a",{href:g?.help?.url?.link,target:"_blank",className:"inline-flex items-center text-custom hover:text-custom-dark font-medium",children:[(0,N.jsx)("span",{children:g?.help?.url?.label}),(0,N.jsx)(D,{className:"ml-1 w-4 h-4"})]})})]})]})]},M)))})}function z({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{fillRule:"evenodd",d:"M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z",clipRule:"evenodd"}))}const p=I.forwardRef(z);function h({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{fillRule:"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z",clipRule:"evenodd"}))}const O=I.forwardRef(h);function b({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const k=I.forwardRef(b);function E({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const S=I.forwardRef(E);function Y({logo:e=null,...g}){const{alt:M=""}=g;return e?e.startsWith("http")?(0,N.jsx)("img",{src:e,alt:M,...g}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,N.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:M,...g})):(0,N.jsx)(S,{...g})}function v({supplierId:e,supplier:g,title:M,content:t,isConnected:i=!1,visible:s=!0,classNames:l="",innerClassNames:A=""}){const[c,r]=(0,I.useState)(s),j=a("border bg-white rounded-md",l),n=a("border-t-2 border-gray-100 p-4",A);return(0,N.jsxs)("div",{className:j,children:[(0,N.jsx)("button",{className:"flex w-full p-4 items-center justify-between",onClick:()=>r(!c),children:(0,N.jsx)("h2",{className:"text-lg font-bold w-full",children:(0,N.jsxs)("div",{className:"flex item-center justify-between focus:outline-none w-full",children:[(0,N.jsxs)("div",{className:"flex",children:[g?.logo&&(0,N.jsx)("div",{children:(0,N.jsx)(Y,{logo:g?.logo,alt:M,className:"w-8 h-8 mr-2"})}),(0,N.jsx)("div",{className:"inline-flex items-center gap-4",children:(0,N.jsx)("span",{children:M})})]}),(0,N.jsxs)("div",{className:"flex items-center gap-4",children:[i&&(0,N.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-green-100 text-green-600",children:(0,C.__)("Connected","fraktvalg")}),!i&&(0,N.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-red-100 text-red-600",children:(0,C.__)("Disconnected","fraktvalg")}),c?(0,N.jsx)(p,{className:"h-6 w-6 text-gray-600"}):(0,N.jsx)(O,{className:"h-6 w-6 text-gray-600"})]})]})})}),c&&(0,N.jsx)("div",{className:n,children:t})]})}function U({nextStep:e}){const[g,M]=(0,I.useState)({}),[t,i]=(0,I.useState)(null),[l,a]=(0,I.useState)(!0),[c,r]=(0,I.useState)(null),[j,n]=(0,I.useState)(""),[D,w]=(0,I.useState)([]),[x,T]=(0,I.useState)({}),L=(e,g)=>{T({...x,[e]:g})};return(0,I.useEffect)((()=>{i(null),s()({path:"fraktvalg/v1/settings/providers",method:"GET"}).then((e=>{M(e?.data||{})})).catch((e=>{i(e?.message)})).then((()=>{a(!1)}))}),[]),l?(0,N.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,N.jsx)(k,{className:"h-8 w-8 animate-spin text-primary"}),(0,N.jsx)("div",{className:"text-lg",children:"Fetching available providers..."})]}):(0,N.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[(0,N.jsx)("span",{className:"text-xl",children:"Nesten ferdig, vi trenger å vite hvilke fraktleverandører du har en avtale med."}),Object.keys(g).map((e=>(0,N.jsx)(v,{title:g[e]?.name,supplierId:e,supplier:g[e],visible:!1,isConnected:D.includes(e),content:(0,N.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[j===e&&(0,N.jsxs)("div",{className:"absolute w-full h-full top-0 left-0 bg-white flex flex-col justify-center items-center gap-2",children:[(0,N.jsx)(k,{className:"h-6 w-6 animate-spin text-primary"}),(0,N.jsx)("span",{children:(0,C.__)("Connecting provider, one moment please...","fraktvalg")})]}),(0,N.jsx)(m,{provider:e,fields:g[e]?.fields||[],callback:L}),(0,N.jsx)(A,{type:"button",onClick:()=>(e=>{n(e),s()({path:"fraktvalg/v1/settings/providers/store",method:"POST",data:{providerId:e,fieldValues:x[e]}}).then((g=>{n(""),w([...D,e])})).catch((e=>{console.error(e)}))})(e),children:(0,C.__)("Connect to this provider","fraktvalg")})]})},e))),(0,N.jsx)(A,{type:"button",onClick:e,children:(0,C.__)("Next step","fraktvalg")})]})}function f({title:e,titleId:g,...M},t){return I.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":g},M),e?I.createElement("title",{id:g},e):null,I.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const Q=I.forwardRef(f);function G({nextStep:e}){return(0,N.jsxs)("div",{className:"flex flex-col justify-center items-center gap-4",children:[(0,N.jsx)("div",{children:(0,N.jsx)(Q,{className:"w-20 h-20 text-primary"})}),(0,N.jsx)("span",{className:"text-2xl text-center",children:(0,C.__)("Fraktvalg is now set up and ready to use.","fraktvalg")}),(0,N.jsx)(A,{onClick:()=>e(),children:(0,C.__)("Finish setup","fraktvalg")})]})}function B({current:e=!1,future:g=!1,past:M=!1,setStep:I=null,label:t=null,step:i}){const s="flex items-center justify-center w-8 h-8 border-2 border-gray-300 bg-white rounded-full shrink-0"+(e?" border-primary text-primary":"")+(M?" border-primary/80 text-primary/90":""),C="flex items-center text-custom space-x-2.5"+(null!==I&&!0===M?" cursor-pointer":"");return(0,N.jsxs)("li",{className:C,onClick:()=>{!0===M&&null!==I&&I(i)},children:[(0,N.jsx)("span",{className:s,children:(0,N.jsx)("span",{className:"font-medium",children:e?(0,N.jsx)("strong",{children:i}):i})}),t&&(0,N.jsx)("span",{children:(0,N.jsx)("div",{className:"font-medium leading-tight",children:e?(0,N.jsx)("strong",{children:t}):t})})]})}function Z({currentStep:e,steps:g,labels:M,setStep:I=null,...t}){return(0,N.jsxs)("div",{className:"mb-10",children:[(0,N.jsxs)("span",{className:"sr-only",children:["Step ",e," of ",g]}),(0,N.jsx)("ol",{className:"items-center w-full space-y-4 sm:flex sm:space-x-8 sm:space-y-0 sm:justify-center max-w-2xl mx-auto",children:[...Array(g)].map(((g,t)=>(0,N.jsx)(B,{current:t+1===e,past:t+1<e,future:t+1>e,setStep:I,step:t+1,label:M[t]},t)))})]})}function X({title:e,children:g,open:M=!1}){const[t,i]=(0,I.useState)(M||!1);return(0,N.jsxs)("div",{className:"border bg-white rounded-md",children:[(0,N.jsxs)("button",{className:"w-full flex p-4 justify-between",onClick:()=>i(!t),children:[(0,N.jsx)("h2",{className:"text-lg text-left font-bold w-full",children:e}),(0,N.jsx)("div",{className:"relative inline-block",children:t?(0,N.jsx)(p,{className:"h-6 w-6 text-primary"}):(0,N.jsx)(O,{className:"h-6 w-6 text-primary"})})]}),t&&(0,N.jsx)("div",{className:"p-4",children:g})]})}function F({nextStep:e}){const[g,M]=(0,I.useState)(null),[t,i]=(0,I.useState)(!1),[l,a]=(0,I.useState)({freight:{addedCost:0,undersell:10,custom:{name:(0,C.__)("Shipping & handling","fraktvalg"),price:100}},names:[]}),r=e=>{switch(e.target.name){case"freight[addedCost]":a({...l,freight:{...l.freight,addedCost:e.target.value}});break;case"freight[undersell]":a({...l,freight:{...l.freight,undersell:e.target.value}});break;case"freight[custom][name]":a({...l,freight:{...l.freight,custom:{...l.freight.custom,name:e.target.value}}});break;case"freight[custom][price]":a({...l,freight:{...l.freight,custom:{...l.freight.custom,price:e.target.value}}})}};return(0,N.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[(0,N.jsx)("span",{className:"text-xl",children:(0,C.__)("Almost there! Are there any optional settings you would like to change?","fraktvalg")}),(0,N.jsx)(X,{title:(0,C.__)("Backup shipping option","fraktvalg"),open:!0,children:(0,N.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[(0,N.jsx)("p",{children:(0,C.__)("If Fraktvalg should ever become unavailable, create a shipping alternative that will be used instead.","fraktvalg")}),(0,N.jsx)(u,{label:(0,C.__)("Shipping option name","fraktvalg"),name:"freight[custom][name]",value:l.freight.custom.name,callback:r}),(0,N.jsx)(o,{label:(0,C.__)("Shipping option cost"),name:"freight[custom][price]",value:l.freight.custom.price,callback:r})]})}),(0,N.jsx)(X,{title:(0,C.__)("Shipping cost adjustments","fraktvalg"),children:(0,N.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[(0,N.jsx)("p",{children:(0,C.__)("Safeguard your shipping costs with these optional alternatives.","fraktvalg")}),(0,N.jsx)("div",{children:(0,N.jsx)(o,{label:(0,C.__)("Add an optional surcharge to all shipping options","fraktvalg"),name:"freight[addedCost]",value:l.freight.addedCost,callback:r,children:(0,N.jsx)("p",{className:"text-xs italic",children:(0,C.__)("Additional shipping surcharges are meant to cover administrative- and handling costs, and is automatically added to all shipping alternatives.","fraktvalg")})})}),(0,N.jsx)("div",{children:(0,N.jsx)(o,{label:(0,C.__)("Fixed discount for prioritized shipping providers","fraktvalg"),name:"freight[undersell]",value:l.freight.undersell,callback:r,children:(0,N.jsx)("p",{className:"text-xs italic",children:(0,C.__)("If you have chosen a prioritized shipping provider, they will always be cheaper than the competitors by the amount specified here.","fraktvalg")})})})]})}),g&&(0,N.jsx)(c,{type:g.type,title:g.title,children:g.message}),(0,N.jsx)(A,{type:"button",onClick:()=>{M(null),i(!1),s()({path:"/fraktvalg/v1/settings/optional-settings",method:"POST",data:{options:l}}).then((e=>{M({type:e?.type,title:e?.title,message:e?.message}),i(!0)})).catch((e=>{M({type:"error",title:(0,C.__)("Error saving optional settings","fraktvalg"),message:e?.message})}))},children:(0,C.__)("Save optional settings","fraktvalg")}),t&&(0,N.jsx)(A,{type:"button",onClick:e,children:(0,C.__)("Finish setup","fraktvalg")})]})}function R(){const[e,g]=(0,I.useState)(1),M=[(0,C.__)("License","fraktvalg"),(0,C.__)("Providers","fraktvalg"),(0,C.__)("Settings","fraktvalg"),(0,C.__)("Finished","fraktvalg")];e>M.length&&s()({path:"/fraktvalg/v1/onboarding/complete",method:"POST"}).then((()=>{window.location.href="index.php"}));const t=()=>{g(e+1)};return(0,N.jsx)("div",{className:"top-0 left-0 w-full",children:(0,N.jsx)("div",{className:"flex justify-center p-8 mt-16",children:(0,N.jsxs)("div",{className:"grid gap-8",children:[(0,N.jsx)("div",{className:"m-auto",children:(0,N.jsx)("img",{src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMzUwIgogICBoZWlnaHQ9Ijk2LjI3NzM1OSIKICAgdmlld0JveD0iMCAwIDkyLjYwNDE1NiAyNS40NzMzODEiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzEiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTI1Mi4zNDE1NiwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTAzIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMjgwLjk3OTcxLC03OS41OTE4MDIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTAzIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMDUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zMDAuNTQ2MzgsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMDUiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwNyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTMzMi42ODExOCwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwNyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTA5Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMzYzLjIyNDYzLC03MS4yMTg3NTIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTA5IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTEiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zODIuODQ4MTYsLTc5Ljc0OTk5OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTEiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExMyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTQxMi41OTQ3NCwtNzguODk2NDg0KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExMyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTE1Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTIzMS42MzE5LC00OTYuNzEwOTYpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTE1IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTciPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC00NTUuNjIxMzQsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTciIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExOSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY5OC42ODA4OSwtNTc1LjAyNzM2KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExOSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTIxIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTgwLjY3NDc4LC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTIxIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjMiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC03NTEuMTA3NDcsLTUyMi4yOTEwNCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjMiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEyNSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY3Mi4wMDIxOSwtNDk1LjkyMTg5KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEyNSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTI3Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTY3LjQ4MjQzLC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTI3IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjkiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC02NDUuOTQyMTcsLTQ5NS45MjE4OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjkiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEzMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTEzNS4xOTA5NSwtNDIuMDk5NjExKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEzMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgogIDxnCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA4MDY4NDUsLTAuMzc3MjQwNDgpIj4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwMCIKICAgICAgIGQ9Im0gNTkxLjI2NjYsNTExLjczOTE3IHYgLTgyLjgxNTMxIGggNDkuODYxNDUgdiAxMy44NTgxNSBoIC0zNi4wMDA0OSB2IDIwLjY0Njc5IGggMzYuMDAwNDkgdiAxMy44MDI2MSBoIC0zNi4wMDA0OSB2IDM0LjUwNzc2IHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTQ2LjU0ODIyNiwtNDguNTk4OTE1KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDEwMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMDIiCiAgICAgICBkPSJtIDYyMC41NDE5OSw1MDEuNjU5MTUgdiAtNjIuMTEyNDkgaCAxMi4yNTEyMiB2IDE1LjEyNTYxIGwgLTEuNDk5NTEsLTEuOTU0NTMgYyAwLjc3MTYxLC0yLjA3MTIzIDEuNzk0MTksLTMuOTU4NDkgMy4wODAyLC01LjY2MzY5IDEuMjg1ODksLTEuNzA1MjYgMi44MjY5MSwtMy4xMTc2OCA0LjYyOTAzLC00LjIyOTQzIDEuNTM1MTYsLTEuMDM0NjEgMy4yMjgzOSwtMS44NDk2NyA1LjA4OTk3LC0yLjQ0MzEyIDEuODU5NjEsLTAuNTkxNDkgMy43Njg1NSwtMC45NTc0NiA1LjcyNDk3LC0xLjA5MTk4IDEuOTU0NTksLTAuMTM0NTIgMy44NDk3MywtMC4wNDk0IDUuNjg5NDUsMC4yNTcxNCB2IDEyLjk0MTU5IGMgLTEuODM5NzIsLTAuNTM4MDkgLTMuOTU2NTQsLTAuNzEwMiAtNi4zNTIxNywtMC41MTgzMSAtMi4zOTk0MSwwLjE5IC00LjU1MzgzLDAuODYyNTUgLTYuNDcwODIsMi4wMTM4NiAtMS45MTY3NSwxLjAzMjcxIC0zLjQ3OTYyLDIuMzU2MDcgLTQuNjg2MjgsMy45NjYzIC0xLjIwODc0LDEuNjEyMzEgLTIuMTAyOTEsMy40NDQyMiAtMi42NzQ2OSw1LjQ5NTU1IC0wLjU3NTU2LDIuMDQ5NTYgLTAuODY0MzgsNC4yNjMxOCAtMC44NjQzOCw2LjYzODk4IHYgMzEuNTc0NTIgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNDIuNzkyODYzLC00Ny4yNzcxMDEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTAzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwNCIKICAgICAgIGQ9Im0gNjYxLjM2Mjc5LDUwNC4wODE0OCBjIC00LjQ4NjU3LDAgLTguMjgyODMsLTAuODU0NjEgLTExLjM5MDUsLTIuNTU5ODEgLTMuMTAxOTMsLTEuNzA1MiAtNS40NTQxLC0zLjk3ODIxIC03LjA0MjYsLTYuODE1IC0xLjU5MjQxLC0yLjgzNjc0IC0yLjM4NTc0LC01Ljk2MjQxIC0yLjM4NTc0LC05LjM3NDg4IDAsLTIuOTkwOTcgMC40OTY1OCwtNS42ODM0MSAxLjQ5MTU3LC04LjA4MTA2IDAuOTk5MDMsLTIuMzk1NjMgMi41MzQxOCwtNC40NjQ4NCA0LjYwMTU2LC02LjIxMTYxIDIuMDczLC0xLjc0Mjg2IDQuNzU1NSwtMy4xNjkxMiA4LjA1MzIzLC00LjI4Mjg5IDIuNDkyNTUsLTAuODA1MTIgNS40MTYzOCwtMS41MzMwOSA4Ljc2OTQxLC0yLjE4Mzk2IDMuMzU3MTcsLTAuNjUwODIgNi45OTkxNCwtMS4yNTYxNyAxMC45Mjc4NSwtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQzNTgsLTEuMTU3MjkgMTIuMzM2MzEsLTEuODEyMDEgbCAtNC45NDU2OCwyLjgxODkxIGMgMC4wMzc2LC00LjI5MjczIC0wLjkxOTkyLC03LjQ1Nzg5IC0yLjg3NDI3LC05LjQ4OTU3IC0xLjk1NDU5LC0yLjAzMTY3IC01LjI1MjIsLTMuMDQ4NDYgLTkuODkzMTksLTMuMDQ4NDYgLTIuNzk5MTksMCAtNS41MDE0NiwwLjY1MjgzIC04LjExMDg0LDEuOTU0NTMgLTIuNjA3MTgsMS4zMDU2IC00LjQyNzI0LDMuNTQ4OTUgLTUuNDYxNzksNi43MzE4NyBsIC0xMi42NTA4OCwtMy45NzAyNyBjIDEuNTMzMiwtNS4yNTIyIDQuNDU1MDgsLTkuNDY3NzggOC43Njk1MywtMTIuNjUyNzcgNC4zMTA1NSwtMy4xODA5NyAxMC4xMzA2MiwtNC43NzM0NCAxNy40NTM5OCwtNC43NzM0NCA1LjUyMTI0LDAgMTAuMzgxODQsMC45MDAwMiAxNC41Nzk1OSwyLjcwMjIxIDQuMTk3NzYsMS44MDIxOCA3LjMxMzQ4LDQuNzU1NjEgOS4zNDUyMiw4Ljg1ODUyIDEuMTExNjksMi4xODM5NiAxLjc4NDE4LDQuNDE5MzcgMi4wMTE3Miw2LjcwMDI2IDAuMjMxNTYsMi4yODA5NCAwLjM0ODI2LDQuNzY1NjIgMC4zNDgyNiw3LjQ0NjEgdiAzOC4xMzAzNyBIIDY4My4xNTcxIHYgLTEzLjQ1Nzg4IGwgMi4wMTM5MiwyLjE4Nzg2IGMgLTIuNzk5MzIsNC40ODQ2OCAtNi4wNjU0Myw3Ljc3MjU5IC05LjgwNDIsOS44NjE1NyAtMy43Mzg3NywyLjA4ODkzIC04LjQwNzU5LDMuMTM1NDQgLTE0LjAwNDAzLDMuMTM1NDQgbSAyLjc1OTc3LC0xMS4wNDI0OCBjIDMuMTQzNDMsMCA1LjgyNzg4LC0wLjU1NTg1IDguMDUxNTEsLTEuNjY3NiAyLjIyMzM5LC0xLjExMzgzIDMuOTk1ODUsLTIuNDc0NzkgNS4zMTkyMiwtNC4wODUwOCAxLjMyMzQ4LC0xLjYwODM0IDIuMjEzNzQsLTMuMTI1NjEgMi42NzY2MywtNC41NDIgMC43MjYwOCwtMS43NjQ1OCAxLjEzNzU4LC0zLjc4NjMxIDEuMjM0MzgsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2NDgsLTQuMTMwNjEgMC4xNDY0OCwtNS41NTA5IGwgNC4yNTMwNSwxLjI2NTk5IGMgLTQuMTc3OTgsMC42NTA5NCAtNy43NjQ1MiwxLjIyNjU2IC0xMC43NTM1NCwxLjcyNzExIC0yLjk5MTIxLDAuNDk2NTIgLTUuNTYwNzksMC45NjU0IC03LjcwNzI3LDEuNDA2NSAtMi4xNDgzMiwwLjQ0MTEgLTQuMDQzNDYsMC45Mjk3NSAtNS42OTMyNCwxLjQ2NzgzIC0xLjYxMDM1LDAuNTczNjcgLTIuOTcxNDQsMS4yNDYyOCAtNC4wODUwOCwyLjAxMTg0IC0xLjExMTcsMC43Njc2NCAtMS45NjI0MSwxLjY0OTg0IC0yLjU1Nzg2LDIuNjQ2OTEgLTAuNTk3NDIsMC45OTUgLTAuODkyMjIsMi4xNjQxMyAtMC44OTIyMiwzLjUwNzMzIDAsMS41MzUxNSAwLjM4Mzc5LDIuODg0MjggMS4xNTEzNyw0LjA1NTQyIDAuNzY3NTgsMS4xNjkxMyAxLjg4NzIxLDIuMDk2OTIgMy4zNjQ5OSwyLjc4NzM1IDEuNDc1NzEsMC42OTIzMiAzLjMwNzYyLDEuMDM2NTYgNS40OTE1OCwxLjAzNjU2IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC00MC4yMjcwNTQsLTQ3LjM2ODI3OSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMDUpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTA2IgogICAgICAgZD0ibSA2NzMuMzkzOTIsNTExLjczOTE3IDAuMTE0MDEsLTgyLjgxNTMxIGggMTQuMDM2MjYgdiA1MC42MDk0MyBsIDIyLjcxNDk3LC0yOS45MDcwNCBoIDE3LjMxMDkxIGwgLTI0LjA5NjgsMzEuMDU3ODYgMjYuMTY3OTcsMzEuMDU1MDYgaCAtMTguMzQ3OTEgbCAtMjMuNzQ5MTQsLTI5LjkwNjk5IHYgMjkuOTA2OTkgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtMzYuMDEzMTY5LC00OC41OTg5MTUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA3KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwOCIKICAgICAgIGQ9Im0gNzA5LjQ0OTg5LDQ0Ny45MjAxNCBoIDI3LjIwMjUxIHYgMTAuODcwNDIgaCAtMjcuMjAyNTEgeiBtIDI3LjIwMjUxLDYyLjExMjQ4IGMgLTQuMTA0NzMsMC43NjU2OSAtOC4xMTg1MywxLjEwMTg3IC0xMi4wNDkzMSwxLjAwODk4IC0zLjkyODgzLC0wLjEwMDk2IC03LjQ1MDA3LC0wLjgyNzAzIC0xMC41NTE4OCwtMi4xODc5OSAtMy4xMDc3OSwtMS4zNTkwMSAtNS40NjU5NCwtMy41MTczNCAtNy4wNzQyMiwtNi40NzA3NyAtMS40MjAyOSwtMi42ODI1NSAtMi4xNjgwOSwtNS40MjIzNiAtMi4yNDMyOSwtOC4yMjM1NyAtMC4wNzkyLC0yLjc5OTEzIC0wLjExNjgyLC01Ljk1ODM3IC0wLjExNjgyLC05LjQ4NzU1IFYgNDMwLjY2OCBoIDEzLjgwMjM3IHYgNTMuMTk2NTkgYyAwLDIuNDkyNTYgMC4wMjk3LDQuNjgwNTUgMC4wODY5LDYuNTU3ODYgMC4wNTk2LDEuODc5MzQgMC40NDkxLDMuNDEyNDggMS4xODA5MSw0LjYwMTM4IDEuMzc4OTEsMi4yOTg3MSAzLjU4MjY0LDMuNTg0NDggNi42MTM0MSwzLjg1MzU4IDMuMDI4NTYsMC4yNjUwOCA2LjQ3ODc2LDAuMTEyNzMgMTAuMzUxOTIsLTAuNDYwOTQgdiAxMS42MTYxNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC0zMi4wMDc5NiwtNDguMzc1MDcpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA5KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExMCIKICAgICAgIGQ9Im0gNzQ3LjIyMDAzLDUwMS41MDE5MiAtMjIuNTQyODQsLTYyLjExMjkxIGggMTMuODYxMDggbCAxNS42NDI4Miw0NS4wMzI4MyAxNS41ODQ2LC00NS4wMzI4MyBoIDEzLjkxNjI2IGwgLTIyLjU0MjQ4LDYyLjExMjkxIHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI5LjQzNDY5OSwtNDcuMjU2MzU2KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTIiCiAgICAgICBkPSJtIDc3NS45MDY5Miw1MDQuMDgxNDggYyAtNC40ODg2NSwwIC04LjI4Mjg0LC0wLjg1NDYxIC0xMS4zODg3OSwtMi41NTk4MSAtMy4xMDM3NiwtMS43MDUyIC01LjQ1NTgxLC0zLjk3ODIxIC03LjA0NDMxLC02LjgxNSAtMS41OTI1MywtMi44MzY3NCAtMi4zODc4MiwtNS45NjI0MSAtMi4zODc4MiwtOS4zNzQ4OCAwLC0yLjk5MDk3IDAuNDk2NDYsLTUuNjgzNDEgMS40OTM1MywtOC4wODEwNiAwLjk5OTAyLC0yLjM5NTYzIDIuNTMyMSwtNC40NjQ4NCA0LjYwMzM5LC02LjIxMTYxIDIuMDcxMjksLTEuNzQyODYgNC43NTM2NiwtMy4xNjkxMiA4LjA1MTM5LC00LjI4Mjg5IDIuNDkwNiwtMC44MDUxMiA1LjQxNjM5LC0xLjUzMzA5IDguNzY5NTQsLTIuMTgzOTYgMy4zNTUxLC0wLjY1MDgyIDYuOTk4OSwtMS4yNTYxNyAxMC45Mjc3MywtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQxNSwtMS4xNTcyOSAxMi4zMzYzLC0xLjgxMjAxIGwgLTQuOTQ1NjgsMi44MTg5MSBjIDAuMDM3NiwtNC4yOTI3MyAtMC45MTk4LC03LjQ1Nzg5IC0yLjg3NDM5LC05LjQ4OTU3IC0xLjk1NDQ2LC0yLjAzMTY3IC01LjI1MjE5LC0zLjA0ODQ2IC05Ljg5NTAxLC0zLjA0ODQ2IC0yLjc5NzI1LDAgLTUuNDk5NjQsMC42NTI4MyAtOC4xMDg3NywxLjk1NDUzIC0yLjYwNzQyLDEuMzA1NiAtNC40MjczNywzLjU0ODk1IC01LjQ2MTkxLDYuNzMxODcgbCAtMTIuNjUyODQsLTMuOTcwMjcgYyAxLjUzNTE2LC01LjI1MjIgNC40NTQ5NiwtOS40Njc3OCA4Ljc2OTU0LC0xMi42NTI3NyA0LjMxMjYyLC0zLjE4MDk3IDEwLjEzMDQ5LC00Ljc3MzQ0IDE3LjQ1Mzk4LC00Ljc3MzQ0IDUuNTIxMjQsMCAxMC4zODE3MSwwLjkwMDAyIDE0LjU3OTU5LDIuNzAyMjEgNC4xOTc3NSwxLjgwMjE4IDcuMzE1NDIsNC43NTU2MSA5LjM0NTA5LDguODU4NTIgMS4xMTM3NywyLjE4Mzk2IDEuNzg2MzcsNC40MTkzNyAyLjAxMzkxLDYuNzAwMjYgMC4yMjkzNywyLjI4MDk0IDAuMzQ2Miw0Ljc2NTYyIDAuMzQ2Miw3LjQ0NjEgdiAzOC4xMzAzNyBoIC0xMi4xMzY0OCB2IC0xMy40NTc4OCBsIDIuMDExODQsMi4xODc4NiBjIC0yLjc5NzI0LDQuNDg0NjggLTYuMDYzMjMsNy43NzI1OSAtOS44MDIyNCw5Ljg2MTU3IC0zLjc0MDczLDIuMDg4OTMgLTguNDA3NDgsMy4xMzU0NCAtMTQuMDAzNzksMy4xMzU0NCBtIDIuNzU5NTIsLTExLjA0MjQ4IGMgMy4xNDM0NCwwIDUuODI4MDEsLTAuNTU1ODUgOC4wNTEzOSwtMS42Njc2IDIuMjIxNTYsLTEuMTEzODMgMy45OTYyMiwtMi40NzQ3OSA1LjMxOTU4LC00LjA4NTA4IDEuMzIzNDksLTEuNjA4MzQgMi4yMTM2MywtMy4xMjU2MSAyLjY3NDU3LC00LjU0MiAwLjcyNzksLTEuNzY0NTggMS4xMzk0LC0zLjc4NjMxIDEuMjM2NDUsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2MzYsLTQuMTMwNjEgMC4xNDYzNiwtNS41NTA5IGwgNC4yNTMxNywxLjI2NTk5IGMgLTQuMTc4MSwwLjY1MDk0IC03Ljc2NDUyLDEuMjI2NTYgLTEwLjc1MzY2LDEuNzI3MTEgLTIuOTkxMDksMC40OTY1MiAtNS41NjA5MSwwLjk2NTQgLTcuNzA5MjMsMS40MDY1IC0yLjE0NjM2LDAuNDQxMSAtNC4wNDE1LDAuOTI5NzUgLTUuNjkzMjQsMS40Njc4MyAtMS42MDgyNywwLjU3MzY3IC0yLjk3MTQzLDEuMjQ2MjggLTQuMDgzMTMsMi4wMTE4NCAtMS4xMDk4NiwwLjc2NzY0IC0xLjk2MjUyLDEuNjQ5ODQgLTIuNTU5OTMsMi42NDY5MSAtMC41OTUzNCwwLjk5NSAtMC44OTAwMiwyLjE2NDEzIC0wLjg5MDAyLDMuNTA3MzMgMCwxLjUzNTE1IDAuMzgxNzIsMi44ODQyOCAxLjE1MTI1LDQuMDU1NDIgMC43Njc0NSwxLjE2OTEzIDEuODg3MDgsMi4wOTY5MiAzLjM2NDg3LDIuNzg3MzUgMS40NzU4MywwLjY5MjMyIDMuMzA1NzgsMS4wMzY1NiA1LjQ5MTU3LDEuMDM2NTYiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI1LjUzMzk4NiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTQiCiAgICAgICBkPSJNIDAsMCBIIDEzLjg2MDk2IFYgODQuNTQxNzQ4IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDgxLjg2NzU4Myw3LjQyMDM1NzYpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTE1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExNiIKICAgICAgIGQ9Im0gODI3LjQyNTksNTA0LjA3OTUzIGMgLTUuNzE0OTYsMCAtMTAuNzAwMzEsLTEuNDM4MTcgLTE0Ljk1MzQ5LC00LjMxMjU2IC00LjI1NzA4LC0yLjg3NDMzIC03LjU1NDgxLC02Ljc4NTI4IC05Ljg5MTExLC0xMS43MzA4NCAtMi4zNDAyMSwtNC45NDk2NCAtMy41MTEyMywtMTAuNTI0MjkgLTMuNTExMjMsLTE2LjczNzg1IDAsLTYuMjg2ODcgMS4xNzg5NSwtMTEuODk1MDggMy41MzkwNiwtMTYuODIwOTIgMi4zNTU5NiwtNC45Mjc4IDUuNzAzMTMsLTguODE4OTEgMTAuMDM1NCwtMTEuNjc1NDggNC4zMzI0LC0yLjg1NDY4IDkuNDMyMjUsLTQuMjg0ODUgMTUuMjk3NzMsLTQuMjg0ODUgNS45MDI5NSwwIDEwLjg1ODUyLDEuNDMwMTcgMTQuODY2MzMsNC4yODQ4NSA0LjAwNDAzLDIuODU2NTcgNy4wNDQ2OCw2Ljc1NTYyIDkuMTE1NzMsMTEuNzA1MTQgMi4wNjkyMSw0Ljk0NTYyIDMuMTA1ODMsMTAuNTQxOTkgMy4xMDU4MywxNi43OTEyNiAwLDYuMTc0MDcgLTEuMDM2NjIsMTEuNzQyNzQgLTMuMTA1ODMsMTYuNzA4MTMgLTIuMDcxMDUsNC45NjMzOCAtNS4xNTcxMSw4Ljg4NjIzIC05LjI2MDE0LDExLjc2MDU2IC00LjEwMDgzLDIuODc0MzkgLTkuMTgyODYsNC4zMTI1NiAtMTUuMjM4MjgsNC4zMTI1NiBtIDEuMjA0NzIsMjcuNjA4MTUgYyAtMy40NDgsMCAtNi43NTU1LC0wLjUzODA4IC05LjkxODgzLC0xLjYxMjI0IC0zLjE2MzA4LC0xLjA3MjE0IC02LjAxMTcyLC0yLjYxNTIzIC04LjU0MTg3LC00LjYyOTAzIC0yLjUzMDI3LC0yLjAxMzkxIC00LjYwMTU2LC00LjQzOTE1IC02LjIwOTcxLC03LjI3NTg4IGwgMTIuNzY1MzgsLTYuMzI2NDcgYyAxLjE4ODk2LDIuMjYzMTIgMi44Njg1MywzLjk0MDY3IDUuMDMyNzEsNS4wMzI2NSAyLjE2ODIxLDEuMDkxOTggNC40Nzg2NCwxLjYzOCA2LjkzMTc2LDEuNjM4IDIuODc0MjcsMCA1LjQ0MjE0LC0wLjUwODQyIDcuNzA1MDgsLTEuNTIzMjUgMi4yNjEyMywtMS4wMTQ5IDQuMDE3ODIsLTIuNTEyNDYgNS4yNjIyMSwtNC40ODQ2OSAxLjI0NDI2LC0xLjk3ODI3IDEuODMxNzksLTQuNDM3MTMgMS43NTQ2NCwtNy4zOTA2MiB2IC0xNy42NTU3NiBoIDEuNzI2OTMgViA0NDAuMjQyIGggMTIuMTMyNjkgdiA2NS4xMDE2MyBjIDAsMS41NzQ2NCAtMC4wNjc1LDMuMDgwMTQgLTAuMTk5ODMsNC41MTYyOSAtMC4xMzQ1MiwxLjQzODE4IC0wLjM1NjA4LDIuODQ4NjQgLTAuNjYyODQsNC4yMjc0MiAtMC45MTk4LDQuMDI1NzYgLTIuNjgyMzgsNy4zMzEzNiAtNS4yODk4LDkuOTIwOSAtMi42MDkxMywyLjU4NzUyIC01LjgzNzY1LDQuNTE0MzQgLTkuNjg5MzMsNS43ODA0IC0zLjg1NTU5LDEuMjY0MDkgLTguMTE4NTMsMS44OTkwNCAtMTIuNzk5MTksMS44OTkwNCBtIDAuOTIxODcsLTQwLjAyOTQ4IGMgMy43MTcxNiwwIDYuNzE4MTQsLTAuODUyNTQgOS4wMDMwNSwtMi41NTk4MSAyLjI3Njk4LC0xLjcwNTIgMy45NDY1NCwtNC4wOTA5NCA1LjAwMDg2LC03LjE1OTE4IDEuMDU0NDQsLTMuMDY2MjkgMS41ODI1MiwtNi42MTMyOCAxLjU4MjUyLC0xMC42NDA5MyAwLC00LjA2MzI5IC0wLjUyODA4LC03LjYxODE3IC0xLjU4MjUyLC0xMC42Njg2NCAtMS4wNTQzMiwtMy4wNDY0NSAtMi42OTQzNCwtNS40MjQzMiAtNC45MTU3NywtNy4xMzE0NyAtMi4yMjc1NCwtMS43MDUyNiAtNS4xMDE5MywtMi41NTc4NiAtOC42MjcyLC0yLjU1Nzg2IC0zLjcyMTA3LDAgLTYuNzg5MTksMC45MTE5OCAtOS4yMDI3NiwyLjcyOTk4IC0yLjQxNTQxLDEuODIzOTEgLTQuMTk5NzEsNC4yNzY4NSAtNS4zNDcwNSw3LjM2MjkxIC0xLjE1MTM2LDMuMDg2MDYgLTEuNzI3MDUsNi41MDg0MyAtMS43MjcwNSwxMC4yNjUwOCAwLDMuNzk2MTQgMC41Njc3NSw3LjIzODM0IDEuNjk3MjcsMTAuMzIyMzkgMS4xMjk2NCwzLjA4ODA3IDIuODY2NTgsNS41MzMwOCA1LjIwMjc2LDcuMzMzMzEgMi4zNDAzMywxLjgwNDA4IDUuMzA5NjksMi43MDQyMiA4LjkxNTg5LDIuNzA0MjIiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTE5Ljg5MTg0MiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExNykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTgiCiAgICAgICBkPSJNIDAsMCBIIDM2LjU5MDYzMyBWIDEwLjIyNDExMiBIIDAgWiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwxMS45ODA5MjIsMTcuNjkwMTA3KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExOSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMjAiCiAgICAgICBkPSJNIDU0OS40ODQ2Miw0NzcuNTcyMzYgSCA1MTguMDA1IHYgLTEwLjIyMzUxIGggMjYuMzY3NjggViA0NDAuOTgzIGggMTAuMjIzNjMgdiAzMS40Nzc2IGMgMCwyLjgyNDk1IC0yLjI5MDc3LDUuMTExNzYgLTUuMTExNjksNS4xMTE3NiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNTUuOTQ1OTk3LC00Ny4wNTE5NzUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIxKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyMiIKICAgICAgIGQ9Ik0gMCwwIEggMTAuMjI0MTEyIFYgNjIuOTYwMTA2IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDE4Ljg1NTY5NywxMC43NzQ3MTEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNCIKICAgICAgIGQ9Ik0gMCwwIEggMzYuNTkzNDg3IFYgMTAuMjI0MTEyIEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDguNDgyNTAzMyw3LjMxNjg4NDgpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTI1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNiIKICAgICAgIGQ9Ik0gNTE0Ljc0NDM4LDQ3Ny41NzIzNiBIIDUwNC41MTkwMSBWIDQ0Ni4wOTQ3IGMgMCwtMi44MjI4MiAyLjI5MDgzLC01LjExMTcgNS4xMTE3NiwtNS4xMTE3IGggMzEuNDgxNjYgdiAxMC4yMjM1MSBoIC0yNi4zNjgwNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC01Ny42NzU5MzEsLTQ3LjA1MTk3NSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjcpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTI4IgogICAgICAgZD0iTSAwLDAgSCAxMC4yMjQxMTIgViA2Mi45NjAxMDYgSCAwIFoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsNS4wNjUyMTQ4LDcuMzE2ODg0OCkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjkpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTMwIgogICAgICAgZD0ibSA1NjguNjM4MTIsNTk1LjE1OTMgYyAtNTMuNTU2NTIsMCAtOTcuMTI5MTUsLTQzLjU3MjUxIC05Ny4xMjkxNSwtOTcuMTI5MTUgMCwtNTMuNTU2NyA0My41NzI2MywtOTcuMTI5MTUgOTcuMTI5MTUsLTk3LjEyOTE1IDUzLjU1Njc3LDAgOTcuMTI5MTUsNDMuNTcyNDUgOTcuMTI5MTUsOTcuMTI5MTUgMCw1My41NTY2NCAtNDMuNTcyMzgsOTcuMTI5MTUgLTk3LjEyOTE1LDk3LjEyOTE1IG0gMCwtMTg0LjAzNDc5IGMgLTQ3LjkxODUyLDAgLTg2LjkwMzU2LDM4Ljk4Njk0IC04Ni45MDM1Niw4Ni45MDU2NCAwLDQ3LjkyMjYxIDM4Ljk4NTA0LDg2LjkwNTY0IDg2LjkwMzU2LDg2LjkwNTY0IDQ3LjkxODgzLDAgODYuOTA1NzYsLTM4Ljk4MzAzIDg2LjkwNTc2LC04Ni45MDU2NCAwLC00Ny45MTg3IC0zOC45ODY5MywtODYuOTA1NjQgLTg2LjkwNTc2LC04Ni45MDU2NCIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNjEuOTEwMzYzLC01Mi4xOTM1MDkpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTMxKSIgLz4KICA8L2c+Cjwvc3ZnPgo=",alt:"Fraktvalg logo"})}),(0,N.jsx)(Z,{currentStep:e,steps:M.length,labels:M,setStep:g}),(0,N.jsxs)("div",{className:"max-w-5xl bg-white rounded-lg shadow p-6",children:[1===e&&(0,N.jsx)(w,{nextStep:t}),2===e&&(0,N.jsx)(U,{nextStep:t}),3===e&&(0,N.jsx)(F,{nextStep:t}),4===e&&(0,N.jsx)(G,{nextStep:t})]})]})})})}const J=document.getElementById("fraktvalg-onboarding");J&&(0,t.H)(J).render((0,N.jsx)(R,{}))})();
     1(()=>{"use strict";var e={338:(e,t,g)=>{var a=g(795);t.H=a.createRoot,a.hydrateRoot},20:(e,t,g)=>{var a=g(609),s=Symbol.for("react.element"),M=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,l=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,I={key:!0,ref:!0,__self:!0,__source:!0};function r(e,t,g){var a,M={},r=null,c=null;for(a in void 0!==g&&(r=""+g),void 0!==t.key&&(r=""+t.key),void 0!==t.ref&&(c=t.ref),t)i.call(t,a)&&!I.hasOwnProperty(a)&&(M[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===M[a]&&(M[a]=t[a]);return{$$typeof:s,type:e,key:r,ref:c,props:M,_owner:l.current}}t.Fragment=M,t.jsx=r,t.jsxs=r},848:(e,t,g)=>{e.exports=g(20)},609:e=>{e.exports=window.React},795:e=>{e.exports=window.ReactDOM}},t={};function g(a){var s=t[a];if(void 0!==s)return s.exports;var M=t[a]={exports:{}};return e[a](M,M.exports,g),M.exports}g.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return g.d(t,{a:t}),t},g.d=(e,t)=>{for(var a in t)g.o(t,a)&&!g.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},g.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var a=g(609),s=g(338);const M=window.wp.apiFetch;var i=g.n(M);const l=window.wp.i18n;function I(e){var t,g,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e)){var s=e.length;for(t=0;t<s;t++)e[t]&&(g=I(e[t]))&&(a&&(a+=" "),a+=g)}else for(g in e)e[g]&&(a&&(a+=" "),a+=g);return a}function r(){for(var e,t,g=0,a="",s=arguments.length;g<s;g++)(e=arguments[g])&&(t=I(e))&&(a&&(a+=" "),a+=t);return a}var c=g(848);function C({disabled:e=!1,plain:t=!1,className:g,children:a,onClick:s=()=>{},...M}){const i=r("block w-full bg-primary text-white rounded-md p-3","hover:bg-primary/90 hover:text-white","active:bg-primary/90 active:text-white","focus:bg-primary/90 focus:text-white","disabled:bg-black/80",g);return M.href?(0,c.jsx)("a",{className:i,...M,children:a}):(0,c.jsx)("button",{onClick:s,disabled:e,className:i,...M,children:a})}function N({type:e="notice",title:t,children:g,className:a=""}){const s=r("border rounded-md p-2","success"===e?"bg-green-100 border-green-200":"","notice"===e?"bg-yellow-100 border-yellow-200":"","error"===e?"bg-red-100 border-red-200":"",a);return(0,c.jsxs)("div",{className:s,children:[(0,c.jsx)("div",{className:"text-md text-black font-semibold",children:t}),g&&(0,c.jsx)("div",{className:"text-sm text-black",children:g})]})}function n({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm8.706-1.442c1.146-.573 2.437.463 2.126 1.706l-.709 2.836.042-.02a.75.75 0 0 1 .67 1.34l-.04.022c-1.147.573-2.438-.463-2.127-1.706l.71-2.836-.042.02a.75.75 0 1 1-.671-1.34l.041-.022ZM12 9a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z",clipRule:"evenodd"}))}const A=a.forwardRef(n);function o({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z",clipRule:"evenodd"}))}const j=a.forwardRef(o);function d({nextStep:e}){const[t,g]=(0,a.useState)(""),[s,M]=(0,a.useState)(null);return(0,c.jsxs)("div",{className:"space-y-8",children:[(0,c.jsxs)("div",{children:[(0,c.jsx)("h2",{className:"text-xl font-semibold text-gray-900",children:(0,l.__)("Activate license","fraktvalg")}),(0,c.jsx)("p",{className:"mt-1 text-sm text-gray-500",children:(0,l.__)("Your license will be activated for the domain: ","fraktvalg")+window.location.host})]}),(0,c.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-5 gap-6",children:[(0,c.jsx)("div",{className:"md:col-span-3 bg-white rounded-lg border border-gra-200 p-6",children:(0,c.jsxs)("div",{className:"space-y-4",children:[(0,c.jsxs)("div",{children:[(0,c.jsx)("label",{className:"block text-sm font-medium text-gray-700 mb-1",htmlFor:"license",children:(0,l.__)("License key","fraktvalg")}),(0,c.jsx)("input",{type:"text",name:"license",id:"license",value:t,className:"w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-primary",placeholder:(0,l.__)("Enter your license key","fraktvalg"),onChange:e=>g(e.target.value)})]}),s&&(0,c.jsx)(N,{type:s.type,title:s.title,className:"my-2",children:s.message}),(0,c.jsx)("div",{className:"w-full mt-1",children:(0,c.jsx)(C,{onClick:()=>{M(null),i()({path:"/fraktvalg/v1/settings/api-key",method:"POST",data:{api_key:t}}).then((t=>{e()})).catch((e=>{M({type:"error",title:(0,l.__)("An error was encountered when validating your API key","fraktvalg"),message:e?.message})}))},disabled:!t.length>0,children:(0,l.__)("Activate license","fraktvalg")})})]})}),(0,c.jsxs)("div",{className:"md:col-span-2 bg-tertiary/10 rounded-lg p-6 flex flex-col",children:[(0,c.jsxs)("div",{className:"flex items-center space-x-2 text-custom mb-4",children:[(0,c.jsx)(A,{className:"w-5 h-5"}),(0,c.jsx)("span",{className:"font-medium",children:(0,l.__)("Need a license?","fraktvalg")})]}),(0,c.jsx)("p",{className:"text-sm text-gray-600 mb-4",children:(0,l.__)("To use Fraktvalg you first need to register an account. It only takes a moment to get started.","fraktvalg")}),(0,c.jsxs)("a",{href:"https://Fraktvalg.no?utm_source=plugin&utm_medium=register&utm_campaign=onboarding",className:"mt-auto group inline-flex items-center text-cuistom hover:text-custom-dark font-medium",children:[(0,c.jsx)("span",{children:(0,l.__)("Register at fraktvalg.no","fraktvalg")}),(0,c.jsx)(j,{className:"ml-1 w-4 h-4"})]})]})]})]})}function u({children:e}){return(0,c.jsx)("div",{className:"w-full mt-2 bg-gray-50 rounded-lg p-5 help-content border border-gray-200 space-y-4",children:(0,c.jsx)("div",{className:"text-sm text-gray-600",children:e})})}function x({field:e,name:t,label:g,value:s=!1,callback:M,required:i=!1,children:l}){const[I,r]=(0,a.useState)(s);return(0,c.jsxs)("div",{className:"relative",children:[(0,c.jsxs)("label",{className:"inline-flex items-center cursor-pointer",children:[(0,c.jsx)("input",{name:t,type:"checkbox",checked:s,onChange:e=>{r(e.target.checked),M(e)},required:i,className:"sr-only peer"}),(0,c.jsx)("div",{className:"relative w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 rounded-full peer dark:bg-gray-200 peer-checked:after:translate-x-full rtl:peer-checked:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-primary"}),(0,c.jsx)("span",{className:"ms-3 mr-2 text-sm",children:g})]}),l,e?.stateDescriptions?.enabled&&I&&(0,c.jsx)(u,{children:e?.stateDescriptions?.enabled}),e?.stateDescriptions?.disabled&&!I&&(0,c.jsx)(u,{children:e?.stateDescriptions?.disabled})]})}function D({name:e,label:t,value:g="",placeholder:a="",required:s=!1,callback:M,children:i}){return(0,c.jsxs)("div",{children:[(0,c.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,c.jsx)("input",{name:e,type:"password",value:g,onChange:M,onPaste:M,placeholder:a,required:s,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),i]})}function w({name:e,label:t,value:g="",placeholder:a="",required:s=!1,callback:M,children:i}){return(0,c.jsxs)("div",{children:[(0,c.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,c.jsx)("input",{name:e,type:"text",value:g,onChange:M,onPaste:M,placeholder:a,required:s,className:"mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm"}),i]})}function T({name:e,label:t,value:g="",placeholder:s="",required:M=!1,callback:i,children:l,...I}){const[r,C]=(0,a.useState)(null!=g?g:0);return(0,c.jsxs)("div",{children:[(0,c.jsxs)("div",{className:"flex items-center justify-between",children:[(0,c.jsx)("label",{className:"block text-sm font-medium text-gray-700",children:t}),(0,c.jsx)("input",{name:e,type:"number",value:r,onChange:i,onPaste:e=>{const t=e.clipboardData.getData("text"),g=parseInt(t,10);!isNaN(g)&&g>=0&&C(g),i(e)},placeholder:s,required:M,min:"0",className:"hidden"}),(0,c.jsxs)("div",{className:"inline-flex items-center gap-4",children:[(0,c.jsx)("button",{onClick:()=>{r>0&&C(r-1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"-"}),(0,c.jsx)("span",{className:"text-lg font-mono font-semibold",children:r}),(0,c.jsx)("button",{onClick:()=>{C(r+1)},className:"px-2 py-1 font-mono text-lg text-gray-700 border border-gray-200 rounded-md hover:bg-gray-100",children:"+"})]})]}),l]})}function L({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z"}))}const m=a.forwardRef(L);function y({includeOptional:e=!1,provider:t,fields:g,callback:s}){const[M,i]=(0,a.useState)({}),[I,r]=(0,a.useState)({}),[C,N]=(0,a.useState)(null),n=e=>{if("paste"===e.type){const g={target:{name:e.target.name,value:e.clipboardData.getData("text"),type:e.target.type}},a={...M};return"checkbox"===g.target.type?a[g.target.name]=g.target.checked:a[g.target.name]=g.target.value,i(a),s(t,a),N(g.target.name),void setTimeout((()=>{N(null)}),100)}if(C===e.target.name)return;const g={...M};"checkbox"===e.target.type?g[e.target.name]=e.target.checked:g[e.target.name]=e.target.value,i(g),s(t,g)};(0,a.useEffect)((()=>{g.forEach((e=>{e?.value&&i({...M,[e.name]:e.value})}))}),[]);const A=e=>{switch(e.type){case"boolean":return(0,c.jsx)(x,{name:e.name,label:e.label,value:M?.[e.name],callback:n,required:e.required,field:e,children:(0,c.jsx)(c.Fragment,{children:e?.description&&(0,c.jsx)(u,{children:e?.description})})});case"password":return(0,c.jsx)(D,{name:e.name,label:e.label,value:M?.[e.name],placeholder:e.placeholder,callback:n,required:e.required,field:e,children:(0,c.jsx)(c.Fragment,{children:e?.description&&(0,c.jsx)(u,{children:e?.description})})});case"number":return(0,c.jsx)(T,{name:e.name,label:e.label,value:M?.[e.name],placeholder:e.placeholder,callback:n,required:e.required,field:e,children:(0,c.jsx)(c.Fragment,{children:e?.description&&(0,c.jsx)(u,{children:e?.description})})});default:return(0,c.jsx)(w,{name:e.name,label:e.label,value:M?.[e.name],placeholder:e.placeholder,callback:n,required:e.required,field:e,children:(0,c.jsx)(c.Fragment,{children:e?.description&&(0,c.jsx)(u,{children:e?.description})})})}};return(0,c.jsx)(c.Fragment,{children:g.flatMap(((t,g)=>t?.optional&&!e?[]:(0,c.jsxs)("div",{children:[A(t),t?.help&&(0,c.jsxs)("div",{className:"mt-2",children:[(0,c.jsxs)("button",{type:"button",className:"text-sm text-custom hover:text-custom-dark flex items-center cursor-pointer help-toggle",onClick:()=>{return e=t.name,void r((t=>({...t,[e]:!t[e]})));var e},children:[(0,c.jsx)(m,{className:"w-5 h-5 mr-1"}),(0,c.jsx)("span",{children:t?.help?.label||(0,l.__)("Help","fraktvalg")})]}),I[t.name]&&(0,c.jsxs)(u,{children:[(0,c.jsx)("p",{children:t?.help?.text}),t?.help?.url?.link&&(0,c.jsx)("div",{className:"mt-3",children:(0,c.jsxs)("a",{href:t?.help?.url?.link,target:"_blank",className:"inline-flex items-center text-custom hover:text-custom-dark font-medium",children:[(0,c.jsx)("span",{children:t?.help?.url?.label}),(0,c.jsx)(j,{className:"ml-1 w-4 h-4"})]})})]})]})]},g)))})}function z({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z",clipRule:"evenodd"}))}const p=a.forwardRef(z);function h({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z",clipRule:"evenodd"}))}const k=a.forwardRef(h);function b({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z",clipRule:"evenodd"}))}const O=a.forwardRef(b);function E({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))}const S=a.forwardRef(E);function Y({logo:e=null,...t}){const{alt:g=""}=t;return e?e.startsWith("http")||e.startsWith("data:image")?(0,c.jsx)("img",{src:e,alt:g,...t}):(e.startsWith("https")||(e=encodeURIComponent(e)),(0,c.jsx)("img",{src:"data:image/svg+xml;utf8,"+e,alt:g,...t})):(0,c.jsx)(S,{...t})}function v({supplierId:e,supplier:t,title:g,content:s,isConnected:M=!1,visible:i=!0,classNames:I="",innerClassNames:C=""}){const[N,n]=(0,a.useState)(i),A=r("border bg-white rounded-md",I),o=r("border-t-2 border-gray-100 p-4",C);return(0,c.jsxs)("div",{className:A,children:[(0,c.jsx)("button",{className:"flex w-full p-4 items-center justify-between",onClick:()=>n(!N),children:(0,c.jsx)("h2",{className:"text-lg font-bold w-full",children:(0,c.jsxs)("div",{className:"flex item-center justify-between focus:outline-none w-full",children:[(0,c.jsxs)("div",{className:"flex",children:[t?.logo&&(0,c.jsx)("div",{children:(0,c.jsx)(Y,{logo:t?.logo,alt:g,className:"w-8 h-8 mr-2"})}),(0,c.jsx)("div",{className:"inline-flex items-center gap-4",children:(0,c.jsx)("span",{children:g})})]}),(0,c.jsxs)("div",{className:"flex items-center gap-4",children:[M&&(0,c.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-green-100 text-green-600",children:(0,l.__)("Connected","fraktvalg")}),!M&&(0,c.jsx)("div",{className:"px-3 py-1 text-sm rounded-full bg-red-100 text-red-600",children:(0,l.__)("Disconnected","fraktvalg")}),N?(0,c.jsx)(p,{className:"h-6 w-6 text-gray-600"}):(0,c.jsx)(k,{className:"h-6 w-6 text-gray-600"})]})]})})}),N&&(0,c.jsx)("div",{className:o,children:s})]})}function f({nextStep:e}){const[t,g]=(0,a.useState)({}),[s,M]=(0,a.useState)(null),[I,r]=(0,a.useState)(!0),[N,n]=(0,a.useState)(null),[A,o]=(0,a.useState)(""),[j,d]=(0,a.useState)([]),[u,x]=(0,a.useState)({}),D=(e,t)=>{x({...u,[e]:t})};return(0,a.useEffect)((()=>{M(null),i()({path:"fraktvalg/v1/settings/providers",method:"GET"}).then((e=>{g(e?.data||{})})).catch((e=>{M(e?.message)})).then((()=>{r(!1)}))}),[]),I?(0,c.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,c.jsx)(O,{className:"h-8 w-8 animate-spin text-primary"}),(0,c.jsx)("div",{className:"text-lg",children:"Fetching available providers..."})]}):(0,c.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[(0,c.jsx)("span",{className:"text-xl",children:"Nesten ferdig, vi trenger å vite hvilke fraktleverandører du har en avtale med."}),s&&(0,c.jsxs)("div",{className:"bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative mb-4",role:"alert",children:[(0,c.jsxs)("strong",{className:"font-bold",children:[(0,l.__)("Error:","fraktvalg")," "]}),(0,c.jsx)("span",{className:"block sm:inline",children:s})]}),Object.keys(t).map((e=>(0,c.jsx)(v,{title:t[e]?.name,supplierId:e,supplier:t[e],visible:!1,isConnected:j.includes(e),content:(0,c.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[A===e&&(0,c.jsxs)("div",{className:"absolute w-full h-full top-0 left-0 bg-white flex flex-col justify-center items-center gap-2",children:[(0,c.jsx)(O,{className:"h-6 w-6 animate-spin text-primary"}),(0,c.jsx)("span",{children:(0,l.__)("Connecting provider, one moment please...","fraktvalg")})]}),(0,c.jsx)(y,{provider:e,fields:t[e]?.fields||[],callback:D}),(0,c.jsx)(C,{type:"button",onClick:()=>(e=>{o(e),M(null),i()({path:"fraktvalg/v1/settings/providers/store",method:"POST",data:{providerId:e,fieldValues:u[e]}}).then((t=>{o(""),d([...j,e])})).catch((e=>{console.error(e),M(e?.message||(0,l.__)("Failed to connect to provider","fraktvalg")),o("")}))})(e),children:(0,l.__)("Connect to this provider","fraktvalg")})]})},e))),(0,c.jsx)(C,{type:"button",onClick:e,children:(0,l.__)("Next step","fraktvalg")})]})}function U({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z",clipRule:"evenodd"}))}const Q=a.forwardRef(U);function G({nextStep:e}){return(0,c.jsxs)("div",{className:"flex flex-col justify-center items-center gap-4",children:[(0,c.jsx)("div",{children:(0,c.jsx)(Q,{className:"w-20 h-20 text-primary"})}),(0,c.jsx)("span",{className:"text-2xl text-center",children:(0,l.__)("Fraktvalg is now set up and ready to use.","fraktvalg")}),(0,c.jsx)(C,{onClick:()=>e(),children:(0,l.__)("Finish setup","fraktvalg")})]})}function B({current:e=!1,future:t=!1,past:g=!1,setStep:a=null,label:s=null,step:M}){const i="flex items-center justify-center w-8 h-8 border-2 border-gray-300 bg-white rounded-full shrink-0"+(e?" border-primary text-primary":"")+(g?" border-primary/80 text-primary/90":""),l="flex items-center text-custom space-x-2.5"+(null!==a&&!0===g?" cursor-pointer":"");return(0,c.jsxs)("li",{className:l,onClick:()=>{!0===g&&null!==a&&a(M)},children:[(0,c.jsx)("span",{className:i,children:(0,c.jsx)("span",{className:"font-medium",children:e?(0,c.jsx)("strong",{children:M}):M})}),s&&(0,c.jsx)("span",{children:(0,c.jsx)("div",{className:"font-medium leading-tight",children:e?(0,c.jsx)("strong",{children:s}):s})})]})}function Z({currentStep:e,steps:t,labels:g,setStep:a=null,...s}){return(0,c.jsxs)("div",{className:"mb-10",children:[(0,c.jsxs)("span",{className:"sr-only",children:["Step ",e," of ",t]}),(0,c.jsx)("ol",{className:"items-center w-full space-y-4 sm:flex sm:space-x-8 sm:space-y-0 sm:justify-center max-w-2xl mx-auto",children:[...Array(t)].map(((t,s)=>(0,c.jsx)(B,{current:s+1===e,past:s+1<e,future:s+1>e,setStep:a,step:s+1,label:g[s]},s)))})]})}function X({title:e,children:t,open:g=!1}){const[s,M]=(0,a.useState)(g||!1);return(0,c.jsxs)("div",{className:"border bg-white rounded-md",children:[(0,c.jsxs)("button",{className:"w-full flex p-4 justify-between",onClick:()=>M(!s),children:[(0,c.jsx)("h2",{className:"text-lg text-left font-bold w-full",children:e}),(0,c.jsx)("div",{className:"relative inline-block",children:s?(0,c.jsx)(p,{className:"h-6 w-6 text-primary"}):(0,c.jsx)(k,{className:"h-6 w-6 text-primary"})})]}),s&&(0,c.jsx)("div",{className:"p-4",children:t})]})}function F({nextStep:e}){const[t,g]=(0,a.useState)(null),[s,M]=(0,a.useState)(!1),[I,r]=(0,a.useState)({freight:{addedCost:0,addedCostType:"fixed",custom:{name:(0,l.__)("Shipping & handling","fraktvalg"),price:100,type:"fixed"}},useProduction:!0,names:[]}),n=e=>{switch(e.target.name){case"freight[addedCost]":r({...I,freight:{...I.freight,addedCost:e.target.value}});break;case"freight[addedCostType]":r({...I,freight:{...I.freight,addedCostType:e.target.value}});break;case"freight[custom][name]":r({...I,freight:{...I.freight,custom:{...I.freight.custom,name:e.target.value}}});break;case"freight[custom][price]":r({...I,freight:{...I.freight,custom:{...I.freight.custom,price:e.target.value}}});break;case"freight[custom][type]":r({...I,freight:{...I.freight,custom:{...I.freight.custom,type:e.target.value}}});break;case"useProduction":r({...I,useProduction:e.target.checked});break;default:r({...I,[e.target.name]:e.target.value})}};return(0,c.jsxs)("div",{className:"grid grid-cols-1 gap-3",children:[(0,c.jsx)("span",{className:"text-xl",children:(0,l.__)("Almost there! Are there any optional settings you would like to change?","fraktvalg")}),(0,c.jsx)(X,{title:(0,l.__)("Backup shipping option","fraktvalg"),open:!0,children:(0,c.jsxs)("div",{className:"relative grid grid-cols-1 gap-4",children:[(0,c.jsx)("p",{children:(0,l.__)("If Fraktvalg should ever become unavailable, or no shiopping options are returned, returns this shipping alternative by default.","fraktvalg")}),(0,c.jsxs)("div",{className:"mt-2 grid grid-cols-1 gap-4",children:[(0,c.jsx)(w,{label:(0,l.__)("Shipping option name","fraktvalg"),name:"freight[custom][name]",value:I.freight.custom.name,callback:n}),(0,c.jsxs)("div",{className:"flex items-center gap-3",children:[(0,c.jsx)("input",{name:"freight[custom][price]",value:I.freight.custom.price,onChange:n,type:"number",min:"0",step:"1",placeholder:"25",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,c.jsxs)("select",{name:"freight[custom][type]",className:"border border-gray-300 rounded-md p-2",value:I.freight.custom.type,onChange:n,children:[(0,c.jsx)("option",{value:"percent",children:"%"}),(0,c.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,c.jsxs)("div",{children:[(0,c.jsx)("label",{htmlFor:"something",children:(0,l.__)("Backup shipping cost","fraktvalg")}),(0,c.jsx)("p",{className:"text-xs italic",children:(0,l.__)("The backup shipping cost can be set to either a fixed value, or a percentage of the order total.","fraktvalg")})]})]})]})]})}),(0,c.jsxs)(X,{title:(0,l.__)("Shipping cost adjustments","fraktvalg"),children:[(0,l.__)("Safeguard your shipping costs with these optional alternatives.","fraktvalg"),(0,c.jsxs)("div",{className:"flex items-center gap-3",children:[(0,c.jsx)("input",{name:"freight[addedCost]",value:I.freight.addedCost,onChange:n,type:"number",min:"0",step:"1",placeholder:"10",className:"w-16 border border-gray-300 rounded-md p-2"}),(0,c.jsxs)("select",{name:"freight[addedCostType]",className:"border border-gray-300 rounded-md p-2",value:I.freight.addedCostType,onChange:n,children:[(0,c.jsx)("option",{value:"percent",children:"%"}),(0,c.jsx)("option",{value:"fixed",children:"NOK"})]}),(0,c.jsxs)("div",{children:[(0,c.jsx)("label",{htmlFor:"something",children:(0,l.__)("Add an optional surcharge to all shipping options","fraktvalg")}),(0,c.jsx)("p",{className:"text-xs italic",children:(0,l.__)("Additional shipping surcharges are meant to cover administrative- and handling costs, and is automatically added to all shipping alternatives.","fraktvalg")})]})]})]}),(0,c.jsxs)(X,{title:(0,l.__)("Shop environment","fraktvalg"),open:!1,children:[(0,c.jsx)("p",{children:(0,l.__)("Some times, you wish to use the shipping providers test environments, for example on a staging site. Doing so will not create legitimate shipping requests, and prevents yo ufrom incurring charges while testing your store setup.","fraktvalg")}),(0,c.jsx)("div",{className:"mt-2 grid grid-cols-1 gap-4",children:(0,c.jsx)(x,{label:(0,l.__)("Use production environments","fraktvalg"),name:"useProduction",value:I.useProduction,callback:n})})]}),t&&(0,c.jsx)(N,{type:t.type,title:t.title,children:t.message}),(0,c.jsx)(C,{type:"button",onClick:()=>{g(null),M(!1),i()({path:"/fraktvalg/v1/settings/optional-settings",method:"POST",data:{options:I}}).then((e=>{g({type:e?.type,title:e?.title,message:e?.message}),M(!0)})).catch((e=>{g({type:"error",title:(0,l.__)("Error saving optional settings","fraktvalg"),message:e?.message})}))},children:(0,l.__)("Save optional settings","fraktvalg")}),s&&(0,c.jsx)(C,{type:"button",onClick:e,children:(0,l.__)("Finish setup","fraktvalg")})]})}function R({title:e,titleId:t,...g},s){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:s,"aria-labelledby":t},g),e?a.createElement("title",{id:t},e):null,a.createElement("path",{d:"M21.731 2.269a2.625 2.625 0 0 0-3.712 0l-1.157 1.157 3.712 3.712 1.157-1.157a2.625 2.625 0 0 0 0-3.712ZM19.513 8.199l-3.712-3.712-8.4 8.4a5.25 5.25 0 0 0-1.32 2.214l-.8 2.685a.75.75 0 0 0 .933.933l2.685-.8a5.25 5.25 0 0 0 2.214-1.32l8.4-8.4Z"}),a.createElement("path",{d:"M5.25 5.25a3 3 0 0 0-3 3v10.5a3 3 0 0 0 3 3h10.5a3 3 0 0 0 3-3V13.5a.75.75 0 0 0-1.5 0v5.25a1.5 1.5 0 0 1-1.5 1.5H5.25a1.5 1.5 0 0 1-1.5-1.5V8.25a1.5 1.5 0 0 1 1.5-1.5h5.25a.75.75 0 0 0 0-1.5H5.25Z"}))}const _=a.forwardRef(R);function P({nextStep:e}){const[t,g]=(0,a.useState)(!0),[s,M]=(0,a.useState)({}),[I,r]=(0,a.useState)({cart:!1,checkout:!1}),[N,n]=(0,a.useState)({cart:!1,checkout:!1}),[A,o]=(0,a.useState)({cart:!1,checkout:!1});(0,a.useEffect)((()=>{j()}),[]);const j=async()=>{try{const e=await i()({path:"/fraktvalg/v1/onboarding/theme-status",method:"GET"});M(e),g(!1)}catch(e){console.error("Error checking theme status:",e),g(!1)}},d=async(e,t)=>{if("create"===t){n((t=>({...t,[e]:!0})));try{await i()({path:"/fraktvalg/v1/onboarding/create-template",method:"POST",data:{template:e}}),await j(),o((t=>({...t,[e]:!0})))}catch(e){console.error("Error creating template:",e)}finally{n((t=>({...t,[e]:!1})))}}else if("edit"===t){const t=s.urls[e];t&&(window.open(t,"_blank"),r((t=>({...t,[e]:!0}))))}};return t?(0,c.jsxs)("div",{className:"flex flex-col justify-center items-center h-64",children:[(0,c.jsx)(O,{className:"h-8 w-8 animate-spin text-primary"}),(0,c.jsx)("div",{className:"text-lg",children:(0,l.__)("Checking which templates are in use on this site...","fraktvalg")})]}):(0,c.jsxs)("div",{className:"grid grid-cols-1 gap-6 p-6",children:[(0,c.jsxs)("div",{className:"text-center",children:[(0,c.jsx)("h2",{className:"text-xl font-semibold mb-4",children:(0,l.__)("Template Configuration","fraktvalg")}),(0,c.jsx)("p",{className:"text-gray-600 mb-6",children:(()=>{switch((()=>{const{isBlockCartTemplate:e,isBlockCheckoutTemplate:t}=s;return e&&t?"all-blocks":e||t?"mixed":"classic"})()){case"all-blocks":return(0,l.__)("Your theme uses block templates. Choose how you want to add the Fraktvalg block to your templates:","fraktvalg");case"mixed":return(0,l.__)("Your theme uses a mix of block and classic templates. You can configure the block templates below:","fraktvalg");default:return(0,l.__)("Your theme does not use block templates. You can proceed to the next step without configuring any templates.","fraktvalg")}})()})]}),s.urls&&(s.isBlockCartTemplate&&void 0!==s.urls.cart||s.isBlockCheckoutTemplate&&void 0!==s.urls.checkout)&&(0,c.jsxs)("ul",{className:"space-y-4",children:[void 0!==s.urls.cart&&s.isBlockCartTemplate&&(0,c.jsxs)("li",{className:"flex flex-col p-4 bg-white rounded-lg shadow-sm border",children:[(0,c.jsx)("div",{className:"flex items-center justify-between mb-4",children:(0,c.jsxs)("div",{className:"flex items-center",children:[(0,c.jsx)("span",{className:"font-medium",children:(0,l.__)("Cart Template","fraktvalg")}),I.cart&&(0,c.jsx)(Q,{className:"h-5 w-5 text-green-500 ml-2"})]})}),(0,c.jsxs)("div",{className:"flex gap-4",children:[(0,c.jsx)("button",{onClick:()=>d("cart","create"),disabled:N.cart||A.cart,className:"flex-1 px-4 py-2 bg-primary text-white rounded hover:bg-primary-dark transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:N.cart?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(O,{className:"h-4 w-4 animate-spin inline mr-2"}),(0,l.__)("Creating...","fraktvalg")]}):A.cart?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(Q,{className:"h-4 w-4 inline mr-2"}),(0,l.__)("Block Auto-added","fraktvalg")]}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(Q,{className:"h-4 w-4 inline mr-2"}),(0,l.__)("Auto-add Block","fraktvalg")]})}),(0,c.jsxs)("button",{onClick:()=>d("cart","edit"),className:"flex-1 px-4 py-2 bg-white text-primary border border-primary rounded hover:bg-gray-50 transition-colors",children:[(0,c.jsx)(_,{className:"h-4 w-4 inline mr-2"}),(0,l.__)("Customize Manually","fraktvalg")]})]})]}),void 0!==s.urls.checkout&&s.isBlockCheckoutTemplate&&(0,c.jsxs)("li",{className:"flex flex-col p-4 bg-white rounded-lg shadow-sm border",children:[(0,c.jsx)("div",{className:"flex items-center justify-between mb-4",children:(0,c.jsxs)("div",{className:"flex items-center",children:[(0,c.jsx)("span",{className:"font-medium",children:(0,l.__)("Checkout Template","fraktvalg")}),I.checkout&&(0,c.jsx)(Q,{className:"h-5 w-5 text-green-500 ml-2"})]})}),(0,c.jsxs)("div",{className:"flex gap-4",children:[(0,c.jsx)("button",{onClick:()=>d("checkout","create"),disabled:N.checkout||A.checkout,className:"flex-1 px-4 py-2 bg-primary text-white rounded hover:bg-primary-dark transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:N.checkout?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(O,{className:"h-4 w-4 animate-spin inline mr-2"}),(0,l.__)("Creating...","fraktvalg")]}):A.checkout?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(Q,{className:"h-4 w-4 inline mr-2"}),(0,l.__)("Block Auto-added","fraktvalg")]}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(Q,{className:"h-4 w-4 inline mr-2"}),(0,l.__)("Auto-add Block","fraktvalg")]})}),(0,c.jsxs)("button",{onClick:()=>d("checkout","edit"),className:"flex-1 px-4 py-2 bg-white text-primary border border-primary rounded hover:bg-gray-50 transition-colors",children:[(0,c.jsx)(_,{className:"h-4 w-4 inline mr-2"}),(0,l.__)("Customize Manually","fraktvalg")]})]})]})]}),(0,c.jsx)(C,{type:"button",onClick:e,children:(0,l.__)("Next step","fraktvalg")})]})}function J(){const[e,t]=(0,a.useState)(1),g=[(0,l.__)("License","fraktvalg"),(0,l.__)("Providers","fraktvalg"),(0,l.__)("Templates","fraktvalg"),(0,l.__)("Settings","fraktvalg"),(0,l.__)("Finished","fraktvalg")];e>g.length&&i()({path:"/fraktvalg/v1/onboarding/complete",method:"POST"}).then((()=>{window.location.href="index.php"}));const s=()=>{t(e+1)};return(0,c.jsx)("div",{className:"top-0 left-0 w-full",children:(0,c.jsx)("div",{className:"flex justify-center p-8 mt-16",children:(0,c.jsxs)("div",{className:"grid gap-8",children:[(0,c.jsx)("div",{className:"m-auto",children:(0,c.jsx)("img",{src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMzUwIgogICBoZWlnaHQ9Ijk2LjI3NzM1OSIKICAgdmlld0JveD0iMCAwIDkyLjYwNDE1NiAyNS40NzMzODEiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzEiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczEiPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTI1Mi4zNDE1NiwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTAzIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMjgwLjk3OTcxLC03OS41OTE4MDIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTAzIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMDUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zMDAuNTQ2MzgsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMDUiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEwNyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTMzMi42ODExOCwtNjkuNTExNzIxKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEwNyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTA5Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMzYzLjIyNDYzLC03MS4yMTg3NTIpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTA5IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTEiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC0zODIuODQ4MTYsLTc5Ljc0OTk5OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTEiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExMyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTQxMi41OTQ3NCwtNzguODk2NDg0KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExMyIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTE1Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTIzMS42MzE5LC00OTYuNzEwOTYpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTE1IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMTciPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC00NTUuNjIxMzQsLTc4Ljg5NjQ4NCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMTciIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDExOSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY5OC42ODA4OSwtNTc1LjAyNzM2KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDExOSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTIxIj4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTgwLjY3NDc4LC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTIxIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjMiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC03NTEuMTA3NDcsLTUyMi4yOTEwNCkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjMiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEyNSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTY3Mi4wMDIxOSwtNDk1LjkyMTg5KSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEyNSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8Y2xpcFBhdGgKICAgICAgIGNsaXBQYXRoVW5pdHM9InVzZXJTcGFjZU9uVXNlIgogICAgICAgaWQ9ImNsaXBQYXRoMTI3Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0iTSAwLDAgSCA3NjgwIFYgNDMyMCBIIDAgWiIKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4yNTAwMDAwMSwwLDAsMC4yNTAwMDAwMSwtMTY3LjQ4MjQzLC04MS4zMDg1OTcpIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGlkPSJwYXRoMTI3IiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgY2xpcFBhdGhVbml0cz0idXNlclNwYWNlT25Vc2UiCiAgICAgICBpZD0iY2xpcFBhdGgxMjkiPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCBIIDc2ODAgViA0MzIwIEggMCBaIgogICAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjI1MDAwMDAxLDAsMCwwLjI1MDAwMDAxLC02NDUuOTQyMTcsLTQ5NS45MjE4OSkiCiAgICAgICAgIGNsaXAtcnVsZT0iZXZlbm9kZCIKICAgICAgICAgaWQ9InBhdGgxMjkiIC8+CiAgICA8L2NsaXBQYXRoPgogICAgPGNsaXBQYXRoCiAgICAgICBjbGlwUGF0aFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIKICAgICAgIGlkPSJjbGlwUGF0aDEzMSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIEggNzY4MCBWIDQzMjAgSCAwIFoiCiAgICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMjUwMDAwMDEsMCwwLDAuMjUwMDAwMDEsLTEzNS4xOTA5NSwtNDIuMDk5NjExKSIKICAgICAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgICAgICBpZD0icGF0aDEzMSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgPC9kZWZzPgogIDxnCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA4MDY4NDUsLTAuMzc3MjQwNDgpIj4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwMCIKICAgICAgIGQ9Im0gNTkxLjI2NjYsNTExLjczOTE3IHYgLTgyLjgxNTMxIGggNDkuODYxNDUgdiAxMy44NTgxNSBoIC0zNi4wMDA0OSB2IDIwLjY0Njc5IGggMzYuMDAwNDkgdiAxMy44MDI2MSBoIC0zNi4wMDA0OSB2IDM0LjUwNzc2IHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTQ2LjU0ODIyNiwtNDguNTk4OTE1KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDEwMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMDIiCiAgICAgICBkPSJtIDYyMC41NDE5OSw1MDEuNjU5MTUgdiAtNjIuMTEyNDkgaCAxMi4yNTEyMiB2IDE1LjEyNTYxIGwgLTEuNDk5NTEsLTEuOTU0NTMgYyAwLjc3MTYxLC0yLjA3MTIzIDEuNzk0MTksLTMuOTU4NDkgMy4wODAyLC01LjY2MzY5IDEuMjg1ODksLTEuNzA1MjYgMi44MjY5MSwtMy4xMTc2OCA0LjYyOTAzLC00LjIyOTQzIDEuNTM1MTYsLTEuMDM0NjEgMy4yMjgzOSwtMS44NDk2NyA1LjA4OTk3LC0yLjQ0MzEyIDEuODU5NjEsLTAuNTkxNDkgMy43Njg1NSwtMC45NTc0NiA1LjcyNDk3LC0xLjA5MTk4IDEuOTU0NTksLTAuMTM0NTIgMy44NDk3MywtMC4wNDk0IDUuNjg5NDUsMC4yNTcxNCB2IDEyLjk0MTU5IGMgLTEuODM5NzIsLTAuNTM4MDkgLTMuOTU2NTQsLTAuNzEwMiAtNi4zNTIxNywtMC41MTgzMSAtMi4zOTk0MSwwLjE5IC00LjU1MzgzLDAuODYyNTUgLTYuNDcwODIsMi4wMTM4NiAtMS45MTY3NSwxLjAzMjcxIC0zLjQ3OTYyLDIuMzU2MDcgLTQuNjg2MjgsMy45NjYzIC0xLjIwODc0LDEuNjEyMzEgLTIuMTAyOTEsMy40NDQyMiAtMi42NzQ2OSw1LjQ5NTU1IC0wLjU3NTU2LDIuMDQ5NTYgLTAuODY0MzgsNC4yNjMxOCAtMC44NjQzOCw2LjYzODk4IHYgMzEuNTc0NTIgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNDIuNzkyODYzLC00Ny4yNzcxMDEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTAzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwNCIKICAgICAgIGQ9Im0gNjYxLjM2Mjc5LDUwNC4wODE0OCBjIC00LjQ4NjU3LDAgLTguMjgyODMsLTAuODU0NjEgLTExLjM5MDUsLTIuNTU5ODEgLTMuMTAxOTMsLTEuNzA1MiAtNS40NTQxLC0zLjk3ODIxIC03LjA0MjYsLTYuODE1IC0xLjU5MjQxLC0yLjgzNjc0IC0yLjM4NTc0LC01Ljk2MjQxIC0yLjM4NTc0LC05LjM3NDg4IDAsLTIuOTkwOTcgMC40OTY1OCwtNS42ODM0MSAxLjQ5MTU3LC04LjA4MTA2IDAuOTk5MDMsLTIuMzk1NjMgMi41MzQxOCwtNC40NjQ4NCA0LjYwMTU2LC02LjIxMTYxIDIuMDczLC0xLjc0Mjg2IDQuNzU1NSwtMy4xNjkxMiA4LjA1MzIzLC00LjI4Mjg5IDIuNDkyNTUsLTAuODA1MTIgNS40MTYzOCwtMS41MzMwOSA4Ljc2OTQxLC0yLjE4Mzk2IDMuMzU3MTcsLTAuNjUwODIgNi45OTkxNCwtMS4yNTYxNyAxMC45Mjc4NSwtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQzNTgsLTEuMTU3MjkgMTIuMzM2MzEsLTEuODEyMDEgbCAtNC45NDU2OCwyLjgxODkxIGMgMC4wMzc2LC00LjI5MjczIC0wLjkxOTkyLC03LjQ1Nzg5IC0yLjg3NDI3LC05LjQ4OTU3IC0xLjk1NDU5LC0yLjAzMTY3IC01LjI1MjIsLTMuMDQ4NDYgLTkuODkzMTksLTMuMDQ4NDYgLTIuNzk5MTksMCAtNS41MDE0NiwwLjY1MjgzIC04LjExMDg0LDEuOTU0NTMgLTIuNjA3MTgsMS4zMDU2IC00LjQyNzI0LDMuNTQ4OTUgLTUuNDYxNzksNi43MzE4NyBsIC0xMi42NTA4OCwtMy45NzAyNyBjIDEuNTMzMiwtNS4yNTIyIDQuNDU1MDgsLTkuNDY3NzggOC43Njk1MywtMTIuNjUyNzcgNC4zMTA1NSwtMy4xODA5NyAxMC4xMzA2MiwtNC43NzM0NCAxNy40NTM5OCwtNC43NzM0NCA1LjUyMTI0LDAgMTAuMzgxODQsMC45MDAwMiAxNC41Nzk1OSwyLjcwMjIxIDQuMTk3NzYsMS44MDIxOCA3LjMxMzQ4LDQuNzU1NjEgOS4zNDUyMiw4Ljg1ODUyIDEuMTExNjksMi4xODM5NiAxLjc4NDE4LDQuNDE5MzcgMi4wMTE3Miw2LjcwMDI2IDAuMjMxNTYsMi4yODA5NCAwLjM0ODI2LDQuNzY1NjIgMC4zNDgyNiw3LjQ0NjEgdiAzOC4xMzAzNyBIIDY4My4xNTcxIHYgLTEzLjQ1Nzg4IGwgMi4wMTM5MiwyLjE4Nzg2IGMgLTIuNzk5MzIsNC40ODQ2OCAtNi4wNjU0Myw3Ljc3MjU5IC05LjgwNDIsOS44NjE1NyAtMy43Mzg3NywyLjA4ODkzIC04LjQwNzU5LDMuMTM1NDQgLTE0LjAwNDAzLDMuMTM1NDQgbSAyLjc1OTc3LC0xMS4wNDI0OCBjIDMuMTQzNDMsMCA1LjgyNzg4LC0wLjU1NTg1IDguMDUxNTEsLTEuNjY3NiAyLjIyMzM5LC0xLjExMzgzIDMuOTk1ODUsLTIuNDc0NzkgNS4zMTkyMiwtNC4wODUwOCAxLjMyMzQ4LC0xLjYwODM0IDIuMjEzNzQsLTMuMTI1NjEgMi42NzY2MywtNC41NDIgMC43MjYwOCwtMS43NjQ1OCAxLjEzNzU4LC0zLjc4NjMxIDEuMjM0MzgsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2NDgsLTQuMTMwNjEgMC4xNDY0OCwtNS41NTA5IGwgNC4yNTMwNSwxLjI2NTk5IGMgLTQuMTc3OTgsMC42NTA5NCAtNy43NjQ1MiwxLjIyNjU2IC0xMC43NTM1NCwxLjcyNzExIC0yLjk5MTIxLDAuNDk2NTIgLTUuNTYwNzksMC45NjU0IC03LjcwNzI3LDEuNDA2NSAtMi4xNDgzMiwwLjQ0MTEgLTQuMDQzNDYsMC45Mjk3NSAtNS42OTMyNCwxLjQ2NzgzIC0xLjYxMDM1LDAuNTczNjcgLTIuOTcxNDQsMS4yNDYyOCAtNC4wODUwOCwyLjAxMTg0IC0xLjExMTcsMC43Njc2NCAtMS45NjI0MSwxLjY0OTg0IC0yLjU1Nzg2LDIuNjQ2OTEgLTAuNTk3NDIsMC45OTUgLTAuODkyMjIsMi4xNjQxMyAtMC44OTIyMiwzLjUwNzMzIDAsMS41MzUxNSAwLjM4Mzc5LDIuODg0MjggMS4xNTEzNyw0LjA1NTQyIDAuNzY3NTgsMS4xNjkxMyAxLjg4NzIxLDIuMDk2OTIgMy4zNjQ5OSwyLjc4NzM1IDEuNDc1NzEsMC42OTIzMiAzLjMwNzYyLDEuMDM2NTYgNS40OTE1OCwxLjAzNjU2IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC00MC4yMjcwNTQsLTQ3LjM2ODI3OSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMDUpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTA2IgogICAgICAgZD0ibSA2NzMuMzkzOTIsNTExLjczOTE3IDAuMTE0MDEsLTgyLjgxNTMxIGggMTQuMDM2MjYgdiA1MC42MDk0MyBsIDIyLjcxNDk3LC0yOS45MDcwNCBoIDE3LjMxMDkxIGwgLTI0LjA5NjgsMzEuMDU3ODYgMjYuMTY3OTcsMzEuMDU1MDYgaCAtMTguMzQ3OTEgbCAtMjMuNzQ5MTQsLTI5LjkwNjk5IHYgMjkuOTA2OTkgeiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtMzYuMDEzMTY5LC00OC41OTg5MTUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA3KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEwOCIKICAgICAgIGQ9Im0gNzA5LjQ0OTg5LDQ0Ny45MjAxNCBoIDI3LjIwMjUxIHYgMTAuODcwNDIgaCAtMjcuMjAyNTEgeiBtIDI3LjIwMjUxLDYyLjExMjQ4IGMgLTQuMTA0NzMsMC43NjU2OSAtOC4xMTg1MywxLjEwMTg3IC0xMi4wNDkzMSwxLjAwODk4IC0zLjkyODgzLC0wLjEwMDk2IC03LjQ1MDA3LC0wLjgyNzAzIC0xMC41NTE4OCwtMi4xODc5OSAtMy4xMDc3OSwtMS4zNTkwMSAtNS40NjU5NCwtMy41MTczNCAtNy4wNzQyMiwtNi40NzA3NyAtMS40MjAyOSwtMi42ODI1NSAtMi4xNjgwOSwtNS40MjIzNiAtMi4yNDMyOSwtOC4yMjM1NyAtMC4wNzkyLC0yLjc5OTEzIC0wLjExNjgyLC01Ljk1ODM3IC0wLjExNjgyLC05LjQ4NzU1IFYgNDMwLjY2OCBoIDEzLjgwMjM3IHYgNTMuMTk2NTkgYyAwLDIuNDkyNTYgMC4wMjk3LDQuNjgwNTUgMC4wODY5LDYuNTU3ODYgMC4wNTk2LDEuODc5MzQgMC40NDkxLDMuNDEyNDggMS4xODA5MSw0LjYwMTM4IDEuMzc4OTEsMi4yOTg3MSAzLjU4MjY0LDMuNTg0NDggNi42MTM0MSwzLjg1MzU4IDMuMDI4NTYsMC4yNjUwOCA2LjQ3ODc2LDAuMTEyNzMgMTAuMzUxOTIsLTAuNDYwOTQgdiAxMS42MTYxNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC0zMi4wMDc5NiwtNDguMzc1MDcpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTA5KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExMCIKICAgICAgIGQ9Im0gNzQ3LjIyMDAzLDUwMS41MDE5MiAtMjIuNTQyODQsLTYyLjExMjkxIGggMTMuODYxMDggbCAxNS42NDI4Miw0NS4wMzI4MyAxNS41ODQ2LC00NS4wMzI4MyBoIDEzLjkxNjI2IGwgLTIyLjU0MjQ4LDYyLjExMjkxIHoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI5LjQzNDY5OSwtNDcuMjU2MzU2KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTIiCiAgICAgICBkPSJtIDc3NS45MDY5Miw1MDQuMDgxNDggYyAtNC40ODg2NSwwIC04LjI4Mjg0LC0wLjg1NDYxIC0xMS4zODg3OSwtMi41NTk4MSAtMy4xMDM3NiwtMS43MDUyIC01LjQ1NTgxLC0zLjk3ODIxIC03LjA0NDMxLC02LjgxNSAtMS41OTI1MywtMi44MzY3NCAtMi4zODc4MiwtNS45NjI0MSAtMi4zODc4MiwtOS4zNzQ4OCAwLC0yLjk5MDk3IDAuNDk2NDYsLTUuNjgzNDEgMS40OTM1MywtOC4wODEwNiAwLjk5OTAyLC0yLjM5NTYzIDIuNTMyMSwtNC40NjQ4NCA0LjYwMzM5LC02LjIxMTYxIDIuMDcxMjksLTEuNzQyODYgNC43NTM2NiwtMy4xNjkxMiA4LjA1MTM5LC00LjI4Mjg5IDIuNDkwNiwtMC44MDUxMiA1LjQxNjM5LC0xLjUzMzA5IDguNzY5NTQsLTIuMTgzOTYgMy4zNTUxLC0wLjY1MDgyIDYuOTk4OSwtMS4yNTYxNyAxMC45Mjc3MywtMS44MTQwMyAzLjkzMjc0LC0wLjU1NTkxIDguMDQxNSwtMS4xNTcyOSAxMi4zMzYzLC0xLjgxMjAxIGwgLTQuOTQ1NjgsMi44MTg5MSBjIDAuMDM3NiwtNC4yOTI3MyAtMC45MTk4LC03LjQ1Nzg5IC0yLjg3NDM5LC05LjQ4OTU3IC0xLjk1NDQ2LC0yLjAzMTY3IC01LjI1MjE5LC0zLjA0ODQ2IC05Ljg5NTAxLC0zLjA0ODQ2IC0yLjc5NzI1LDAgLTUuNDk5NjQsMC42NTI4MyAtOC4xMDg3NywxLjk1NDUzIC0yLjYwNzQyLDEuMzA1NiAtNC40MjczNywzLjU0ODk1IC01LjQ2MTkxLDYuNzMxODcgbCAtMTIuNjUyODQsLTMuOTcwMjcgYyAxLjUzNTE2LC01LjI1MjIgNC40NTQ5NiwtOS40Njc3OCA4Ljc2OTU0LC0xMi42NTI3NyA0LjMxMjYyLC0zLjE4MDk3IDEwLjEzMDQ5LC00Ljc3MzQ0IDE3LjQ1Mzk4LC00Ljc3MzQ0IDUuNTIxMjQsMCAxMC4zODE3MSwwLjkwMDAyIDE0LjU3OTU5LDIuNzAyMjEgNC4xOTc3NSwxLjgwMjE4IDcuMzE1NDIsNC43NTU2MSA5LjM0NTA5LDguODU4NTIgMS4xMTM3NywyLjE4Mzk2IDEuNzg2MzcsNC40MTkzNyAyLjAxMzkxLDYuNzAwMjYgMC4yMjkzNywyLjI4MDk0IDAuMzQ2Miw0Ljc2NTYyIDAuMzQ2Miw3LjQ0NjEgdiAzOC4xMzAzNyBoIC0xMi4xMzY0OCB2IC0xMy40NTc4OCBsIDIuMDExODQsMi4xODc4NiBjIC0yLjc5NzI0LDQuNDg0NjggLTYuMDYzMjMsNy43NzI1OSAtOS44MDIyNCw5Ljg2MTU3IC0zLjc0MDczLDIuMDg4OTMgLTguNDA3NDgsMy4xMzU0NCAtMTQuMDAzNzksMy4xMzU0NCBtIDIuNzU5NTIsLTExLjA0MjQ4IGMgMy4xNDM0NCwwIDUuODI4MDEsLTAuNTU1ODUgOC4wNTEzOSwtMS42Njc2IDIuMjIxNTYsLTEuMTEzODMgMy45OTYyMiwtMi40NzQ3OSA1LjMxOTU4LC00LjA4NTA4IDEuMzIzNDksLTEuNjA4MzQgMi4yMTM2MywtMy4xMjU2MSAyLjY3NDU3LC00LjU0MiAwLjcyNzksLTEuNzY0NTggMS4xMzk0LC0zLjc4NjMxIDEuMjM2NDUsLTYuMDY3MjYgMC4wOTY5LC0yLjI4MDg4IDAuMTQ2MzYsLTQuMTMwNjEgMC4xNDYzNiwtNS41NTA5IGwgNC4yNTMxNywxLjI2NTk5IGMgLTQuMTc4MSwwLjY1MDk0IC03Ljc2NDUyLDEuMjI2NTYgLTEwLjc1MzY2LDEuNzI3MTEgLTIuOTkxMDksMC40OTY1MiAtNS41NjA5MSwwLjk2NTQgLTcuNzA5MjMsMS40MDY1IC0yLjE0NjM2LDAuNDQxMSAtNC4wNDE1LDAuOTI5NzUgLTUuNjkzMjQsMS40Njc4MyAtMS42MDgyNywwLjU3MzY3IC0yLjk3MTQzLDEuMjQ2MjggLTQuMDgzMTMsMi4wMTE4NCAtMS4xMDk4NiwwLjc2NzY0IC0xLjk2MjUyLDEuNjQ5ODQgLTIuNTU5OTMsMi42NDY5MSAtMC41OTUzNCwwLjk5NSAtMC44OTAwMiwyLjE2NDEzIC0wLjg5MDAyLDMuNTA3MzMgMCwxLjUzNTE1IDAuMzgxNzIsMi44ODQyOCAxLjE1MTI1LDQuMDU1NDIgMC43Njc0NSwxLjE2OTEzIDEuODg3MDgsMi4wOTY5MiAzLjM2NDg3LDIuNzg3MzUgMS40NzU4MywwLjY5MjMyIDMuMzA1NzgsMS4wMzY1NiA1LjQ5MTU3LDEuMDM2NTYiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTI1LjUzMzk4NiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExMykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTQiCiAgICAgICBkPSJNIDAsMCBIIDEzLjg2MDk2IFYgODQuNTQxNzQ4IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDgxLjg2NzU4Myw3LjQyMDM1NzYpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTE1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDExNiIKICAgICAgIGQ9Im0gODI3LjQyNTksNTA0LjA3OTUzIGMgLTUuNzE0OTYsMCAtMTAuNzAwMzEsLTEuNDM4MTcgLTE0Ljk1MzQ5LC00LjMxMjU2IC00LjI1NzA4LC0yLjg3NDMzIC03LjU1NDgxLC02Ljc4NTI4IC05Ljg5MTExLC0xMS43MzA4NCAtMi4zNDAyMSwtNC45NDk2NCAtMy41MTEyMywtMTAuNTI0MjkgLTMuNTExMjMsLTE2LjczNzg1IDAsLTYuMjg2ODcgMS4xNzg5NSwtMTEuODk1MDggMy41MzkwNiwtMTYuODIwOTIgMi4zNTU5NiwtNC45Mjc4IDUuNzAzMTMsLTguODE4OTEgMTAuMDM1NCwtMTEuNjc1NDggNC4zMzI0LC0yLjg1NDY4IDkuNDMyMjUsLTQuMjg0ODUgMTUuMjk3NzMsLTQuMjg0ODUgNS45MDI5NSwwIDEwLjg1ODUyLDEuNDMwMTcgMTQuODY2MzMsNC4yODQ4NSA0LjAwNDAzLDIuODU2NTcgNy4wNDQ2OCw2Ljc1NTYyIDkuMTE1NzMsMTEuNzA1MTQgMi4wNjkyMSw0Ljk0NTYyIDMuMTA1ODMsMTAuNTQxOTkgMy4xMDU4MywxNi43OTEyNiAwLDYuMTc0MDcgLTEuMDM2NjIsMTEuNzQyNzQgLTMuMTA1ODMsMTYuNzA4MTMgLTIuMDcxMDUsNC45NjMzOCAtNS4xNTcxMSw4Ljg4NjIzIC05LjI2MDE0LDExLjc2MDU2IC00LjEwMDgzLDIuODc0MzkgLTkuMTgyODYsNC4zMTI1NiAtMTUuMjM4MjgsNC4zMTI1NiBtIDEuMjA0NzIsMjcuNjA4MTUgYyAtMy40NDgsMCAtNi43NTU1LC0wLjUzODA4IC05LjkxODgzLC0xLjYxMjI0IC0zLjE2MzA4LC0xLjA3MjE0IC02LjAxMTcyLC0yLjYxNTIzIC04LjU0MTg3LC00LjYyOTAzIC0yLjUzMDI3LC0yLjAxMzkxIC00LjYwMTU2LC00LjQzOTE1IC02LjIwOTcxLC03LjI3NTg4IGwgMTIuNzY1MzgsLTYuMzI2NDcgYyAxLjE4ODk2LDIuMjYzMTIgMi44Njg1MywzLjk0MDY3IDUuMDMyNzEsNS4wMzI2NSAyLjE2ODIxLDEuMDkxOTggNC40Nzg2NCwxLjYzOCA2LjkzMTc2LDEuNjM4IDIuODc0MjcsMCA1LjQ0MjE0LC0wLjUwODQyIDcuNzA1MDgsLTEuNTIzMjUgMi4yNjEyMywtMS4wMTQ5IDQuMDE3ODIsLTIuNTEyNDYgNS4yNjIyMSwtNC40ODQ2OSAxLjI0NDI2LC0xLjk3ODI3IDEuODMxNzksLTQuNDM3MTMgMS43NTQ2NCwtNy4zOTA2MiB2IC0xNy42NTU3NiBoIDEuNzI2OTMgViA0NDAuMjQyIGggMTIuMTMyNjkgdiA2NS4xMDE2MyBjIDAsMS41NzQ2NCAtMC4wNjc1LDMuMDgwMTQgLTAuMTk5ODMsNC41MTYyOSAtMC4xMzQ1MiwxLjQzODE4IC0wLjM1NjA4LDIuODQ4NjQgLTAuNjYyODQsNC4yMjc0MiAtMC45MTk4LDQuMDI1NzYgLTIuNjgyMzgsNy4zMzEzNiAtNS4yODk4LDkuOTIwOSAtMi42MDkxMywyLjU4NzUyIC01LjgzNzY1LDQuNTE0MzQgLTkuNjg5MzMsNS43ODA0IC0zLjg1NTU5LDEuMjY0MDkgLTguMTE4NTMsMS44OTkwNCAtMTIuNzk5MTksMS44OTkwNCBtIDAuOTIxODcsLTQwLjAyOTQ4IGMgMy43MTcxNiwwIDYuNzE4MTQsLTAuODUyNTQgOS4wMDMwNSwtMi41NTk4MSAyLjI3Njk4LC0xLjcwNTIgMy45NDY1NCwtNC4wOTA5NCA1LjAwMDg2LC03LjE1OTE4IDEuMDU0NDQsLTMuMDY2MjkgMS41ODI1MiwtNi42MTMyOCAxLjU4MjUyLC0xMC42NDA5MyAwLC00LjA2MzI5IC0wLjUyODA4LC03LjYxODE3IC0xLjU4MjUyLC0xMC42Njg2NCAtMS4wNTQzMiwtMy4wNDY0NSAtMi42OTQzNCwtNS40MjQzMiAtNC45MTU3NywtNy4xMzE0NyAtMi4yMjc1NCwtMS43MDUyNiAtNS4xMDE5MywtMi41NTc4NiAtOC42MjcyLC0yLjU1Nzg2IC0zLjcyMTA3LDAgLTYuNzg5MTksMC45MTE5OCAtOS4yMDI3NiwyLjcyOTk4IC0yLjQxNTQxLDEuODIzOTEgLTQuMTk5NzEsNC4yNzY4NSAtNS4zNDcwNSw3LjM2MjkxIC0xLjE1MTM2LDMuMDg2MDYgLTEuNzI3MDUsNi41MDg0MyAtMS43MjcwNSwxMC4yNjUwOCAwLDMuNzk2MTQgMC41Njc3NSw3LjIzODM0IDEuNjk3MjcsMTAuMzIyMzkgMS4xMjk2NCwzLjA4ODA3IDIuODY2NTgsNS41MzMwOCA1LjIwMjc2LDcuMzMzMzEgMi4zNDAzMywxLjgwNDA4IDUuMzA5NjksMi43MDQyMiA4LjkxNTg5LDIuNzA0MjIiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsLTE5Ljg5MTg0MiwtNDcuMzY4Mjc5KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExNykiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMTgiCiAgICAgICBkPSJNIDAsMCBIIDM2LjU5MDYzMyBWIDEwLjIyNDExMiBIIDAgWiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwxMS45ODA5MjIsMTcuNjkwMTA3KSIKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwUGF0aDExOSkiIC8+CiAgICA8cGF0aAogICAgICAgaWQ9InBhdGgxMjAiCiAgICAgICBkPSJNIDU0OS40ODQ2Miw0NzcuNTcyMzYgSCA1MTguMDA1IHYgLTEwLjIyMzUxIGggMjYuMzY3NjggViA0NDAuOTgzIGggMTAuMjIzNjMgdiAzMS40Nzc2IGMgMCwyLjgyNDk1IC0yLjI5MDc3LDUuMTExNzYgLTUuMTExNjksNS4xMTE3NiIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNTUuOTQ1OTk3LC00Ny4wNTE5NzUpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIxKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyMiIKICAgICAgIGQ9Ik0gMCwwIEggMTAuMjI0MTEyIFYgNjIuOTYwMTA2IEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDE4Ljg1NTY5NywxMC43NzQ3MTEpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTIzKSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNCIKICAgICAgIGQ9Ik0gMCwwIEggMzYuNTkzNDg3IFYgMTAuMjI0MTEyIEggMCBaIgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LDguNDgyNTAzMyw3LjMxNjg4NDgpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTI1KSIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0icGF0aDEyNiIKICAgICAgIGQ9Ik0gNTE0Ljc0NDM4LDQ3Ny41NzIzNiBIIDUwNC41MTkwMSBWIDQ0Ni4wOTQ3IGMgMCwtMi44MjI4MiAyLjI5MDgzLC01LjExMTcgNS4xMTE3NiwtNS4xMTE3IGggMzEuNDgxNjYgdiAxMC4yMjM1MSBoIC0yNi4zNjgwNSB6IgogICAgICAgc3R5bGU9ImZpbGw6IzJmNDYzZTtmaWxsLW9wYWNpdHk6MTtmaWxsLXJ1bGU6bm9uemVybztzdHJva2U6bm9uZSIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KDAuMTMxMTMxNSwwLDAsMC4xMzExMzE1LC01Ny42NzU5MzEsLTQ3LjA1MTk3NSkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjcpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTI4IgogICAgICAgZD0iTSAwLDAgSCAxMC4yMjQxMTIgViA2Mi45NjAxMDYgSCAwIFoiCiAgICAgICBzdHlsZT0iZmlsbDojMmY0NjNlO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTpub25lIgogICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC4xMzExMzE1LDAsMCwwLjEzMTEzMTUsNS4wNjUyMTQ4LDcuMzE2ODg0OCkiCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcFBhdGgxMjkpIiAvPgogICAgPHBhdGgKICAgICAgIGlkPSJwYXRoMTMwIgogICAgICAgZD0ibSA1NjguNjM4MTIsNTk1LjE1OTMgYyAtNTMuNTU2NTIsMCAtOTcuMTI5MTUsLTQzLjU3MjUxIC05Ny4xMjkxNSwtOTcuMTI5MTUgMCwtNTMuNTU2NyA0My41NzI2MywtOTcuMTI5MTUgOTcuMTI5MTUsLTk3LjEyOTE1IDUzLjU1Njc3LDAgOTcuMTI5MTUsNDMuNTcyNDUgOTcuMTI5MTUsOTcuMTI5MTUgMCw1My41NTY2NCAtNDMuNTcyMzgsOTcuMTI5MTUgLTk3LjEyOTE1LDk3LjEyOTE1IG0gMCwtMTg0LjAzNDc5IGMgLTQ3LjkxODUyLDAgLTg2LjkwMzU2LDM4Ljk4Njk0IC04Ni45MDM1Niw4Ni45MDU2NCAwLDQ3LjkyMjYxIDM4Ljk4NTA0LDg2LjkwNTY0IDg2LjkwMzU2LDg2LjkwNTY0IDQ3LjkxODgzLDAgODYuOTA1NzYsLTM4Ljk4MzAzIDg2LjkwNTc2LC04Ni45MDU2NCAwLC00Ny45MTg3IC0zOC45ODY5MywtODYuOTA1NjQgLTg2LjkwNTc2LC04Ni45MDU2NCIKICAgICAgIHN0eWxlPSJmaWxsOiMyZjQ2M2U7ZmlsbC1vcGFjaXR5OjE7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOm5vbmUiCiAgICAgICB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMTEzMTUsMCwwLDAuMTMxMTMxNSwtNjEuOTEwMzYzLC01Mi4xOTM1MDkpIgogICAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXBQYXRoMTMxKSIgLz4KICA8L2c+Cjwvc3ZnPgo=",alt:"Fraktvalg logo"})}),(0,c.jsx)(Z,{currentStep:e,steps:g.length,labels:g,setStep:t}),(0,c.jsxs)("div",{className:"max-w-5xl bg-white rounded-lg shadow p-6",children:[1===e&&(0,c.jsx)(d,{nextStep:s}),2===e&&(0,c.jsx)(f,{nextStep:s}),3===e&&(0,c.jsx)(P,{nextStep:s}),4===e&&(0,c.jsx)(F,{nextStep:s}),5===e&&(0,c.jsx)(G,{nextStep:s})]})]})})})}const W=document.getElementById("fraktvalg-onboarding");W&&(0,s.H)(W).render((0,c.jsx)(J,{}))})();
  • fraktvalg/trunk/fraktvalg.php

    r3261840 r3267354  
    1010 * Description: Easily provide shipping estimates for your customers from multiple providers.
    1111 * Author: fraktvalg
    12  * Version: 1.0.0
     12 * Version: 1.1.0
    1313 * Text Domain: fraktvalg
    1414 * Requires Plugins: woocommerce
  • fraktvalg/trunk/readme.txt

    r3261837 r3267354  
    55Requires PHP: 7.4
    66Tested up to: 6.7
    7 Stable tag: 1.0.0
     7Stable tag: 1.1.0
    88License: GPLv2 or later
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    5454== Changelog ==
    5555
     56= 1.1.0 (2025-04-06) =
     57* Align the shipping block better on the x-axis in themes.
     58* Better shipping labels in classic themes wit hthe default shipping display from WooCommerce.
     59* Add support for more provier logo types from the Fraktvalg API.
     60* Better presentation of error messages when setting up shipping providers.
     61* Improve the onboarding wizard by automating the setup process for block themes when possible.
     62* Improve shipping rate update times by leveraging the WooCommerce data stores.
     63
    5664= 1.0.0 (2025-03-22) =
    5765* Initial release
  • fraktvalg/trunk/uninstall.php

    r3260012 r3267354  
    1010    die;
    1111}
     12
     13// Remove all options and transients.
     14delete_option( 'fraktvalg_configured' );
     15delete_option( 'fraktvalg_api_key' );
     16delete_option( 'fraktvalg_options' );
     17delete_option( 'fraktvalg[\'priorityProvider\']' );
Note: See TracChangeset for help on using the changeset viewer.