Plugin Directory

Changeset 2284222


Ignore:
Timestamp:
04/15/2020 03:08:30 PM (6 years ago)
Author:
webflowapp
Message:

Release 1.0.3
Fixed broken preview of posts and pages

Location:
webflow-pages
Files:
75 added
11 edited

Legend:

Unmodified
Added
Removed
  • webflow-pages/trunk/README.txt

    r2198716 r2284222  
    33Tags: visual builder
    44Requires at least: 5.0.0
    5 Tested up to: 5.3
     5Tested up to: 5.4
    66Requires PHP: 5.6
    7 Stable tag: 1.0.2
     7Stable tag: 1.0.3
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    6767
    6868== Changelog ==
     69= 1.0.3 =
     70* Fix - Fixed preview and customize preview
     71
    6972= 1.0.2 =
    7073* Tweak - Added support for Webflow Pagination
  • webflow-pages/trunk/externals/dashboard/package.json

    r2167725 r2284222  
    11{
    22  "name": "webflow-pages-dashboard",
    3   "version": "1.0.1",
     3  "version": "1.0.3",
    44  "devDependencies": {
    55    "npm-run-all": "^4.1.5",
  • webflow-pages/trunk/externals/dashboard/public/bundle.css

    r2167725 r2284222  
    33.footer.svelte-fqtlda{position:absolute;bottom:12px;width:100%;text-align:center}a.svelte-fqtlda{color:#4253ff}
    44.login-wrapper.svelte-1camdh2{background-color:white;padding:40px;border-radius:4px;border:1px solid #f7f7f7;width:450px;text-align:center}form.svelte-1camdh2{max-width:500px;margin:auto}p.svelte-1camdh2{text-align:center;margin:0;margin-bottom:30px;font-size:14px}a.svelte-1camdh2{color:black;text-align:center;outline:0;box-shadow:none}input.field-input.svelte-1camdh2{margin-bottom:10px;background-color:#f7f8f9}.warning-notice.svelte-1camdh2{background-color:#f7f8f9;padding:20px;border-radius:4px;margin-top:20px}
    5 form:invalid input[type="submit"]{opacity:0.7;cursor:not-allowed}input.field-input{height:50px;padding:11px 16px;background-color:white;display:block;width:100%;height:38px;padding:8px 12px;font-size:14px;line-height:1.42857143;color:#333333;border:1px solid transparent;box-shadow:none}input.field-input:focus{border-color:#3898ec;outline:0;box-shadow:none}input.field-input:read-only:focus{outline:0;box-shadow:none}select.field-select[disabled]{-webkit-appearance:none}#wpbody-content{float:none;padding-bottom:0}#wpfooter{display:none}.main-content .wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden}small.error-message{display:none;position:absolute;bottom:2px}.wp-core-ui .button-disabled, .wp-core-ui
     5.actions-container.svelte-13sw1fy{display:flex;height:100%;flex-direction:column;overflow:auto;overflow:auto;justify-content:space-evenly}hr.svelte-13sw1fy{border-color:#f7f7f7;margin:10px}.site-container.svelte-13sw1fy{display:flex;height:100%;overflow:auto;justify-content:center;align-items:center}.actions-container.svelte-13sw1fy p.svelte-13sw1fy{margin:0;line-height:1}.actions-container h4{margin:0}
     6form:invalid input[type="submit"]{opacity:0.7;cursor:not-allowed}input.field-input{height:50px;padding:11px 16px;background-color:white;display:block;width:100%;height:38px;padding:8px 12px;font-size:14px;line-height:1.42857143;color:#333333;border:1px solid transparent;box-shadow:none}input.field-input:focus{border-color:#3898ec;outline:0;box-shadow:none}input.field-input:read-only:focus{outline:0;box-shadow:none}select.field-select[disabled]{-webkit-appearance:none;box-shadow:none;height:50px;padding-right:16px;padding-left:16px;border:1px none #000!important;border-radius:0px;background-color:white!important;display:block;width:100%;height:38px;padding:8px 12px;font-size:14px;line-height:1.42857143;color:#000}#wpbody-content{float:none;padding-bottom:0}#wpfooter{display:none}.main-content .wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden}small.error-message{display:none;position:absolute;bottom:2px}.wp-core-ui .button-disabled, .wp-core-ui
    67      .button-secondary.disabled, .wp-core-ui
    78      .button-secondary:disabled, .wp-core-ui
    89      .button-secondary[disabled], .wp-core-ui .button.disabled, .wp-core-ui
    9       .button:disabled, .wp-core-ui .button[disabled]{background-color:#c5c5c5 !important;color:white !important;box-shadow:none !important;border:none !important;text-shadow:none !important;font-size:14px;width:30px;height:30px;vertical-align:middle;padding:0;margin:0}input.field-input:invalid:focus{border:1px solid red}input.field-input:focus:invalid ~ small.error-message{display:block}div.input-wrapper{position:relative;padding-bottom:22px}select.field-select{box-shadow:none;height:50px;padding-right:16px;padding-left:16px;border:1px none #000;border-radius:0px;background-color:white;display:block;width:100%;height:38px;padding:8px 12px;font-size:14px;line-height:1.42857143;color:#000}.grid{display:grid;grid-gap:8px;align-items:center;grid-auto-columns:auto}.grid.grid-with-actions{grid-template-columns:1fr 1fr auto}.grid.grid-two{grid-template-columns:1fr 1fr}.button{margin-right:16px;padding-top:6px;padding-bottom:6px;padding-right:24px;padding-left:24px;font-size:15px;line-height:16px;height:auto;font-weight:500;text-decoration:none;display:inline-block;border-radius:4px}.button.primary{background-color:#4353ff;-webkit-transition-property:none;transition-property:none;color:#fff;border-radius:4px !important}.button.primary:hover{background-color:#3545ee;color:#fff}.button.remove{background-color:#ff6382;border:none;border-radius:50%;color:#fff;font-size:10px;height:30px;width:30px;box-shadow:none;padding:0;line-height:30px;text-align:center}.button.remove:hover{background-color:#ff6382;color:#fff}.button.add{background-color:#38d996;border:none;border-radius:50%;color:#fff;font-size:10px;height:auto;box-shadow:none}.button.add:hover{background-color:#38d996;color:#fff}p.description-subtitle{color:#999999;margin:0;font-size:12px;margin-top:-10px;margin-bottom:4px}
    10 .actions-container.svelte-13sw1fy{display:flex;height:100%;flex-direction:column;overflow:auto;overflow:auto;justify-content:space-evenly}hr.svelte-13sw1fy{border-color:#f7f7f7;margin:10px}.site-container.svelte-13sw1fy{display:flex;height:100%;overflow:auto;justify-content:center;align-items:center}.actions-container.svelte-13sw1fy p.svelte-13sw1fy{margin:0;line-height:1}.actions-container h4{margin:0}
     10      .button:disabled, .wp-core-ui .button[disabled]{background-color:#c5c5c5 !important;color:white !important;box-shadow:none !important;border:none !important;text-shadow:none !important;font-size:14px;width:30px;height:30px;vertical-align:middle;padding:0;margin:0}input.field-input:invalid:focus{border:1px solid red}input.field-input:focus:invalid ~ small.error-message{display:block}div.input-wrapper{position:relative;padding-bottom:22px}select.field-select{box-shadow:none;height:50px;padding-right:16px;padding-left:16px;border:1px none #000;border-radius:0px;background-color:white;display:block;width:100%;height:38px;padding:8px 12px;font-size:14px;line-height:1.42857143;color:#000}.grid{display:grid;grid-gap:8px;align-items:center;grid-auto-columns:auto}.grid.grid-with-actions{grid-template-columns:1fr 1fr auto}.grid.grid-two{grid-template-columns:1fr 1fr}.button{margin-right:16px;padding-top:6px;padding-bottom:6px;padding-right:24px;padding-left:24px;font-size:15px;line-height:16px;height:auto;font-weight:500;text-decoration:none;display:inline-block;border-radius:4px}.button.primary{background-color:#4353ff;-webkit-transition-property:none;transition-property:none;color:#fff;border-radius:4px !important}.button.primary:hover{background-color:#3545ee;color:#fff}.button.remove{background-color:#ff6382;border:none;border-radius:50%;color:#fff;font-size:10px;height:30px;width:30px;box-shadow:none;padding:0;line-height:30px;text-align:center}.button.remove:hover{background-color:#ff6382;color:#fff}.button.add{background-color:#38d996;border:none;border-radius:50%;color:#fff;font-size:10px!important;width:30px;height:30px;box-shadow:none}.button.add:hover{background-color:#38d996;color:#fff}p.description-subtitle{color:#999999;margin:0;font-size:12px;margin-top:-10px;margin-bottom:4px}
    1111div.svelte-1tca3kp{width:100%;max-width:90%;margin-right:auto;margin-left:auto;position:relative;display:flex;justify-content:center;align-items:center}
     12.field_label.svelte-mat9s6{margin-top:6px;margin-bottom:6px;color:#999999;font-size:12px;line-height:18px;font-weight:bold;display:block}
    1213input[type="submit"].svelte-eb2c7g{-webkit-appearance:button}input[type="submit"].svelte-eb2c7g{display:inline-block;padding:9px 15px;color:white;border:0;line-height:inherit;text-decoration:none;cursor:pointer;border-radius:4px}.form_submit-button.svelte-eb2c7g{width:100%;height:50px;padding-right:28px;padding-left:28px;background-color:#4353ff;font-weight:500}.form_submit-button.svelte-eb2c7g:hover{background-color:#3545ee}.form_submit-button.svelte-eb2c7g:disabled{opacity:0.7;cursor:not-allowed}.form_submit-button[variation="small"].svelte-eb2c7g{width:150px;height:auto}.form_submit-button[variation="black"].svelte-eb2c7g{width:auto;height:auto;padding-right:28px;padding-left:28px;background-color:#333;font-weight:500}.form_submit-button[variation="black"].svelte-eb2c7g:hover{background-color:#000}.form_submit-button[variation="red"].svelte-eb2c7g{width:auto;height:auto;padding-right:28px;padding-left:28px;background-color:#ff6382;font-weight:500}.form_submit-button[variation="red"].svelte-eb2c7g:hover{background-color:#ff6382}.form_submit-button[variation="grey"].svelte-eb2c7g{width:auto;height:auto;padding-right:28px;padding-left:28px;background-color:#d2d4d5;font-weight:500}.form_submit-button[variation="grey"].svelte-eb2c7g:hover{background-color:#d2d4d5}
    13 .field_label.svelte-mat9s6{margin-top:6px;margin-bottom:6px;color:#999999;font-size:12px;line-height:18px;font-weight:bold;display:block}
    1414div.svelte-66pno5{text-align:center;padding:20px}img.svelte-66pno5{max-width:150px;margin:auto}
    1515div.configuration-container.svelte-9bdctk{width:100%;margin-right:auto;margin-left:auto;position:relative;height:calc(100vh - 32px);display:flex;height:calc(100vh - 32px);flex-direction:column;justify-content:space-evenly}.wrapper.svelte-9bdctk{margin:0 auto;height:calc(100vh - 80px);width:80%}.main-content.svelte-9bdctk{background-color:white;border:1px solid #f7f7f7;border-radius:4px;display:grid;padding:15px;grid-template-columns:1fr 1fr;grid-gap:16px;height:80%;align-items:center;justify-content:space-between}@media screen and (max-width: 782px){.main-content.svelte-9bdctk{grid-template-columns:1fr;height:auto}}
    16 a.svelte-1dx6voi{height:36px;margin-bottom:0px;margin-right:10px;padding-left:10px;padding-right:10px;-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-transition:color 200ms ease-in-out;transition:color 200ms ease-in-out;color:#888;font-size:15px;line-height:37px;font-weight:500;text-decoration:none;border-bottom:2px solid transparent}a.svelte-1dx6voi:hover{color:#000}a.is-active.svelte-1dx6voi{color:#000;border-bottom:2px solid #000}a.svelte-1dx6voi:focus{outline:none;box-shadow:none}
    17 .headers.svelte-k5ling h3.svelte-k5ling{margin:0;height:10%;margin-bottom:6px}.form-wrapper.svelte-k5ling{display:flex;flex-direction:column;height:auto;padding:0px 10px;border-radius:4px;margin-bottom:10px}.form-wrapper.new-page.svelte-k5ling{background-color:#f7f8f9}form.configuration-form.svelte-k5ling{border-radius:4px;height:calc(100% - 32px);width:100%;display:inline-flex;flex-direction:column}.fields-wrapper.svelte-k5ling{flex:1;overflow:auto}.section-description.svelte-k5ling{font-size:12px;font-weight:bold}.no-collections.svelte-k5ling{display:flex;justify-content:center;align-items:center;flex:1;width:100%;background-color:#f7f7f7;border:1px solid #f7f7f7;min-height:90px}.no-collections.svelte-k5ling p.svelte-k5ling{font-size:14px;font-weight:700}.added-pages.svelte-k5ling{flex:1;display:inline-flex;flex-direction:column}.added-pages.svelte-k5ling .fields-wrapper.svelte-k5ling,.added-pages.svelte-k5ling .fields-headers.svelte-k5ling{padding:0 10px;background-color:#f7f8f9}
    18 .headers.svelte-cttv0y h3.svelte-cttv0y{margin:0;height:10%;margin-bottom:6px}.form-wrapper.svelte-cttv0y{display:flex;flex-direction:column;height:auto;padding:0px 10px;border-radius:4px;margin-bottom:10px}.form-wrapper.new-page.svelte-cttv0y{background-color:#f7f8f9}form.configuration-form.svelte-cttv0y{border-radius:4px;height:calc(100% - 32px);width:100%;display:inline-flex;flex-direction:column}.fields-wrapper.svelte-cttv0y{flex:1;overflow:auto}.section-description.svelte-cttv0y{font-size:12px;font-weight:bold}.no-pages-added.svelte-cttv0y{display:flex;justify-content:center;align-items:center;flex:1;width:100%;background-color:#f7f7f7;border:1px solid #f7f7f7}.no-pages-added.svelte-cttv0y p.svelte-cttv0y{font-size:14px;font-weight:700}.added-pages.svelte-cttv0y{flex:1;display:inline-flex;flex-direction:column}.added-pages.svelte-cttv0y .fields-wrapper.svelte-cttv0y,.added-pages.svelte-cttv0y .fields-headers.svelte-cttv0y{padding:0 10px;background-color:#f7f8f9}
    1916.modal-wrapper.svelte-qi2scw{position:fixed;top:0;left:0;background-color:rgba(0, 0, 0, 0.7);z-index:99999999;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center}.modal.svelte-qi2scw{background-color:white;height:30vh;width:30vw;display:grid;grid-template-rows:auto 1fr}.modal-header.svelte-qi2scw{display:flex;padding:20px 15px;justify-content:space-between;font-weight:700;font-size:16px;border-bottom:1px solid #f7f7f7}.modal-header.svelte-qi2scw a.svelte-qi2scw{color:black;text-decoration:none}.modal-content.svelte-qi2scw{background-color:#f5f5f5;display:flex;flex-direction:column;justify-content:center;align-items:center}.modal-button.svelte-qi2scw{display:inline-block;padding:9px 15px;color:white;border:0;line-height:inherit;text-decoration:none;cursor:pointer;border-radius:4px}.modal-button.red.svelte-qi2scw{width:auto;height:auto;padding-right:28px;padding-left:28px;background-color:#FF6382;font-weight:500}.modal-button.red.svelte-qi2scw:hover{background-color:#FF6382}.modal-button.grey.svelte-qi2scw{width:auto;height:auto;padding-right:28px;padding-left:28px;background-color:#d2d4d5;font-weight:500}.modal-button.grey.svelte-qi2scw:hover{background-color:#d2d4d5}
    2017form.svelte-t3nmi4{display:grid;grid-gap:8px;justify-content:center;align-items:center;grid-template-columns:1fr 1fr}select.svelte-t3nmi4{background-color:#f7f8f9}
    2118img.svelte-s2dgog{max-width:100%;height:auto}a.svelte-s2dgog{box-shadow:none}
     19.headers.svelte-14gykfj h3.svelte-14gykfj{margin:0;height:10%;margin-bottom:6px}.form-wrapper.svelte-14gykfj{display:flex;flex-direction:column;height:auto;padding:0px 10px;border-radius:4px;margin-bottom:10px}.form-wrapper.new-page.svelte-14gykfj{background-color:#f7f8f9}form.configuration-form.svelte-14gykfj{border-radius:4px;height:calc(100% - 32px);width:100%;display:inline-flex;flex-direction:column}.section-description.svelte-14gykfj{font-size:12px;font-weight:bold}.no-pages-added.svelte-14gykfj{display:flex;justify-content:center;align-items:center;flex:1;width:100%;background-color:#f7f7f7;border:1px solid #f7f7f7}.no-pages-added.svelte-14gykfj p.svelte-14gykfj{font-size:14px;font-weight:700}.added-pages.svelte-14gykfj{flex:1;display:inline-flex;flex-direction:column}.added-pages.svelte-14gykfj .fields-wrapper.svelte-14gykfj,.added-pages.svelte-14gykfj .fields-headers.svelte-14gykfj{padding:0 10px;background-color:#f7f8f9}
     20a.svelte-1dx6voi{height:36px;margin-bottom:0px;margin-right:10px;padding-left:10px;padding-right:10px;-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-transition:color 200ms ease-in-out;transition:color 200ms ease-in-out;color:#888;font-size:15px;line-height:37px;font-weight:500;text-decoration:none;border-bottom:2px solid transparent}a.svelte-1dx6voi:hover{color:#000}a.is-active.svelte-1dx6voi{color:#000;border-bottom:2px solid #000}a.svelte-1dx6voi:focus{outline:none;box-shadow:none}
     21.headers.svelte-18fwrq h3.svelte-18fwrq{margin:0;height:10%;margin-bottom:6px}.form-wrapper.svelte-18fwrq{display:flex;flex-direction:column;height:auto;padding:0px 10px;border-radius:4px;margin-bottom:10px}.form-wrapper.new-page.svelte-18fwrq{background-color:#f7f8f9}form.configuration-form.svelte-18fwrq{border-radius:4px;height:calc(100% - 32px);width:100%;display:inline-flex;flex-direction:column}.section-description.svelte-18fwrq{font-size:12px;font-weight:bold}.no-collections.svelte-18fwrq{display:flex;justify-content:center;align-items:center;flex:1;width:100%;background-color:#f7f7f7;border:1px solid #f7f7f7;min-height:90px}.no-collections.svelte-18fwrq p.svelte-18fwrq{font-size:14px;font-weight:700}.added-pages.svelte-18fwrq{flex:1;display:inline-flex;flex-direction:column}.added-pages.svelte-18fwrq .fields-wrapper.svelte-18fwrq,.added-pages.svelte-18fwrq .fields-headers.svelte-18fwrq{padding:0 10px;background-color:#f7f8f9}.fields-wrapper{flex:1;overflow:auto;max-height:calc(50px * 5)}.fields-wrapper::-webkit-scrollbar{width:3px;background-color:#F5F5F5}.fields-wrapper::-webkit-scrollbar-thumb{background-color:#a1a1a1}
    2222div.navbar-light.svelte-1qxftnk{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;flex-grow:1;justify-self:flex-start;align-self:flex-start;padding-left:10px;margin-bottom:-1px}
    2323
  • webflow-pages/trunk/externals/dashboard/public/bundle.css.map

    r2167725 r2284222  
    77    "..\\src\\components\\Footer.svelte",
    88    "..\\src\\pages\\Login.svelte",
     9    "..\\src\\pages\\Utils.svelte",
    910    "..\\src\\pages\\Configuration.svelte",
    10     "..\\src\\pages\\Utils.svelte",
    1111    "..\\src\\components\\Container.svelte",
     12    "..\\src\\components\\Label.svelte",
    1213    "..\\src\\components\\Submit.svelte",
    13     "..\\src\\components\\Label.svelte",
    1414    "..\\src\\components\\Logo.svelte",
    1515    "..\\src\\components\\ConfigurationContainer.svelte",
    16     "..\\src\\components\\Link.svelte",
    17     "..\\src\\components\\CollectionRules.svelte",
    18     "..\\src\\components\\StaticRules.svelte",
    1916    "..\\src\\components\\RemoveTokenAction.svelte",
    2017    "..\\src\\components\\ChangeCacheAction.svelte",
    2118    "..\\src\\components\\Site.svelte",
     19    "..\\src\\components\\StaticRules.svelte",
     20    "..\\src\\components\\Link.svelte",
     21    "..\\src\\components\\CollectionRules.svelte",
    2222    "..\\src\\components\\Navbar.svelte"
    2323  ],
     
    2727    "<style>\r\n.footer {\r\n    position: absolute;\r\n    bottom: 12px;\r\n    width: 100%;\r\n    text-align: center;\r\n}\r\na {\r\n    color: #4253ff;\r\n}\r\n</style>\r\n\r\n<div class=\"footer\">\r\n    <a href=\"https://university.webflow.com/\" target=\"_blank\" rel=\"nofollow\">Need support?</a>\r\n</div>",
    2828    "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Container from \"../components/Container.svelte\";\r\n\r\n  import Submit from \"../components/Submit.svelte\";\r\n  import Label from \"../components/Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import Logo from \"../components/Logo.svelte\";\r\n\r\n  const loginStore = writable({\r\n    disabled: false,\r\n    value: \"Add Webflow API Key\"\r\n  });\r\n\r\n  let token = \"\";\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    loginStore.set({ disabled: true, value: \"Saving...\" });\r\n    await store.saveToken(token);\r\n    loginStore.set({ disabled: false, value: \"Add Webflow API Key\" });\r\n  };\r\n</script>\r\n\r\n<style>\r\n  .login-wrapper {\r\n    background-color: white;\r\n    padding: 40px;\r\n    border-radius: 4px;\r\n    border: 1px solid #f7f7f7;\r\n    width: 450px;\r\n    text-align: center;\r\n  }\r\n  form {\r\n    max-width: 500px;\r\n    margin: auto;\r\n  }\r\n  p {\r\n    text-align: center;\r\n    margin: 0;\r\n    margin-bottom: 30px;\r\n    font-size: 14px;\r\n  }\r\n  a {\r\n    color: black;\r\n    text-align: center;\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n  input.field-input {\r\n    margin-bottom: 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  .warning-notice {\r\n    background-color: #f7f8f9;\r\n    padding: 20px;\r\n    border-radius: 4px;\r\n    margin-top: 20px;\r\n  }\r\n</style>\r\n\r\n<Container>\r\n  <div class=\"login-wrapper\">\r\n    <Logo />\r\n    <b>Congratulations on installing the Webflow Wordpress plugin!</b>\r\n    <p>\r\n      You can find your site's API key by going to the <a href=\"https://webflow.com/dashboard?utm_source=wpplugin\" target=\"_blank\" rel=\"nofollow\">Webflow Dashboard</a>, then your site's settings\r\n    </p>\r\n    <form on:submit={handleSubmit}>\r\n\r\n      <input\r\n        class=\"field-input\"\r\n        bind:value={token}\r\n        type=\"password\"\r\n        name=\"api_keys\"\r\n        autocomplete=\"off\"\r\n        placeholder=\"Your Api Key...\"\r\n        required />\r\n      <Submit value={$loginStore.value} disabled={$loginStore.disabled} />\r\n    </form>\r\n\r\n    <div class=\"warning-notice\">\r\n      This version of the plugin is not compatible with Webflow Ecommerce. Please contact <a href=\"https://university.webflow.com/contact\" target=\"_blank\" rel=\"nofollow\">Webflow Support</a> for any help with the plugin.\r\n    </div>\r\n  </div>\r\n</Container>\r\n",
    29     "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Container from \"../components/ConfigurationContainer.svelte\";\r\n  import StaticRules from \"../components/StaticRules.svelte\";\r\n  import Link from \"../components/Link.svelte\";\r\n  import CollectionRules from \"../components/CollectionRules.svelte\";\r\n\r\n  //store.removeToken();\r\n</script>\r\n\r\n<style>\r\n  div.spacer {\r\n    height: 100px;\r\n  }\r\n  :global(form:invalid input[type=\"submit\"]) {\r\n    opacity: 0.7;\r\n    cursor: not-allowed;\r\n  }\r\n\r\n  :global(input.field-input) {\r\n    height: 50px;\r\n    padding: 11px 16px;\r\n    background-color: white;\r\n    display: block;\r\n    width: 100%;\r\n    height: 38px;\r\n    padding: 8px 12px;\r\n    font-size: 14px;\r\n    line-height: 1.42857143;\r\n    color: #333333;\r\n    border: 1px solid transparent;\r\n    box-shadow: none;\r\n  }\r\n  :global(input.field-input:focus) {\r\n    border-color: #3898ec;\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n  :global(input.field-input:read-only:focus) {\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n\r\n  :global(select.field-select[disabled]) {\r\n    -webkit-appearance: none;\r\n  }\r\n\r\n  :global(#wpbody-content) {\r\n    float: none;\r\n    padding-bottom: 0;\r\n  }\r\n\r\n  :global(#wpfooter) {\r\n    display: none;\r\n  }\r\n  :global(.main-content .wrapper) {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: 100%;\r\n    overflow: hidden;\r\n  }\r\n\r\n  :global(small.error-message) {\r\n    display: none;\r\n    position: absolute;\r\n    bottom: 2px;\r\n  }\r\n  :global(.wp-core-ui .button-disabled, .wp-core-ui\r\n      .button-secondary.disabled, .wp-core-ui\r\n      .button-secondary:disabled, .wp-core-ui\r\n      .button-secondary[disabled], .wp-core-ui .button.disabled, .wp-core-ui\r\n      .button:disabled, .wp-core-ui .button[disabled]) {\r\n    background-color: #c5c5c5 !important;\r\n    color: white !important;\r\n    box-shadow: none !important;\r\n    border: none !important;\r\n    text-shadow: none !important;\r\n    font-size: 14px;\r\n    width: 30px;\r\n    height: 30px;\r\n    vertical-align: middle;\r\n    padding: 0;\r\n    margin: 0;\r\n  }\r\n  :global(input.field-input:invalid:focus) {\r\n    border: 1px solid red;\r\n  }\r\n  :global(input.field-input:focus:invalid ~ small.error-message) {\r\n    display: block;\r\n  }\r\n\r\n  :global(div.input-wrapper) {\r\n    position: relative;\r\n    padding-bottom: 22px;\r\n  }\r\n\r\n  :global(select.field-select) {\r\n    box-shadow: none;\r\n    height: 50px;\r\n    padding-right: 16px;\r\n    padding-left: 16px;\r\n    border: 1px none #000;\r\n    border-radius: 0px;\r\n\r\n    background-color: white;\r\n    display: block;\r\n    width: 100%;\r\n    height: 38px;\r\n    padding: 8px 12px;\r\n\r\n    font-size: 14px;\r\n    line-height: 1.42857143;\r\n    color: #000;\r\n  }\r\n\r\n  :global(.grid) {\r\n    display: grid;\r\n    grid-gap: 8px;\r\n    align-items: center;\r\n    grid-auto-columns: auto;\r\n  }\r\n  :global(.grid.grid-with-actions) {\r\n    grid-template-columns: 1fr 1fr auto;\r\n  }\r\n  :global(.grid.grid-two) {\r\n    grid-template-columns: 1fr 1fr;\r\n  }\r\n\r\n  :global(.button) {\r\n    margin-right: 16px;\r\n    padding-top: 6px;\r\n    padding-bottom: 6px;\r\n    padding-right: 24px;\r\n    padding-left: 24px;\r\n    font-size: 15px;\r\n    line-height: 16px;\r\n    height: auto;\r\n    font-weight: 500;\r\n    text-decoration: none;\r\n    display: inline-block;\r\n    border-radius: 4px;\r\n  }\r\n\r\n  :global(.button.primary) {\r\n    background-color: #4353ff;\r\n    -webkit-transition-property: none;\r\n    transition-property: none;\r\n    color: #fff;\r\n    border-radius: 4px !important;\r\n  }\r\n  :global(.button.primary:hover) {\r\n    background-color: #3545ee;\r\n    color: #fff;\r\n  }\r\n  :global(.button.remove) {\r\n    background-color: #ff6382;\r\n    border: none;\r\n    border-radius: 50%;\r\n    color: #fff;\r\n    font-size: 10px;\r\n    height: 30px;\r\n    width: 30px;\r\n    box-shadow: none;\r\n    padding: 0;\r\n        line-height: 30px;\r\n        text-align: center;\r\n\r\n  }\r\n  :global(.button.remove:hover) {\r\n    background-color: #ff6382;\r\n    color: #fff;\r\n  }\r\n  :global(.button.add) {\r\n    background-color: #38d996;\r\n    border: none;\r\n    border-radius: 50%;\r\n    color: #fff;\r\n    font-size: 10px;\r\n    height: auto;\r\n    box-shadow: none;\r\n  }\r\n  :global(.button.add:hover) {\r\n    background-color: #38d996;\r\n    color: #fff;\r\n  }\r\n  :global(p.description-subtitle) {\r\n        color: #999999;\r\n    margin: 0;\r\n    font-size: 12px;\r\n    margin-top: -10px;\r\n    margin-bottom: 4px;\r\n  }\r\n</style>\r\n\r\n<Container>\r\n  <StaticRules />\r\n  <CollectionRules />\r\n</Container>\r\n",
    3029    "<script>\r\n  import Container from \"../components/ConfigurationContainer.svelte\";\r\n  import Navigation from \"../components/Navigation.svelte\";\r\n  import RemoveTokenAction from \"../components/RemoveTokenAction.svelte\";\r\n  import InvalidateCacheAction from \"../components/InvalidateCacheAction.svelte\";\r\n  import PreloadCacheAction from \"../components/PreloadCacheAction.svelte\";\r\n  import ChangeCacheAction from \"../components/ChangeCacheAction.svelte\";\r\n\r\n  import Site from \"../components/Site.svelte\";\r\n</script>\r\n\r\n<style>\r\n  .actions-container {\r\n    display: flex;\r\n    height: 100%;\r\n    flex-direction: column;\r\n    overflow: auto;\r\n    overflow: auto;\r\n    justify-content: space-evenly;\r\n  }\r\n  hr {\r\n    border-color: #f7f7f7;\r\n    margin: 10px;\r\n  }\r\n  .site-container {\r\n    display: flex;\r\n    height: 100%;\r\n    overflow: auto;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .actions-container p {\r\n    margin: 0;\r\n    line-height: 1;\r\n  }\r\n  :global(.actions-container h4) {\r\n    margin: 0;\r\n  }\r\n</style>\r\n\r\n<Container>\r\n  <div class=\"actions-container\">\r\n    <p>These advanced settings control how your site loads your Webflow pages. <br />For the most part, you shouldn't need to mess with them.</p>\r\n    <ChangeCacheAction />\r\n    <hr />\r\n    <InvalidateCacheAction />\r\n    <hr />\r\n    <PreloadCacheAction />\r\n    <hr />\r\n    <RemoveTokenAction />\r\n  </div>\r\n  <div class=\"site-container\">\r\n    <Site />\r\n  </div>\r\n</Container>\r\n",
     30    "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Container from \"../components/ConfigurationContainer.svelte\";\r\n  import StaticRules from \"../components/StaticRules.svelte\";\r\n  import Link from \"../components/Link.svelte\";\r\n  import CollectionRules from \"../components/CollectionRules.svelte\";\r\n\r\n  //store.removeToken();\r\n</script>\r\n\r\n<style>\r\n  div.spacer {\r\n    height: 100px;\r\n  }\r\n  :global(form:invalid input[type=\"submit\"]) {\r\n    opacity: 0.7;\r\n    cursor: not-allowed;\r\n  }\r\n\r\n  :global(input.field-input) {\r\n    height: 50px;\r\n    padding: 11px 16px;\r\n    background-color: white;\r\n    display: block;\r\n    width: 100%;\r\n    height: 38px;\r\n    padding: 8px 12px;\r\n    font-size: 14px;\r\n    line-height: 1.42857143;\r\n    color: #333333;\r\n    border: 1px solid transparent;\r\n    box-shadow: none;\r\n  }\r\n  :global(input.field-input:focus) {\r\n    border-color: #3898ec;\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n  :global(input.field-input:read-only:focus) {\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n\r\n  :global(select.field-select[disabled]) {\r\n    -webkit-appearance: none;\r\n    box-shadow: none;\r\n    height: 50px;\r\n    padding-right: 16px;\r\n    padding-left: 16px;\r\n    border: 1px none #000!important;\r\n    border-radius: 0px;\r\n\r\n    background-color: white!important;\r\n    display: block;\r\n    width: 100%;\r\n    height: 38px;\r\n    padding: 8px 12px;\r\n\r\n    font-size: 14px;\r\n    line-height: 1.42857143;\r\n    color: #000;\r\n  }\r\n\r\n  :global(#wpbody-content) {\r\n    float: none;\r\n    padding-bottom: 0;\r\n  }\r\n\r\n  :global(#wpfooter) {\r\n    display: none;\r\n  }\r\n  :global(.main-content .wrapper) {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: 100%;\r\n    overflow: hidden;\r\n  }\r\n\r\n  :global(small.error-message) {\r\n    display: none;\r\n    position: absolute;\r\n    bottom: 2px;\r\n  }\r\n  :global(.wp-core-ui .button-disabled, .wp-core-ui\r\n      .button-secondary.disabled, .wp-core-ui\r\n      .button-secondary:disabled, .wp-core-ui\r\n      .button-secondary[disabled], .wp-core-ui .button.disabled, .wp-core-ui\r\n      .button:disabled, .wp-core-ui .button[disabled]) {\r\n    background-color: #c5c5c5 !important;\r\n    color: white !important;\r\n    box-shadow: none !important;\r\n    border: none !important;\r\n    text-shadow: none !important;\r\n    font-size: 14px;\r\n    width: 30px;\r\n    height: 30px;\r\n    vertical-align: middle;\r\n    padding: 0;\r\n    margin: 0;\r\n  }\r\n  :global(input.field-input:invalid:focus) {\r\n    border: 1px solid red;\r\n  }\r\n  :global(input.field-input:focus:invalid ~ small.error-message) {\r\n    display: block;\r\n  }\r\n\r\n  :global(div.input-wrapper) {\r\n    position: relative;\r\n    padding-bottom: 22px;\r\n  }\r\n\r\n  :global(select.field-select) {\r\n    box-shadow: none;\r\n    height: 50px;\r\n    padding-right: 16px;\r\n    padding-left: 16px;\r\n    border: 1px none #000;\r\n    border-radius: 0px;\r\n\r\n    background-color: white;\r\n    display: block;\r\n    width: 100%;\r\n    height: 38px;\r\n    padding: 8px 12px;\r\n\r\n    font-size: 14px;\r\n    line-height: 1.42857143;\r\n    color: #000;\r\n  }\r\n\r\n  :global(.grid) {\r\n    display: grid;\r\n    grid-gap: 8px;\r\n    align-items: center;\r\n    grid-auto-columns: auto;\r\n  }\r\n  :global(.grid.grid-with-actions) {\r\n    grid-template-columns: 1fr 1fr auto;\r\n  }\r\n  :global(.grid.grid-two) {\r\n    grid-template-columns: 1fr 1fr;\r\n  }\r\n\r\n  :global(.button) {\r\n    margin-right: 16px;\r\n    padding-top: 6px;\r\n    padding-bottom: 6px;\r\n    padding-right: 24px;\r\n    padding-left: 24px;\r\n    font-size: 15px;\r\n    line-height: 16px;\r\n    height: auto;\r\n    font-weight: 500;\r\n    text-decoration: none;\r\n    display: inline-block;\r\n    border-radius: 4px;\r\n  }\r\n\r\n  :global(.button.primary) {\r\n    background-color: #4353ff;\r\n    -webkit-transition-property: none;\r\n    transition-property: none;\r\n    color: #fff;\r\n    border-radius: 4px !important;\r\n  }\r\n  :global(.button.primary:hover) {\r\n    background-color: #3545ee;\r\n    color: #fff;\r\n  }\r\n  :global(.button.remove) {\r\n    background-color: #ff6382;\r\n    border: none;\r\n    border-radius: 50%;\r\n    color: #fff;\r\n    font-size: 10px;\r\n    height: 30px;\r\n    width: 30px;\r\n    box-shadow: none;\r\n    padding: 0;\r\n        line-height: 30px;\r\n        text-align: center;\r\n\r\n  }\r\n  :global(.button.remove:hover) {\r\n    background-color: #ff6382;\r\n    color: #fff;\r\n  }\r\n  :global(.button.add) {\r\n    background-color: #38d996;\r\n    border: none;\r\n    border-radius: 50%;\r\n    color: #fff;\r\n    font-size: 10px!important;\r\n    width: 30px;\r\n    height: 30px;\r\n    box-shadow: none;\r\n  }\r\n  :global(.button.add:hover) {\r\n    background-color: #38d996;\r\n    color: #fff;\r\n  }\r\n  :global(p.description-subtitle) {\r\n        color: #999999;\r\n    margin: 0;\r\n    font-size: 12px;\r\n    margin-top: -10px;\r\n    margin-bottom: 4px;\r\n  }\r\n</style>\r\n\r\n<Container>\r\n  <StaticRules />\r\n  <CollectionRules />\r\n</Container>\r\n",
    3131    "<style>\r\ndiv {\r\n    width: 100%;\r\n    max-width: 90%;\r\n    margin-right: auto;\r\n    margin-left: auto;\r\n    position: relative;\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n}\r\n</style>\r\n\r\n<div>\r\n    <slot></slot>\r\n</div>",
     32    "<script>\r\n  export let forHtml = \"\";\r\n</script>\r\n\r\n<style>\r\n  .field_label {\r\n    margin-top: 6px;\r\n    margin-bottom: 6px;\r\n    color: #999999;\r\n    font-size: 12px;\r\n    line-height: 18px;\r\n    font-weight: bold;\r\n    display: block;\r\n  }\r\n</style>\r\n\r\n<label class=\"field_label\" for={forHtml}>\r\n  <slot />\r\n</label>\r\n",
    3233    "<script>\r\n  export let value = \"Submit\";\r\n  export let disabled = false;\r\n  export let variation = null;\r\n</script>\r\n\r\n<style>\r\n  input[type=\"submit\"] {\r\n    -webkit-appearance: button;\r\n  }\r\n\r\n  input[type=\"submit\"] {\r\n    display: inline-block;\r\n    padding: 9px 15px;\r\n    color: white;\r\n    border: 0;\r\n    line-height: inherit;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    border-radius: 4px;\r\n  }\r\n\r\n  .form_submit-button {\r\n    width: 100%;\r\n    height: 50px;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #4353ff;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button:hover {\r\n    background-color: #3545ee;\r\n  }\r\n  .form_submit-button:disabled {\r\n    opacity: 0.7;\r\n    cursor: not-allowed;\r\n  }\r\n  .form_submit-button[variation=\"small\"] {\r\n    width: 150px;\r\n    height: auto;\r\n  }\r\n\r\n  .form_submit-button[variation=\"black\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #333;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"black\"]:hover {\r\n    background-color: #000;\r\n  }\r\n\r\n  .form_submit-button[variation=\"red\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #ff6382;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"red\"]:hover {\r\n    background-color: #ff6382;\r\n  }\r\n\r\n  .form_submit-button[variation=\"grey\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #d2d4d5;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"grey\"]:hover {\r\n    background-color: #d2d4d5;\r\n  }\r\n</style>\r\n\r\n<input\r\n  type=\"submit\"\r\n  {value}\r\n  class=\"form_submit-button\"\r\n  {variation}\r\n  {disabled} />\r\n",
    33     "<script>\r\n  export let forHtml = \"\";\r\n</script>\r\n\r\n<style>\r\n  .field_label {\r\n    margin-top: 6px;\r\n    margin-bottom: 6px;\r\n    color: #999999;\r\n    font-size: 12px;\r\n    line-height: 18px;\r\n    font-weight: bold;\r\n    display: block;\r\n  }\r\n</style>\r\n\r\n<label class=\"field_label\" for={forHtml}>\r\n  <slot />\r\n</label>\r\n",
    3434    "<style>\r\ndiv {\r\n    text-align: center;\r\n    padding: 20px;\r\n}\r\nimg {\r\n    max-width: 150px;\r\n    margin: auto;\r\n}\r\n</style>\r\n<div>\r\n<img\r\n  src=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuNCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMzkzLjEgMjIxIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMzkzLjEgMjIxOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6IzQzNTNGRjt9Cgkuc3Qxe2ZpbGw6IzMzMzMzMzt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNzIsODguOWMwLTE0LjUtMTQuMS0yOS45LTM4LjUtMjkuOWMtMjcuNCwwLTU3LjUsMjAuMS02Mi4xLDYwLjJjLTQuNyw0MC41LDIwLjUsNTguNSw0NS45LDU4LjUKCXMzOC43LTkuOSw1Mi4zLTIzLjFjLTExLjctMTQuNy0yNi44LTcuOS0yOS43LTYuNGMtMy4yLDEuNi03LjMsMy44LTE1LjcsMy44Yy05LjgsMC0xOS44LTQuNC0xOS44LTIyLjcKCUMyNjcuMiwxMjMuMSwyNzIsMTAzLjQsMjcyLDg4Ljl6IE0yNDAuOSw5MS4zYy0wLjQsNC41LTIuMiwxMi4yLTM0LDE2LjVjNi43LTIzLjgsMTkuNS0yNS42LDI1LjQtMjUuNgoJQzIzNy44LDgyLjIsMjQxLjMsODYuNSwyNDAuOSw5MS4zeiBNMTM0LjUsOTUuMmMwLDAtMTMuNSw0Mi40LTE0LjYsNDUuOWMtMC40LTMuNi0xMC4zLTc5LjctMTAuMy03OS43Yy0yMywwLTM1LjMsMTYuNC00MS44LDMzLjcKCWMwLDAtMTYuNCw0Mi41LTE3LjgsNDYuMWMtMC4xLTMuMy0yLjUtNDUuNi0yLjUtNDUuNkM0Ni4xLDc0LjQsMjYuNyw2MS41LDExLDYxLjVsMTksMTE1LjNjMjQuMS0wLjEsMzcuMS0xNi40LDQzLjktMzMuNwoJYzAsMCwxNC41LTM3LjUsMTUuMS0zOS4yYzAuMSwxLjYsMTAuNCw3Mi45LDEwLjQsNzIuOWMyNC4yLDAsMzcuMi0xNS4zLDQ0LjItMzJsMzMuOS04My4zQzE1My42LDYxLjUsMTQxLDc3LjgsMTM0LjUsOTUuMnoKCSBNMzYwLjgsNTguOGMtMTQuOSwwLTI2LjMsOC4xLTM1LjksMjB2LTAuMWw4LjYtNjkuM2MtMTkuOCwwLTM1LjksMTcuMi0zOSw0Mi44bC0xNSwxMjMuN2MxMS40LDAsMjMuNS0zLjMsMzAtMTEuNwoJYzUuOCw3LjUsMTQuNSwxMy41LDI3LjQsMTMuNWMzMy40LDAsNTYuMy0zOC44LDU2LjMtNzUuMkMzOTMsNjkuMywzNzYuOSw1OC44LDM2MC44LDU4Ljh6IE0zNTcuNywxMTguMwoJYy0zLjUsMjAuMy0xNC44LDM0LjEtMjUuNywzNC4xYy0xMSwwLTE1LjctNC45LTE1LjctNC45YzIuMS0xNy44LDMuNC0yOC43LDcuNC0zOC4xUzMzNy4yLDg1LDM0Ny4xLDg1CglDMzU2LjgsODUsMzYxLjIsOTcuOSwzNTcuNywxMTguM3ogTTQ3Ni42LDYxLjVoLTIzLjNsMC4xLTEuMmMxLjYtMTUuMiw1LjItMjMuMiwxNy4xLTI0LjVjOC4xLTAuOCwxMS43LTUsMTIuNi05LjYKCWMwLjctMy42LDIuOS0xNi4xLDIuOS0xNi4xYy00Ni44LTAuMy02MS41LDE5LjktNjUuMyw1MC43bC0wLjEsMC43aC0wLjVjLTcuNiwwLTE2LDguNi0xNy40LDE5LjVsLTAuNSw0aDE1LjZsLTEzLjEsMTA4LjJsLTQsMTkuNAoJYzAuNSwwLDEuMSwwLjEsMS42LDAuMWMyMS45LTAuOCwzNS45LTE4LjEsMzktNDMuMkw0NTEuNSw4NWg3LjNjNy4yLDAsMTUuNi03LjIsMTcuMS0xOS4yTDQ3Ni42LDYxLjV6IE01OTcuOCw1OS41CgljLTI2LjksMC01Mi4zLDE5LjgtNjAuMSw1MC45czQsNjcuOSw0My42LDY3LjljMzkuNSwwLDYyLjMtMzguMyw2Mi4zLTcwLjJDNjQzLjYsNzYuNCw2MjIuMSw1OS41LDU5Ny44LDU5LjV6IE02MDguNywxMTcuMwoJYy0xLjQsMTQuMS03LjYsMzUuNS0yNC42LDM1LjVjLTE3LjEsMC0xNC43LTI1LTEzLTM2LjljMS44LTEyLjcsOC45LTMwLjgsMjQuMi0zMC44QzYwOSw4NS4xLDYxMC4zLDEwMS40LDYwOC43LDExNy4zeiBNNzc2LjUsOTUuMgoJYzAsMC0xMy41LDQyLjQtMTQuNiw0NS45Yy0wLjQtMy42LTEwLjMtNzkuNy0xMC4zLTc5LjdjLTIzLDAtMzUuMywxNi40LTQxLjgsMzMuN2MwLDAtMTYuNCw0Mi41LTE3LjgsNDYuMQoJYy0wLjEtMy4zLTIuNS00NS42LTIuNS00NS42Yy0xLjQtMjEuMi0yMC44LTM0LjEtMzYuNS0zNC4xbDE4LjksMTE1LjNjMjQuMS0wLjEsMzcuMS0xNi40LDQzLjktMzMuN2MwLDAsMTQuNS0zNy41LDE1LTM5LjIKCWMwLjEsMS42LDEwLjQsNzIuOSwxMC40LDcyLjljMjQuMiwwLDM3LjItMTUuMyw0NC4yLTMybDMzLjktODMuM0M3OTUuNSw2MS41LDc4Mi45LDc3LjgsNzc2LjUsOTUuMnogTTQ5OC42LDEwLjFMNDc5LDE2OC4ybDAsMAoJbC00LDE5LjVjMC41LDAsMS4xLDAuMSwxLjYsMC4xbDAsMGMyMS4xLTAuMywzNi4xLTE4LjgsMzguOS00Mi4xTDUyNi44LDU1QzUzMC4yLDI3LjMsNTEzLjcsMTAuMSw0OTguNiwxMC4xeiIvPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik05NTIuOCwxMDhjLTcuNyw2LjQtMTguNyw5LjYtMzMsOS42aC0yNy40VjE2NUg4NjVWMzMuM2g1Ni41YzEzLDAsMjMuNCwzLjQsMzEuMiwxMC4yCgkJYzcuOCw2LjgsMTEuNiwxNy4zLDExLjYsMzEuNUM5NjQuMyw5MC42LDk2MC41LDEwMS42LDk1Mi44LDEwOHogTTkzMS43LDYwLjZjLTMuNS0yLjktOC40LTQuNC0xNC42LTQuNGgtMjQuOFY5NWgyNC44CgkJYzYuMywwLDExLjItMS42LDE0LjYtNC43YzMuNS0zLjIsNS4yLTguMiw1LjItMTVDOTM3LDY4LjQsOTM1LjIsNjMuNSw5MzEuNyw2MC42eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTEwMjIuOSwxMDUuOGM0LjctMC42LDguMS0xLjMsMTAuMi0yLjJjMy43LTEuNSw1LjUtNCw1LjUtNy4yYzAtNC0xLjQtNi43LTQuMi04LjNjLTIuOC0xLjUtNi45LTIuMy0xMi40LTIuMwoJCWMtNi4xLDAtMTAuNCwxLjUtMTIuOSw0LjVjLTEuOCwyLjItMyw1LjItMy42LDguOWgtMjQuNmMwLjUtOC41LDIuOS0xNS41LDcuMi0yMWM2LjgtOC42LDE4LjQtMTIuOSwzNC44LTEyLjkKCQljMTAuNywwLDIwLjIsMi4xLDI4LjUsNi4zYzguMyw0LjIsMTIuNSwxMi4yLDEyLjUsMjMuOXY0NC43YzAsMy4xLDAuMSw2LjgsMC4yLDExLjNjMC4yLDMuMywwLjcsNS42LDEuNSw2LjgKCQljMC44LDEuMiwyLjEsMi4yLDMuOCwyLjl2My44aC0yNy43Yy0wLjgtMi0xLjMtMy44LTEuNi01LjVjLTAuMy0xLjctMC41LTMuNy0wLjctNS45Yy0zLjUsMy44LTcuNiw3LjEtMTIuMiw5LjcKCQljLTUuNSwzLjItMTEuNyw0LjctMTguNyw0LjdjLTguOSwwLTE2LjItMi41LTIyLTcuNWMtNS44LTUtOC43LTEyLjItOC43LTIxLjRjMC0xMiw0LjYtMjAuNiwxMy45LTI2YzUuMS0yLjksMTIuNi01LDIyLjUtNi4zCgkJTDEwMjIuOSwxMDUuOHogTTEwMzguNSwxMTcuN2MtMS42LDEtMy4zLDEuOC00LjksMi41Yy0xLjcsMC42LTMuOSwxLjItNi44LDEuN2wtNS44LDEuMWMtNS40LDEtOS4zLDIuMS0xMS43LDMuNQoJCWMtNCwyLjMtNiw1LjktNiwxMC44YzAsNC4zLDEuMiw3LjUsMy43LDkuNGMyLjQsMS45LDUuNCwyLjksOC45LDIuOWM1LjYsMCwxMC43LTEuNiwxNS40LTQuOHM3LjEtOS4xLDcuMy0xNy42VjExNy43eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTExMzQuMiw2Ny41YzYuMiwyLjYsMTEuMiw3LjMsMTUsMTQuMXYtMTRoMjQuOFYxNjBjMCwxMi42LTIuMSwyMi02LjMsMjguNGMtNy4zLDExLTIxLjIsMTYuNC00MS44LDE2LjQKCQljLTEyLjQsMC0yMi42LTIuNC0zMC41LTcuM2MtNy45LTQuOS0xMi4yLTEyLjItMTMtMjEuOWgyNy43YzAuNywzLDEuOSw1LjEsMy41LDYuNGMyLjcsMi4zLDcuNCwzLjUsMTMuOCwzLjUKCQljOS4yLDAsMTUuMy0zLjEsMTguNC05LjJjMi0zLjksMy0xMC41LDMtMTkuOHYtNi4zYy0yLjQsNC4yLTUuMSw3LjMtNy45LDkuNGMtNS4xLDMuOS0xMS42LDUuOC0xOS43LDUuOGMtMTIuNSwwLTIyLjUtNC40LTMwLTEzLjIKCQljLTcuNS04LjgtMTEuMi0yMC43LTExLjItMzUuN2MwLTE0LjUsMy42LTI2LjYsMTAuOC0zNi41YzcuMi05LjksMTcuNC0xNC44LDMwLjYtMTQuOEMxMTI2LjQsNjUuMywxMTMwLjYsNjYuMSwxMTM0LjIsNjcuNXoKCQkgTTExNDIuOSwxMzcuNGM0LjEtNC41LDYuMS0xMS43LDYuMS0yMS41YzAtOS4yLTEuOS0xNi4zLTUuOC0yMS4xYy0zLjktNC44LTkuMS03LjItMTUuNi03LjJjLTguOSwwLTE1LDQuMi0xOC40LDEyLjYKCQljLTEuOCw0LjUtMi43LDEwLTIuNywxNi41YzAsNS43LDAuOSwxMC43LDIuOCwxNS4xYzMuNCw4LjIsOS42LDEyLjMsMTguNSwxMi4zQzExMzMuOCwxNDQuMSwxMTM4LjgsMTQxLjksMTE0Mi45LDEzNy40eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTEyNjEuMyw2OS42YzYuOCwzLDEyLjQsNy44LDE2LjgsMTQuNGM0LDUuOCw2LjYsMTIuNSw3LjgsMjAuMWMwLjcsNC41LDEsMTAuOSwwLjgsMTkuM2gtNzAuOQoJCWMwLjQsOS44LDMuOCwxNi42LDEwLjIsMjAuNWMzLjksMi40LDguNiwzLjcsMTQsMy43YzUuOCwwLDEwLjUtMS41LDE0LjEtNC41YzItMS42LDMuNy0zLjgsNS4yLTYuN2gyNmMtMC43LDUuOC0zLjgsMTEuNi05LjQsMTcuNgoJCWMtOC43LDkuNS0yMC45LDE0LjItMzYuNiwxNC4yYy0xMywwLTI0LjQtNC0zNC4zLTEyYy05LjktOC0xNC45LTIxLTE0LjktMzljMC0xNi45LDQuNS0yOS44LDEzLjQtMzguOHMyMC41LTEzLjUsMzQuOC0xMy41CgkJQzEyNDYuOSw2NSwxMjU0LjUsNjYuNiwxMjYxLjMsNjkuNnogTTEyMjMuMiw5MS42Yy0zLjYsMy43LTUuOSw4LjctNi44LDE1LjFoNDMuOWMtMC41LTYuOC0yLjctMTEuOS02LjgtMTUuNAoJCWMtNC4xLTMuNS05LjEtNS4yLTE1LjEtNS4yQzEyMzEuOSw4NiwxMjI2LjgsODcuOSwxMjIzLjIsOTEuNnoiLz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xMzE5LjMsMTMzLjljMC41LDQuNSwxLjcsNy43LDMuNSw5LjZjMy4yLDMuNCw5LDUuMSwxNy42LDUuMWM1LDAsOS0wLjcsMTItMi4yYzMtMS41LDQuNC0zLjcsNC40LTYuNwoJCWMwLTIuOS0xLjItNS0zLjYtNi41Yy0yLjQtMS41LTExLjMtNC0yNi42LTcuN2MtMTEuMS0yLjctMTguOS02LjItMjMuNC0xMC4zYy00LjUtNC02LjgtOS45LTYuOC0xNy41YzAtOSwzLjUtMTYuNywxMC42LTIzLjIKCQljNy4xLTYuNSwxNy05LjcsMjkuOS05LjdjMTIuMiwwLDIyLjEsMi40LDI5LjgsNy4zYzcuNyw0LjksMTIuMSwxMy4yLDEzLjIsMjUuMWgtMjUuNWMtMC40LTMuMy0xLjMtNS45LTIuOC03LjgKCQljLTIuOC0zLjUtNy42LTUuMi0xNC4zLTUuMmMtNS42LDAtOS41LDAuOS0xMS45LDIuNmMtMi40LDEuNy0zLjUsMy44LTMuNSw2LjFjMCwyLjksMS4zLDUsMy44LDYuM2MyLjUsMS40LDExLjQsMy43LDI2LjYsNy4xCgkJYzEwLjEsMi40LDE3LjcsNiwyMi44LDEwLjhjNSw0LjksNy41LDExLDcuNSwxOC4zYzAsOS42LTMuNiwxNy41LTEwLjgsMjMuNmMtNy4yLDYuMS0xOC4zLDkuMi0zMy4zLDkuMmMtMTUuMywwLTI2LjctMy4yLTM0LTkuNwoJCWMtNy4zLTYuNS0xMS0xNC43LTExLTI0LjdIMTMxOS4zeiIvPgo8L2c+Cjwvc3ZnPgo=\r\n\"\r\n  alt=\"logo\" />\r\n</div>",
    3535    "<script>\r\n  import Logo from \"./Logo.svelte\";\r\n  import Navigation from \"./Navigation.svelte\";\r\n</script>\r\n\r\n<style>\r\n  div.configuration-container {\r\n    width: 100%;\r\n    margin-right: auto;\r\n    margin-left: auto;\r\n    position: relative;\r\n    \r\n    height: calc(100vh - 32px);\r\n    display: flex;\r\n    height: calc(100vh - 32px);\r\n    flex-direction: column;\r\n    justify-content: space-evenly;\r\n  }\r\n  .wrapper {\r\n    margin: 0 auto;\r\n    height: calc(100vh - 80px);\r\n    width: 80%;\r\n  }\r\n  .main-content {\r\n    background-color: white;\r\n    border: 1px solid #f7f7f7;\r\n    border-radius: 4px;\r\n    display: grid;\r\n    padding: 15px;\r\n    grid-template-columns: 1fr 1fr;\r\n    grid-gap: 16px;\r\n    height: 80%;\r\n    align-items: center;\r\n    justify-content: space-between;\r\n  }\r\n  @media screen and (max-width: 782px) {\r\n    .main-content {\r\n      grid-template-columns: 1fr;\r\n      height: auto;\r\n    }\r\n  }\r\n</style>\r\n\r\n<div class=\"configuration-container\">\r\n  <Logo />\r\n  <div class=\"wrapper\">\r\n    <Navigation />\r\n    <div class=\"main-content\">\r\n      <slot />\r\n    </div>\r\n  </div>\r\n</div>\r\n",
    36     "<script>\r\n  import { router } from \"../store/router\";\r\n  import { isCurrentPath } from \"../store/router\";\r\n\r\n  export let path;\r\n  export let params = {};\r\n\r\n  export let text = \"\";\r\n\r\n  const handleClick = e => {\r\n    e.preventDefault();\r\n    router.goTo(path, params);\r\n  };\r\n\r\n  const isActive = isCurrentPath(path);\r\n \r\n</script>\r\n\r\n<style>\r\n  a {\r\n    height: 36px;\r\n    margin-bottom: 0px;\r\n    margin-right: 10px;\r\n    padding-left: 10px;\r\n    padding-right: 10px;\r\n    -webkit-box-flex: 0;\r\n    -webkit-flex: 0 0 auto;\r\n    -ms-flex: 0 0 auto;\r\n    flex: 0 0 auto;\r\n    -webkit-transition: color 200ms ease-in-out;\r\n    transition: color 200ms ease-in-out;\r\n    color: #888;\r\n    font-size: 15px;\r\n    line-height: 37px;\r\n    font-weight: 500;\r\n    text-decoration: none;\r\n    border-bottom: 2px solid transparent;\r\n  }\r\n  a:hover {\r\n    color: #000;\r\n  }\r\n  a.is-active {\r\n    color: #000;\r\n    border-bottom: 2px solid #000;\r\n  }\r\n  a:focus {\r\n    outline: none;\r\n    box-shadow: none;\r\n  }\r\n</style>\r\n\r\n<a href=\"/\" on:click={handleClick} class={$isActive ? 'is-active' : ''}>\r\n  {text}\r\n</a>\r\n",
    37     "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n\r\n  const hasItems = $store.dynamicRules.length > 0;\r\n\r\n  const firstCollection = $store.collections[0];\r\n\r\n  let dynamicRule = [\"\", \"\"];\r\n  if ($store.collections.length) {\r\n    dynamicRule = [``, `/${$store.collections[0].slug}/`];\r\n  }\r\n\r\n  let canAdd = false;\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n\r\n    await store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const addDynamicRule = e => {\r\n    canAdd = false;\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    if (!dynamicRule || !dynamicRule[0]) {\r\n      canAdd = false;\r\n      return;\r\n    }\r\n    store.addDynamicRule(dynamicRule);\r\n    dynamicRule = [``, ``];\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const removeDynamicRule = index => {\r\n    store.removeDynamicRule(index);\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const handleInput = e => {\r\n    let value = e.target.value;\r\n    e.target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    let isAdd = e.target.getAttribute(\"data-add\");\r\n    value = e.target.value;\r\n    const match = value.match(/\\/.*?\\/\\*/g);\r\n    if (match && match[0] === value) {\r\n      e.target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      e.target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n     margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n  .fields-wrapper {\r\n    flex: 1;\r\n    overflow: auto;\r\n  }\r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-collections {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n    min-height: 90px;\r\n  }\r\n  .no-collections p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper,\r\n  .added-pages .fields-headers {\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div\r\n    style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Collection Pages</h3>\r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n      <p class=\"section-description\">Create a new Rule</p>\r\n      {#if $store.collections.length > 0}\r\n        <div class=\"grid grid-with-actions\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"input-wrapper\">\r\n          <form on:submit={addDynamicRule} class=\"grid grid-with-actions\">\r\n\r\n            <div>\r\n\r\n              <input\r\n                data-add=\"true\"\r\n                class=\"field-input\"\r\n                type=\"text\"\r\n                bind:value={dynamicRule[0]}\r\n                required\r\n                placeholder=\"/path/*\"\r\n                on:input={handleInput} />\r\n              <small class=\"error-message\">\r\n                Path must start with / and be valid URLs and end with /*\r\n              </small>\r\n            </div>\r\n            <div>\r\n\r\n              <select bind:value={dynamicRule[1]} class=\"field-select\">\r\n                {#each $store.collections as collection}\r\n                  <option value={'/' + collection.slug + '/'}>\r\n                    /{collection.slug}/*\r\n                  </option>\r\n                {/each}\r\n              </select>\r\n            </div>\r\n\r\n            <button\r\n              type=\"submit\"\r\n              disabled={!canAdd}\r\n              class=\"button add\"\r\n              on:click={addDynamicRule}>\r\n              +\r\n            </button>\r\n          </form>\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No collections</p>\r\n        </div>\r\n      {/if}\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.dynamicRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.dynamicRules as dynamicRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={dynamicRule[0]}\r\n                    required\r\n                    on:input={handleInput}\r\n                    readonly />\r\n\r\n                </div>\r\n                <div>\r\n                  <select\r\n                    bind:value={dynamicRule[1]}\r\n                    class=\"field-select\"\r\n                    disabled>\r\n                    {#each $store.collections as collection}\r\n                      <option value={'/' + collection.slug + '/'}>\r\n                        /{collection.slug}/*\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeDynamicRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n\r\n</div>\r\n",
    38     "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import { onMount } from \"svelte\";\r\n\r\n  const hasItems = $store.staticRules.length > 0;\r\n\r\n  let staticRule = [\"\", \"\"];\r\n\r\n  let canAdd = false;\r\n\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n   \r\n    await store.saveStaticRules($store.staticRules);\r\n    \r\n  };\r\n\r\n  const addStaticRule = e => {\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    store.addStaticRule(staticRule);\r\n    staticRule = [\"\", \"\"];\r\n    canAdd = false;\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const removeStaticRule = index => {\r\n    store.removeStaticRule(index);\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const handleInput = ({ target }) => {\r\n    let value = target.value;\r\n    let isAdd = target.getAttribute(\"data-add\");\r\n    target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    value = target.value;\r\n    const match = value.match(/^(\\.?){2}(\\/[a-zA-Z0-9_\\-]+)+\\/?$/g);\r\n    if (match && match[0] === value || value === \"/\") {\r\n      target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n\r\n  const pages = $store.pages.filter( page => page !== '/404' && page !== '/401' );\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n    margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n  .fields-wrapper {\r\n    flex: 1;\r\n    overflow: auto;\r\n  }\r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-pages-added {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n  }\r\n  .no-pages-added p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper, .added-pages .fields-headers{\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Static Pages</h3>\r\n    \r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n    <p class=\"section-description\">Create a new redirect</p>\r\n      <p class=\"description-subtitle\">Create redirects to serve a made-in-Webflow page in place of a WordPress Page</p>\r\n      <div class=\"grid grid-with-actions \">\r\n        <div>\r\n          <Label>WordPress Path</Label>\r\n        </div>\r\n        <div>\r\n          <Label>Webflow Page</Label>\r\n        </div>\r\n        <div style=\"visibility:hidden\">\r\n          <button disabled class=\"button add\">+</button>\r\n        </div>\r\n      </div>\r\n      <div class=\"input-wrapper\">\r\n\r\n        <form on:submit={addStaticRule} class=\"grid grid-with-actions\">\r\n          <div>\r\n            <input\r\n              data-add=\"true\"\r\n              class=\"field-input\"\r\n              type=\"text\"\r\n              bind:value={staticRule[0]}\r\n              required\r\n              placeholder=\"/path\"\r\n              on:input={handleInput} />\r\n            <small class=\"error-message\">\r\n              Path must start with / and be valid URLs\r\n            </small>\r\n          </div>\r\n          <div>\r\n\r\n            <select bind:value={staticRule[1]} class=\"field-select\">\r\n              {#each pages as page}\r\n                <option value={page}>\r\n                   {page.substr(1).replace('index.html', 'Home Page')}\r\n                </option>\r\n              {/each}\r\n            </select>\r\n          </div>\r\n\r\n          <button\r\n            type=\"submit\"\r\n            disabled={!canAdd}\r\n            class=\"button add\"\r\n            on:click={addStaticRule}>\r\n            +\r\n          </button>\r\n        </form>\r\n\r\n      </div>\r\n\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.staticRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.staticRules as staticRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={staticRule[0]}\r\n                    readonly\r\n                    on:input={handleInput} />\r\n                </div>\r\n                <div>\r\n                  <select bind:value={staticRule[1]} class=\"field-select\" disabled>\r\n                    {#each pages as page}\r\n                      <option value={page}>\r\n                         {page.substr(1).replace('index.html', 'Home Page')}\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeStaticRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-pages-added\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n</div>\r\n",
    3936    "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import { fade } from 'svelte/transition';\r\n\r\n  const removeTokenStore = writable({\r\n    disabled: false,\r\n    value: \"Reset\"\r\n  });\r\n\r\n  const modalStore = writable({\r\n    open: false\r\n  })\r\n\r\n  const handleRemoveToken = async e => {\r\n    e.preventDefault();\r\n    const res = await modalResponse();\r\n    if (!res) {\r\n      return;\r\n    }\r\n    removeTokenStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.removeToken();\r\n    removeTokenStore.set({ disabled: false, value: \"Reset\" });\r\n  };\r\n\r\n\r\n\r\n  const closeModal = e => {\r\n    e.preventDefault();\r\n    document.body.dispatchEvent(new CustomEvent('webflow-modal-remove-token', {detail: false}));\r\n  }\r\n\r\n  const acceptModal = e => {\r\n    e.preventDefault();\r\n    document.body.dispatchEvent(new CustomEvent('webflow-modal-remove-token', {detail: true}));\r\n  }\r\n\r\n  const modalResponse = () => {\r\n    return new Promise( res => {\r\n      modalStore.set({open: true});\r\n      document.body.addEventListener('webflow-modal-remove-token', e => {\r\n        modalStore.set({open: false})\r\n        res(e.detail);\r\n      }, {once: true});\r\n    })\r\n  }\r\n\r\n</script>\r\n\r\n<style>\r\n  .modal-wrapper {\r\n    position: fixed;\r\n    top: 0;\r\n    left: 0;\r\n    background-color: rgba(0, 0, 0, 0.7);\r\n    z-index: 99999999;\r\n    width: 100vw;\r\n    height: 100vh;\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .modal {\r\n    background-color: white;\r\n    height: 30vh;\r\n    width: 30vw;\r\n    display: grid;\r\n    grid-template-rows: auto 1fr;\r\n  }\r\n  .modal-header {\r\n    display: flex;\r\n    padding: 20px 15px;\r\n    justify-content: space-between;\r\n    font-weight: 700;\r\n    font-size: 16px;\r\n    border-bottom: 1px solid #f7f7f7;\r\n  }\r\n  .modal-header a {\r\n    color: black;\r\n    text-decoration: none;\r\n  }\r\n  .modal-content {\r\n    background-color: #f5f5f5;\r\n    display: flex;\r\n    flex-direction: column;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .modal-button {\r\n    display: inline-block;\r\n    padding: 9px 15px;\r\n    color: white;\r\n    border: 0;\r\n    line-height: inherit;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    border-radius: 4px;\r\n  }\r\n  .modal-button.red {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #FF6382;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .modal-button.red:hover {\r\n    background-color: #FF6382;\r\n  }\r\n\r\n  .modal-button.grey{\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #d2d4d5;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .modal-button.grey:hover {\r\n    background-color: #d2d4d5;\r\n  }\r\n</style>\r\n\r\n<h4>Remove Website</h4>\r\n<p class=\"description-subtitle\">Disconnect your Webflow project from your WordPress site.</p>\r\n<form on:submit={handleRemoveToken}>\r\n  <Submit\r\n    value={$removeTokenStore.value}\r\n    disabled={$removeTokenStore.disabled}\r\n    variation=\"red\" />\r\n</form>\r\n\r\n{#if $modalStore.open}\r\n<div class=\"modal-wrapper\">\r\n  <div class=\"modal\" transition:fade>\r\n    <div class=\"modal-header\">\r\n      <div>Do you want to remove all the Webflow Pages?</div>\r\n      <a on:click={closeModal}>X</a>\r\n    </div>\r\n    <div class=\"modal-content\">\r\n    <p>Are you sure you want to remove all your Webflow Settings?</p>\r\n        <div class=\"modal-actions\">\r\n          <button class=\"modal-button grey\" on:click={closeModal}>Cancel</button>\r\n          <button class=\"modal-button red\" on:click={acceptModal}>Confirm</button>\r\n        </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n{/if}",
    4037    "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const localStore = writable({\r\n    disabled: false,\r\n    value: \"Save\"\r\n  });\r\n\r\n  let val = $store.cacheDuration;\r\n\r\n  const options = [\r\n    {\r\n      value: \"0\",\r\n      name: \"As long as possible\"\r\n    },\r\n    {\r\n      value: \"60\",\r\n      name: \"1 minute\"\r\n    },\r\n    {\r\n      value: 60 * 5 + \"\",\r\n      name: \"5 minutes\"\r\n    },\r\n    {\r\n      value: 60 * 15 + \"\",\r\n      name: \"15 minutes\"\r\n    },\r\n    {\r\n      value: 60 * 60 + \"\",\r\n      name: \"1 hour\"\r\n    },\r\n    {\r\n      value: 60 * 60 * 24 + \"\",\r\n      name: \"1 day\"\r\n    }\r\n  ];\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    localStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.changeCache(val);\r\n    localStore.set({ disabled: false, value: \"Save\" });\r\n  };\r\n</script>\r\n<style>\r\nform {\r\ndisplay: grid;\r\n    grid-gap: 8px;\r\n    justify-content: center;\r\n    align-items: center;\r\n    grid-template-columns: 1fr 1fr;\r\n}\r\nselect {\r\n  background-color: #f7f8f9;\r\n}\r\n\r\n</style>\r\n<h4>Cache Duration</h4>\r\n<p class=\"description-subtitle\">Define how long your site caches your Webflow pages. Cached pages load faster.</p>\r\n<form on:submit={handleSubmit} >\r\n  <select class=\"field-select\" bind:value={val}>\r\n    {#each options as option}\r\n      <option value={option.value}> {option.name} </option>\r\n    {/each}\r\n  </select>\r\n  <Submit\r\n    value={$localStore.value}\r\n    disabled={$localStore.disabled}\r\n    variation=\"small\"\r\n   />\r\n</form>\r\n",
    4138    "<script>\r\n  import {store} from '../store/wfData';\r\n\r\n</script>\r\n\r\n<style>\r\n  img {\r\n    max-width: 100%;\r\n    height: auto;\r\n  }\r\n  a {box-shadow: none}\r\n</style>\r\n\r\n<div>\r\n  <a href={$store.site.dashboardUrl} target=\"_blank\">\r\n    <img src={$store.site.previewUrl} alt=\"site preview\" />\r\n    <h3>{$store.site.name}</h3>\r\n  </a>\r\n</div>\r\n",
     39    "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import { onMount } from \"svelte\";\r\n\r\n  const hasItems = $store.staticRules.length > 0;\r\n\r\n  let staticRule = [\"\", \"\"];\r\n\r\n  let canAdd = false;\r\n\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n   \r\n    await store.saveStaticRules($store.staticRules);\r\n    \r\n  };\r\n\r\n  const addStaticRule = e => {\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    store.addStaticRule(staticRule);\r\n    staticRule = [\"\", \"\"];\r\n    canAdd = false;\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const removeStaticRule = index => {\r\n    store.removeStaticRule(index);\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const handleInput = ({ target }) => {\r\n    let value = target.value;\r\n    let isAdd = target.getAttribute(\"data-add\");\r\n    target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    value = target.value;\r\n    const match = value.match(/^(\\.?){2}(\\/[a-zA-Z0-9_\\-]+)+\\/?$/g);\r\n    if (match && match[0] === value || value === \"/\") {\r\n      target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n\r\n  const pages = $store.pages.filter( page => page !== '/404' && page !== '/401' );\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n    margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n\r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-pages-added {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n  }\r\n  .no-pages-added p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper, .added-pages .fields-headers{\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Static Pages</h3>\r\n    \r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n    <p class=\"section-description\">Create a new redirect</p>\r\n      <p class=\"description-subtitle\">Create redirects to serve a made-in-Webflow page in place of a WordPress Page</p>\r\n      <div class=\"grid grid-with-actions \">\r\n        <div>\r\n          <Label>WordPress Path</Label>\r\n        </div>\r\n        <div>\r\n          <Label>Webflow Page</Label>\r\n        </div>\r\n        <div style=\"visibility:hidden\">\r\n          <button disabled class=\"button add\">+</button>\r\n        </div>\r\n      </div>\r\n      <div class=\"input-wrapper\">\r\n\r\n        <form on:submit={addStaticRule} class=\"grid grid-with-actions\">\r\n          <div>\r\n            <input\r\n              data-add=\"true\"\r\n              class=\"field-input\"\r\n              type=\"text\"\r\n              bind:value={staticRule[0]}\r\n              required\r\n              placeholder=\"/path\"\r\n              on:input={handleInput} />\r\n            <small class=\"error-message\">\r\n              Path must start with / and be valid URLs\r\n            </small>\r\n          </div>\r\n          <div>\r\n\r\n            <select bind:value={staticRule[1]} class=\"field-select\">\r\n              {#each pages as page}\r\n                <option value={page}>\r\n                   {page.substr(1).replace('index.html', 'Home Page')}\r\n                </option>\r\n              {/each}\r\n            </select>\r\n          </div>\r\n\r\n          <button\r\n            type=\"submit\"\r\n            disabled={!canAdd}\r\n            class=\"button add\"\r\n            on:click={addStaticRule}>\r\n            +\r\n          </button>\r\n        </form>\r\n\r\n      </div>\r\n\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.staticRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.staticRules as staticRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={staticRule[0]}\r\n                    readonly\r\n                    disabled\r\n                    on:input={handleInput} />\r\n                </div>\r\n                <div>\r\n                  <select bind:value={staticRule[1]} class=\"field-select\" disabled>\r\n                    {#each pages as page}\r\n                      <option value={page}>\r\n                         {page.substr(1).replace('index.html', 'Home Page')}\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeStaticRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-pages-added\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n</div>\r\n",
     40    "<script>\r\n  import { router } from \"../store/router\";\r\n  import { isCurrentPath } from \"../store/router\";\r\n\r\n  export let path;\r\n  export let params = {};\r\n\r\n  export let text = \"\";\r\n\r\n  const handleClick = e => {\r\n    e.preventDefault();\r\n    router.goTo(path, params);\r\n  };\r\n\r\n  const isActive = isCurrentPath(path);\r\n \r\n</script>\r\n\r\n<style>\r\n  a {\r\n    height: 36px;\r\n    margin-bottom: 0px;\r\n    margin-right: 10px;\r\n    padding-left: 10px;\r\n    padding-right: 10px;\r\n    -webkit-box-flex: 0;\r\n    -webkit-flex: 0 0 auto;\r\n    -ms-flex: 0 0 auto;\r\n    flex: 0 0 auto;\r\n    -webkit-transition: color 200ms ease-in-out;\r\n    transition: color 200ms ease-in-out;\r\n    color: #888;\r\n    font-size: 15px;\r\n    line-height: 37px;\r\n    font-weight: 500;\r\n    text-decoration: none;\r\n    border-bottom: 2px solid transparent;\r\n  }\r\n  a:hover {\r\n    color: #000;\r\n  }\r\n  a.is-active {\r\n    color: #000;\r\n    border-bottom: 2px solid #000;\r\n  }\r\n  a:focus {\r\n    outline: none;\r\n    box-shadow: none;\r\n  }\r\n</style>\r\n\r\n<a href=\"/\" on:click={handleClick} class={$isActive ? 'is-active' : ''}>\r\n  {text}\r\n</a>\r\n",
     41    "<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n\r\n  const hasItems = $store.dynamicRules.length > 0;\r\n\r\n  const firstCollection = $store.collections[0];\r\n\r\n  let dynamicRule = [\"\", \"\"];\r\n  if ($store.collections.length) {\r\n    dynamicRule = [``, `/${$store.collections[0].slug}/`];\r\n  }\r\n\r\n  let canAdd = false;\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n\r\n    await store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const addDynamicRule = e => {\r\n    canAdd = false;\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    if (!dynamicRule || !dynamicRule[0]) {\r\n      canAdd = false;\r\n      return;\r\n    }\r\n    store.addDynamicRule(dynamicRule);\r\n    dynamicRule = [``, ``];\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const removeDynamicRule = index => {\r\n    store.removeDynamicRule(index);\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const handleInput = e => {\r\n    let value = e.target.value;\r\n    e.target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    let isAdd = e.target.getAttribute(\"data-add\");\r\n    value = e.target.value;\r\n    const match = value.match(/\\/.*?\\/\\*/g);\r\n    if (match && match[0] === value) {\r\n      e.target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      e.target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n     margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n  \r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-collections {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n    min-height: 90px;\r\n  }\r\n  .no-collections p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper,\r\n  .added-pages .fields-headers {\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  :global(.fields-wrapper) {\r\n    flex: 1;\r\n    overflow: auto;\r\n    max-height: calc(50px * 5);\r\n  }\r\n\r\n:global(.fields-wrapper::-webkit-scrollbar){\r\n\twidth: 3px;\r\n\tbackground-color: #F5F5F5;\r\n}\r\n\r\n:global(.fields-wrapper::-webkit-scrollbar-thumb){\r\n\tbackground-color: #a1a1a1;\r\n}\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div\r\n    style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Collection Pages</h3>\r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n      <p class=\"section-description\">Create a new Rule</p>\r\n      {#if $store.collections.length > 0}\r\n        <div class=\"grid grid-with-actions\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"input-wrapper\">\r\n          <form on:submit={addDynamicRule} class=\"grid grid-with-actions\">\r\n\r\n            <div>\r\n\r\n              <input\r\n                data-add=\"true\"\r\n                class=\"field-input\"\r\n                type=\"text\"\r\n                bind:value={dynamicRule[0]}\r\n                required\r\n                placeholder=\"/path/*\"\r\n                on:input={handleInput} />\r\n              <small class=\"error-message\">\r\n                Path must start with / and be valid URLs and end with /*\r\n              </small>\r\n            </div>\r\n            <div>\r\n\r\n              <select bind:value={dynamicRule[1]} class=\"field-select\">\r\n                {#each $store.collections as collection}\r\n                  <option value={'/' + collection.slug + '/'}>\r\n                    /{collection.slug}/*\r\n                  </option>\r\n                {/each}\r\n              </select>\r\n            </div>\r\n\r\n            <button\r\n              type=\"submit\"\r\n              disabled={!canAdd}\r\n              class=\"button add\"\r\n              on:click={addDynamicRule}>\r\n              +\r\n            </button>\r\n          </form>\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No collections</p>\r\n        </div>\r\n      {/if}\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.dynamicRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.dynamicRules as dynamicRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={dynamicRule[0]}\r\n                    required\r\n                    disabled\r\n                    on:input={handleInput}\r\n                    readonly />\r\n\r\n                </div>\r\n                <div>\r\n                  <select\r\n                    bind:value={dynamicRule[1]}\r\n                    class=\"field-select\"\r\n                    disabled>\r\n                    {#each $store.collections as collection}\r\n                      <option value={'/' + collection.slug + '/'}>\r\n                        /{collection.slug}/*\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeDynamicRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n\r\n</div>\r\n",
    4242    "<style>\r\n  div.navbar-light {\r\n    display: -webkit-box;\r\n    display: -webkit-flex;\r\n    display: -ms-flexbox;\r\n    display: flex;\r\n    -webkit-box-flex: 1;\r\n    -webkit-flex: 1;\r\n    -ms-flex: 1;\r\n    flex: 1;\r\n    flex-grow: 1;\r\n    justify-self: flex-start;\r\n    align-self: flex-start;\r\n    padding-left: 10px;\r\n    margin-bottom: -1px;\r\n  }\r\n</style>\r\n\r\n<div class=\"navbar-light\">\r\n  <slot />\r\n</div>\r\n"
    4343  ],
    4444  "names": [],
    45   "mappings": "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"
     45  "mappings": "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"
    4646}
  • webflow-pages/trunk/externals/dashboard/public/bundle.js

    r2167725 r2284222  
    1 !function(){"use strict";function e(){}const t=e=>e;function n(e,t){for(const n in t)e[n]=t[n];return e}function a(e){return e()}function s(){return Object.create(null)}function o(e){e.forEach(a)}function i(e){return"function"==typeof e}function c(e,t){return e!=e?t==t:e!==t||e&&"object"==typeof e||"function"==typeof e}function r(e,t,n){const a=t.subscribe(n);e.$$.on_destroy.push(a.unsubscribe?()=>a.unsubscribe():a)}function l(e,t,n){if(e){const a=u(e,t,n);return e[0](a)}}function u(e,t,a){return e[1]?n({},n(t.$$scope.ctx,e[1](a?a(t):{}))):t.$$scope.ctx}function d(e,t,a,s){return e[1]?n({},n(t.$$scope.changed||{},e[1](s?s(a):{}))):t.$$scope.changed||{}}const M="undefined"!=typeof window;let L=M?()=>window.performance.now():()=>Date.now(),m=M?requestAnimationFrame:e;const $=new Set;let f,g=!1;function p(){$.forEach(e=>{e[0](L())||($.delete(e),e[1]())}),(g=$.size>0)&&m(p)}function v(e,t){e.appendChild(t)}function y(e,t,n){e.insertBefore(t,n||null)}function N(e){e.parentNode.removeChild(e)}function w(e,t){for(let n=0;n<e.length;n+=1)e[n]&&e[n].d(t)}function j(e){return document.createElement(e)}function h(e){return document.createTextNode(e)}function T(){return h(" ")}function x(){return h("")}function C(e,t,n,a){return e.addEventListener(t,n,a),()=>e.removeEventListener(t,n,a)}function S(e,t,n){null==n?e.removeAttribute(t):e.setAttribute(t,n)}function b(e,t){t=""+t,e.data!==t&&(e.data=t)}function D(e,t,n){e.style.setProperty(t,n)}function z(e,t){for(let n=0;n<e.options.length;n+=1){const a=e.options[n];if(a.__value===t)return void(a.selected=!0)}}function E(e){const t=e.querySelector(":checked")||e.options[0];return t&&t.__value}let I,O=0,k={};function _(e,t,n,a,s,o,i,c=0){const r=16.666/a;let l="{\n";for(let e=0;e<=1;e+=r){const a=t+(n-t)*o(e);l+=100*e+`%{${i(a,1-a)}}\n`}const u=l+`100% {${i(n,1-n)}}\n}`,d=`__svelte_${function(e){let t=5381,n=e.length;for(;n--;)t=(t<<5)-t^e.charCodeAt(n);return t>>>0}(u)}_${c}`;if(!k[d]){if(!f){const e=j("style");document.head.appendChild(e),f=e.sheet}k[d]=!0,f.insertRule(`@keyframes ${d} ${u}`,f.cssRules.length)}const M=e.style.animation||"";return e.style.animation=`${M?`${M}, `:""}${d} ${a}ms linear ${s}ms 1 both`,O+=1,d}function Y(e,t){e.style.animation=(e.style.animation||"").split(", ").filter(t?e=>e.indexOf(t)<0:e=>-1===e.indexOf("__svelte")).join(", "),t&&!--O&&m(()=>{if(O)return;let e=f.cssRules.length;for(;e--;)f.deleteRule(e);k={}})}function R(e){I=e}const A=[],U=Promise.resolve();let Q=!1;const W=[],P=[],H=[];function J(e){P.push(e)}function G(){const e=new Set;do{for(;A.length;){const e=A.shift();R(e),Z(e.$$)}for(;W.length;)W.shift()();for(;P.length;){const t=P.pop();e.has(t)||(t(),e.add(t))}}while(A.length);for(;H.length;)H.pop()();Q=!1}function Z(e){e.fragment&&(e.update(e.dirty),o(e.before_render),e.fragment.p(e.dirty,e.ctx),e.dirty=null,e.after_render.forEach(J))}let V,K;function F(e,t,n){e.dispatchEvent(function(e,t){const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,!1,!1,t),n}(`${t?"intro":"outro"}${n}`))}function X(){K={remaining:0,callbacks:[]}}function q(){K.remaining||o(K.callbacks)}function B(e){K.callbacks.push(e)}function ee(n,a,s,i){let c=a(n,s),r=i?0:1,l=null,u=null,d=null;function M(){d&&Y(n,d)}function f(e,t){const n=e.b-r;return t*=Math.abs(n),{a:r,b:e.b,d:n,duration:t,start:e.start,end:e.start+t,group:e.group}}function v(a){const{delay:s=0,duration:i=300,easing:v=t,tick:y=e,css:N}=c,w={start:L()+s,b:a};a||(w.group=K,K.remaining+=1),l?u=w:(N&&(M(),d=_(n,r,a,i,s,v,N)),a&&y(0,1),l=f(w,i),J(()=>F(n,a,"start")),function(e){let t;g||(g=!0,m(p)),new Promise(n=>{$.add(t=[e,n])})}(e=>{if(u&&e>u.start&&(l=f(u,i),u=null,F(n,l.b,"start"),N&&(M(),d=_(n,r,l.b,l.duration,0,v,c.css))),l)if(e>=l.end)y(r=l.b,1-r),F(n,l.b,"end"),u||(l.b?M():--l.group.remaining||o(l.group.callbacks)),l=null;else if(e>=l.start){const t=e-l.start;r=l.a+l.d*v(t/l.duration),y(r,1-r)}return!(!l&&!u)}))}return{run(e){"function"==typeof c?(V||(V=Promise.resolve()).then(()=>{V=null}),V).then(()=>{c=c(),v(e)}):v(e)},end(){M(),l=u=null}}}function te(e,t,n){const{fragment:s,on_mount:c,on_destroy:r,after_render:l}=e.$$;s.m(t,n),J(()=>{const t=c.map(a).filter(i);r?r.push(...t):o(t),e.$$.on_mount=[]}),l.forEach(J)}function ne(e,t){e.$$.dirty||(A.push(e),Q||(Q=!0,U.then(G)),e.$$.dirty=s()),e.$$.dirty[t]=!0}function ae(t,n,a,i,c,r){const l=I;R(t);const u=n.props||{},d=t.$$={fragment:null,ctx:null,props:r,update:e,not_equal:c,bound:s(),on_mount:[],on_destroy:[],before_render:[],after_render:[],context:new Map(l?l.$$.context:[]),callbacks:s(),dirty:null};let M=!1;var L;d.ctx=a?a(t,u,(e,n)=>{d.ctx&&c(d.ctx[e],d.ctx[e]=n)&&(d.bound[e]&&d.bound[e](n),M&&ne(t,e))}):u,d.update(),M=!0,o(d.before_render),d.fragment=i(d.ctx),n.target&&(n.hydrate?d.fragment.l((L=n.target,Array.from(L.childNodes))):d.fragment.c(),n.intro&&t.$$.fragment.i&&t.$$.fragment.i(),te(t,n.target,n.anchor),G()),R(l)}class se{$destroy(){var t,n;n=!0,(t=this).$$&&(o(t.$$.on_destroy),t.$$.fragment.d(n),t.$$.on_destroy=t.$$.fragment=null,t.$$.ctx={}),this.$destroy=e}$on(e,t){const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const e=n.indexOf(t);-1!==e&&n.splice(e,1)}}$set(){}}function oe(t,n=e){let a;const s=[];function o(e){if(c(t,e)){if(t=e,!a)return;s.forEach(e=>e[1]()),s.forEach(e=>e[0](t))}}return{set:o,update:function(e){o(e(t))},subscribe:function(i,c=e){const r=[i,c];return s.push(r),1===s.length&&(a=n(o)||e),i(t),()=>{const e=s.indexOf(r);-1!==e&&s.splice(e,1),0===s.length&&a()}}}}function ie(t,n,a){const s=!Array.isArray(t),c=s?[t]:t,r=n.length<2;return{subscribe:oe(a,t=>{let a=!1;const l=[];let u=0,d=e;const M=()=>{if(u)return;d();const a=n(s?l[0]:l,t);r?t(a):d=i(a)?a:e},L=c.map((e,t)=>e.subscribe(e=>{l[t]=e,u&=~(1<<t),a&&M()},()=>{u|=1<<t}));return a=!0,M(),function(){o(L),d()}}).subscribe}}const ce=function(){const{subscribe:e,set:t}=oe({path:"/",params:{}});return{subscribe:e,goTo:(e,n={})=>t({path:e,params:n})}}(),re=e=>ie(ce,t=>t.path===e);function le(e){var t,n,a=e.component;if(a)var s=new a({});return{c(){s&&s.$$.fragment.c(),t=x()},m(e,a){s&&te(s,e,a),y(e,t,a),n=!0},p(e,n){if(a!==(a=n.component)){if(s){X();const e=s;B(()=>{e.$destroy()}),e.$$.fragment.o(1),q()}a?((s=new a({})).$$.fragment.c(),s.$$.fragment.i(1),te(s,t.parentNode,t)):s=null}},i(e){n||(s&&s.$$.fragment.i(e),n=!0)},o(e){s&&s.$$.fragment.o(e),n=!1},d(e){e&&N(t),s&&s.$destroy(e)}}}function ue(e){var t,n,a=e.$isActive&&le(e);return{c(){a&&a.c(),t=x()},m(e,s){a&&a.m(e,s),y(e,t,s),n=!0},p(e,n){n.$isActive?a?(a.p(e,n),a.i(1)):((a=le(n)).c(),a.i(1),a.m(t.parentNode,t)):a&&(X(),B(()=>{a.d(1),a=null}),a.o(1),q())},i(e){n||(a&&a.i(),n=!0)},o(e){a&&a.o(),n=!1},d(e){a&&a.d(e),e&&N(t)}}}function de(e,t,n){let a,{component:s,path:o}=t;const i=re(o);return r(e,i,e=>{n("$isActive",a=e)}),e.$set=(e=>{"component"in e&&n("component",s=e.component),"path"in e&&n("path",o=e.path)}),{component:s,path:o,isActive:i,$isActive:a}}class Me extends se{constructor(e){super(),ae(this,e,de,ue,c,["component","path"])}}function Le(e={}){const{action:t,nonce:n,nonceField:a,data:s,method:o,credentials:i,url:c}=e;if(!t)throw new TypeError("Cannot make ajax call without action");if(!n)throw new TypeError("Cannot make ajax call without nonce");if(s&&"object"!=typeof s)throw new TypeError("Data to send must be an object");if(!c&&!window.ajaxurl)throw new TypeError("Cannot make ajax call without url");let r=new FormData;if(r.append("action",t),r.append(a||"security",n),s)for(let e in s)r.append(e,s[e]);return fetch(c||window.ajaxurl,{method:o||"POST",body:r,credentials:i||"same-origin"})}const me=function(){const{subscribe:e,update:t}=oe({currentNotification:null});return{subscribe:e,addNotification:(e,n="success")=>{t(t=>(t.currentNotification={message:e,type:n},{...t})),setTimeout(()=>{t(e=>(e.currentNotification=null,{...e}))},5e3)}}}(),{hasToken:$e,nonce:fe,pages:ge,collections:pe,site:ve,staticRules:ye,dynamicRules:Ne,error:we,cacheDuration:je}=window._wfAjaxData;ve&&(ve.dashboardUrl=`https://webflow.com/dashboard/sites/${ve.shortName}/settings`),we?(ce.goTo("/login"),me.addNotification(we,"error")):"true"===$e?ce.goTo("/configuration"):ce.goTo("/login");const he=function(){const{subscribe:e,set:t,update:n}=oe({pages:ge||[],collections:pe||[],site:ve||void 0,staticRules:ye||[],dynamicRules:Ne||[],cacheDuration:je||0});return{subscribe:e,saveToken:async e=>{try{await Le({nonce:fe,data:{token:e},action:"save_wf_token"});const n=await Le({nonce:fe,action:"get_wf_site_data"});let a=await n.json();if(a.success)t({pages:a.data.pages||[],collections:a.data.collections||[],site:a.data.site,dynamicRules:[],staticRules:[]}),me.addNotification("Token Saved Successfully"),ce.goTo("/configuration");else{const e=a.data[0]||{code:"401",message:"Invalid Token"};me.addNotification(e.message,"error")}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save api token, please try again later"};me.addNotification(t.message,"error")}},removeToken:async()=>{try{await Le({nonce:fe,action:"remove_wf_token"}),me.addNotification("Token removed successfully"),window.location.reload()}catch(e){const t={code:e.code||"500",message:e.message||"Cannot remove token, please try again later"};me.addNotification(t.message,"error")}},addStaticRule:e=>{n(t=>(t.staticRules.push(e),{...t}))},removeStaticRule:e=>{n(t=>(t.staticRules.splice(e,1),{...t}))},addDynamicRule:e=>{n(t=>(t.dynamicRules.push(e),{...t}))},removeDynamicRule:e=>{n(t=>(t.dynamicRules.splice(e,1),{...t}))},saveStaticRules:async e=>{try{const t=await Le({action:"save_wf_static_rules",nonce:fe,data:{rules:JSON.stringify(e)}}),a=await t.json();if(a.success){const e=a.data;return n(t=>(t.staticRules=e,{...t})),me.addNotification("Rules saved successfully"),!0}{const e=a.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},saveDynamicRules:async e=>{try{const t=await Le({action:"save_wf_dynamic_rules",nonce:fe,data:{rules:JSON.stringify(e)}}),a=await t.json();if(a.success){const e=a.data;return n(t=>(t.dynamicRules=e,{...t})),me.addNotification("Rules saved successfully"),!0}{const e=a.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},invalidateCache:async()=>{try{const e=await Le({action:"invalidate_wf_cache",nonce:fe}),t=await e.json();if(t.success)return me.addNotification("Cache invalidated successfully"),!0;{const e=t.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},changeCache:async e=>{try{const t=await Le({action:"change_wf_cache_duration",nonce:fe,data:{duration:e}}),n=await t.json();if(n.success)return me.addNotification("Cache settings changed successfully"),!0;{const e=n.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},preloadCache:async()=>{try{const e=await Le({action:"preload_wf_cache",nonce:fe}),t=await e.json();if(t.success){const e=t.data||0;return me.addNotification(`Preloaded ${e} ${1==e?"page":"pages"}!`),!0}{const e=t.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}}}}();function Te(e){var t,n;const a=e.$$slots.default,s=l(a,e,null);return{c(){t=j("div"),s&&s.c(),t.className="svelte-1tca3kp"},l(e){s&&s.l(div_nodes)},m(e,a){y(e,t,a),s&&s.m(t,null),n=!0},p(e,t){s&&s.p&&e.$$scope&&s.p(d(a,t,e,null),u(a,t,null))},i(e){n||(s&&s.i&&s.i(e),n=!0)},o(e){s&&s.o&&s.o(e),n=!1},d(e){e&&N(t),s&&s.d(e)}}}function xe(e,t,n){let{$$slots:a={},$$scope:s}=t;return e.$set=(e=>{"$$scope"in e&&n("$$scope",s=e.$$scope)}),{$$slots:a,$$scope:s}}class Ce extends se{constructor(e){super(),ae(this,e,xe,Te,c,[])}}function Se(t){var n;return{c(){S(n=j("input"),"type","submit"),n.value=t.value,n.className="form_submit-button svelte-eb2c7g",S(n,"variation",t.variation),n.disabled=t.disabled},m(e,t){y(e,n,t)},p(e,t){e.value&&(n.value=t.value),e.variation&&S(n,"variation",t.variation),e.disabled&&(n.disabled=t.disabled)},i:e,o:e,d(e){e&&N(n)}}}function be(e,t,n){let{value:a="Submit",disabled:s=!1,variation:o=null}=t;return e.$set=(e=>{"value"in e&&n("value",a=e.value),"disabled"in e&&n("disabled",s=e.disabled),"variation"in e&&n("variation",o=e.variation)}),{value:a,disabled:s,variation:o}}class De extends se{constructor(e){super(),ae(this,e,be,Se,c,["value","disabled","variation"])}}function ze(e){var t,n;const a=e.$$slots.default,s=l(a,e,null);return{c(){t=j("label"),s&&s.c(),t.className="field_label svelte-mat9s6",t.htmlFor=e.forHtml},l(e){s&&s.l(label_nodes)},m(e,a){y(e,t,a),s&&s.m(t,null),n=!0},p(e,o){s&&s.p&&e.$$scope&&s.p(d(a,o,e,null),u(a,o,null)),n&&!e.forHtml||(t.htmlFor=o.forHtml)},i(e){n||(s&&s.i&&s.i(e),n=!0)},o(e){s&&s.o&&s.o(e),n=!1},d(e){e&&N(t),s&&s.d(e)}}}function Ee(e,t,n){let{forHtml:a=""}=t,{$$slots:s={},$$scope:o}=t;return e.$set=(e=>{"forHtml"in e&&n("forHtml",a=e.forHtml),"$$scope"in e&&n("$$scope",o=e.$$scope)}),{forHtml:a,$$slots:s,$$scope:o}}class Ie extends se{constructor(e){super(),ae(this,e,Ee,ze,c,["forHtml"])}}function Oe(t){var n;return{c(){(n=j("div")).innerHTML='<img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuNCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMzkzLjEgMjIxIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMzkzLjEgMjIxOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6IzQzNTNGRjt9Cgkuc3Qxe2ZpbGw6IzMzMzMzMzt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNzIsODguOWMwLTE0LjUtMTQuMS0yOS45LTM4LjUtMjkuOWMtMjcuNCwwLTU3LjUsMjAuMS02Mi4xLDYwLjJjLTQuNyw0MC41LDIwLjUsNTguNSw0NS45LDU4LjUKCXMzOC43LTkuOSw1Mi4zLTIzLjFjLTExLjctMTQuNy0yNi44LTcuOS0yOS43LTYuNGMtMy4yLDEuNi03LjMsMy44LTE1LjcsMy44Yy05LjgsMC0xOS44LTQuNC0xOS44LTIyLjcKCUMyNjcuMiwxMjMuMSwyNzIsMTAzLjQsMjcyLDg4Ljl6IE0yNDAuOSw5MS4zYy0wLjQsNC41LTIuMiwxMi4yLTM0LDE2LjVjNi43LTIzLjgsMTkuNS0yNS42LDI1LjQtMjUuNgoJQzIzNy44LDgyLjIsMjQxLjMsODYuNSwyNDAuOSw5MS4zeiBNMTM0LjUsOTUuMmMwLDAtMTMuNSw0Mi40LTE0LjYsNDUuOWMtMC40LTMuNi0xMC4zLTc5LjctMTAuMy03OS43Yy0yMywwLTM1LjMsMTYuNC00MS44LDMzLjcKCWMwLDAtMTYuNCw0Mi41LTE3LjgsNDYuMWMtMC4xLTMuMy0yLjUtNDUuNi0yLjUtNDUuNkM0Ni4xLDc0LjQsMjYuNyw2MS41LDExLDYxLjVsMTksMTE1LjNjMjQuMS0wLjEsMzcuMS0xNi40LDQzLjktMzMuNwoJYzAsMCwxNC41LTM3LjUsMTUuMS0zOS4yYzAuMSwxLjYsMTAuNCw3Mi45LDEwLjQsNzIuOWMyNC4yLDAsMzcuMi0xNS4zLDQ0LjItMzJsMzMuOS04My4zQzE1My42LDYxLjUsMTQxLDc3LjgsMTM0LjUsOTUuMnoKCSBNMzYwLjgsNTguOGMtMTQuOSwwLTI2LjMsOC4xLTM1LjksMjB2LTAuMWw4LjYtNjkuM2MtMTkuOCwwLTM1LjksMTcuMi0zOSw0Mi44bC0xNSwxMjMuN2MxMS40LDAsMjMuNS0zLjMsMzAtMTEuNwoJYzUuOCw3LjUsMTQuNSwxMy41LDI3LjQsMTMuNWMzMy40LDAsNTYuMy0zOC44LDU2LjMtNzUuMkMzOTMsNjkuMywzNzYuOSw1OC44LDM2MC44LDU4Ljh6IE0zNTcuNywxMTguMwoJYy0zLjUsMjAuMy0xNC44LDM0LjEtMjUuNywzNC4xYy0xMSwwLTE1LjctNC45LTE1LjctNC45YzIuMS0xNy44LDMuNC0yOC43LDcuNC0zOC4xUzMzNy4yLDg1LDM0Ny4xLDg1CglDMzU2LjgsODUsMzYxLjIsOTcuOSwzNTcuNywxMTguM3ogTTQ3Ni42LDYxLjVoLTIzLjNsMC4xLTEuMmMxLjYtMTUuMiw1LjItMjMuMiwxNy4xLTI0LjVjOC4xLTAuOCwxMS43LTUsMTIuNi05LjYKCWMwLjctMy42LDIuOS0xNi4xLDIuOS0xNi4xYy00Ni44LTAuMy02MS41LDE5LjktNjUuMyw1MC43bC0wLjEsMC43aC0wLjVjLTcuNiwwLTE2LDguNi0xNy40LDE5LjVsLTAuNSw0aDE1LjZsLTEzLjEsMTA4LjJsLTQsMTkuNAoJYzAuNSwwLDEuMSwwLjEsMS42LDAuMWMyMS45LTAuOCwzNS45LTE4LjEsMzktNDMuMkw0NTEuNSw4NWg3LjNjNy4yLDAsMTUuNi03LjIsMTcuMS0xOS4yTDQ3Ni42LDYxLjV6IE01OTcuOCw1OS41CgljLTI2LjksMC01Mi4zLDE5LjgtNjAuMSw1MC45czQsNjcuOSw0My42LDY3LjljMzkuNSwwLDYyLjMtMzguMyw2Mi4zLTcwLjJDNjQzLjYsNzYuNCw2MjIuMSw1OS41LDU5Ny44LDU5LjV6IE02MDguNywxMTcuMwoJYy0xLjQsMTQuMS03LjYsMzUuNS0yNC42LDM1LjVjLTE3LjEsMC0xNC43LTI1LTEzLTM2LjljMS44LTEyLjcsOC45LTMwLjgsMjQuMi0zMC44QzYwOSw4NS4xLDYxMC4zLDEwMS40LDYwOC43LDExNy4zeiBNNzc2LjUsOTUuMgoJYzAsMC0xMy41LDQyLjQtMTQuNiw0NS45Yy0wLjQtMy42LTEwLjMtNzkuNy0xMC4zLTc5LjdjLTIzLDAtMzUuMywxNi40LTQxLjgsMzMuN2MwLDAtMTYuNCw0Mi41LTE3LjgsNDYuMQoJYy0wLjEtMy4zLTIuNS00NS42LTIuNS00NS42Yy0xLjQtMjEuMi0yMC44LTM0LjEtMzYuNS0zNC4xbDE4LjksMTE1LjNjMjQuMS0wLjEsMzcuMS0xNi40LDQzLjktMzMuN2MwLDAsMTQuNS0zNy41LDE1LTM5LjIKCWMwLjEsMS42LDEwLjQsNzIuOSwxMC40LDcyLjljMjQuMiwwLDM3LjItMTUuMyw0NC4yLTMybDMzLjktODMuM0M3OTUuNSw2MS41LDc4Mi45LDc3LjgsNzc2LjUsOTUuMnogTTQ5OC42LDEwLjFMNDc5LDE2OC4ybDAsMAoJbC00LDE5LjVjMC41LDAsMS4xLDAuMSwxLjYsMC4xbDAsMGMyMS4xLTAuMywzNi4xLTE4LjgsMzguOS00Mi4xTDUyNi44LDU1QzUzMC4yLDI3LjMsNTEzLjcsMTAuMSw0OTguNiwxMC4xeiIvPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik05NTIuOCwxMDhjLTcuNyw2LjQtMTguNyw5LjYtMzMsOS42aC0yNy40VjE2NUg4NjVWMzMuM2g1Ni41YzEzLDAsMjMuNCwzLjQsMzEuMiwxMC4yCgkJYzcuOCw2LjgsMTEuNiwxNy4zLDExLjYsMzEuNUM5NjQuMyw5MC42LDk2MC41LDEwMS42LDk1Mi44LDEwOHogTTkzMS43LDYwLjZjLTMuNS0yLjktOC40LTQuNC0xNC42LTQuNGgtMjQuOFY5NWgyNC44CgkJYzYuMywwLDExLjItMS42LDE0LjYtNC43YzMuNS0zLjIsNS4yLTguMiw1LjItMTVDOTM3LDY4LjQsOTM1LjIsNjMuNSw5MzEuNyw2MC42eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTEwMjIuOSwxMDUuOGM0LjctMC42LDguMS0xLjMsMTAuMi0yLjJjMy43LTEuNSw1LjUtNCw1LjUtNy4yYzAtNC0xLjQtNi43LTQuMi04LjNjLTIuOC0xLjUtNi45LTIuMy0xMi40LTIuMwoJCWMtNi4xLDAtMTAuNCwxLjUtMTIuOSw0LjVjLTEuOCwyLjItMyw1LjItMy42LDguOWgtMjQuNmMwLjUtOC41LDIuOS0xNS41LDcuMi0yMWM2LjgtOC42LDE4LjQtMTIuOSwzNC44LTEyLjkKCQljMTAuNywwLDIwLjIsMi4xLDI4LjUsNi4zYzguMyw0LjIsMTIuNSwxMi4yLDEyLjUsMjMuOXY0NC43YzAsMy4xLDAuMSw2LjgsMC4yLDExLjNjMC4yLDMuMywwLjcsNS42LDEuNSw2LjgKCQljMC44LDEuMiwyLjEsMi4yLDMuOCwyLjl2My44aC0yNy43Yy0wLjgtMi0xLjMtMy44LTEuNi01LjVjLTAuMy0xLjctMC41LTMuNy0wLjctNS45Yy0zLjUsMy44LTcuNiw3LjEtMTIuMiw5LjcKCQljLTUuNSwzLjItMTEuNyw0LjctMTguNyw0LjdjLTguOSwwLTE2LjItMi41LTIyLTcuNWMtNS44LTUtOC43LTEyLjItOC43LTIxLjRjMC0xMiw0LjYtMjAuNiwxMy45LTI2YzUuMS0yLjksMTIuNi01LDIyLjUtNi4zCgkJTDEwMjIuOSwxMDUuOHogTTEwMzguNSwxMTcuN2MtMS42LDEtMy4zLDEuOC00LjksMi41Yy0xLjcsMC42LTMuOSwxLjItNi44LDEuN2wtNS44LDEuMWMtNS40LDEtOS4zLDIuMS0xMS43LDMuNQoJCWMtNCwyLjMtNiw1LjktNiwxMC44YzAsNC4zLDEuMiw3LjUsMy43LDkuNGMyLjQsMS45LDUuNCwyLjksOC45LDIuOWM1LjYsMCwxMC43LTEuNiwxNS40LTQuOHM3LjEtOS4xLDcuMy0xNy42VjExNy43eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTExMzQuMiw2Ny41YzYuMiwyLjYsMTEuMiw3LjMsMTUsMTQuMXYtMTRoMjQuOFYxNjBjMCwxMi42LTIuMSwyMi02LjMsMjguNGMtNy4zLDExLTIxLjIsMTYuNC00MS44LDE2LjQKCQljLTEyLjQsMC0yMi42LTIuNC0zMC41LTcuM2MtNy45LTQuOS0xMi4yLTEyLjItMTMtMjEuOWgyNy43YzAuNywzLDEuOSw1LjEsMy41LDYuNGMyLjcsMi4zLDcuNCwzLjUsMTMuOCwzLjUKCQljOS4yLDAsMTUuMy0zLjEsMTguNC05LjJjMi0zLjksMy0xMC41LDMtMTkuOHYtNi4zYy0yLjQsNC4yLTUuMSw3LjMtNy45LDkuNGMtNS4xLDMuOS0xMS42LDUuOC0xOS43LDUuOGMtMTIuNSwwLTIyLjUtNC40LTMwLTEzLjIKCQljLTcuNS04LjgtMTEuMi0yMC43LTExLjItMzUuN2MwLTE0LjUsMy42LTI2LjYsMTAuOC0zNi41YzcuMi05LjksMTcuNC0xNC44LDMwLjYtMTQuOEMxMTI2LjQsNjUuMywxMTMwLjYsNjYuMSwxMTM0LjIsNjcuNXoKCQkgTTExNDIuOSwxMzcuNGM0LjEtNC41LDYuMS0xMS43LDYuMS0yMS41YzAtOS4yLTEuOS0xNi4zLTUuOC0yMS4xYy0zLjktNC44LTkuMS03LjItMTUuNi03LjJjLTguOSwwLTE1LDQuMi0xOC40LDEyLjYKCQljLTEuOCw0LjUtMi43LDEwLTIuNywxNi41YzAsNS43LDAuOSwxMC43LDIuOCwxNS4xYzMuNCw4LjIsOS42LDEyLjMsMTguNSwxMi4zQzExMzMuOCwxNDQuMSwxMTM4LjgsMTQxLjksMTE0Mi45LDEzNy40eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTEyNjEuMyw2OS42YzYuOCwzLDEyLjQsNy44LDE2LjgsMTQuNGM0LDUuOCw2LjYsMTIuNSw3LjgsMjAuMWMwLjcsNC41LDEsMTAuOSwwLjgsMTkuM2gtNzAuOQoJCWMwLjQsOS44LDMuOCwxNi42LDEwLjIsMjAuNWMzLjksMi40LDguNiwzLjcsMTQsMy43YzUuOCwwLDEwLjUtMS41LDE0LjEtNC41YzItMS42LDMuNy0zLjgsNS4yLTYuN2gyNmMtMC43LDUuOC0zLjgsMTEuNi05LjQsMTcuNgoJCWMtOC43LDkuNS0yMC45LDE0LjItMzYuNiwxNC4yYy0xMywwLTI0LjQtNC0zNC4zLTEyYy05LjktOC0xNC45LTIxLTE0LjktMzljMC0xNi45LDQuNS0yOS44LDEzLjQtMzguOHMyMC41LTEzLjUsMzQuOC0xMy41CgkJQzEyNDYuOSw2NSwxMjU0LjUsNjYuNiwxMjYxLjMsNjkuNnogTTEyMjMuMiw5MS42Yy0zLjYsMy43LTUuOSw4LjctNi44LDE1LjFoNDMuOWMtMC41LTYuOC0yLjctMTEuOS02LjgtMTUuNAoJCWMtNC4xLTMuNS05LjEtNS4yLTE1LjEtNS4yQzEyMzEuOSw4NiwxMjI2LjgsODcuOSwxMjIzLjIsOTEuNnoiLz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xMzE5LjMsMTMzLjljMC41LDQuNSwxLjcsNy43LDMuNSw5LjZjMy4yLDMuNCw5LDUuMSwxNy42LDUuMWM1LDAsOS0wLjcsMTItMi4yYzMtMS41LDQuNC0zLjcsNC40LTYuNwoJCWMwLTIuOS0xLjItNS0zLjYtNi41Yy0yLjQtMS41LTExLjMtNC0yNi42LTcuN2MtMTEuMS0yLjctMTguOS02LjItMjMuNC0xMC4zYy00LjUtNC02LjgtOS45LTYuOC0xNy41YzAtOSwzLjUtMTYuNywxMC42LTIzLjIKCQljNy4xLTYuNSwxNy05LjcsMjkuOS05LjdjMTIuMiwwLDIyLjEsMi40LDI5LjgsNy4zYzcuNyw0LjksMTIuMSwxMy4yLDEzLjIsMjUuMWgtMjUuNWMtMC40LTMuMy0xLjMtNS45LTIuOC03LjgKCQljLTIuOC0zLjUtNy42LTUuMi0xNC4zLTUuMmMtNS42LDAtOS41LDAuOS0xMS45LDIuNmMtMi40LDEuNy0zLjUsMy44LTMuNSw2LjFjMCwyLjksMS4zLDUsMy44LDYuM2MyLjUsMS40LDExLjQsMy43LDI2LjYsNy4xCgkJYzEwLjEsMi40LDE3LjcsNiwyMi44LDEwLjhjNSw0LjksNy41LDExLDcuNSwxOC4zYzAsOS42LTMuNiwxNy41LTEwLjgsMjMuNmMtNy4yLDYuMS0xOC4zLDkuMi0zMy4zLDkuMmMtMTUuMywwLTI2LjctMy4yLTM0LTkuNwoJCWMtNy4zLTYuNS0xMS0xNC43LTExLTI0LjdIMTMxOS4zeiIvPgo8L2c+Cjwvc3ZnPgo=\n\t\t\t" alt="logo" class="svelte-66pno5">',n.className="svelte-66pno5"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}class ke extends se{constructor(e){super(),ae(this,e,null,Oe,c,[])}}function _e(e){var t,n,a,s,i,c,r,l,u,d,M,L,m,$=new ke({}),f=new De({props:{value:e.$loginStore.value,disabled:e.$loginStore.disabled}});return{c(){t=j("div"),$.$$.fragment.c(),n=T(),(a=j("b")).textContent="Congratulations on installing the Webflow Wordpress plugin!",s=T(),(i=j("p")).innerHTML='\n\t\t\t      You can find your site\'s API key by going to the <a href="https://webflow.com/dashboard?utm_source=wpplugin" target="_blank" rel="nofollow" class="svelte-1camdh2">Webflow Dashboard</a>, then your site\'s settings\n\t\t\t    ',c=T(),r=j("form"),l=j("input"),u=T(),f.$$.fragment.c(),d=T(),(M=j("div")).innerHTML='\n\t\t\t      This version of the plugin is not compatible with Webflow Ecommerce. Please contact <a href="https://university.webflow.com/contact" target="_blank" rel="nofollow" class="svelte-1camdh2">Webflow Support</a> for any help with the plugin.\n\t\t\t    ',i.className="svelte-1camdh2",l.className="field-input svelte-1camdh2",S(l,"type","password"),l.name="api_keys",l.autocomplete="off",l.placeholder="Your Api Key...",l.required=!0,r.className="svelte-1camdh2",M.className="warning-notice svelte-1camdh2",t.className="login-wrapper svelte-1camdh2",m=[C(l,"input",e.input_input_handler),C(r,"submit",e.handleSubmit)]},m(o,m){y(o,t,m),te($,t,null),v(t,n),v(t,a),v(t,s),v(t,i),v(t,c),v(t,r),v(r,l),l.value=e.token,v(r,u),te(f,r,null),v(t,d),v(t,M),L=!0},p(e,t){e.token&&(l.value=t.token);var n={};e.$loginStore&&(n.value=t.$loginStore.value),e.$loginStore&&(n.disabled=t.$loginStore.disabled),f.$set(n)},i(e){L||($.$$.fragment.i(e),f.$$.fragment.i(e),L=!0)},o(e){$.$$.fragment.o(e),f.$$.fragment.o(e),L=!1},d(e){e&&N(t),$.$destroy(),f.$destroy(),o(m)}}}function Ye(e){var t,n=new Ce({props:{$$slots:{default:[_e]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};(e.$$scope||e.$loginStore||e.token)&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}function Re(e,t,n){let a;const s=oe({disabled:!1,value:"Add Webflow API Key"});r(e,s,e=>{n("$loginStore",a=e)});let o="";return{loginStore:s,token:o,handleSubmit:async e=>{e.preventDefault(),s.set({disabled:!0,value:"Saving..."}),await he.saveToken(o),s.set({disabled:!1,value:"Add Webflow API Key"})},$loginStore:a,input_input_handler:function(){o=this.value,n("token",o)}}}class Ae extends se{constructor(e){super(),ae(this,e,Re,Ye,c,[])}}function Ue(e){var t,n;const a=e.$$slots.default,s=l(a,e,null);return{c(){t=j("div"),s&&s.c(),t.className="navbar-light svelte-1qxftnk"},l(e){s&&s.l(div_nodes)},m(e,a){y(e,t,a),s&&s.m(t,null),n=!0},p(e,t){s&&s.p&&e.$$scope&&s.p(d(a,t,e,null),u(a,t,null))},i(e){n||(s&&s.i&&s.i(e),n=!0)},o(e){s&&s.o&&s.o(e),n=!1},d(e){e&&N(t),s&&s.d(e)}}}function Qe(e,t,n){let{$$slots:a={},$$scope:s}=t;return e.$set=(e=>{"$$scope"in e&&n("$$scope",s=e.$$scope)}),{$$slots:a,$$scope:s}}class We extends se{constructor(e){super(),ae(this,e,Qe,Ue,c,[])}}function Pe(t){var n,a,s,o;return{c(){n=j("a"),a=h(t.text),n.href="/",n.className=s=(t.$isActive?"is-active":"")+" svelte-1dx6voi",o=C(n,"click",t.handleClick)},m(e,t){y(e,n,t),v(n,a)},p(e,t){e.text&&b(a,t.text),e.$isActive&&s!==(s=(t.$isActive?"is-active":"")+" svelte-1dx6voi")&&(n.className=s)},i:e,o:e,d(e){e&&N(n),o()}}}function He(e,t,n){let a,{path:s,params:o={},text:i=""}=t;const c=re(s);return r(e,c,e=>{n("$isActive",a=e)}),e.$set=(e=>{"path"in e&&n("path",s=e.path),"params"in e&&n("params",o=e.params),"text"in e&&n("text",i=e.text)}),{path:s,params:o,text:i,handleClick:e=>{e.preventDefault(),ce.goTo(s,o)},isActive:c,$isActive:a}}class Je extends se{constructor(e){super(),ae(this,e,He,Pe,c,["path","params","text"])}}function Ge(t){var n,a,s=new Je({props:{path:"/configuration",text:"Pages"}}),o=new Je({props:{path:"/settings",text:"Settings"}});return{c(){s.$$.fragment.c(),n=T(),o.$$.fragment.c()},m(e,t){te(s,e,t),y(e,n,t),te(o,e,t),a=!0},p:e,i(e){a||(s.$$.fragment.i(e),o.$$.fragment.i(e),a=!0)},o(e){s.$$.fragment.o(e),o.$$.fragment.o(e),a=!1},d(e){s.$destroy(e),e&&N(n),o.$destroy(e)}}}function Ze(e){var t,n=new We({props:{$$slots:{default:[Ge]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};e.$$scope&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}class Ve extends se{constructor(e){super(),ae(this,e,null,Ze,c,[])}}function Ke(e){var t,n,a,s,o,i,c=new ke({}),r=new Ve({});const M=e.$$slots.default,L=l(M,e,null);return{c(){t=j("div"),c.$$.fragment.c(),n=T(),a=j("div"),r.$$.fragment.c(),s=T(),o=j("div"),L&&L.c(),o.className="main-content svelte-9bdctk",a.className="wrapper svelte-9bdctk",t.className="configuration-container svelte-9bdctk"},l(e){L&&L.l(div0_nodes)},m(e,l){y(e,t,l),te(c,t,null),v(t,n),v(t,a),te(r,a,null),v(a,s),v(a,o),L&&L.m(o,null),i=!0},p(e,t){L&&L.p&&e.$$scope&&L.p(d(M,t,e,null),u(M,t,null))},i(e){i||(c.$$.fragment.i(e),r.$$.fragment.i(e),L&&L.i&&L.i(e),i=!0)},o(e){c.$$.fragment.o(e),r.$$.fragment.o(e),L&&L.o&&L.o(e),i=!1},d(e){e&&N(t),c.$destroy(),r.$destroy(),L&&L.d(e)}}}function Fe(e,t,n){let{$$slots:a={},$$scope:s}=t;return e.$set=(e=>{"$$scope"in e&&n("$$scope",s=e.$$scope)}),{$$slots:a,$$scope:s}}class Xe extends se{constructor(e){super(),ae(this,e,Fe,Ke,c,[])}}function qe(e,t,n){const a=Object.create(e);return a.page=t[n],a}function Be(e,t,n){const a=Object.create(e);return a.staticRule=t[n],a.each_value=t,a.index=n,a}function et(e,t,n){const a=Object.create(e);return a.page=t[n],a}function tt(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function nt(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function at(e){var t,n,a=e.page.substr(1).replace("index.html","Home Page");return{c(){t=j("option"),n=h(a),t.__value=e.page,t.value=t.__value},m(e,a){y(e,t,a),v(t,n)},p(e,n){t.value=t.__value},d(e){e&&N(t)}}}function st(t){var n;return{c(){(n=j("div")).innerHTML='<p class="svelte-cttv0y">No rules added</p>',n.className="no-pages-added svelte-cttv0y"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}function ot(e){for(var t,n,a,s,o,i,c,r,l,u=new Ie({props:{$$slots:{default:[it]},$$scope:{ctx:e}}}),d=new Ie({props:{$$slots:{default:[ct]},$$scope:{ctx:e}}}),M=e.$store.staticRules,L=[],m=0;m<M.length;m+=1)L[m]=lt(Be(e,M,m));return{c(){t=j("div"),n=j("div"),u.$$.fragment.c(),a=T(),s=j("div"),d.$$.fragment.c(),o=T(),(i=j("div")).innerHTML='<button disabled class="button add">+</button>',c=T(),r=j("div");for(var e=0;e<L.length;e+=1)L[e].c();D(i,"visibility","hidden"),t.className="grid grid-with-actions fields-headers svelte-cttv0y",r.className="fields-wrapper svelte-cttv0y"},m(e,M){y(e,t,M),v(t,n),te(u,n,null),v(t,a),v(t,s),te(d,s,null),v(t,o),v(t,i),y(e,c,M),y(e,r,M);for(var m=0;m<L.length;m+=1)L[m].m(r,null);l=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),u.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),d.$set(a),e.$store||e.pages||e.handleInput){M=t.$store.staticRules;for(var s=0;s<M.length;s+=1){const n=Be(t,M,s);L[s]?L[s].p(e,n):(L[s]=lt(n),L[s].c(),L[s].m(r,null))}for(;s<L.length;s+=1)L[s].d(1);L.length=M.length}},i(e){l||(u.$$.fragment.i(e),d.$$.fragment.i(e),l=!0)},o(e){u.$$.fragment.o(e),d.$$.fragment.o(e),l=!1},d(e){e&&N(t),u.$destroy(),d.$destroy(),e&&(N(c),N(r)),w(L,e)}}}function it(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function ct(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function rt(e){var t,n,a=e.page.substr(1).replace("index.html","Home Page");return{c(){t=j("option"),n=h(a),t.__value=e.page,t.value=t.__value},m(e,a){y(e,t,a),v(t,n)},p(e,n){t.value=t.__value},d(e){e&&N(t)}}}function lt(e){var t,n,a,s,i,c,r,l,u,d,M;function L(){e.input_input_handler_1.call(s,e)}for(var m=e.pages,$=[],f=0;f<m.length;f+=1)$[f]=rt(qe(e,m,f));function g(){e.select_change_handler_1.call(r,e)}function p(){return e.click_handler(e)}return{c(){t=j("div"),n=j("div"),a=j("div"),s=j("input"),i=T(),c=j("div"),r=j("select");for(var o=0;o<$.length;o+=1)$[o].c();l=T(),(u=j("a")).textContent="X",d=T(),s.className="field-input",S(s,"type","text"),s.readOnly=!0,void 0===e.staticRule[1]&&J(g),r.className="field-select",r.disabled=!0,u.className="button remove",n.className="grid grid-with-actions",t.className="input-wrapper",M=[C(s,"input",L),C(s,"input",e.handleInput),C(r,"change",g),C(u,"click",p)]},m(o,M){y(o,t,M),v(t,n),v(n,a),v(a,s),s.value=e.staticRule[0],v(n,i),v(n,c),v(c,r);for(var L=0;L<$.length;L+=1)$[L].m(r,null);z(r,e.staticRule[1]),v(n,l),v(n,u),v(t,d)},p(t,n){if(e=n,t.$store&&s.value!==e.staticRule[0]&&(s.value=e.staticRule[0]),t.pages){m=e.pages;for(var a=0;a<m.length;a+=1){const n=qe(e,m,a);$[a]?$[a].p(t,n):($[a]=rt(n),$[a].c(),$[a].m(r,null))}for(;a<$.length;a+=1)$[a].d(1);$.length=m.length}t.$store&&z(r,e.staticRule[1])},d(e){e&&N(t),w($,e),o(M)}}}function ut(e){for(var t,n,a,s,i,c,r,l,u,d,M,L,m,$,f,g,p,x,b,E,I,O,k,_,Y,R,A,U,Q,W,P,H,G,Z,V,K,F,ee,ne=new Ie({props:{$$slots:{default:[tt]},$$scope:{ctx:e}}}),ae=new Ie({props:{$$slots:{default:[nt]},$$scope:{ctx:e}}}),se=e.pages,oe=[],ie=0;ie<se.length;ie+=1)oe[ie]=at(et(e,se,ie));var ce=[ot,st],re=[];function le(e){return e.$store.staticRules.length?0:1}return V=le(e),K=re[V]=ce[V](e),{c(){t=j("div"),n=j("div"),(a=j("div")).innerHTML='<h3 class="svelte-cttv0y">Static Pages</h3>',s=T(),i=j("div"),(c=j("p")).textContent="Create a new redirect",r=T(),(l=j("p")).textContent="Create redirects to serve a made-in-Webflow page in place of a WordPress Page",u=T(),d=j("div"),M=j("div"),ne.$$.fragment.c(),L=T(),m=j("div"),ae.$$.fragment.c(),$=T(),(f=j("div")).innerHTML='<button disabled class="button add">+</button>',g=T(),p=j("div"),x=j("form"),b=j("div"),E=j("input"),I=T(),(O=j("small")).textContent="Path must start with / and be valid URLs",k=T(),_=j("div"),Y=j("select");for(var o=0;o<oe.length;o+=1)oe[o].c();R=T(),A=j("button"),U=h("+"),W=T(),P=j("div"),(H=j("p")).textContent="Rules",G=T(),Z=j("form"),K.c(),a.className="headers svelte-cttv0y",c.className="section-description svelte-cttv0y",l.className="description-subtitle",D(f,"visibility","hidden"),d.className="grid grid-with-actions ",E.dataset.add="true",E.className="field-input",S(E,"type","text"),E.required=!0,E.placeholder="/path",O.className="error-message",void 0===e.staticRule[1]&&J(()=>e.select_change_handler.call(Y)),Y.className="field-select",A.type="submit",A.disabled=Q=!e.canAdd,A.className="button add",x.className="grid grid-with-actions",p.className="input-wrapper",i.className="form-wrapper new-page svelte-cttv0y",D(n,"display","flex"),D(n,"flex-direction","column"),D(n,"justify-content","space-evenly"),H.className="section-description svelte-cttv0y",Z.className="configuration-form svelte-cttv0y",P.className="added-pages svelte-cttv0y",t.className="wrapper",ee=[C(E,"input",e.input_input_handler),C(E,"input",e.handleInput),C(Y,"change",e.select_change_handler),C(A,"click",e.addStaticRule),C(x,"submit",e.addStaticRule),C(Z,"submit",e.handleSubmit)]},m(o,N){y(o,t,N),v(t,n),v(n,a),v(n,s),v(n,i),v(i,c),v(i,r),v(i,l),v(i,u),v(i,d),v(d,M),te(ne,M,null),v(d,L),v(d,m),te(ae,m,null),v(d,$),v(d,f),v(i,g),v(i,p),v(p,x),v(x,b),v(b,E),E.value=e.staticRule[0],v(b,I),v(b,O),v(x,k),v(x,_),v(_,Y);for(var w=0;w<oe.length;w+=1)oe[w].m(Y,null);z(Y,e.staticRule[1]),v(x,R),v(x,A),v(A,U),v(t,W),v(t,P),v(P,H),v(P,G),v(P,Z),re[V].m(Z,null),F=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),ne.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),ae.$set(a),e.staticRule&&E.value!==t.staticRule[0]&&(E.value=t.staticRule[0]),e.pages){se=t.pages;for(var s=0;s<se.length;s+=1){const n=et(t,se,s);oe[s]?oe[s].p(e,n):(oe[s]=at(n),oe[s].c(),oe[s].m(Y,null))}for(;s<oe.length;s+=1)oe[s].d(1);oe.length=se.length}e.staticRule&&z(Y,t.staticRule[1]),F&&!e.canAdd||Q===(Q=!t.canAdd)||(A.disabled=Q);var o=V;(V=le(t))===o?re[V].p(e,t):(X(),B(()=>{re[o].d(1),re[o]=null}),K.o(1),q(),(K=re[V])||(K=re[V]=ce[V](t)).c(),K.i(1),K.m(Z,null))},i(e){F||(ne.$$.fragment.i(e),ae.$$.fragment.i(e),K&&K.i(),F=!0)},o(e){ne.$$.fragment.o(e),ae.$$.fragment.o(e),K&&K.o(),F=!1},d(e){e&&N(t),ne.$destroy(),ae.$destroy(),w(oe,e),re[V].d(),o(ee)}}}function dt(e,t,n){let a;r(e,he,e=>{n("$store",a=e)});a.staticRules.length;let s=["",""],o=!1;const i=e=>{he.removeStaticRule(e),he.saveStaticRules(a.staticRules)},c=a.pages.filter(e=>"/404"!==e&&"/401"!==e);return{staticRule:s,canAdd:o,handleSubmit:async e=>{e.preventDefault(),await he.saveStaticRules(a.staticRules)},addStaticRule:e=>{e.preventDefault(),document.activeElement.blur(),he.addStaticRule(s),n("staticRule",s=["",""]),n("canAdd",o=!1),he.saveStaticRules(a.staticRules)},removeStaticRule:i,handleInput:({target:e})=>{let t=e.value,a=e.getAttribute("data-add");e.value=encodeURI(decodeURI(t));const s=(t=e.value).match(/^(\.?){2}(\/[a-zA-Z0-9_\-]+)+\/?$/g);s&&s[0]===t||"/"===t?(e.setCustomValidity(""),a&&n("canAdd",o=!0)):(e.setCustomValidity("Invalid field."),a&&n("canAdd",o=!1))},pages:c,$store:a,input_input_handler:function(){s[0]=this.value,n("staticRule",s),n("pages",c)},select_change_handler:function(){s[1]=E(this),n("staticRule",s),n("pages",c)},input_input_handler_1:function({staticRule:e,each_value:t,index:a}){t[a][0]=this.value,n("pages",c)},select_change_handler_1:function({staticRule:e,each_value:t,index:a}){t[a][1]=E(this),n("pages",c)},click_handler:function({index:e}){return i(e)}}}class Mt extends se{constructor(e){super(),ae(this,e,dt,ut,c,[])}}function Lt(e,t,n){const a=Object.create(e);return a.collection=t[n],a}function mt(e,t,n){const a=Object.create(e);return a.dynamicRule=t[n],a.each_value=t,a.index=n,a}function $t(e,t,n){const a=Object.create(e);return a.collection=t[n],a}function ft(t){var n;return{c(){(n=j("div")).innerHTML='<p class="svelte-k5ling">No collections</p>',n.className="no-collections svelte-k5ling"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}function gt(e){for(var t,n,a,s,i,c,r,l,u,d,M,L,m,$,f,g,p,x,b,E,I,O,k=new Ie({props:{$$slots:{default:[pt]},$$scope:{ctx:e}}}),_=new Ie({props:{$$slots:{default:[vt]},$$scope:{ctx:e}}}),Y=e.$store.collections,R=[],A=0;A<Y.length;A+=1)R[A]=yt($t(e,Y,A));return{c(){t=j("div"),n=j("div"),k.$$.fragment.c(),a=T(),s=j("div"),_.$$.fragment.c(),i=T(),(c=j("div")).innerHTML='<button disabled class="button add">+</button>',r=T(),l=j("div"),u=j("form"),d=j("div"),M=j("input"),L=T(),(m=j("small")).textContent="Path must start with / and be valid URLs and end with /*",$=T(),f=j("div"),g=j("select");for(var o=0;o<R.length;o+=1)R[o].c();p=T(),x=j("button"),b=h("+"),D(c,"visibility","hidden"),t.className="grid grid-with-actions",M.dataset.add="true",M.className="field-input",S(M,"type","text"),M.required=!0,M.placeholder="/path/*",m.className="error-message",void 0===e.dynamicRule[1]&&J(()=>e.select_change_handler.call(g)),g.className="field-select",x.type="submit",x.disabled=E=!e.canAdd,x.className="button add",u.className="grid grid-with-actions",l.className="input-wrapper",O=[C(M,"input",e.input_input_handler),C(M,"input",e.handleInput),C(g,"change",e.select_change_handler),C(x,"click",e.addDynamicRule),C(u,"submit",e.addDynamicRule)]},m(o,N){y(o,t,N),v(t,n),te(k,n,null),v(t,a),v(t,s),te(_,s,null),v(t,i),v(t,c),y(o,r,N),y(o,l,N),v(l,u),v(u,d),v(d,M),M.value=e.dynamicRule[0],v(d,L),v(d,m),v(u,$),v(u,f),v(f,g);for(var w=0;w<R.length;w+=1)R[w].m(g,null);z(g,e.dynamicRule[1]),v(u,p),v(u,x),v(x,b),I=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),k.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),_.$set(a),e.dynamicRule&&M.value!==t.dynamicRule[0]&&(M.value=t.dynamicRule[0]),e.$store){Y=t.$store.collections;for(var s=0;s<Y.length;s+=1){const n=$t(t,Y,s);R[s]?R[s].p(e,n):(R[s]=yt(n),R[s].c(),R[s].m(g,null))}for(;s<R.length;s+=1)R[s].d(1);R.length=Y.length}e.dynamicRule&&z(g,t.dynamicRule[1]),I&&!e.canAdd||E===(E=!t.canAdd)||(x.disabled=E)},i(e){I||(k.$$.fragment.i(e),_.$$.fragment.i(e),I=!0)},o(e){k.$$.fragment.o(e),_.$$.fragment.o(e),I=!1},d(e){e&&N(t),k.$destroy(),_.$destroy(),e&&(N(r),N(l)),w(R,e),o(O)}}}function pt(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function vt(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function yt(e){var t,n,a,s,o,i=e.collection.slug;return{c(){t=j("option"),n=h("/"),a=h(i),s=h("/*"),t.__value=o="/"+e.collection.slug+"/",t.value=t.__value},m(e,o){y(e,t,o),v(t,n),v(t,a),v(t,s)},p(e,n){e.$store&&i!==(i=n.collection.slug)&&b(a,i),e.$store&&o!==(o="/"+n.collection.slug+"/")&&(t.__value=o),t.value=t.__value},d(e){e&&N(t)}}}function Nt(t){var n;return{c(){(n=j("div")).innerHTML='<p class="svelte-k5ling">No rules added</p>',n.className="no-collections svelte-k5ling"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}function wt(e){for(var t,n,a,s,o,i,c,r,l,u=new Ie({props:{$$slots:{default:[jt]},$$scope:{ctx:e}}}),d=new Ie({props:{$$slots:{default:[ht]},$$scope:{ctx:e}}}),M=e.$store.dynamicRules,L=[],m=0;m<M.length;m+=1)L[m]=xt(mt(e,M,m));return{c(){t=j("div"),n=j("div"),u.$$.fragment.c(),a=T(),s=j("div"),d.$$.fragment.c(),o=T(),(i=j("div")).innerHTML='<button disabled class="button add">+</button>',c=T(),r=j("div");for(var e=0;e<L.length;e+=1)L[e].c();D(i,"visibility","hidden"),t.className="grid grid-with-actions fields-headers svelte-k5ling",r.className="fields-wrapper svelte-k5ling"},m(e,M){y(e,t,M),v(t,n),te(u,n,null),v(t,a),v(t,s),te(d,s,null),v(t,o),v(t,i),y(e,c,M),y(e,r,M);for(var m=0;m<L.length;m+=1)L[m].m(r,null);l=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),u.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),d.$set(a),e.$store||e.handleInput){M=t.$store.dynamicRules;for(var s=0;s<M.length;s+=1){const n=mt(t,M,s);L[s]?L[s].p(e,n):(L[s]=xt(n),L[s].c(),L[s].m(r,null))}for(;s<L.length;s+=1)L[s].d(1);L.length=M.length}},i(e){l||(u.$$.fragment.i(e),d.$$.fragment.i(e),l=!0)},o(e){u.$$.fragment.o(e),d.$$.fragment.o(e),l=!1},d(e){e&&N(t),u.$destroy(),d.$destroy(),e&&(N(c),N(r)),w(L,e)}}}function jt(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function ht(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function Tt(e){var t,n,a,s,o,i=e.collection.slug;return{c(){t=j("option"),n=h("/"),a=h(i),s=h("/*"),t.__value=o="/"+e.collection.slug+"/",t.value=t.__value},m(e,o){y(e,t,o),v(t,n),v(t,a),v(t,s)},p(e,n){e.$store&&i!==(i=n.collection.slug)&&b(a,i),e.$store&&o!==(o="/"+n.collection.slug+"/")&&(t.__value=o),t.value=t.__value},d(e){e&&N(t)}}}function xt(e){var t,n,a,s,i,c,r,l,u,d,M;function L(){e.input_input_handler_1.call(s,e)}for(var m=e.$store.collections,$=[],f=0;f<m.length;f+=1)$[f]=Tt(Lt(e,m,f));function g(){e.select_change_handler_1.call(r,e)}function p(){return e.click_handler(e)}return{c(){t=j("div"),n=j("div"),a=j("div"),s=j("input"),i=T(),c=j("div"),r=j("select");for(var o=0;o<$.length;o+=1)$[o].c();l=T(),(u=j("a")).textContent="X",d=T(),s.className="field-input",S(s,"type","text"),s.required=!0,s.readOnly=!0,void 0===e.dynamicRule[1]&&J(g),r.className="field-select",r.disabled=!0,u.className="button remove",n.className="grid grid-with-actions",t.className="input-wrapper",M=[C(s,"input",L),C(s,"input",e.handleInput),C(r,"change",g),C(u,"click",p)]},m(o,M){y(o,t,M),v(t,n),v(n,a),v(a,s),s.value=e.dynamicRule[0],v(n,i),v(n,c),v(c,r);for(var L=0;L<$.length;L+=1)$[L].m(r,null);z(r,e.dynamicRule[1]),v(n,l),v(n,u),v(t,d)},p(t,n){if(e=n,t.$store&&s.value!==e.dynamicRule[0]&&(s.value=e.dynamicRule[0]),t.$store){m=e.$store.collections;for(var a=0;a<m.length;a+=1){const n=Lt(e,m,a);$[a]?$[a].p(t,n):($[a]=Tt(n),$[a].c(),$[a].m(r,null))}for(;a<$.length;a+=1)$[a].d(1);$.length=m.length}t.$store&&z(r,e.dynamicRule[1])},d(e){e&&N(t),w($,e),o(M)}}}function Ct(e){var t,n,a,s,o,i,c,r,l,u,d,M,L,m,$,f,g,p,w=[gt,ft],h=[];function x(e){return e.$store.collections.length>0?0:1}r=x(e),l=h[r]=w[r](e);var S=[wt,Nt],b=[];function z(e){return e.$store.dynamicRules.length?0:1}return $=z(e),f=b[$]=S[$](e),{c(){t=j("div"),n=j("div"),(a=j("div")).innerHTML='<h3 class="svelte-k5ling">Collection Pages</h3>',s=T(),o=j("div"),(i=j("p")).textContent="Create a new Rule",c=T(),l.c(),u=T(),d=j("div"),(M=j("p")).textContent="Rules",L=T(),m=j("form"),f.c(),a.className="headers svelte-k5ling",i.className="section-description svelte-k5ling",o.className="form-wrapper new-page svelte-k5ling",D(n,"display","flex"),D(n,"flex-direction","column"),D(n,"justify-content","space-evenly"),M.className="section-description svelte-k5ling",m.className="configuration-form svelte-k5ling",d.className="added-pages svelte-k5ling",t.className="wrapper",p=C(m,"submit",e.handleSubmit)},m(e,l){y(e,t,l),v(t,n),v(n,a),v(n,s),v(n,o),v(o,i),v(o,c),h[r].m(o,null),v(t,u),v(t,d),v(d,M),v(d,L),v(d,m),b[$].m(m,null),g=!0},p(e,t){var n=r;(r=x(t))===n?h[r].p(e,t):(X(),B(()=>{h[n].d(1),h[n]=null}),l.o(1),q(),(l=h[r])||(l=h[r]=w[r](t)).c(),l.i(1),l.m(o,null));var a=$;($=z(t))===a?b[$].p(e,t):(X(),B(()=>{b[a].d(1),b[a]=null}),f.o(1),q(),(f=b[$])||(f=b[$]=S[$](t)).c(),f.i(1),f.m(m,null))},i(e){g||(l&&l.i(),f&&f.i(),g=!0)},o(e){l&&l.o(),f&&f.o(),g=!1},d(e){e&&N(t),h[r].d(),b[$].d(),p()}}}function St(e,t,n){let a;r(e,he,e=>{n("$store",a=e)});a.dynamicRules.length,a.collections[0];let s=["",""];a.collections.length&&n("dynamicRule",s=["",`/${a.collections[0].slug}/`]);let o=!1;const i=e=>{he.removeDynamicRule(e),he.saveDynamicRules(a.dynamicRules)};return{dynamicRule:s,canAdd:o,handleSubmit:async e=>{e.preventDefault(),await he.saveDynamicRules(a.dynamicRules)},addDynamicRule:e=>{n("canAdd",o=!1),e.preventDefault(),document.activeElement.blur(),s&&s[0]?(he.addDynamicRule(s),n("dynamicRule",s=["",""]),he.saveDynamicRules(a.dynamicRules)):n("canAdd",o=!1)},removeDynamicRule:i,handleInput:e=>{let t=e.target.value;e.target.value=encodeURI(decodeURI(t));let a=e.target.getAttribute("data-add");const s=(t=e.target.value).match(/\/.*?\/\*/g);s&&s[0]===t?(e.target.setCustomValidity(""),a&&n("canAdd",o=!0)):(e.target.setCustomValidity("Invalid field."),a&&n("canAdd",o=!1))},$store:a,input_input_handler:function(){s[0]=this.value,n("dynamicRule",s)},select_change_handler:function(){s[1]=E(this),n("dynamicRule",s)},input_input_handler_1:function({dynamicRule:e,each_value:t,index:n}){t[n][0]=this.value},select_change_handler_1:function({dynamicRule:e,each_value:t,index:n}){t[n][1]=E(this)},click_handler:function({index:e}){return i(e)}}}class bt extends se{constructor(e){super(),ae(this,e,St,Ct,c,[])}}function Dt(e){var t,n,a=new Mt({}),s=new bt({});return{c(){a.$$.fragment.c(),t=T(),s.$$.fragment.c()},m(e,o){te(a,e,o),y(e,t,o),te(s,e,o),n=!0},i(e){n||(a.$$.fragment.i(e),s.$$.fragment.i(e),n=!0)},o(e){a.$$.fragment.o(e),s.$$.fragment.o(e),n=!1},d(e){a.$destroy(e),e&&N(t),s.$destroy(e)}}}function zt(e){var t,n=new Xe({props:{$$slots:{default:[Dt]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};e.$$scope&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}class Et extends se{constructor(e){super(),ae(this,e,null,zt,c,[])}}function It(e,{delay:t=0,duration:n=400}){const a=+getComputedStyle(e).opacity;return{delay:t,duration:n,css:e=>`opacity: ${e*a}`}}function Ot(t){var n,a,s,i,c,r,l,u,d,M,L,m,$,f,g,p,w;return{c(){n=j("div"),a=j("div"),s=j("div"),(i=j("div")).textContent="Do you want to remove all the Webflow Pages?",c=T(),(r=j("a")).textContent="X",l=T(),u=j("div"),(d=j("p")).textContent="Are you sure you want to remove all your Webflow Settings?",M=T(),L=j("div"),(m=j("button")).textContent="Cancel",$=T(),(f=j("button")).textContent="Confirm",r.className="svelte-qi2scw",s.className="modal-header svelte-qi2scw",m.className="modal-button grey svelte-qi2scw",f.className="modal-button red svelte-qi2scw",L.className="modal-actions svelte-qi2scw",u.className="modal-content svelte-qi2scw",a.className="modal svelte-qi2scw",n.className="modal-wrapper svelte-qi2scw",w=[C(r,"click",t.closeModal),C(m,"click",t.closeModal),C(f,"click",t.acceptModal)]},m(e,t){y(e,n,t),v(n,a),v(a,s),v(s,i),v(s,c),v(s,r),v(a,l),v(a,u),v(u,d),v(u,M),v(u,L),v(L,m),v(L,$),v(L,f),p=!0},p:e,i(e){p||(J(()=>{g||(g=ee(a,It,{},!0)),g.run(1)}),p=!0)},o(e){g||(g=ee(a,It,{},!1)),g.run(0),p=!1},d(e){e&&(N(n),g&&g.end()),o(w)}}}function kt(e){var t,n,a,s,o,i,c,r,l,u=new De({props:{value:e.$removeTokenStore.value,disabled:e.$removeTokenStore.disabled,variation:"red"}}),d=e.$modalStore.open&&Ot(e);return{c(){(t=j("h4")).textContent="Remove Website",n=T(),(a=j("p")).textContent="Disconnect your Webflow project from your WordPress site.",s=T(),o=j("form"),u.$$.fragment.c(),i=T(),d&&d.c(),c=x(),a.className="description-subtitle",l=C(o,"submit",e.handleRemoveToken)},m(e,l){y(e,t,l),y(e,n,l),y(e,a,l),y(e,s,l),y(e,o,l),te(u,o,null),y(e,i,l),d&&d.m(e,l),y(e,c,l),r=!0},p(e,t){var n={};e.$removeTokenStore&&(n.value=t.$removeTokenStore.value),e.$removeTokenStore&&(n.disabled=t.$removeTokenStore.disabled),u.$set(n),t.$modalStore.open?d?(d.p(e,t),d.i(1)):((d=Ot(t)).c(),d.i(1),d.m(c.parentNode,c)):d&&(X(),B(()=>{d.d(1),d=null}),d.o(1),q())},i(e){r||(u.$$.fragment.i(e),d&&d.i(),r=!0)},o(e){u.$$.fragment.o(e),d&&d.o(),r=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(o)),u.$destroy(),e&&N(i),d&&d.d(e),e&&N(c),l()}}}function _t(e,t,n){let a,s;const o=oe({disabled:!1,value:"Reset"});r(e,o,e=>{n("$removeTokenStore",a=e)});const i=oe({open:!1});r(e,i,e=>{n("$modalStore",s=e)});const c=()=>new Promise(e=>{i.set({open:!0}),document.body.addEventListener("webflow-modal-remove-token",t=>{i.set({open:!1}),e(t.detail)},{once:!0})});return{removeTokenStore:o,modalStore:i,handleRemoveToken:async e=>{e.preventDefault(),await c()&&(o.set({disabled:!0,value:"Wait..."}),await he.removeToken(),o.set({disabled:!1,value:"Reset"}))},closeModal:e=>{e.preventDefault(),document.body.dispatchEvent(new CustomEvent("webflow-modal-remove-token",{detail:!1}))},acceptModal:e=>{e.preventDefault(),document.body.dispatchEvent(new CustomEvent("webflow-modal-remove-token",{detail:!0}))},$removeTokenStore:a,$modalStore:s}}class Yt extends se{constructor(e){super(),ae(this,e,_t,kt,c,[])}}function Rt(e){var t,n,a,s,o,i,c,r=new De({props:{value:e.$invalidateCacheStore.value,disabled:e.$invalidateCacheStore.disabled,variation:"black"}});return{c(){(t=j("h4")).textContent="Invalidate Cache",n=T(),(a=j("p")).textContent="Deletes your WordPress site's cache, which can be helpful with debugging.",s=T(),o=j("form"),r.$$.fragment.c(),a.className="description-subtitle",c=C(o,"submit",e.handleInvalidateCache)},m(e,c){y(e,t,c),y(e,n,c),y(e,a,c),y(e,s,c),y(e,o,c),te(r,o,null),i=!0},p(e,t){var n={};e.$invalidateCacheStore&&(n.value=t.$invalidateCacheStore.value),e.$invalidateCacheStore&&(n.disabled=t.$invalidateCacheStore.disabled),r.$set(n)},i(e){i||(r.$$.fragment.i(e),i=!0)},o(e){r.$$.fragment.o(e),i=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(o)),r.$destroy(),c()}}}function At(e,t,n){let a;const s=oe({disabled:!1,value:"Invalidate Cache"});r(e,s,e=>{n("$invalidateCacheStore",a=e)});return{invalidateCacheStore:s,handleInvalidateCache:async e=>{e.preventDefault(),s.set({disabled:!0,value:"Wait..."}),await he.invalidateCache(),s.set({disabled:!1,value:"Invalidate Cache"})},$invalidateCacheStore:a}}class Ut extends se{constructor(e){super(),ae(this,e,At,Rt,c,[])}}function Qt(e){var t,n,a,s,o,i,c,r=new De({props:{value:e.$preloadCacheStore.value,disabled:e.$preloadCacheStore.disabled,variation:"black"}});return{c(){(t=j("h4")).textContent="Preload static page cache",n=T(),(a=j("p")).textContent="Preload your static page cache to help pages load faster.",s=T(),o=j("form"),r.$$.fragment.c(),a.className="description-subtitle",c=C(o,"submit",e.handlePreloadCache)},m(e,c){y(e,t,c),y(e,n,c),y(e,a,c),y(e,s,c),y(e,o,c),te(r,o,null),i=!0},p(e,t){var n={};e.$preloadCacheStore&&(n.value=t.$preloadCacheStore.value),e.$preloadCacheStore&&(n.disabled=t.$preloadCacheStore.disabled),r.$set(n)},i(e){i||(r.$$.fragment.i(e),i=!0)},o(e){r.$$.fragment.o(e),i=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(o)),r.$destroy(),c()}}}function Wt(e,t,n){let a;const s=oe({disabled:!1,value:"Preload Cache"});r(e,s,e=>{n("$preloadCacheStore",a=e)});return{preloadCacheStore:s,handlePreloadCache:async e=>{e.preventDefault(),s.set({disabled:!0,value:"Wait..."}),await he.preloadCache(),s.set({disabled:!1,value:"Preload Cache"})},$preloadCacheStore:a}}class Pt extends se{constructor(e){super(),ae(this,e,Wt,Qt,c,[])}}function Ht(e,t,n){const a=Object.create(e);return a.option=t[n],a}function Jt(e){var t,n,a=e.option.name;return{c(){t=j("option"),n=h(a),t.__value=e.option.value,t.value=t.__value},m(e,a){y(e,t,a),v(t,n)},p(e,n){t.value=t.__value},d(e){e&&N(t)}}}function Gt(e){for(var t,n,a,s,i,c,r,l,u,d=e.options,M=[],L=0;L<d.length;L+=1)M[L]=Jt(Ht(e,d,L));var m=new De({props:{value:e.$localStore.value,disabled:e.$localStore.disabled,variation:"small"}});return{c(){(t=j("h4")).textContent="Cache Duration",n=T(),(a=j("p")).textContent="Define how long your site caches your Webflow pages. Cached pages load faster.",s=T(),i=j("form"),c=j("select");for(var o=0;o<M.length;o+=1)M[o].c();r=T(),m.$$.fragment.c(),a.className="description-subtitle",void 0===e.val&&J(()=>e.select_change_handler.call(c)),c.className="field-select svelte-t3nmi4",i.className="svelte-t3nmi4",u=[C(c,"change",e.select_change_handler),C(i,"submit",e.handleSubmit)]},m(o,u){y(o,t,u),y(o,n,u),y(o,a,u),y(o,s,u),y(o,i,u),v(i,c);for(var d=0;d<M.length;d+=1)M[d].m(c,null);z(c,e.val),v(i,r),te(m,i,null),l=!0},p(e,t){if(e.options){d=t.options;for(var n=0;n<d.length;n+=1){const a=Ht(t,d,n);M[n]?M[n].p(e,a):(M[n]=Jt(a),M[n].c(),M[n].m(c,null))}for(;n<M.length;n+=1)M[n].d(1);M.length=d.length}e.val&&z(c,t.val);var a={};e.$localStore&&(a.value=t.$localStore.value),e.$localStore&&(a.disabled=t.$localStore.disabled),m.$set(a)},i(e){l||(m.$$.fragment.i(e),l=!0)},o(e){m.$$.fragment.o(e),l=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(i)),w(M,e),m.$destroy(),o(u)}}}function Zt(e,t,n){let a,s;r(e,he,e=>{n("$store",a=e)});const o=oe({disabled:!1,value:"Save"});r(e,o,e=>{n("$localStore",s=e)});let i=a.cacheDuration;const c=[{value:"0",name:"As long as possible"},{value:"60",name:"1 minute"},{value:"300",name:"5 minutes"},{value:"900",name:"15 minutes"},{value:"3600",name:"1 hour"},{value:"86400",name:"1 day"}];return{localStore:o,val:i,options:c,handleSubmit:async e=>{e.preventDefault(),o.set({disabled:!0,value:"Wait..."}),await he.changeCache(i),o.set({disabled:!1,value:"Save"})},$localStore:s,select_change_handler:function(){i=E(this),n("val",i),n("options",c)}}}class Vt extends se{constructor(e){super(),ae(this,e,Zt,Gt,c,[])}}function Kt(t){var n,a,s,o,i,c,r,l,u=t.$store.site.name;return{c(){n=j("div"),a=j("a"),s=j("img"),i=T(),c=j("h3"),r=h(u),s.src=o=t.$store.site.previewUrl,s.alt="site preview",s.className="svelte-s2dgog",a.href=l=t.$store.site.dashboardUrl,a.target="_blank",a.className="svelte-s2dgog"},m(e,t){y(e,n,t),v(n,a),v(a,s),v(a,i),v(a,c),v(c,r)},p(e,t){e.$store&&o!==(o=t.$store.site.previewUrl)&&(s.src=o),e.$store&&u!==(u=t.$store.site.name)&&b(r,u),e.$store&&l!==(l=t.$store.site.dashboardUrl)&&(a.href=l)},i:e,o:e,d(e){e&&N(n)}}}function Ft(e,t,n){let a;return r(e,he,e=>{n("$store",a=e)}),{$store:a}}class Xt extends se{constructor(e){super(),ae(this,e,Ft,Kt,c,[])}}function qt(e){var t,n,a,s,o,i,c,r,l,u,d,M,L,m,$,f=new Vt({}),g=new Ut({}),p=new Pt({}),w=new Yt({}),h=new Xt({});return{c(){t=j("div"),(n=j("p")).innerHTML="These advanced settings control how your site loads your Webflow pages. <br>For the most part, you shouldn't need to mess with them.",a=T(),f.$$.fragment.c(),s=T(),o=j("hr"),i=T(),g.$$.fragment.c(),c=T(),r=j("hr"),l=T(),p.$$.fragment.c(),u=T(),d=j("hr"),M=T(),w.$$.fragment.c(),L=T(),m=j("div"),h.$$.fragment.c(),n.className="svelte-13sw1fy",o.className="svelte-13sw1fy",r.className="svelte-13sw1fy",d.className="svelte-13sw1fy",t.className="actions-container svelte-13sw1fy",m.className="site-container svelte-13sw1fy"},m(e,N){y(e,t,N),v(t,n),v(t,a),te(f,t,null),v(t,s),v(t,o),v(t,i),te(g,t,null),v(t,c),v(t,r),v(t,l),te(p,t,null),v(t,u),v(t,d),v(t,M),te(w,t,null),y(e,L,N),y(e,m,N),te(h,m,null),$=!0},i(e){$||(f.$$.fragment.i(e),g.$$.fragment.i(e),p.$$.fragment.i(e),w.$$.fragment.i(e),h.$$.fragment.i(e),$=!0)},o(e){f.$$.fragment.o(e),g.$$.fragment.o(e),p.$$.fragment.o(e),w.$$.fragment.o(e),h.$$.fragment.o(e),$=!1},d(e){e&&N(t),f.$destroy(),g.$destroy(),p.$destroy(),w.$destroy(),e&&(N(L),N(m)),h.$destroy()}}}function Bt(e){var t,n=new Xe({props:{$$slots:{default:[qt]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};e.$$scope&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}class en extends se{constructor(e){super(),ae(this,e,null,Bt,c,[])}}function tn(e){var t,n,a,s,o,i,c=e.$notifications.currentNotification.message;return{c(){t=j("div"),n=j("p"),a=h(c),n.className="svelte-19kmp7p",t.style.cssText=s="success"==e.$notifications.currentNotification.type?"background-color: #38D996":"background-color:  #FF6382",t.className="svelte-19kmp7p"},m(e,s){y(e,t,s),v(t,n),v(n,a),i=!0},p(e,n){i&&!e.$notifications||c===(c=n.$notifications.currentNotification.message)||b(a,c),i&&!e.$notifications||s===(s="success"==n.$notifications.currentNotification.type?"background-color: #38D996":"background-color:  #FF6382")||(t.style.cssText=s)},i(e){i||(J(()=>{o||(o=ee(t,It,{},!0)),o.run(1)}),i=!0)},o(e){o||(o=ee(t,It,{},!1)),o.run(0),i=!1},d(e){e&&(N(t),o&&o.end())}}}function nn(e){var t,n,a=e.$notifications.currentNotification&&tn(e);return{c(){a&&a.c(),t=x()},m(e,s){a&&a.m(e,s),y(e,t,s),n=!0},p(e,n){n.$notifications.currentNotification?a?(a.p(e,n),a.i(1)):((a=tn(n)).c(),a.i(1),a.m(t.parentNode,t)):a&&(X(),B(()=>{a.d(1),a=null}),a.o(1),q())},i(e){n||(a&&a.i(),n=!0)},o(e){a&&a.o(),n=!1},d(e){a&&a.d(e),e&&N(t)}}}function an(e,t,n){let a;return r(e,me,e=>{n("$notifications",a=e)}),{$notifications:a}}class sn extends se{constructor(e){super(),ae(this,e,an,nn,c,[])}}function on(t){var n;return{c(){(n=j("div")).innerHTML='<a href="https://university.webflow.com/" target="_blank" rel="nofollow" class="svelte-fqtlda">Need support?</a>',n.className="footer svelte-fqtlda"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}class cn extends se{constructor(e){super(),ae(this,e,null,on,c,[])}}function rn(e){var t,n,a,s,o,i=new Me({props:{path:"/login",component:Ae}}),c=new Me({props:{path:"/configuration",component:Et}}),r=new Me({props:{path:"/settings",component:en}}),l=new sn({}),u=new cn({});return{c(){i.$$.fragment.c(),t=T(),c.$$.fragment.c(),n=T(),r.$$.fragment.c(),a=T(),l.$$.fragment.c(),s=T(),u.$$.fragment.c()},m(e,d){te(i,e,d),y(e,t,d),te(c,e,d),y(e,n,d),te(r,e,d),y(e,a,d),te(l,e,d),y(e,s,d),te(u,e,d),o=!0},p(e,t){var n={};e.LoginPage&&(n.component=Ae),i.$set(n);var a={};e.ConfigurationPage&&(a.component=Et),c.$set(a);var s={};e.UtilsPage&&(s.component=en),r.$set(s)},i(e){o||(i.$$.fragment.i(e),c.$$.fragment.i(e),r.$$.fragment.i(e),l.$$.fragment.i(e),u.$$.fragment.i(e),o=!0)},o(e){i.$$.fragment.o(e),c.$$.fragment.o(e),r.$$.fragment.o(e),l.$$.fragment.o(e),u.$$.fragment.o(e),o=!1},d(e){i.$destroy(e),e&&N(t),c.$destroy(e),e&&N(n),r.$destroy(e),e&&N(a),l.$destroy(e),e&&N(s),u.$destroy(e)}}}const ln=window._wfAjaxData;new class extends se{constructor(e){super(),ae(this,e,null,rn,c,[])}}({target:document.getElementById("webflow-dashboard-root"),data:ln})}();
     1!function(){"use strict";function e(){}const t=e=>e;function n(e,t){for(const n in t)e[n]=t[n];return e}function a(e){return e()}function s(){return Object.create(null)}function o(e){e.forEach(a)}function i(e){return"function"==typeof e}function c(e,t){return e!=e?t==t:e!==t||e&&"object"==typeof e||"function"==typeof e}function r(e,t,n){const a=t.subscribe(n);e.$$.on_destroy.push(a.unsubscribe?()=>a.unsubscribe():a)}function l(e,t,n){if(e){const a=u(e,t,n);return e[0](a)}}function u(e,t,a){return e[1]?n({},n(t.$$scope.ctx,e[1](a?a(t):{}))):t.$$scope.ctx}function d(e,t,a,s){return e[1]?n({},n(t.$$scope.changed||{},e[1](s?s(a):{}))):t.$$scope.changed||{}}const M="undefined"!=typeof window;let L=M?()=>window.performance.now():()=>Date.now(),m=M?requestAnimationFrame:e;const $=new Set;let f,g=!1;function p(){$.forEach(e=>{e[0](L())||($.delete(e),e[1]())}),(g=$.size>0)&&m(p)}function v(e,t){e.appendChild(t)}function y(e,t,n){e.insertBefore(t,n||null)}function N(e){e.parentNode.removeChild(e)}function w(e,t){for(let n=0;n<e.length;n+=1)e[n]&&e[n].d(t)}function j(e){return document.createElement(e)}function h(e){return document.createTextNode(e)}function T(){return h(" ")}function x(){return h("")}function C(e,t,n,a){return e.addEventListener(t,n,a),()=>e.removeEventListener(t,n,a)}function S(e,t,n){null==n?e.removeAttribute(t):e.setAttribute(t,n)}function b(e,t){t=""+t,e.data!==t&&(e.data=t)}function D(e,t,n){e.style.setProperty(t,n)}function z(e,t){for(let n=0;n<e.options.length;n+=1){const a=e.options[n];if(a.__value===t)return void(a.selected=!0)}}function E(e){const t=e.querySelector(":checked")||e.options[0];return t&&t.__value}let I,O=0,k={};function _(e,t,n,a,s,o,i,c=0){const r=16.666/a;let l="{\n";for(let e=0;e<=1;e+=r){const a=t+(n-t)*o(e);l+=100*e+`%{${i(a,1-a)}}\n`}const u=l+`100% {${i(n,1-n)}}\n}`,d=`__svelte_${function(e){let t=5381,n=e.length;for(;n--;)t=(t<<5)-t^e.charCodeAt(n);return t>>>0}(u)}_${c}`;if(!k[d]){if(!f){const e=j("style");document.head.appendChild(e),f=e.sheet}k[d]=!0,f.insertRule(`@keyframes ${d} ${u}`,f.cssRules.length)}const M=e.style.animation||"";return e.style.animation=`${M?`${M}, `:""}${d} ${a}ms linear ${s}ms 1 both`,O+=1,d}function Y(e,t){e.style.animation=(e.style.animation||"").split(", ").filter(t?e=>e.indexOf(t)<0:e=>-1===e.indexOf("__svelte")).join(", "),t&&!--O&&m(()=>{if(O)return;let e=f.cssRules.length;for(;e--;)f.deleteRule(e);k={}})}function R(e){I=e}const A=[],U=Promise.resolve();let Q=!1;const W=[],P=[],H=[];function J(e){P.push(e)}function G(){const e=new Set;do{for(;A.length;){const e=A.shift();R(e),q(e.$$)}for(;W.length;)W.shift()();for(;P.length;){const t=P.pop();e.has(t)||(t(),e.add(t))}}while(A.length);for(;H.length;)H.pop()();Q=!1}function q(e){e.fragment&&(e.update(e.dirty),o(e.before_render),e.fragment.p(e.dirty,e.ctx),e.dirty=null,e.after_render.forEach(J))}let Z,V;function K(e,t,n){e.dispatchEvent(function(e,t){const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,!1,!1,t),n}(`${t?"intro":"outro"}${n}`))}function F(){V={remaining:0,callbacks:[]}}function X(){V.remaining||o(V.callbacks)}function B(e){V.callbacks.push(e)}function ee(n,a,s,i){let c=a(n,s),r=i?0:1,l=null,u=null,d=null;function M(){d&&Y(n,d)}function f(e,t){const n=e.b-r;return t*=Math.abs(n),{a:r,b:e.b,d:n,duration:t,start:e.start,end:e.start+t,group:e.group}}function v(a){const{delay:s=0,duration:i=300,easing:v=t,tick:y=e,css:N}=c,w={start:L()+s,b:a};a||(w.group=V,V.remaining+=1),l?u=w:(N&&(M(),d=_(n,r,a,i,s,v,N)),a&&y(0,1),l=f(w,i),J(()=>K(n,a,"start")),function(e){let t;g||(g=!0,m(p)),new Promise(n=>{$.add(t=[e,n])})}(e=>{if(u&&e>u.start&&(l=f(u,i),u=null,K(n,l.b,"start"),N&&(M(),d=_(n,r,l.b,l.duration,0,v,c.css))),l)if(e>=l.end)y(r=l.b,1-r),K(n,l.b,"end"),u||(l.b?M():--l.group.remaining||o(l.group.callbacks)),l=null;else if(e>=l.start){const t=e-l.start;r=l.a+l.d*v(t/l.duration),y(r,1-r)}return!(!l&&!u)}))}return{run(e){"function"==typeof c?(Z||(Z=Promise.resolve()).then(()=>{Z=null}),Z).then(()=>{c=c(),v(e)}):v(e)},end(){M(),l=u=null}}}function te(e,t,n){const{fragment:s,on_mount:c,on_destroy:r,after_render:l}=e.$$;s.m(t,n),J(()=>{const t=c.map(a).filter(i);r?r.push(...t):o(t),e.$$.on_mount=[]}),l.forEach(J)}function ne(e,t){e.$$.dirty||(A.push(e),Q||(Q=!0,U.then(G)),e.$$.dirty=s()),e.$$.dirty[t]=!0}function ae(t,n,a,i,c,r){const l=I;R(t);const u=n.props||{},d=t.$$={fragment:null,ctx:null,props:r,update:e,not_equal:c,bound:s(),on_mount:[],on_destroy:[],before_render:[],after_render:[],context:new Map(l?l.$$.context:[]),callbacks:s(),dirty:null};let M=!1;var L;d.ctx=a?a(t,u,(e,n)=>{d.ctx&&c(d.ctx[e],d.ctx[e]=n)&&(d.bound[e]&&d.bound[e](n),M&&ne(t,e))}):u,d.update(),M=!0,o(d.before_render),d.fragment=i(d.ctx),n.target&&(n.hydrate?d.fragment.l((L=n.target,Array.from(L.childNodes))):d.fragment.c(),n.intro&&t.$$.fragment.i&&t.$$.fragment.i(),te(t,n.target,n.anchor),G()),R(l)}class se{$destroy(){var t,n;n=!0,(t=this).$$&&(o(t.$$.on_destroy),t.$$.fragment.d(n),t.$$.on_destroy=t.$$.fragment=null,t.$$.ctx={}),this.$destroy=e}$on(e,t){const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const e=n.indexOf(t);-1!==e&&n.splice(e,1)}}$set(){}}function oe(t,n=e){let a;const s=[];function o(e){if(c(t,e)){if(t=e,!a)return;s.forEach(e=>e[1]()),s.forEach(e=>e[0](t))}}return{set:o,update:function(e){o(e(t))},subscribe:function(i,c=e){const r=[i,c];return s.push(r),1===s.length&&(a=n(o)||e),i(t),()=>{const e=s.indexOf(r);-1!==e&&s.splice(e,1),0===s.length&&a()}}}}function ie(t,n,a){const s=!Array.isArray(t),c=s?[t]:t,r=n.length<2;return{subscribe:oe(a,t=>{let a=!1;const l=[];let u=0,d=e;const M=()=>{if(u)return;d();const a=n(s?l[0]:l,t);r?t(a):d=i(a)?a:e},L=c.map((e,t)=>e.subscribe(e=>{l[t]=e,u&=~(1<<t),a&&M()},()=>{u|=1<<t}));return a=!0,M(),function(){o(L),d()}}).subscribe}}const ce=function(){const{subscribe:e,set:t}=oe({path:"/",params:{}});return{subscribe:e,goTo:(e,n={})=>t({path:e,params:n})}}(),re=e=>ie(ce,t=>t.path===e);function le(e){var t,n,a=e.component;if(a)var s=new a({});return{c(){s&&s.$$.fragment.c(),t=x()},m(e,a){s&&te(s,e,a),y(e,t,a),n=!0},p(e,n){if(a!==(a=n.component)){if(s){F();const e=s;B(()=>{e.$destroy()}),e.$$.fragment.o(1),X()}a?((s=new a({})).$$.fragment.c(),s.$$.fragment.i(1),te(s,t.parentNode,t)):s=null}},i(e){n||(s&&s.$$.fragment.i(e),n=!0)},o(e){s&&s.$$.fragment.o(e),n=!1},d(e){e&&N(t),s&&s.$destroy(e)}}}function ue(e){var t,n,a=e.$isActive&&le(e);return{c(){a&&a.c(),t=x()},m(e,s){a&&a.m(e,s),y(e,t,s),n=!0},p(e,n){n.$isActive?a?(a.p(e,n),a.i(1)):((a=le(n)).c(),a.i(1),a.m(t.parentNode,t)):a&&(F(),B(()=>{a.d(1),a=null}),a.o(1),X())},i(e){n||(a&&a.i(),n=!0)},o(e){a&&a.o(),n=!1},d(e){a&&a.d(e),e&&N(t)}}}function de(e,t,n){let a,{component:s,path:o}=t;const i=re(o);return r(e,i,e=>{n("$isActive",a=e)}),e.$set=(e=>{"component"in e&&n("component",s=e.component),"path"in e&&n("path",o=e.path)}),{component:s,path:o,isActive:i,$isActive:a}}class Me extends se{constructor(e){super(),ae(this,e,de,ue,c,["component","path"])}}function Le(e={}){const{action:t,nonce:n,nonceField:a,data:s,method:o,credentials:i,url:c}=e;if(!t)throw new TypeError("Cannot make ajax call without action");if(!n)throw new TypeError("Cannot make ajax call without nonce");if(s&&"object"!=typeof s)throw new TypeError("Data to send must be an object");if(!c&&!window.ajaxurl)throw new TypeError("Cannot make ajax call without url");let r=new FormData;if(r.append("action",t),r.append(a||"security",n),s)for(let e in s)r.append(e,s[e]);return fetch(c||window.ajaxurl,{method:o||"POST",body:r,credentials:i||"same-origin"})}const me=function(){const{subscribe:e,update:t}=oe({currentNotification:null});return{subscribe:e,addNotification:(e,n="success")=>{t(t=>(t.currentNotification={message:e,type:n},{...t})),setTimeout(()=>{t(e=>(e.currentNotification=null,{...e}))},5e3)}}}(),{hasToken:$e,nonce:fe,pages:ge,collections:pe,site:ve,staticRules:ye,dynamicRules:Ne,error:we,cacheDuration:je}=window._wfAjaxData;ve&&(ve.dashboardUrl=`https://webflow.com/dashboard/sites/${ve.shortName}/settings`),we?(ce.goTo("/login"),me.addNotification(we,"error")):"true"===$e?ce.goTo("/configuration"):ce.goTo("/login");const he=function(){const{subscribe:e,set:t,update:n}=oe({pages:ge||[],collections:pe||[],site:ve||void 0,staticRules:ye||[],dynamicRules:Ne||[],cacheDuration:je||0});return{subscribe:e,saveToken:async e=>{try{await Le({nonce:fe,data:{token:e},action:"save_wf_token"});const n=await Le({nonce:fe,action:"get_wf_site_data"});let a=await n.json();if(a.success)t({pages:a.data.pages||[],collections:a.data.collections||[],site:a.data.site,dynamicRules:[],staticRules:[]}),me.addNotification("Token Saved Successfully"),ce.goTo("/configuration");else{const e=a.data[0]||{code:"401",message:"Invalid Token"};me.addNotification(e.message,"error")}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save api token, please try again later"};me.addNotification(t.message,"error")}},removeToken:async()=>{try{await Le({nonce:fe,action:"remove_wf_token"}),me.addNotification("Token removed successfully"),window.location.reload()}catch(e){const t={code:e.code||"500",message:e.message||"Cannot remove token, please try again later"};me.addNotification(t.message,"error")}},addStaticRule:e=>{n(t=>(t.staticRules.push(e),{...t}))},removeStaticRule:e=>{n(t=>(t.staticRules.splice(e,1),{...t}))},addDynamicRule:e=>{n(t=>(t.dynamicRules.push(e),{...t}))},removeDynamicRule:e=>{n(t=>(t.dynamicRules.splice(e,1),{...t}))},saveStaticRules:async e=>{try{const t=await Le({action:"save_wf_static_rules",nonce:fe,data:{rules:JSON.stringify(e)}}),a=await t.json();if(a.success){const e=a.data;return n(t=>(t.staticRules=e,{...t})),me.addNotification("Rules saved successfully"),!0}{const e=a.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},saveDynamicRules:async e=>{try{const t=await Le({action:"save_wf_dynamic_rules",nonce:fe,data:{rules:JSON.stringify(e)}}),a=await t.json();if(a.success){const e=a.data;return n(t=>(t.dynamicRules=e,{...t})),me.addNotification("Rules saved successfully"),!0}{const e=a.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},invalidateCache:async()=>{try{const e=await Le({action:"invalidate_wf_cache",nonce:fe}),t=await e.json();if(t.success)return me.addNotification("Cache invalidated successfully"),!0;{const e=t.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},changeCache:async e=>{try{const t=await Le({action:"change_wf_cache_duration",nonce:fe,data:{duration:e}}),n=await t.json();if(n.success)return me.addNotification("Cache settings changed successfully"),!0;{const e=n.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}},preloadCache:async()=>{try{const e=await Le({action:"preload_wf_cache",nonce:fe}),t=await e.json();if(t.success){const e=t.data||0;return me.addNotification(`Preloaded ${e} ${1==e?"page":"pages"}!`),!0}{const e=t.data[0]||{code:"500",message:"Internal Server Error"};return me.addNotification(e.message,"error"),!1}}catch(e){const t={code:e.code||"500",message:e.message||"Cannot save data please, try again later"};return me.addNotification(t.message,"error"),!1}}}}();function Te(e){var t,n;const a=e.$$slots.default,s=l(a,e,null);return{c(){t=j("div"),s&&s.c(),t.className="svelte-1tca3kp"},l(e){s&&s.l(div_nodes)},m(e,a){y(e,t,a),s&&s.m(t,null),n=!0},p(e,t){s&&s.p&&e.$$scope&&s.p(d(a,t,e,null),u(a,t,null))},i(e){n||(s&&s.i&&s.i(e),n=!0)},o(e){s&&s.o&&s.o(e),n=!1},d(e){e&&N(t),s&&s.d(e)}}}function xe(e,t,n){let{$$slots:a={},$$scope:s}=t;return e.$set=(e=>{"$$scope"in e&&n("$$scope",s=e.$$scope)}),{$$slots:a,$$scope:s}}class Ce extends se{constructor(e){super(),ae(this,e,xe,Te,c,[])}}function Se(t){var n;return{c(){S(n=j("input"),"type","submit"),n.value=t.value,n.className="form_submit-button svelte-eb2c7g",S(n,"variation",t.variation),n.disabled=t.disabled},m(e,t){y(e,n,t)},p(e,t){e.value&&(n.value=t.value),e.variation&&S(n,"variation",t.variation),e.disabled&&(n.disabled=t.disabled)},i:e,o:e,d(e){e&&N(n)}}}function be(e,t,n){let{value:a="Submit",disabled:s=!1,variation:o=null}=t;return e.$set=(e=>{"value"in e&&n("value",a=e.value),"disabled"in e&&n("disabled",s=e.disabled),"variation"in e&&n("variation",o=e.variation)}),{value:a,disabled:s,variation:o}}class De extends se{constructor(e){super(),ae(this,e,be,Se,c,["value","disabled","variation"])}}function ze(e){var t,n;const a=e.$$slots.default,s=l(a,e,null);return{c(){t=j("label"),s&&s.c(),t.className="field_label svelte-mat9s6",t.htmlFor=e.forHtml},l(e){s&&s.l(label_nodes)},m(e,a){y(e,t,a),s&&s.m(t,null),n=!0},p(e,o){s&&s.p&&e.$$scope&&s.p(d(a,o,e,null),u(a,o,null)),n&&!e.forHtml||(t.htmlFor=o.forHtml)},i(e){n||(s&&s.i&&s.i(e),n=!0)},o(e){s&&s.o&&s.o(e),n=!1},d(e){e&&N(t),s&&s.d(e)}}}function Ee(e,t,n){let{forHtml:a=""}=t,{$$slots:s={},$$scope:o}=t;return e.$set=(e=>{"forHtml"in e&&n("forHtml",a=e.forHtml),"$$scope"in e&&n("$$scope",o=e.$$scope)}),{forHtml:a,$$slots:s,$$scope:o}}class Ie extends se{constructor(e){super(),ae(this,e,Ee,ze,c,["forHtml"])}}function Oe(t){var n;return{c(){(n=j("div")).innerHTML='<img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuNCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMzkzLjEgMjIxIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMzkzLjEgMjIxOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6IzQzNTNGRjt9Cgkuc3Qxe2ZpbGw6IzMzMzMzMzt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0yNzIsODguOWMwLTE0LjUtMTQuMS0yOS45LTM4LjUtMjkuOWMtMjcuNCwwLTU3LjUsMjAuMS02Mi4xLDYwLjJjLTQuNyw0MC41LDIwLjUsNTguNSw0NS45LDU4LjUKCXMzOC43LTkuOSw1Mi4zLTIzLjFjLTExLjctMTQuNy0yNi44LTcuOS0yOS43LTYuNGMtMy4yLDEuNi03LjMsMy44LTE1LjcsMy44Yy05LjgsMC0xOS44LTQuNC0xOS44LTIyLjcKCUMyNjcuMiwxMjMuMSwyNzIsMTAzLjQsMjcyLDg4Ljl6IE0yNDAuOSw5MS4zYy0wLjQsNC41LTIuMiwxMi4yLTM0LDE2LjVjNi43LTIzLjgsMTkuNS0yNS42LDI1LjQtMjUuNgoJQzIzNy44LDgyLjIsMjQxLjMsODYuNSwyNDAuOSw5MS4zeiBNMTM0LjUsOTUuMmMwLDAtMTMuNSw0Mi40LTE0LjYsNDUuOWMtMC40LTMuNi0xMC4zLTc5LjctMTAuMy03OS43Yy0yMywwLTM1LjMsMTYuNC00MS44LDMzLjcKCWMwLDAtMTYuNCw0Mi41LTE3LjgsNDYuMWMtMC4xLTMuMy0yLjUtNDUuNi0yLjUtNDUuNkM0Ni4xLDc0LjQsMjYuNyw2MS41LDExLDYxLjVsMTksMTE1LjNjMjQuMS0wLjEsMzcuMS0xNi40LDQzLjktMzMuNwoJYzAsMCwxNC41LTM3LjUsMTUuMS0zOS4yYzAuMSwxLjYsMTAuNCw3Mi45LDEwLjQsNzIuOWMyNC4yLDAsMzcuMi0xNS4zLDQ0LjItMzJsMzMuOS04My4zQzE1My42LDYxLjUsMTQxLDc3LjgsMTM0LjUsOTUuMnoKCSBNMzYwLjgsNTguOGMtMTQuOSwwLTI2LjMsOC4xLTM1LjksMjB2LTAuMWw4LjYtNjkuM2MtMTkuOCwwLTM1LjksMTcuMi0zOSw0Mi44bC0xNSwxMjMuN2MxMS40LDAsMjMuNS0zLjMsMzAtMTEuNwoJYzUuOCw3LjUsMTQuNSwxMy41LDI3LjQsMTMuNWMzMy40LDAsNTYuMy0zOC44LDU2LjMtNzUuMkMzOTMsNjkuMywzNzYuOSw1OC44LDM2MC44LDU4Ljh6IE0zNTcuNywxMTguMwoJYy0zLjUsMjAuMy0xNC44LDM0LjEtMjUuNywzNC4xYy0xMSwwLTE1LjctNC45LTE1LjctNC45YzIuMS0xNy44LDMuNC0yOC43LDcuNC0zOC4xUzMzNy4yLDg1LDM0Ny4xLDg1CglDMzU2LjgsODUsMzYxLjIsOTcuOSwzNTcuNywxMTguM3ogTTQ3Ni42LDYxLjVoLTIzLjNsMC4xLTEuMmMxLjYtMTUuMiw1LjItMjMuMiwxNy4xLTI0LjVjOC4xLTAuOCwxMS43LTUsMTIuNi05LjYKCWMwLjctMy42LDIuOS0xNi4xLDIuOS0xNi4xYy00Ni44LTAuMy02MS41LDE5LjktNjUuMyw1MC43bC0wLjEsMC43aC0wLjVjLTcuNiwwLTE2LDguNi0xNy40LDE5LjVsLTAuNSw0aDE1LjZsLTEzLjEsMTA4LjJsLTQsMTkuNAoJYzAuNSwwLDEuMSwwLjEsMS42LDAuMWMyMS45LTAuOCwzNS45LTE4LjEsMzktNDMuMkw0NTEuNSw4NWg3LjNjNy4yLDAsMTUuNi03LjIsMTcuMS0xOS4yTDQ3Ni42LDYxLjV6IE01OTcuOCw1OS41CgljLTI2LjksMC01Mi4zLDE5LjgtNjAuMSw1MC45czQsNjcuOSw0My42LDY3LjljMzkuNSwwLDYyLjMtMzguMyw2Mi4zLTcwLjJDNjQzLjYsNzYuNCw2MjIuMSw1OS41LDU5Ny44LDU5LjV6IE02MDguNywxMTcuMwoJYy0xLjQsMTQuMS03LjYsMzUuNS0yNC42LDM1LjVjLTE3LjEsMC0xNC43LTI1LTEzLTM2LjljMS44LTEyLjcsOC45LTMwLjgsMjQuMi0zMC44QzYwOSw4NS4xLDYxMC4zLDEwMS40LDYwOC43LDExNy4zeiBNNzc2LjUsOTUuMgoJYzAsMC0xMy41LDQyLjQtMTQuNiw0NS45Yy0wLjQtMy42LTEwLjMtNzkuNy0xMC4zLTc5LjdjLTIzLDAtMzUuMywxNi40LTQxLjgsMzMuN2MwLDAtMTYuNCw0Mi41LTE3LjgsNDYuMQoJYy0wLjEtMy4zLTIuNS00NS42LTIuNS00NS42Yy0xLjQtMjEuMi0yMC44LTM0LjEtMzYuNS0zNC4xbDE4LjksMTE1LjNjMjQuMS0wLjEsMzcuMS0xNi40LDQzLjktMzMuN2MwLDAsMTQuNS0zNy41LDE1LTM5LjIKCWMwLjEsMS42LDEwLjQsNzIuOSwxMC40LDcyLjljMjQuMiwwLDM3LjItMTUuMyw0NC4yLTMybDMzLjktODMuM0M3OTUuNSw2MS41LDc4Mi45LDc3LjgsNzc2LjUsOTUuMnogTTQ5OC42LDEwLjFMNDc5LDE2OC4ybDAsMAoJbC00LDE5LjVjMC41LDAsMS4xLDAuMSwxLjYsMC4xbDAsMGMyMS4xLTAuMywzNi4xLTE4LjgsMzguOS00Mi4xTDUyNi44LDU1QzUzMC4yLDI3LjMsNTEzLjcsMTAuMSw0OTguNiwxMC4xeiIvPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik05NTIuOCwxMDhjLTcuNyw2LjQtMTguNyw5LjYtMzMsOS42aC0yNy40VjE2NUg4NjVWMzMuM2g1Ni41YzEzLDAsMjMuNCwzLjQsMzEuMiwxMC4yCgkJYzcuOCw2LjgsMTEuNiwxNy4zLDExLjYsMzEuNUM5NjQuMyw5MC42LDk2MC41LDEwMS42LDk1Mi44LDEwOHogTTkzMS43LDYwLjZjLTMuNS0yLjktOC40LTQuNC0xNC42LTQuNGgtMjQuOFY5NWgyNC44CgkJYzYuMywwLDExLjItMS42LDE0LjYtNC43YzMuNS0zLjIsNS4yLTguMiw1LjItMTVDOTM3LDY4LjQsOTM1LjIsNjMuNSw5MzEuNyw2MC42eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTEwMjIuOSwxMDUuOGM0LjctMC42LDguMS0xLjMsMTAuMi0yLjJjMy43LTEuNSw1LjUtNCw1LjUtNy4yYzAtNC0xLjQtNi43LTQuMi04LjNjLTIuOC0xLjUtNi45LTIuMy0xMi40LTIuMwoJCWMtNi4xLDAtMTAuNCwxLjUtMTIuOSw0LjVjLTEuOCwyLjItMyw1LjItMy42LDguOWgtMjQuNmMwLjUtOC41LDIuOS0xNS41LDcuMi0yMWM2LjgtOC42LDE4LjQtMTIuOSwzNC44LTEyLjkKCQljMTAuNywwLDIwLjIsMi4xLDI4LjUsNi4zYzguMyw0LjIsMTIuNSwxMi4yLDEyLjUsMjMuOXY0NC43YzAsMy4xLDAuMSw2LjgsMC4yLDExLjNjMC4yLDMuMywwLjcsNS42LDEuNSw2LjgKCQljMC44LDEuMiwyLjEsMi4yLDMuOCwyLjl2My44aC0yNy43Yy0wLjgtMi0xLjMtMy44LTEuNi01LjVjLTAuMy0xLjctMC41LTMuNy0wLjctNS45Yy0zLjUsMy44LTcuNiw3LjEtMTIuMiw5LjcKCQljLTUuNSwzLjItMTEuNyw0LjctMTguNyw0LjdjLTguOSwwLTE2LjItMi41LTIyLTcuNWMtNS44LTUtOC43LTEyLjItOC43LTIxLjRjMC0xMiw0LjYtMjAuNiwxMy45LTI2YzUuMS0yLjksMTIuNi01LDIyLjUtNi4zCgkJTDEwMjIuOSwxMDUuOHogTTEwMzguNSwxMTcuN2MtMS42LDEtMy4zLDEuOC00LjksMi41Yy0xLjcsMC42LTMuOSwxLjItNi44LDEuN2wtNS44LDEuMWMtNS40LDEtOS4zLDIuMS0xMS43LDMuNQoJCWMtNCwyLjMtNiw1LjktNiwxMC44YzAsNC4zLDEuMiw3LjUsMy43LDkuNGMyLjQsMS45LDUuNCwyLjksOC45LDIuOWM1LjYsMCwxMC43LTEuNiwxNS40LTQuOHM3LjEtOS4xLDcuMy0xNy42VjExNy43eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTExMzQuMiw2Ny41YzYuMiwyLjYsMTEuMiw3LjMsMTUsMTQuMXYtMTRoMjQuOFYxNjBjMCwxMi42LTIuMSwyMi02LjMsMjguNGMtNy4zLDExLTIxLjIsMTYuNC00MS44LDE2LjQKCQljLTEyLjQsMC0yMi42LTIuNC0zMC41LTcuM2MtNy45LTQuOS0xMi4yLTEyLjItMTMtMjEuOWgyNy43YzAuNywzLDEuOSw1LjEsMy41LDYuNGMyLjcsMi4zLDcuNCwzLjUsMTMuOCwzLjUKCQljOS4yLDAsMTUuMy0zLjEsMTguNC05LjJjMi0zLjksMy0xMC41LDMtMTkuOHYtNi4zYy0yLjQsNC4yLTUuMSw3LjMtNy45LDkuNGMtNS4xLDMuOS0xMS42LDUuOC0xOS43LDUuOGMtMTIuNSwwLTIyLjUtNC40LTMwLTEzLjIKCQljLTcuNS04LjgtMTEuMi0yMC43LTExLjItMzUuN2MwLTE0LjUsMy42LTI2LjYsMTAuOC0zNi41YzcuMi05LjksMTcuNC0xNC44LDMwLjYtMTQuOEMxMTI2LjQsNjUuMywxMTMwLjYsNjYuMSwxMTM0LjIsNjcuNXoKCQkgTTExNDIuOSwxMzcuNGM0LjEtNC41LDYuMS0xMS43LDYuMS0yMS41YzAtOS4yLTEuOS0xNi4zLTUuOC0yMS4xYy0zLjktNC44LTkuMS03LjItMTUuNi03LjJjLTguOSwwLTE1LDQuMi0xOC40LDEyLjYKCQljLTEuOCw0LjUtMi43LDEwLTIuNywxNi41YzAsNS43LDAuOSwxMC43LDIuOCwxNS4xYzMuNCw4LjIsOS42LDEyLjMsMTguNSwxMi4zQzExMzMuOCwxNDQuMSwxMTM4LjgsMTQxLjksMTE0Mi45LDEzNy40eiIvPgoJPHBhdGggY2xhc3M9InN0MSIgZD0iTTEyNjEuMyw2OS42YzYuOCwzLDEyLjQsNy44LDE2LjgsMTQuNGM0LDUuOCw2LjYsMTIuNSw3LjgsMjAuMWMwLjcsNC41LDEsMTAuOSwwLjgsMTkuM2gtNzAuOQoJCWMwLjQsOS44LDMuOCwxNi42LDEwLjIsMjAuNWMzLjksMi40LDguNiwzLjcsMTQsMy43YzUuOCwwLDEwLjUtMS41LDE0LjEtNC41YzItMS42LDMuNy0zLjgsNS4yLTYuN2gyNmMtMC43LDUuOC0zLjgsMTEuNi05LjQsMTcuNgoJCWMtOC43LDkuNS0yMC45LDE0LjItMzYuNiwxNC4yYy0xMywwLTI0LjQtNC0zNC4zLTEyYy05LjktOC0xNC45LTIxLTE0LjktMzljMC0xNi45LDQuNS0yOS44LDEzLjQtMzguOHMyMC41LTEzLjUsMzQuOC0xMy41CgkJQzEyNDYuOSw2NSwxMjU0LjUsNjYuNiwxMjYxLjMsNjkuNnogTTEyMjMuMiw5MS42Yy0zLjYsMy43LTUuOSw4LjctNi44LDE1LjFoNDMuOWMtMC41LTYuOC0yLjctMTEuOS02LjgtMTUuNAoJCWMtNC4xLTMuNS05LjEtNS4yLTE1LjEtNS4yQzEyMzEuOSw4NiwxMjI2LjgsODcuOSwxMjIzLjIsOTEuNnoiLz4KCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xMzE5LjMsMTMzLjljMC41LDQuNSwxLjcsNy43LDMuNSw5LjZjMy4yLDMuNCw5LDUuMSwxNy42LDUuMWM1LDAsOS0wLjcsMTItMi4yYzMtMS41LDQuNC0zLjcsNC40LTYuNwoJCWMwLTIuOS0xLjItNS0zLjYtNi41Yy0yLjQtMS41LTExLjMtNC0yNi42LTcuN2MtMTEuMS0yLjctMTguOS02LjItMjMuNC0xMC4zYy00LjUtNC02LjgtOS45LTYuOC0xNy41YzAtOSwzLjUtMTYuNywxMC42LTIzLjIKCQljNy4xLTYuNSwxNy05LjcsMjkuOS05LjdjMTIuMiwwLDIyLjEsMi40LDI5LjgsNy4zYzcuNyw0LjksMTIuMSwxMy4yLDEzLjIsMjUuMWgtMjUuNWMtMC40LTMuMy0xLjMtNS45LTIuOC03LjgKCQljLTIuOC0zLjUtNy42LTUuMi0xNC4zLTUuMmMtNS42LDAtOS41LDAuOS0xMS45LDIuNmMtMi40LDEuNy0zLjUsMy44LTMuNSw2LjFjMCwyLjksMS4zLDUsMy44LDYuM2MyLjUsMS40LDExLjQsMy43LDI2LjYsNy4xCgkJYzEwLjEsMi40LDE3LjcsNiwyMi44LDEwLjhjNSw0LjksNy41LDExLDcuNSwxOC4zYzAsOS42LTMuNiwxNy41LTEwLjgsMjMuNmMtNy4yLDYuMS0xOC4zLDkuMi0zMy4zLDkuMmMtMTUuMywwLTI2LjctMy4yLTM0LTkuNwoJCWMtNy4zLTYuNS0xMS0xNC43LTExLTI0LjdIMTMxOS4zeiIvPgo8L2c+Cjwvc3ZnPgo=\n\t\t\t" alt="logo" class="svelte-66pno5">',n.className="svelte-66pno5"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}class ke extends se{constructor(e){super(),ae(this,e,null,Oe,c,[])}}function _e(e){var t,n,a,s,i,c,r,l,u,d,M,L,m,$=new ke({}),f=new De({props:{value:e.$loginStore.value,disabled:e.$loginStore.disabled}});return{c(){t=j("div"),$.$$.fragment.c(),n=T(),(a=j("b")).textContent="Congratulations on installing the Webflow Wordpress plugin!",s=T(),(i=j("p")).innerHTML='\n\t\t\t      You can find your site\'s API key by going to the <a href="https://webflow.com/dashboard?utm_source=wpplugin" target="_blank" rel="nofollow" class="svelte-1camdh2">Webflow Dashboard</a>, then your site\'s settings\n\t\t\t    ',c=T(),r=j("form"),l=j("input"),u=T(),f.$$.fragment.c(),d=T(),(M=j("div")).innerHTML='\n\t\t\t      This version of the plugin is not compatible with Webflow Ecommerce. Please contact <a href="https://university.webflow.com/contact" target="_blank" rel="nofollow" class="svelte-1camdh2">Webflow Support</a> for any help with the plugin.\n\t\t\t    ',i.className="svelte-1camdh2",l.className="field-input svelte-1camdh2",S(l,"type","password"),l.name="api_keys",l.autocomplete="off",l.placeholder="Your Api Key...",l.required=!0,r.className="svelte-1camdh2",M.className="warning-notice svelte-1camdh2",t.className="login-wrapper svelte-1camdh2",m=[C(l,"input",e.input_input_handler),C(r,"submit",e.handleSubmit)]},m(o,m){y(o,t,m),te($,t,null),v(t,n),v(t,a),v(t,s),v(t,i),v(t,c),v(t,r),v(r,l),l.value=e.token,v(r,u),te(f,r,null),v(t,d),v(t,M),L=!0},p(e,t){e.token&&(l.value=t.token);var n={};e.$loginStore&&(n.value=t.$loginStore.value),e.$loginStore&&(n.disabled=t.$loginStore.disabled),f.$set(n)},i(e){L||($.$$.fragment.i(e),f.$$.fragment.i(e),L=!0)},o(e){$.$$.fragment.o(e),f.$$.fragment.o(e),L=!1},d(e){e&&N(t),$.$destroy(),f.$destroy(),o(m)}}}function Ye(e){var t,n=new Ce({props:{$$slots:{default:[_e]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};(e.$$scope||e.$loginStore||e.token)&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}function Re(e,t,n){let a;const s=oe({disabled:!1,value:"Add Webflow API Key"});r(e,s,e=>{n("$loginStore",a=e)});let o="";return{loginStore:s,token:o,handleSubmit:async e=>{e.preventDefault(),s.set({disabled:!0,value:"Saving..."}),await he.saveToken(o),s.set({disabled:!1,value:"Add Webflow API Key"})},$loginStore:a,input_input_handler:function(){o=this.value,n("token",o)}}}class Ae extends se{constructor(e){super(),ae(this,e,Re,Ye,c,[])}}function Ue(e){var t,n;const a=e.$$slots.default,s=l(a,e,null);return{c(){t=j("div"),s&&s.c(),t.className="navbar-light svelte-1qxftnk"},l(e){s&&s.l(div_nodes)},m(e,a){y(e,t,a),s&&s.m(t,null),n=!0},p(e,t){s&&s.p&&e.$$scope&&s.p(d(a,t,e,null),u(a,t,null))},i(e){n||(s&&s.i&&s.i(e),n=!0)},o(e){s&&s.o&&s.o(e),n=!1},d(e){e&&N(t),s&&s.d(e)}}}function Qe(e,t,n){let{$$slots:a={},$$scope:s}=t;return e.$set=(e=>{"$$scope"in e&&n("$$scope",s=e.$$scope)}),{$$slots:a,$$scope:s}}class We extends se{constructor(e){super(),ae(this,e,Qe,Ue,c,[])}}function Pe(t){var n,a,s,o;return{c(){n=j("a"),a=h(t.text),n.href="/",n.className=s=(t.$isActive?"is-active":"")+" svelte-1dx6voi",o=C(n,"click",t.handleClick)},m(e,t){y(e,n,t),v(n,a)},p(e,t){e.text&&b(a,t.text),e.$isActive&&s!==(s=(t.$isActive?"is-active":"")+" svelte-1dx6voi")&&(n.className=s)},i:e,o:e,d(e){e&&N(n),o()}}}function He(e,t,n){let a,{path:s,params:o={},text:i=""}=t;const c=re(s);return r(e,c,e=>{n("$isActive",a=e)}),e.$set=(e=>{"path"in e&&n("path",s=e.path),"params"in e&&n("params",o=e.params),"text"in e&&n("text",i=e.text)}),{path:s,params:o,text:i,handleClick:e=>{e.preventDefault(),ce.goTo(s,o)},isActive:c,$isActive:a}}class Je extends se{constructor(e){super(),ae(this,e,He,Pe,c,["path","params","text"])}}function Ge(t){var n,a,s=new Je({props:{path:"/configuration",text:"Pages"}}),o=new Je({props:{path:"/settings",text:"Settings"}});return{c(){s.$$.fragment.c(),n=T(),o.$$.fragment.c()},m(e,t){te(s,e,t),y(e,n,t),te(o,e,t),a=!0},p:e,i(e){a||(s.$$.fragment.i(e),o.$$.fragment.i(e),a=!0)},o(e){s.$$.fragment.o(e),o.$$.fragment.o(e),a=!1},d(e){s.$destroy(e),e&&N(n),o.$destroy(e)}}}function qe(e){var t,n=new We({props:{$$slots:{default:[Ge]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};e.$$scope&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}class Ze extends se{constructor(e){super(),ae(this,e,null,qe,c,[])}}function Ve(e){var t,n,a,s,o,i,c=new ke({}),r=new Ze({});const M=e.$$slots.default,L=l(M,e,null);return{c(){t=j("div"),c.$$.fragment.c(),n=T(),a=j("div"),r.$$.fragment.c(),s=T(),o=j("div"),L&&L.c(),o.className="main-content svelte-9bdctk",a.className="wrapper svelte-9bdctk",t.className="configuration-container svelte-9bdctk"},l(e){L&&L.l(div0_nodes)},m(e,l){y(e,t,l),te(c,t,null),v(t,n),v(t,a),te(r,a,null),v(a,s),v(a,o),L&&L.m(o,null),i=!0},p(e,t){L&&L.p&&e.$$scope&&L.p(d(M,t,e,null),u(M,t,null))},i(e){i||(c.$$.fragment.i(e),r.$$.fragment.i(e),L&&L.i&&L.i(e),i=!0)},o(e){c.$$.fragment.o(e),r.$$.fragment.o(e),L&&L.o&&L.o(e),i=!1},d(e){e&&N(t),c.$destroy(),r.$destroy(),L&&L.d(e)}}}function Ke(e,t,n){let{$$slots:a={},$$scope:s}=t;return e.$set=(e=>{"$$scope"in e&&n("$$scope",s=e.$$scope)}),{$$slots:a,$$scope:s}}class Fe extends se{constructor(e){super(),ae(this,e,Ke,Ve,c,[])}}function Xe(e,t,n){const a=Object.create(e);return a.page=t[n],a}function Be(e,t,n){const a=Object.create(e);return a.staticRule=t[n],a.each_value=t,a.index=n,a}function et(e,t,n){const a=Object.create(e);return a.page=t[n],a}function tt(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function nt(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function at(e){var t,n,a=e.page.substr(1).replace("index.html","Home Page");return{c(){t=j("option"),n=h(a),t.__value=e.page,t.value=t.__value},m(e,a){y(e,t,a),v(t,n)},p(e,n){t.value=t.__value},d(e){e&&N(t)}}}function st(t){var n;return{c(){(n=j("div")).innerHTML='<p class="svelte-14gykfj">No rules added</p>',n.className="no-pages-added svelte-14gykfj"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}function ot(e){for(var t,n,a,s,o,i,c,r,l,u=new Ie({props:{$$slots:{default:[it]},$$scope:{ctx:e}}}),d=new Ie({props:{$$slots:{default:[ct]},$$scope:{ctx:e}}}),M=e.$store.staticRules,L=[],m=0;m<M.length;m+=1)L[m]=lt(Be(e,M,m));return{c(){t=j("div"),n=j("div"),u.$$.fragment.c(),a=T(),s=j("div"),d.$$.fragment.c(),o=T(),(i=j("div")).innerHTML='<button disabled class="button add">+</button>',c=T(),r=j("div");for(var e=0;e<L.length;e+=1)L[e].c();D(i,"visibility","hidden"),t.className="grid grid-with-actions fields-headers svelte-14gykfj",r.className="fields-wrapper svelte-14gykfj"},m(e,M){y(e,t,M),v(t,n),te(u,n,null),v(t,a),v(t,s),te(d,s,null),v(t,o),v(t,i),y(e,c,M),y(e,r,M);for(var m=0;m<L.length;m+=1)L[m].m(r,null);l=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),u.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),d.$set(a),e.$store||e.pages||e.handleInput){M=t.$store.staticRules;for(var s=0;s<M.length;s+=1){const n=Be(t,M,s);L[s]?L[s].p(e,n):(L[s]=lt(n),L[s].c(),L[s].m(r,null))}for(;s<L.length;s+=1)L[s].d(1);L.length=M.length}},i(e){l||(u.$$.fragment.i(e),d.$$.fragment.i(e),l=!0)},o(e){u.$$.fragment.o(e),d.$$.fragment.o(e),l=!1},d(e){e&&N(t),u.$destroy(),d.$destroy(),e&&(N(c),N(r)),w(L,e)}}}function it(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function ct(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function rt(e){var t,n,a=e.page.substr(1).replace("index.html","Home Page");return{c(){t=j("option"),n=h(a),t.__value=e.page,t.value=t.__value},m(e,a){y(e,t,a),v(t,n)},p(e,n){t.value=t.__value},d(e){e&&N(t)}}}function lt(e){var t,n,a,s,i,c,r,l,u,d,M;function L(){e.input_input_handler_1.call(s,e)}for(var m=e.pages,$=[],f=0;f<m.length;f+=1)$[f]=rt(Xe(e,m,f));function g(){e.select_change_handler_1.call(r,e)}function p(){return e.click_handler(e)}return{c(){t=j("div"),n=j("div"),a=j("div"),s=j("input"),i=T(),c=j("div"),r=j("select");for(var o=0;o<$.length;o+=1)$[o].c();l=T(),(u=j("a")).textContent="X",d=T(),s.className="field-input",S(s,"type","text"),s.readOnly=!0,s.disabled=!0,void 0===e.staticRule[1]&&J(g),r.className="field-select",r.disabled=!0,u.className="button remove",n.className="grid grid-with-actions",t.className="input-wrapper",M=[C(s,"input",L),C(s,"input",e.handleInput),C(r,"change",g),C(u,"click",p)]},m(o,M){y(o,t,M),v(t,n),v(n,a),v(a,s),s.value=e.staticRule[0],v(n,i),v(n,c),v(c,r);for(var L=0;L<$.length;L+=1)$[L].m(r,null);z(r,e.staticRule[1]),v(n,l),v(n,u),v(t,d)},p(t,n){if(e=n,t.$store&&s.value!==e.staticRule[0]&&(s.value=e.staticRule[0]),t.pages){m=e.pages;for(var a=0;a<m.length;a+=1){const n=Xe(e,m,a);$[a]?$[a].p(t,n):($[a]=rt(n),$[a].c(),$[a].m(r,null))}for(;a<$.length;a+=1)$[a].d(1);$.length=m.length}t.$store&&z(r,e.staticRule[1])},d(e){e&&N(t),w($,e),o(M)}}}function ut(e){for(var t,n,a,s,i,c,r,l,u,d,M,L,m,$,f,g,p,x,b,E,I,O,k,_,Y,R,A,U,Q,W,P,H,G,q,Z,V,K,ee,ne=new Ie({props:{$$slots:{default:[tt]},$$scope:{ctx:e}}}),ae=new Ie({props:{$$slots:{default:[nt]},$$scope:{ctx:e}}}),se=e.pages,oe=[],ie=0;ie<se.length;ie+=1)oe[ie]=at(et(e,se,ie));var ce=[ot,st],re=[];function le(e){return e.$store.staticRules.length?0:1}return Z=le(e),V=re[Z]=ce[Z](e),{c(){t=j("div"),n=j("div"),(a=j("div")).innerHTML='<h3 class="svelte-14gykfj">Static Pages</h3>',s=T(),i=j("div"),(c=j("p")).textContent="Create a new redirect",r=T(),(l=j("p")).textContent="Create redirects to serve a made-in-Webflow page in place of a WordPress Page",u=T(),d=j("div"),M=j("div"),ne.$$.fragment.c(),L=T(),m=j("div"),ae.$$.fragment.c(),$=T(),(f=j("div")).innerHTML='<button disabled class="button add">+</button>',g=T(),p=j("div"),x=j("form"),b=j("div"),E=j("input"),I=T(),(O=j("small")).textContent="Path must start with / and be valid URLs",k=T(),_=j("div"),Y=j("select");for(var o=0;o<oe.length;o+=1)oe[o].c();R=T(),A=j("button"),U=h("+"),W=T(),P=j("div"),(H=j("p")).textContent="Rules",G=T(),q=j("form"),V.c(),a.className="headers svelte-14gykfj",c.className="section-description svelte-14gykfj",l.className="description-subtitle",D(f,"visibility","hidden"),d.className="grid grid-with-actions ",E.dataset.add="true",E.className="field-input",S(E,"type","text"),E.required=!0,E.placeholder="/path",O.className="error-message",void 0===e.staticRule[1]&&J(()=>e.select_change_handler.call(Y)),Y.className="field-select",A.type="submit",A.disabled=Q=!e.canAdd,A.className="button add",x.className="grid grid-with-actions",p.className="input-wrapper",i.className="form-wrapper new-page svelte-14gykfj",D(n,"display","flex"),D(n,"flex-direction","column"),D(n,"justify-content","space-evenly"),H.className="section-description svelte-14gykfj",q.className="configuration-form svelte-14gykfj",P.className="added-pages svelte-14gykfj",t.className="wrapper",ee=[C(E,"input",e.input_input_handler),C(E,"input",e.handleInput),C(Y,"change",e.select_change_handler),C(A,"click",e.addStaticRule),C(x,"submit",e.addStaticRule),C(q,"submit",e.handleSubmit)]},m(o,N){y(o,t,N),v(t,n),v(n,a),v(n,s),v(n,i),v(i,c),v(i,r),v(i,l),v(i,u),v(i,d),v(d,M),te(ne,M,null),v(d,L),v(d,m),te(ae,m,null),v(d,$),v(d,f),v(i,g),v(i,p),v(p,x),v(x,b),v(b,E),E.value=e.staticRule[0],v(b,I),v(b,O),v(x,k),v(x,_),v(_,Y);for(var w=0;w<oe.length;w+=1)oe[w].m(Y,null);z(Y,e.staticRule[1]),v(x,R),v(x,A),v(A,U),v(t,W),v(t,P),v(P,H),v(P,G),v(P,q),re[Z].m(q,null),K=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),ne.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),ae.$set(a),e.staticRule&&E.value!==t.staticRule[0]&&(E.value=t.staticRule[0]),e.pages){se=t.pages;for(var s=0;s<se.length;s+=1){const n=et(t,se,s);oe[s]?oe[s].p(e,n):(oe[s]=at(n),oe[s].c(),oe[s].m(Y,null))}for(;s<oe.length;s+=1)oe[s].d(1);oe.length=se.length}e.staticRule&&z(Y,t.staticRule[1]),K&&!e.canAdd||Q===(Q=!t.canAdd)||(A.disabled=Q);var o=Z;(Z=le(t))===o?re[Z].p(e,t):(F(),B(()=>{re[o].d(1),re[o]=null}),V.o(1),X(),(V=re[Z])||(V=re[Z]=ce[Z](t)).c(),V.i(1),V.m(q,null))},i(e){K||(ne.$$.fragment.i(e),ae.$$.fragment.i(e),V&&V.i(),K=!0)},o(e){ne.$$.fragment.o(e),ae.$$.fragment.o(e),V&&V.o(),K=!1},d(e){e&&N(t),ne.$destroy(),ae.$destroy(),w(oe,e),re[Z].d(),o(ee)}}}function dt(e,t,n){let a;r(e,he,e=>{n("$store",a=e)});a.staticRules.length;let s=["",""],o=!1;const i=e=>{he.removeStaticRule(e),he.saveStaticRules(a.staticRules)},c=a.pages.filter(e=>"/404"!==e&&"/401"!==e);return{staticRule:s,canAdd:o,handleSubmit:async e=>{e.preventDefault(),await he.saveStaticRules(a.staticRules)},addStaticRule:e=>{e.preventDefault(),document.activeElement.blur(),he.addStaticRule(s),n("staticRule",s=["",""]),n("canAdd",o=!1),he.saveStaticRules(a.staticRules)},removeStaticRule:i,handleInput:({target:e})=>{let t=e.value,a=e.getAttribute("data-add");e.value=encodeURI(decodeURI(t));const s=(t=e.value).match(/^(\.?){2}(\/[a-zA-Z0-9_\-]+)+\/?$/g);s&&s[0]===t||"/"===t?(e.setCustomValidity(""),a&&n("canAdd",o=!0)):(e.setCustomValidity("Invalid field."),a&&n("canAdd",o=!1))},pages:c,$store:a,input_input_handler:function(){s[0]=this.value,n("staticRule",s),n("pages",c)},select_change_handler:function(){s[1]=E(this),n("staticRule",s),n("pages",c)},input_input_handler_1:function({staticRule:e,each_value:t,index:a}){t[a][0]=this.value,n("pages",c)},select_change_handler_1:function({staticRule:e,each_value:t,index:a}){t[a][1]=E(this),n("pages",c)},click_handler:function({index:e}){return i(e)}}}class Mt extends se{constructor(e){super(),ae(this,e,dt,ut,c,[])}}function Lt(e,t,n){const a=Object.create(e);return a.collection=t[n],a}function mt(e,t,n){const a=Object.create(e);return a.dynamicRule=t[n],a.each_value=t,a.index=n,a}function $t(e,t,n){const a=Object.create(e);return a.collection=t[n],a}function ft(t){var n;return{c(){(n=j("div")).innerHTML='<p class="svelte-18fwrq">No collections</p>',n.className="no-collections svelte-18fwrq"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}function gt(e){for(var t,n,a,s,i,c,r,l,u,d,M,L,m,$,f,g,p,x,b,E,I,O,k=new Ie({props:{$$slots:{default:[pt]},$$scope:{ctx:e}}}),_=new Ie({props:{$$slots:{default:[vt]},$$scope:{ctx:e}}}),Y=e.$store.collections,R=[],A=0;A<Y.length;A+=1)R[A]=yt($t(e,Y,A));return{c(){t=j("div"),n=j("div"),k.$$.fragment.c(),a=T(),s=j("div"),_.$$.fragment.c(),i=T(),(c=j("div")).innerHTML='<button disabled class="button add">+</button>',r=T(),l=j("div"),u=j("form"),d=j("div"),M=j("input"),L=T(),(m=j("small")).textContent="Path must start with / and be valid URLs and end with /*",$=T(),f=j("div"),g=j("select");for(var o=0;o<R.length;o+=1)R[o].c();p=T(),x=j("button"),b=h("+"),D(c,"visibility","hidden"),t.className="grid grid-with-actions",M.dataset.add="true",M.className="field-input",S(M,"type","text"),M.required=!0,M.placeholder="/path/*",m.className="error-message",void 0===e.dynamicRule[1]&&J(()=>e.select_change_handler.call(g)),g.className="field-select",x.type="submit",x.disabled=E=!e.canAdd,x.className="button add",u.className="grid grid-with-actions",l.className="input-wrapper",O=[C(M,"input",e.input_input_handler),C(M,"input",e.handleInput),C(g,"change",e.select_change_handler),C(x,"click",e.addDynamicRule),C(u,"submit",e.addDynamicRule)]},m(o,N){y(o,t,N),v(t,n),te(k,n,null),v(t,a),v(t,s),te(_,s,null),v(t,i),v(t,c),y(o,r,N),y(o,l,N),v(l,u),v(u,d),v(d,M),M.value=e.dynamicRule[0],v(d,L),v(d,m),v(u,$),v(u,f),v(f,g);for(var w=0;w<R.length;w+=1)R[w].m(g,null);z(g,e.dynamicRule[1]),v(u,p),v(u,x),v(x,b),I=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),k.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),_.$set(a),e.dynamicRule&&M.value!==t.dynamicRule[0]&&(M.value=t.dynamicRule[0]),e.$store){Y=t.$store.collections;for(var s=0;s<Y.length;s+=1){const n=$t(t,Y,s);R[s]?R[s].p(e,n):(R[s]=yt(n),R[s].c(),R[s].m(g,null))}for(;s<R.length;s+=1)R[s].d(1);R.length=Y.length}e.dynamicRule&&z(g,t.dynamicRule[1]),I&&!e.canAdd||E===(E=!t.canAdd)||(x.disabled=E)},i(e){I||(k.$$.fragment.i(e),_.$$.fragment.i(e),I=!0)},o(e){k.$$.fragment.o(e),_.$$.fragment.o(e),I=!1},d(e){e&&N(t),k.$destroy(),_.$destroy(),e&&(N(r),N(l)),w(R,e),o(O)}}}function pt(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function vt(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function yt(e){var t,n,a,s,o,i=e.collection.slug;return{c(){t=j("option"),n=h("/"),a=h(i),s=h("/*"),t.__value=o="/"+e.collection.slug+"/",t.value=t.__value},m(e,o){y(e,t,o),v(t,n),v(t,a),v(t,s)},p(e,n){e.$store&&i!==(i=n.collection.slug)&&b(a,i),e.$store&&o!==(o="/"+n.collection.slug+"/")&&(t.__value=o),t.value=t.__value},d(e){e&&N(t)}}}function Nt(t){var n;return{c(){(n=j("div")).innerHTML='<p class="svelte-18fwrq">No rules added</p>',n.className="no-collections svelte-18fwrq"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}function wt(e){for(var t,n,a,s,o,i,c,r,l,u=new Ie({props:{$$slots:{default:[jt]},$$scope:{ctx:e}}}),d=new Ie({props:{$$slots:{default:[ht]},$$scope:{ctx:e}}}),M=e.$store.dynamicRules,L=[],m=0;m<M.length;m+=1)L[m]=xt(mt(e,M,m));return{c(){t=j("div"),n=j("div"),u.$$.fragment.c(),a=T(),s=j("div"),d.$$.fragment.c(),o=T(),(i=j("div")).innerHTML='<button disabled class="button add">+</button>',c=T(),r=j("div");for(var e=0;e<L.length;e+=1)L[e].c();D(i,"visibility","hidden"),t.className="grid grid-with-actions fields-headers svelte-18fwrq",r.className="fields-wrapper svelte-18fwrq"},m(e,M){y(e,t,M),v(t,n),te(u,n,null),v(t,a),v(t,s),te(d,s,null),v(t,o),v(t,i),y(e,c,M),y(e,r,M);for(var m=0;m<L.length;m+=1)L[m].m(r,null);l=!0},p(e,t){var n={};e.$$scope&&(n.$$scope={changed:e,ctx:t}),u.$set(n);var a={};if(e.$$scope&&(a.$$scope={changed:e,ctx:t}),d.$set(a),e.$store||e.handleInput){M=t.$store.dynamicRules;for(var s=0;s<M.length;s+=1){const n=mt(t,M,s);L[s]?L[s].p(e,n):(L[s]=xt(n),L[s].c(),L[s].m(r,null))}for(;s<L.length;s+=1)L[s].d(1);L.length=M.length}},i(e){l||(u.$$.fragment.i(e),d.$$.fragment.i(e),l=!0)},o(e){u.$$.fragment.o(e),d.$$.fragment.o(e),l=!1},d(e){e&&N(t),u.$destroy(),d.$destroy(),e&&(N(c),N(r)),w(L,e)}}}function jt(e){var t;return{c(){t=h("WordPress Path")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function ht(e){var t;return{c(){t=h("Webflow Page")},m(e,n){y(e,t,n)},d(e){e&&N(t)}}}function Tt(e){var t,n,a,s,o,i=e.collection.slug;return{c(){t=j("option"),n=h("/"),a=h(i),s=h("/*"),t.__value=o="/"+e.collection.slug+"/",t.value=t.__value},m(e,o){y(e,t,o),v(t,n),v(t,a),v(t,s)},p(e,n){e.$store&&i!==(i=n.collection.slug)&&b(a,i),e.$store&&o!==(o="/"+n.collection.slug+"/")&&(t.__value=o),t.value=t.__value},d(e){e&&N(t)}}}function xt(e){var t,n,a,s,i,c,r,l,u,d,M;function L(){e.input_input_handler_1.call(s,e)}for(var m=e.$store.collections,$=[],f=0;f<m.length;f+=1)$[f]=Tt(Lt(e,m,f));function g(){e.select_change_handler_1.call(r,e)}function p(){return e.click_handler(e)}return{c(){t=j("div"),n=j("div"),a=j("div"),s=j("input"),i=T(),c=j("div"),r=j("select");for(var o=0;o<$.length;o+=1)$[o].c();l=T(),(u=j("a")).textContent="X",d=T(),s.className="field-input",S(s,"type","text"),s.required=!0,s.disabled=!0,s.readOnly=!0,void 0===e.dynamicRule[1]&&J(g),r.className="field-select",r.disabled=!0,u.className="button remove",n.className="grid grid-with-actions",t.className="input-wrapper",M=[C(s,"input",L),C(s,"input",e.handleInput),C(r,"change",g),C(u,"click",p)]},m(o,M){y(o,t,M),v(t,n),v(n,a),v(a,s),s.value=e.dynamicRule[0],v(n,i),v(n,c),v(c,r);for(var L=0;L<$.length;L+=1)$[L].m(r,null);z(r,e.dynamicRule[1]),v(n,l),v(n,u),v(t,d)},p(t,n){if(e=n,t.$store&&s.value!==e.dynamicRule[0]&&(s.value=e.dynamicRule[0]),t.$store){m=e.$store.collections;for(var a=0;a<m.length;a+=1){const n=Lt(e,m,a);$[a]?$[a].p(t,n):($[a]=Tt(n),$[a].c(),$[a].m(r,null))}for(;a<$.length;a+=1)$[a].d(1);$.length=m.length}t.$store&&z(r,e.dynamicRule[1])},d(e){e&&N(t),w($,e),o(M)}}}function Ct(e){var t,n,a,s,o,i,c,r,l,u,d,M,L,m,$,f,g,p,w=[gt,ft],h=[];function x(e){return e.$store.collections.length>0?0:1}r=x(e),l=h[r]=w[r](e);var S=[wt,Nt],b=[];function z(e){return e.$store.dynamicRules.length?0:1}return $=z(e),f=b[$]=S[$](e),{c(){t=j("div"),n=j("div"),(a=j("div")).innerHTML='<h3 class="svelte-18fwrq">Collection Pages</h3>',s=T(),o=j("div"),(i=j("p")).textContent="Create a new Rule",c=T(),l.c(),u=T(),d=j("div"),(M=j("p")).textContent="Rules",L=T(),m=j("form"),f.c(),a.className="headers svelte-18fwrq",i.className="section-description svelte-18fwrq",o.className="form-wrapper new-page svelte-18fwrq",D(n,"display","flex"),D(n,"flex-direction","column"),D(n,"justify-content","space-evenly"),M.className="section-description svelte-18fwrq",m.className="configuration-form svelte-18fwrq",d.className="added-pages svelte-18fwrq",t.className="wrapper",p=C(m,"submit",e.handleSubmit)},m(e,l){y(e,t,l),v(t,n),v(n,a),v(n,s),v(n,o),v(o,i),v(o,c),h[r].m(o,null),v(t,u),v(t,d),v(d,M),v(d,L),v(d,m),b[$].m(m,null),g=!0},p(e,t){var n=r;(r=x(t))===n?h[r].p(e,t):(F(),B(()=>{h[n].d(1),h[n]=null}),l.o(1),X(),(l=h[r])||(l=h[r]=w[r](t)).c(),l.i(1),l.m(o,null));var a=$;($=z(t))===a?b[$].p(e,t):(F(),B(()=>{b[a].d(1),b[a]=null}),f.o(1),X(),(f=b[$])||(f=b[$]=S[$](t)).c(),f.i(1),f.m(m,null))},i(e){g||(l&&l.i(),f&&f.i(),g=!0)},o(e){l&&l.o(),f&&f.o(),g=!1},d(e){e&&N(t),h[r].d(),b[$].d(),p()}}}function St(e,t,n){let a;r(e,he,e=>{n("$store",a=e)});a.dynamicRules.length,a.collections[0];let s=["",""];a.collections.length&&n("dynamicRule",s=["",`/${a.collections[0].slug}/`]);let o=!1;const i=e=>{he.removeDynamicRule(e),he.saveDynamicRules(a.dynamicRules)};return{dynamicRule:s,canAdd:o,handleSubmit:async e=>{e.preventDefault(),await he.saveDynamicRules(a.dynamicRules)},addDynamicRule:e=>{n("canAdd",o=!1),e.preventDefault(),document.activeElement.blur(),s&&s[0]?(he.addDynamicRule(s),n("dynamicRule",s=["",""]),he.saveDynamicRules(a.dynamicRules)):n("canAdd",o=!1)},removeDynamicRule:i,handleInput:e=>{let t=e.target.value;e.target.value=encodeURI(decodeURI(t));let a=e.target.getAttribute("data-add");const s=(t=e.target.value).match(/\/.*?\/\*/g);s&&s[0]===t?(e.target.setCustomValidity(""),a&&n("canAdd",o=!0)):(e.target.setCustomValidity("Invalid field."),a&&n("canAdd",o=!1))},$store:a,input_input_handler:function(){s[0]=this.value,n("dynamicRule",s)},select_change_handler:function(){s[1]=E(this),n("dynamicRule",s)},input_input_handler_1:function({dynamicRule:e,each_value:t,index:n}){t[n][0]=this.value},select_change_handler_1:function({dynamicRule:e,each_value:t,index:n}){t[n][1]=E(this)},click_handler:function({index:e}){return i(e)}}}class bt extends se{constructor(e){super(),ae(this,e,St,Ct,c,[])}}function Dt(e){var t,n,a=new Mt({}),s=new bt({});return{c(){a.$$.fragment.c(),t=T(),s.$$.fragment.c()},m(e,o){te(a,e,o),y(e,t,o),te(s,e,o),n=!0},i(e){n||(a.$$.fragment.i(e),s.$$.fragment.i(e),n=!0)},o(e){a.$$.fragment.o(e),s.$$.fragment.o(e),n=!1},d(e){a.$destroy(e),e&&N(t),s.$destroy(e)}}}function zt(e){var t,n=new Fe({props:{$$slots:{default:[Dt]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};e.$$scope&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}class Et extends se{constructor(e){super(),ae(this,e,null,zt,c,[])}}function It(e,{delay:t=0,duration:n=400}){const a=+getComputedStyle(e).opacity;return{delay:t,duration:n,css:e=>`opacity: ${e*a}`}}function Ot(t){var n,a,s,i,c,r,l,u,d,M,L,m,$,f,g,p,w;return{c(){n=j("div"),a=j("div"),s=j("div"),(i=j("div")).textContent="Do you want to remove all the Webflow Pages?",c=T(),(r=j("a")).textContent="X",l=T(),u=j("div"),(d=j("p")).textContent="Are you sure you want to remove all your Webflow Settings?",M=T(),L=j("div"),(m=j("button")).textContent="Cancel",$=T(),(f=j("button")).textContent="Confirm",r.className="svelte-qi2scw",s.className="modal-header svelte-qi2scw",m.className="modal-button grey svelte-qi2scw",f.className="modal-button red svelte-qi2scw",L.className="modal-actions svelte-qi2scw",u.className="modal-content svelte-qi2scw",a.className="modal svelte-qi2scw",n.className="modal-wrapper svelte-qi2scw",w=[C(r,"click",t.closeModal),C(m,"click",t.closeModal),C(f,"click",t.acceptModal)]},m(e,t){y(e,n,t),v(n,a),v(a,s),v(s,i),v(s,c),v(s,r),v(a,l),v(a,u),v(u,d),v(u,M),v(u,L),v(L,m),v(L,$),v(L,f),p=!0},p:e,i(e){p||(J(()=>{g||(g=ee(a,It,{},!0)),g.run(1)}),p=!0)},o(e){g||(g=ee(a,It,{},!1)),g.run(0),p=!1},d(e){e&&(N(n),g&&g.end()),o(w)}}}function kt(e){var t,n,a,s,o,i,c,r,l,u=new De({props:{value:e.$removeTokenStore.value,disabled:e.$removeTokenStore.disabled,variation:"red"}}),d=e.$modalStore.open&&Ot(e);return{c(){(t=j("h4")).textContent="Remove Website",n=T(),(a=j("p")).textContent="Disconnect your Webflow project from your WordPress site.",s=T(),o=j("form"),u.$$.fragment.c(),i=T(),d&&d.c(),c=x(),a.className="description-subtitle",l=C(o,"submit",e.handleRemoveToken)},m(e,l){y(e,t,l),y(e,n,l),y(e,a,l),y(e,s,l),y(e,o,l),te(u,o,null),y(e,i,l),d&&d.m(e,l),y(e,c,l),r=!0},p(e,t){var n={};e.$removeTokenStore&&(n.value=t.$removeTokenStore.value),e.$removeTokenStore&&(n.disabled=t.$removeTokenStore.disabled),u.$set(n),t.$modalStore.open?d?(d.p(e,t),d.i(1)):((d=Ot(t)).c(),d.i(1),d.m(c.parentNode,c)):d&&(F(),B(()=>{d.d(1),d=null}),d.o(1),X())},i(e){r||(u.$$.fragment.i(e),d&&d.i(),r=!0)},o(e){u.$$.fragment.o(e),d&&d.o(),r=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(o)),u.$destroy(),e&&N(i),d&&d.d(e),e&&N(c),l()}}}function _t(e,t,n){let a,s;const o=oe({disabled:!1,value:"Reset"});r(e,o,e=>{n("$removeTokenStore",a=e)});const i=oe({open:!1});r(e,i,e=>{n("$modalStore",s=e)});const c=()=>new Promise(e=>{i.set({open:!0}),document.body.addEventListener("webflow-modal-remove-token",t=>{i.set({open:!1}),e(t.detail)},{once:!0})});return{removeTokenStore:o,modalStore:i,handleRemoveToken:async e=>{e.preventDefault(),await c()&&(o.set({disabled:!0,value:"Wait..."}),await he.removeToken(),o.set({disabled:!1,value:"Reset"}))},closeModal:e=>{e.preventDefault(),document.body.dispatchEvent(new CustomEvent("webflow-modal-remove-token",{detail:!1}))},acceptModal:e=>{e.preventDefault(),document.body.dispatchEvent(new CustomEvent("webflow-modal-remove-token",{detail:!0}))},$removeTokenStore:a,$modalStore:s}}class Yt extends se{constructor(e){super(),ae(this,e,_t,kt,c,[])}}function Rt(e){var t,n,a,s,o,i,c,r=new De({props:{value:e.$invalidateCacheStore.value,disabled:e.$invalidateCacheStore.disabled,variation:"black"}});return{c(){(t=j("h4")).textContent="Invalidate Cache",n=T(),(a=j("p")).textContent="Deletes your WordPress site's cache, which can be helpful with debugging.",s=T(),o=j("form"),r.$$.fragment.c(),a.className="description-subtitle",c=C(o,"submit",e.handleInvalidateCache)},m(e,c){y(e,t,c),y(e,n,c),y(e,a,c),y(e,s,c),y(e,o,c),te(r,o,null),i=!0},p(e,t){var n={};e.$invalidateCacheStore&&(n.value=t.$invalidateCacheStore.value),e.$invalidateCacheStore&&(n.disabled=t.$invalidateCacheStore.disabled),r.$set(n)},i(e){i||(r.$$.fragment.i(e),i=!0)},o(e){r.$$.fragment.o(e),i=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(o)),r.$destroy(),c()}}}function At(e,t,n){let a;const s=oe({disabled:!1,value:"Invalidate Cache"});r(e,s,e=>{n("$invalidateCacheStore",a=e)});return{invalidateCacheStore:s,handleInvalidateCache:async e=>{e.preventDefault(),s.set({disabled:!0,value:"Wait..."}),await he.invalidateCache(),s.set({disabled:!1,value:"Invalidate Cache"})},$invalidateCacheStore:a}}class Ut extends se{constructor(e){super(),ae(this,e,At,Rt,c,[])}}function Qt(e){var t,n,a,s,o,i,c,r=new De({props:{value:e.$preloadCacheStore.value,disabled:e.$preloadCacheStore.disabled,variation:"black"}});return{c(){(t=j("h4")).textContent="Preload static page cache",n=T(),(a=j("p")).textContent="Preload your static page cache to help pages load faster.",s=T(),o=j("form"),r.$$.fragment.c(),a.className="description-subtitle",c=C(o,"submit",e.handlePreloadCache)},m(e,c){y(e,t,c),y(e,n,c),y(e,a,c),y(e,s,c),y(e,o,c),te(r,o,null),i=!0},p(e,t){var n={};e.$preloadCacheStore&&(n.value=t.$preloadCacheStore.value),e.$preloadCacheStore&&(n.disabled=t.$preloadCacheStore.disabled),r.$set(n)},i(e){i||(r.$$.fragment.i(e),i=!0)},o(e){r.$$.fragment.o(e),i=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(o)),r.$destroy(),c()}}}function Wt(e,t,n){let a;const s=oe({disabled:!1,value:"Preload Cache"});r(e,s,e=>{n("$preloadCacheStore",a=e)});return{preloadCacheStore:s,handlePreloadCache:async e=>{e.preventDefault(),s.set({disabled:!0,value:"Wait..."}),await he.preloadCache(),s.set({disabled:!1,value:"Preload Cache"})},$preloadCacheStore:a}}class Pt extends se{constructor(e){super(),ae(this,e,Wt,Qt,c,[])}}function Ht(e,t,n){const a=Object.create(e);return a.option=t[n],a}function Jt(e){var t,n,a=e.option.name;return{c(){t=j("option"),n=h(a),t.__value=e.option.value,t.value=t.__value},m(e,a){y(e,t,a),v(t,n)},p(e,n){t.value=t.__value},d(e){e&&N(t)}}}function Gt(e){for(var t,n,a,s,i,c,r,l,u,d=e.options,M=[],L=0;L<d.length;L+=1)M[L]=Jt(Ht(e,d,L));var m=new De({props:{value:e.$localStore.value,disabled:e.$localStore.disabled,variation:"small"}});return{c(){(t=j("h4")).textContent="Cache Duration",n=T(),(a=j("p")).textContent="Define how long your site caches your Webflow pages. Cached pages load faster.",s=T(),i=j("form"),c=j("select");for(var o=0;o<M.length;o+=1)M[o].c();r=T(),m.$$.fragment.c(),a.className="description-subtitle",void 0===e.val&&J(()=>e.select_change_handler.call(c)),c.className="field-select svelte-t3nmi4",i.className="svelte-t3nmi4",u=[C(c,"change",e.select_change_handler),C(i,"submit",e.handleSubmit)]},m(o,u){y(o,t,u),y(o,n,u),y(o,a,u),y(o,s,u),y(o,i,u),v(i,c);for(var d=0;d<M.length;d+=1)M[d].m(c,null);z(c,e.val),v(i,r),te(m,i,null),l=!0},p(e,t){if(e.options){d=t.options;for(var n=0;n<d.length;n+=1){const a=Ht(t,d,n);M[n]?M[n].p(e,a):(M[n]=Jt(a),M[n].c(),M[n].m(c,null))}for(;n<M.length;n+=1)M[n].d(1);M.length=d.length}e.val&&z(c,t.val);var a={};e.$localStore&&(a.value=t.$localStore.value),e.$localStore&&(a.disabled=t.$localStore.disabled),m.$set(a)},i(e){l||(m.$$.fragment.i(e),l=!0)},o(e){m.$$.fragment.o(e),l=!1},d(e){e&&(N(t),N(n),N(a),N(s),N(i)),w(M,e),m.$destroy(),o(u)}}}function qt(e,t,n){let a,s;r(e,he,e=>{n("$store",a=e)});const o=oe({disabled:!1,value:"Save"});r(e,o,e=>{n("$localStore",s=e)});let i=a.cacheDuration;const c=[{value:"0",name:"As long as possible"},{value:"60",name:"1 minute"},{value:"300",name:"5 minutes"},{value:"900",name:"15 minutes"},{value:"3600",name:"1 hour"},{value:"86400",name:"1 day"}];return{localStore:o,val:i,options:c,handleSubmit:async e=>{e.preventDefault(),o.set({disabled:!0,value:"Wait..."}),await he.changeCache(i),o.set({disabled:!1,value:"Save"})},$localStore:s,select_change_handler:function(){i=E(this),n("val",i),n("options",c)}}}class Zt extends se{constructor(e){super(),ae(this,e,qt,Gt,c,[])}}function Vt(t){var n,a,s,o,i,c,r,l,u=t.$store.site.name;return{c(){n=j("div"),a=j("a"),s=j("img"),i=T(),c=j("h3"),r=h(u),s.src=o=t.$store.site.previewUrl,s.alt="site preview",s.className="svelte-s2dgog",a.href=l=t.$store.site.dashboardUrl,a.target="_blank",a.className="svelte-s2dgog"},m(e,t){y(e,n,t),v(n,a),v(a,s),v(a,i),v(a,c),v(c,r)},p(e,t){e.$store&&o!==(o=t.$store.site.previewUrl)&&(s.src=o),e.$store&&u!==(u=t.$store.site.name)&&b(r,u),e.$store&&l!==(l=t.$store.site.dashboardUrl)&&(a.href=l)},i:e,o:e,d(e){e&&N(n)}}}function Kt(e,t,n){let a;return r(e,he,e=>{n("$store",a=e)}),{$store:a}}class Ft extends se{constructor(e){super(),ae(this,e,Kt,Vt,c,[])}}function Xt(e){var t,n,a,s,o,i,c,r,l,u,d,M,L,m,$,f=new Zt({}),g=new Ut({}),p=new Pt({}),w=new Yt({}),h=new Ft({});return{c(){t=j("div"),(n=j("p")).innerHTML="These advanced settings control how your site loads your Webflow pages. <br>For the most part, you shouldn't need to mess with them.",a=T(),f.$$.fragment.c(),s=T(),o=j("hr"),i=T(),g.$$.fragment.c(),c=T(),r=j("hr"),l=T(),p.$$.fragment.c(),u=T(),d=j("hr"),M=T(),w.$$.fragment.c(),L=T(),m=j("div"),h.$$.fragment.c(),n.className="svelte-13sw1fy",o.className="svelte-13sw1fy",r.className="svelte-13sw1fy",d.className="svelte-13sw1fy",t.className="actions-container svelte-13sw1fy",m.className="site-container svelte-13sw1fy"},m(e,N){y(e,t,N),v(t,n),v(t,a),te(f,t,null),v(t,s),v(t,o),v(t,i),te(g,t,null),v(t,c),v(t,r),v(t,l),te(p,t,null),v(t,u),v(t,d),v(t,M),te(w,t,null),y(e,L,N),y(e,m,N),te(h,m,null),$=!0},i(e){$||(f.$$.fragment.i(e),g.$$.fragment.i(e),p.$$.fragment.i(e),w.$$.fragment.i(e),h.$$.fragment.i(e),$=!0)},o(e){f.$$.fragment.o(e),g.$$.fragment.o(e),p.$$.fragment.o(e),w.$$.fragment.o(e),h.$$.fragment.o(e),$=!1},d(e){e&&N(t),f.$destroy(),g.$destroy(),p.$destroy(),w.$destroy(),e&&(N(L),N(m)),h.$destroy()}}}function Bt(e){var t,n=new Fe({props:{$$slots:{default:[Xt]},$$scope:{ctx:e}}});return{c(){n.$$.fragment.c()},m(e,a){te(n,e,a),t=!0},p(e,t){var a={};e.$$scope&&(a.$$scope={changed:e,ctx:t}),n.$set(a)},i(e){t||(n.$$.fragment.i(e),t=!0)},o(e){n.$$.fragment.o(e),t=!1},d(e){n.$destroy(e)}}}class en extends se{constructor(e){super(),ae(this,e,null,Bt,c,[])}}function tn(e){var t,n,a,s,o,i,c=e.$notifications.currentNotification.message;return{c(){t=j("div"),n=j("p"),a=h(c),n.className="svelte-19kmp7p",t.style.cssText=s="success"==e.$notifications.currentNotification.type?"background-color: #38D996":"background-color:  #FF6382",t.className="svelte-19kmp7p"},m(e,s){y(e,t,s),v(t,n),v(n,a),i=!0},p(e,n){i&&!e.$notifications||c===(c=n.$notifications.currentNotification.message)||b(a,c),i&&!e.$notifications||s===(s="success"==n.$notifications.currentNotification.type?"background-color: #38D996":"background-color:  #FF6382")||(t.style.cssText=s)},i(e){i||(J(()=>{o||(o=ee(t,It,{},!0)),o.run(1)}),i=!0)},o(e){o||(o=ee(t,It,{},!1)),o.run(0),i=!1},d(e){e&&(N(t),o&&o.end())}}}function nn(e){var t,n,a=e.$notifications.currentNotification&&tn(e);return{c(){a&&a.c(),t=x()},m(e,s){a&&a.m(e,s),y(e,t,s),n=!0},p(e,n){n.$notifications.currentNotification?a?(a.p(e,n),a.i(1)):((a=tn(n)).c(),a.i(1),a.m(t.parentNode,t)):a&&(F(),B(()=>{a.d(1),a=null}),a.o(1),X())},i(e){n||(a&&a.i(),n=!0)},o(e){a&&a.o(),n=!1},d(e){a&&a.d(e),e&&N(t)}}}function an(e,t,n){let a;return r(e,me,e=>{n("$notifications",a=e)}),{$notifications:a}}class sn extends se{constructor(e){super(),ae(this,e,an,nn,c,[])}}function on(t){var n;return{c(){(n=j("div")).innerHTML='<a href="https://university.webflow.com/" target="_blank" rel="nofollow" class="svelte-fqtlda">Need support?</a>',n.className="footer svelte-fqtlda"},m(e,t){y(e,n,t)},p:e,i:e,o:e,d(e){e&&N(n)}}}class cn extends se{constructor(e){super(),ae(this,e,null,on,c,[])}}function rn(e){var t,n,a,s,o,i=new Me({props:{path:"/login",component:Ae}}),c=new Me({props:{path:"/configuration",component:Et}}),r=new Me({props:{path:"/settings",component:en}}),l=new sn({}),u=new cn({});return{c(){i.$$.fragment.c(),t=T(),c.$$.fragment.c(),n=T(),r.$$.fragment.c(),a=T(),l.$$.fragment.c(),s=T(),u.$$.fragment.c()},m(e,d){te(i,e,d),y(e,t,d),te(c,e,d),y(e,n,d),te(r,e,d),y(e,a,d),te(l,e,d),y(e,s,d),te(u,e,d),o=!0},p(e,t){var n={};e.LoginPage&&(n.component=Ae),i.$set(n);var a={};e.ConfigurationPage&&(a.component=Et),c.$set(a);var s={};e.UtilsPage&&(s.component=en),r.$set(s)},i(e){o||(i.$$.fragment.i(e),c.$$.fragment.i(e),r.$$.fragment.i(e),l.$$.fragment.i(e),u.$$.fragment.i(e),o=!0)},o(e){i.$$.fragment.o(e),c.$$.fragment.o(e),r.$$.fragment.o(e),l.$$.fragment.o(e),u.$$.fragment.o(e),o=!1},d(e){i.$destroy(e),e&&N(t),c.$destroy(e),e&&N(n),r.$destroy(e),e&&N(a),l.$destroy(e),e&&N(s),u.$destroy(e)}}}const ln=window._wfAjaxData;new class extends se{constructor(e){super(),ae(this,e,null,rn,c,[])}}({target:document.getElementById("webflow-dashboard-root"),data:ln})}();
    22//# sourceMappingURL=bundle.js.map
  • webflow-pages/trunk/externals/dashboard/public/bundle.js.map

    r2167725 r2284222  
    1 {"version":3,"file":"bundle.js","sources":["../node_modules/svelte/internal.mjs","../node_modules/svelte/store.mjs","../src/store/router.js","../src/components/Route.svelte","../src/utils/ajax.js","../src/store/notifications.js","../src/store/wfData.js","../src/components/Submit.svelte","../src/components/Label.svelte","../src/pages/Login.svelte","../src/components/Link.svelte","../src/components/Navigation.svelte","../src/components/StaticRules.svelte","../src/components/CollectionRules.svelte","../node_modules/svelte/transition.mjs","../src/components/RemoveTokenAction.svelte","../src/components/InvalidateCacheAction.svelte","../src/components/PreloadCacheAction.svelte","../src/components/ChangeCacheAction.svelte","../src/components/Site.svelte","../src/components/Notifications.svelte","../src/App.svelte","../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n    for (const k in src)\n        tar[k] = src[k];\n    return tar;\n}\nfunction is_promise(value) {\n    return value && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n    element.__svelte_meta = {\n        loc: { file, line, column, char }\n    };\n}\nfunction run(fn) {\n    return fn();\n}\nfunction blank_object() {\n    return Object.create(null);\n}\nfunction run_all(fns) {\n    fns.forEach(run);\n}\nfunction is_function(thing) {\n    return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n    return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n    return a != a ? b == b : a !== b;\n}\nfunction validate_store(store, name) {\n    if (!store || typeof store.subscribe !== 'function') {\n        throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n    }\n}\nfunction subscribe(component, store, callback) {\n    const unsub = store.subscribe(callback);\n    component.$$.on_destroy.push(unsub.unsubscribe\n        ? () => unsub.unsubscribe()\n        : unsub);\n}\nfunction create_slot(definition, ctx, fn) {\n    if (definition) {\n        const slot_ctx = get_slot_context(definition, ctx, fn);\n        return definition[0](slot_ctx);\n    }\n}\nfunction get_slot_context(definition, ctx, fn) {\n    return definition[1]\n        ? assign({}, assign(ctx.$$scope.ctx, definition[1](fn ? fn(ctx) : {})))\n        : ctx.$$scope.ctx;\n}\nfunction get_slot_changes(definition, ctx, changed, fn) {\n    return definition[1]\n        ? assign({}, assign(ctx.$$scope.changed || {}, definition[1](fn ? fn(changed) : {})))\n        : ctx.$$scope.changed || {};\n}\nfunction exclude_internal_props(props) {\n    const result = {};\n    for (const k in props)\n        if (k[0] !== '$')\n            result[k] = props[k];\n    return result;\n}\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n    ? () => window.performance.now()\n    : () => Date.now();\nlet raf = is_client ? requestAnimationFrame : noop;\n// used internally for testing\nfunction set_now(fn) {\n    now = fn;\n}\nfunction set_raf(fn) {\n    raf = fn;\n}\n\nconst tasks = new Set();\nlet running = false;\nfunction run_tasks() {\n    tasks.forEach(task => {\n        if (!task[0](now())) {\n            tasks.delete(task);\n            task[1]();\n        }\n    });\n    running = tasks.size > 0;\n    if (running)\n        raf(run_tasks);\n}\nfunction clear_loops() {\n    // for testing...\n    tasks.forEach(task => tasks.delete(task));\n    running = false;\n}\nfunction loop(fn) {\n    let task;\n    if (!running) {\n        running = true;\n        raf(run_tasks);\n    }\n    return {\n        promise: new Promise(fulfil => {\n            tasks.add(task = [fn, fulfil]);\n        }),\n        abort() {\n            tasks.delete(task);\n        }\n    };\n}\n\nfunction append(target, node) {\n    target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n    target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n    node.parentNode.removeChild(node);\n}\nfunction detach_between(before, after) {\n    while (before.nextSibling && before.nextSibling !== after) {\n        before.parentNode.removeChild(before.nextSibling);\n    }\n}\nfunction detach_before(after) {\n    while (after.previousSibling) {\n        after.parentNode.removeChild(after.previousSibling);\n    }\n}\nfunction detach_after(before) {\n    while (before.nextSibling) {\n        before.parentNode.removeChild(before.nextSibling);\n    }\n}\nfunction destroy_each(iterations, detaching) {\n    for (let i = 0; i < iterations.length; i += 1) {\n        if (iterations[i])\n            iterations[i].d(detaching);\n    }\n}\nfunction element(name) {\n    return document.createElement(name);\n}\nfunction object_without_properties(obj, exclude) {\n    const target = {};\n    for (const k in obj) {\n        if (Object.prototype.hasOwnProperty.call(obj, k)\n            // @ts-ignore\n            && exclude.indexOf(k) === -1) {\n            // @ts-ignore\n            target[k] = obj[k];\n        }\n    }\n    return target;\n}\nfunction svg_element(name) {\n    return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n    return document.createTextNode(data);\n}\nfunction space() {\n    return text(' ');\n}\nfunction empty() {\n    return text('');\n}\nfunction listen(node, event, handler, options) {\n    node.addEventListener(event, handler, options);\n    return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n    return function (event) {\n        event.preventDefault();\n        // @ts-ignore\n        return fn.call(this, event);\n    };\n}\nfunction stop_propagation(fn) {\n    return function (event) {\n        event.stopPropagation();\n        // @ts-ignore\n        return fn.call(this, event);\n    };\n}\nfunction attr(node, attribute, value) {\n    if (value == null)\n        node.removeAttribute(attribute);\n    else\n        node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n    for (const key in attributes) {\n        if (key === 'style') {\n            node.style.cssText = attributes[key];\n        }\n        else if (key in node) {\n            node[key] = attributes[key];\n        }\n        else {\n            attr(node, key, attributes[key]);\n        }\n    }\n}\nfunction set_custom_element_data(node, prop, value) {\n    if (prop in node) {\n        node[prop] = value;\n    }\n    else {\n        attr(node, prop, value);\n    }\n}\nfunction xlink_attr(node, attribute, value) {\n    node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group) {\n    const value = [];\n    for (let i = 0; i < group.length; i += 1) {\n        if (group[i].checked)\n            value.push(group[i].__value);\n    }\n    return value;\n}\nfunction to_number(value) {\n    return value === '' ? undefined : +value;\n}\nfunction time_ranges_to_array(ranges) {\n    const array = [];\n    for (let i = 0; i < ranges.length; i += 1) {\n        array.push({ start: ranges.start(i), end: ranges.end(i) });\n    }\n    return array;\n}\nfunction children(element) {\n    return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n    for (let i = 0; i < nodes.length; i += 1) {\n        const node = nodes[i];\n        if (node.nodeName === name) {\n            for (let j = 0; j < node.attributes.length; j += 1) {\n                const attribute = node.attributes[j];\n                if (!attributes[attribute.name])\n                    node.removeAttribute(attribute.name);\n            }\n            return nodes.splice(i, 1)[0]; // TODO strip unwanted attributes\n        }\n    }\n    return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n    for (let i = 0; i < nodes.length; i += 1) {\n        const node = nodes[i];\n        if (node.nodeType === 3) {\n            node.data = data;\n            return nodes.splice(i, 1)[0];\n        }\n    }\n    return text(data);\n}\nfunction set_data(text, data) {\n    data = '' + data;\n    if (text.data !== data)\n        text.data = data;\n}\nfunction set_input_type(input, type) {\n    try {\n        input.type = type;\n    }\n    catch (e) {\n        // do nothing\n    }\n}\nfunction set_style(node, key, value) {\n    node.style.setProperty(key, value);\n}\nfunction select_option(select, value) {\n    for (let i = 0; i < select.options.length; i += 1) {\n        const option = select.options[i];\n        if (option.__value === value) {\n            option.selected = true;\n            return;\n        }\n    }\n}\nfunction select_options(select, value) {\n    for (let i = 0; i < select.options.length; i += 1) {\n        const option = select.options[i];\n        option.selected = ~value.indexOf(option.__value);\n    }\n}\nfunction select_value(select) {\n    const selected_option = select.querySelector(':checked') || select.options[0];\n    return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n    return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\nfunction add_resize_listener(element, fn) {\n    if (getComputedStyle(element).position === 'static') {\n        element.style.position = 'relative';\n    }\n    const object = document.createElement('object');\n    object.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1;');\n    object.type = 'text/html';\n    let win;\n    object.onload = () => {\n        win = object.contentDocument.defaultView;\n        win.addEventListener('resize', fn);\n    };\n    if (/Trident/.test(navigator.userAgent)) {\n        element.appendChild(object);\n        object.data = 'about:blank';\n    }\n    else {\n        object.data = 'about:blank';\n        element.appendChild(object);\n    }\n    return {\n        cancel: () => {\n            win && win.removeEventListener && win.removeEventListener('resize', fn);\n            element.removeChild(object);\n        }\n    };\n}\nfunction toggle_class(element, name, toggle) {\n    element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n    const e = document.createEvent('CustomEvent');\n    e.initCustomEvent(type, false, false, detail);\n    return e;\n}\n\nlet stylesheet;\nlet active = 0;\nlet current_rules = {};\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n    let hash = 5381;\n    let i = str.length;\n    while (i--)\n        hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n    return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n    const step = 16.666 / duration;\n    let keyframes = '{\\n';\n    for (let p = 0; p <= 1; p += step) {\n        const t = a + (b - a) * ease(p);\n        keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n    }\n    const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n    const name = `__svelte_${hash(rule)}_${uid}`;\n    if (!current_rules[name]) {\n        if (!stylesheet) {\n            const style = element('style');\n            document.head.appendChild(style);\n            stylesheet = style.sheet;\n        }\n        current_rules[name] = true;\n        stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n    }\n    const animation = node.style.animation || '';\n    node.style.animation = `${animation ? `${animation}, ` : ``}${name} ${duration}ms linear ${delay}ms 1 both`;\n    active += 1;\n    return name;\n}\nfunction delete_rule(node, name) {\n    node.style.animation = (node.style.animation || '')\n        .split(', ')\n        .filter(name\n        ? anim => anim.indexOf(name) < 0 // remove specific animation\n        : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n    )\n        .join(', ');\n    if (name && !--active)\n        clear_rules();\n}\nfunction clear_rules() {\n    raf(() => {\n        if (active)\n            return;\n        let i = stylesheet.cssRules.length;\n        while (i--)\n            stylesheet.deleteRule(i);\n        current_rules = {};\n    });\n}\n\nfunction create_animation(node, from, fn, params) {\n    if (!from)\n        return noop;\n    const to = node.getBoundingClientRect();\n    if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n        return noop;\n    const { delay = 0, duration = 300, easing = identity, start: start_time = now() + delay, end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n    let running = true;\n    let started = false;\n    let name;\n    function start() {\n        if (css) {\n            name = create_rule(node, 0, 1, duration, delay, easing, css);\n        }\n        if (!delay) {\n            started = true;\n        }\n    }\n    function stop() {\n        if (css)\n            delete_rule(node, name);\n        running = false;\n    }\n    loop(now$$1 => {\n        if (!started && now$$1 >= start_time) {\n            started = true;\n        }\n        if (started && now$$1 >= end) {\n            tick(1, 0);\n            stop();\n        }\n        if (!running) {\n            return false;\n        }\n        if (started) {\n            const p = now$$1 - start_time;\n            const t = 0 + 1 * easing(p / duration);\n            tick(t, 1 - t);\n        }\n        return true;\n    });\n    start();\n    tick(0, 1);\n    return stop;\n}\nfunction fix_position(node) {\n    const style = getComputedStyle(node);\n    if (style.position !== 'absolute' && style.position !== 'fixed') {\n        const { width, height } = style;\n        const a = node.getBoundingClientRect();\n        node.style.position = 'absolute';\n        node.style.width = width;\n        node.style.height = height;\n        const b = node.getBoundingClientRect();\n        if (a.left !== b.left || a.top !== b.top) {\n            const style = getComputedStyle(node);\n            const transform = style.transform === 'none' ? '' : style.transform;\n            node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n        }\n    }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n    current_component = component;\n}\nfunction get_current_component() {\n    if (!current_component)\n        throw new Error(`Function called outside component initialization`);\n    return current_component;\n}\nfunction beforeUpdate(fn) {\n    get_current_component().$$.before_render.push(fn);\n}\nfunction onMount(fn) {\n    get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n    get_current_component().$$.after_render.push(fn);\n}\nfunction onDestroy(fn) {\n    get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n    const component = current_component;\n    return (type, detail) => {\n        const callbacks = component.$$.callbacks[type];\n        if (callbacks) {\n            // TODO are there situations where events could be dispatched\n            // in a server (non-DOM) environment?\n            const event = custom_event(type, detail);\n            callbacks.slice().forEach(fn => {\n                fn.call(component, event);\n            });\n        }\n    };\n}\nfunction setContext(key, context) {\n    get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n    return get_current_component().$$.context.get(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n    const callbacks = component.$$.callbacks[event.type];\n    if (callbacks) {\n        callbacks.slice().forEach(fn => fn(event));\n    }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nfunction schedule_update() {\n    if (!update_scheduled) {\n        update_scheduled = true;\n        resolved_promise.then(flush);\n    }\n}\nfunction tick() {\n    schedule_update();\n    return resolved_promise;\n}\nfunction add_binding_callback(fn) {\n    binding_callbacks.push(fn);\n}\nfunction add_render_callback(fn) {\n    render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n    flush_callbacks.push(fn);\n}\nfunction flush() {\n    const seen_callbacks = new Set();\n    do {\n        // first, call beforeUpdate functions\n        // and update components\n        while (dirty_components.length) {\n            const component = dirty_components.shift();\n            set_current_component(component);\n            update(component.$$);\n        }\n        while (binding_callbacks.length)\n            binding_callbacks.shift()();\n        // then, once components are updated, call\n        // afterUpdate functions. This may cause\n        // subsequent updates...\n        while (render_callbacks.length) {\n            const callback = render_callbacks.pop();\n            if (!seen_callbacks.has(callback)) {\n                callback();\n                // ...so guard against infinite loops\n                seen_callbacks.add(callback);\n            }\n        }\n    } while (dirty_components.length);\n    while (flush_callbacks.length) {\n        flush_callbacks.pop()();\n    }\n    update_scheduled = false;\n}\nfunction update($$) {\n    if ($$.fragment) {\n        $$.update($$.dirty);\n        run_all($$.before_render);\n        $$.fragment.p($$.dirty, $$.ctx);\n        $$.dirty = null;\n        $$.after_render.forEach(add_render_callback);\n    }\n}\n\nlet promise;\nfunction wait() {\n    if (!promise) {\n        promise = Promise.resolve();\n        promise.then(() => {\n            promise = null;\n        });\n    }\n    return promise;\n}\nfunction dispatch(node, direction, kind) {\n    node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nlet outros;\nfunction group_outros() {\n    outros = {\n        remaining: 0,\n        callbacks: []\n    };\n}\nfunction check_outros() {\n    if (!outros.remaining) {\n        run_all(outros.callbacks);\n    }\n}\nfunction on_outro(callback) {\n    outros.callbacks.push(callback);\n}\nfunction create_in_transition(node, fn, params) {\n    let config = fn(node, params);\n    let running = false;\n    let animation_name;\n    let task;\n    let uid = 0;\n    function cleanup() {\n        if (animation_name)\n            delete_rule(node, animation_name);\n    }\n    function go() {\n        const { delay = 0, duration = 300, easing = identity, tick: tick$$1 = noop, css } = config;\n        if (css)\n            animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n        tick$$1(0, 1);\n        const start_time = now() + delay;\n        const end_time = start_time + duration;\n        if (task)\n            task.abort();\n        running = true;\n        task = loop(now$$1 => {\n            if (running) {\n                if (now$$1 >= end_time) {\n                    tick$$1(1, 0);\n                    cleanup();\n                    return running = false;\n                }\n                if (now$$1 >= start_time) {\n                    const t = easing((now$$1 - start_time) / duration);\n                    tick$$1(t, 1 - t);\n                }\n            }\n            return running;\n        });\n    }\n    let started = false;\n    return {\n        start() {\n            if (started)\n                return;\n            delete_rule(node);\n            if (typeof config === 'function') {\n                config = config();\n                wait().then(go);\n            }\n            else {\n                go();\n            }\n        },\n        invalidate() {\n            started = false;\n        },\n        end() {\n            if (running) {\n                cleanup();\n                running = false;\n            }\n        }\n    };\n}\nfunction create_out_transition(node, fn, params) {\n    let config = fn(node, params);\n    let running = true;\n    let animation_name;\n    const group = outros;\n    group.remaining += 1;\n    function go() {\n        const { delay = 0, duration = 300, easing = identity, tick: tick$$1 = noop, css } = config;\n        if (css)\n            animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n        const start_time = now() + delay;\n        const end_time = start_time + duration;\n        loop(now$$1 => {\n            if (running) {\n                if (now$$1 >= end_time) {\n                    tick$$1(0, 1);\n                    if (!--group.remaining) {\n                        // this will result in `end()` being called,\n                        // so we don't need to clean up here\n                        run_all(group.callbacks);\n                    }\n                    return false;\n                }\n                if (now$$1 >= start_time) {\n                    const t = easing((now$$1 - start_time) / duration);\n                    tick$$1(1 - t, t);\n                }\n            }\n            return running;\n        });\n    }\n    if (typeof config === 'function') {\n        wait().then(() => {\n            config = config();\n            go();\n        });\n    }\n    else {\n        go();\n    }\n    return {\n        end(reset) {\n            if (reset && config.tick) {\n                config.tick(1, 0);\n            }\n            if (running) {\n                if (animation_name)\n                    delete_rule(node, animation_name);\n                running = false;\n            }\n        }\n    };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n    let config = fn(node, params);\n    let t = intro ? 0 : 1;\n    let running_program = null;\n    let pending_program = null;\n    let animation_name = null;\n    function clear_animation() {\n        if (animation_name)\n            delete_rule(node, animation_name);\n    }\n    function init(program, duration) {\n        const d = program.b - t;\n        duration *= Math.abs(d);\n        return {\n            a: t,\n            b: program.b,\n            d,\n            duration,\n            start: program.start,\n            end: program.start + duration,\n            group: program.group\n        };\n    }\n    function go(b) {\n        const { delay = 0, duration = 300, easing = identity, tick: tick$$1 = noop, css } = config;\n        const program = {\n            start: now() + delay,\n            b\n        };\n        if (!b) {\n            // @ts-ignore todo: improve typings\n            program.group = outros;\n            outros.remaining += 1;\n        }\n        if (running_program) {\n            pending_program = program;\n        }\n        else {\n            // if this is an intro, and there's a delay, we need to do\n            // an initial tick and/or apply CSS animation immediately\n            if (css) {\n                clear_animation();\n                animation_name = create_rule(node, t, b, duration, delay, easing, css);\n            }\n            if (b)\n                tick$$1(0, 1);\n            running_program = init(program, duration);\n            add_render_callback(() => dispatch(node, b, 'start'));\n            loop(now$$1 => {\n                if (pending_program && now$$1 > pending_program.start) {\n                    running_program = init(pending_program, duration);\n                    pending_program = null;\n                    dispatch(node, running_program.b, 'start');\n                    if (css) {\n                        clear_animation();\n                        animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n                    }\n                }\n                if (running_program) {\n                    if (now$$1 >= running_program.end) {\n                        tick$$1(t = running_program.b, 1 - t);\n                        dispatch(node, running_program.b, 'end');\n                        if (!pending_program) {\n                            // we're done\n                            if (running_program.b) {\n                                // intro — we can tidy up immediately\n                                clear_animation();\n                            }\n                            else {\n                                // outro — needs to be coordinated\n                                if (!--running_program.group.remaining)\n                                    run_all(running_program.group.callbacks);\n                            }\n                        }\n                        running_program = null;\n                    }\n                    else if (now$$1 >= running_program.start) {\n                        const p = now$$1 - running_program.start;\n                        t = running_program.a + running_program.d * easing(p / running_program.duration);\n                        tick$$1(t, 1 - t);\n                    }\n                }\n                return !!(running_program || pending_program);\n            });\n        }\n    }\n    return {\n        run(b) {\n            if (typeof config === 'function') {\n                wait().then(() => {\n                    config = config();\n                    go(b);\n                });\n            }\n            else {\n                go(b);\n            }\n        },\n        end() {\n            clear_animation();\n            running_program = pending_program = null;\n        }\n    };\n}\n\nfunction handle_promise(promise, info) {\n    const token = info.token = {};\n    function update(type, index, key, value) {\n        if (info.token !== token)\n            return;\n        info.resolved = key && { [key]: value };\n        const child_ctx = assign(assign({}, info.ctx), info.resolved);\n        const block = type && (info.current = type)(child_ctx);\n        if (info.block) {\n            if (info.blocks) {\n                info.blocks.forEach((block, i) => {\n                    if (i !== index && block) {\n                        group_outros();\n                        on_outro(() => {\n                            block.d(1);\n                            info.blocks[i] = null;\n                        });\n                        block.o(1);\n                        check_outros();\n                    }\n                });\n            }\n            else {\n                info.block.d(1);\n            }\n            block.c();\n            if (block.i)\n                block.i(1);\n            block.m(info.mount(), info.anchor);\n            flush();\n        }\n        info.block = block;\n        if (info.blocks)\n            info.blocks[index] = block;\n    }\n    if (is_promise(promise)) {\n        promise.then(value => {\n            update(info.then, 1, info.value, value);\n        }, error => {\n            update(info.catch, 2, info.error, error);\n        });\n        // if we previously had a then/catch block, destroy it\n        if (info.current !== info.pending) {\n            update(info.pending, 0);\n            return true;\n        }\n    }\n    else {\n        if (info.current !== info.then) {\n            update(info.then, 1, info.value, promise);\n            return true;\n        }\n        info.resolved = { [info.value]: promise };\n    }\n}\n\nfunction destroy_block(block, lookup) {\n    block.d(1);\n    lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n    on_outro(() => {\n        destroy_block(block, lookup);\n    });\n    block.o(1);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n    block.f();\n    outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, changed, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n    let o = old_blocks.length;\n    let n = list.length;\n    let i = o;\n    const old_indexes = {};\n    while (i--)\n        old_indexes[old_blocks[i].key] = i;\n    const new_blocks = [];\n    const new_lookup = new Map();\n    const deltas = new Map();\n    i = n;\n    while (i--) {\n        const child_ctx = get_context(ctx, list, i);\n        const key = get_key(child_ctx);\n        let block = lookup.get(key);\n        if (!block) {\n            block = create_each_block(key, child_ctx);\n            block.c();\n        }\n        else if (dynamic) {\n            block.p(changed, child_ctx);\n        }\n        new_lookup.set(key, new_blocks[i] = block);\n        if (key in old_indexes)\n            deltas.set(key, Math.abs(i - old_indexes[key]));\n    }\n    const will_move = new Set();\n    const did_move = new Set();\n    function insert(block) {\n        if (block.i)\n            block.i(1);\n        block.m(node, next);\n        lookup.set(block.key, block);\n        next = block.first;\n        n--;\n    }\n    while (o && n) {\n        const new_block = new_blocks[n - 1];\n        const old_block = old_blocks[o - 1];\n        const new_key = new_block.key;\n        const old_key = old_block.key;\n        if (new_block === old_block) {\n            // do nothing\n            next = new_block.first;\n            o--;\n            n--;\n        }\n        else if (!new_lookup.has(old_key)) {\n            // remove old block\n            destroy(old_block, lookup);\n            o--;\n        }\n        else if (!lookup.has(new_key) || will_move.has(new_key)) {\n            insert(new_block);\n        }\n        else if (did_move.has(old_key)) {\n            o--;\n        }\n        else if (deltas.get(new_key) > deltas.get(old_key)) {\n            did_move.add(new_key);\n            insert(new_block);\n        }\n        else {\n            will_move.add(old_key);\n            o--;\n        }\n    }\n    while (o--) {\n        const old_block = old_blocks[o];\n        if (!new_lookup.has(old_block.key))\n            destroy(old_block, lookup);\n    }\n    while (n)\n        insert(new_blocks[n - 1]);\n    return new_blocks;\n}\nfunction measure(blocks) {\n    const rects = {};\n    let i = blocks.length;\n    while (i--)\n        rects[blocks[i].key] = blocks[i].node.getBoundingClientRect();\n    return rects;\n}\n\nfunction get_spread_update(levels, updates) {\n    const update = {};\n    const to_null_out = {};\n    const accounted_for = { $$scope: 1 };\n    let i = levels.length;\n    while (i--) {\n        const o = levels[i];\n        const n = updates[i];\n        if (n) {\n            for (const key in o) {\n                if (!(key in n))\n                    to_null_out[key] = 1;\n            }\n            for (const key in n) {\n                if (!accounted_for[key]) {\n                    update[key] = n[key];\n                    accounted_for[key] = 1;\n                }\n            }\n            levels[i] = n;\n        }\n        else {\n            for (const key in o) {\n                accounted_for[key] = 1;\n            }\n        }\n    }\n    for (const key in to_null_out) {\n        if (!(key in update))\n            update[key] = undefined;\n    }\n    return update;\n}\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args) {\n    const attributes = Object.assign({}, ...args);\n    let str = '';\n    Object.keys(attributes).forEach(name => {\n        if (invalid_attribute_name_character.test(name))\n            return;\n        const value = attributes[name];\n        if (value === undefined)\n            return;\n        if (value === true)\n            str += \" \" + name;\n        const escaped = String(value)\n            .replace(/\"/g, '&#34;')\n            .replace(/'/g, '&#39;');\n        str += \" \" + name + \"=\" + JSON.stringify(escaped);\n    });\n    return str;\n}\nconst escaped = {\n    '\"': '&quot;',\n    \"'\": '&#39;',\n    '&': '&amp;',\n    '<': '&lt;',\n    '>': '&gt;'\n};\nfunction escape(html) {\n    return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n    let str = '';\n    for (let i = 0; i < items.length; i += 1) {\n        str += fn(items[i], i);\n    }\n    return str;\n}\nconst missing_component = {\n    $$render: () => ''\n};\nfunction validate_component(component, name) {\n    if (!component || !component.$$render) {\n        if (name === 'svelte:component')\n            name += ' this={...}';\n        throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n    }\n    return component;\n}\nfunction debug(file, line, column, values) {\n    console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n    console.log(values); // eslint-disable-line no-console\n    return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n    function $$render(result, props, bindings, slots) {\n        const parent_component = current_component;\n        const $$ = {\n            on_destroy,\n            context: new Map(parent_component ? parent_component.$$.context : []),\n            // these will be immediately discarded\n            on_mount: [],\n            before_render: [],\n            after_render: [],\n            callbacks: blank_object()\n        };\n        set_current_component({ $$ });\n        const html = fn(result, props, bindings, slots);\n        set_current_component(parent_component);\n        return html;\n    }\n    return {\n        render: (props = {}, options = {}) => {\n            on_destroy = [];\n            const result = { head: '', css: new Set() };\n            const html = $$render(result, props, {}, options);\n            run_all(on_destroy);\n            return {\n                html,\n                css: {\n                    code: Array.from(result.css).map(css => css.code).join('\\n'),\n                    map: null // TODO\n                },\n                head: result.head\n            };\n        },\n        $$render\n    };\n}\nfunction get_store_value(store) {\n    let value;\n    store.subscribe(_ => value = _)();\n    return value;\n}\n\nfunction bind(component, name, callback) {\n    if (component.$$.props.indexOf(name) === -1)\n        return;\n    component.$$.bound[name] = callback;\n    callback(component.$$.ctx[name]);\n}\nfunction mount_component(component, target, anchor) {\n    const { fragment, on_mount, on_destroy, after_render } = component.$$;\n    fragment.m(target, anchor);\n    // onMount happens after the initial afterUpdate. Because\n    // afterUpdate callbacks happen in reverse order (inner first)\n    // we schedule onMount callbacks before afterUpdate callbacks\n    add_render_callback(() => {\n        const new_on_destroy = on_mount.map(run).filter(is_function);\n        if (on_destroy) {\n            on_destroy.push(...new_on_destroy);\n        }\n        else {\n            // Edge case - component was destroyed immediately,\n            // most likely as a result of a binding initialising\n            run_all(new_on_destroy);\n        }\n        component.$$.on_mount = [];\n    });\n    after_render.forEach(add_render_callback);\n}\nfunction destroy(component, detaching) {\n    if (component.$$) {\n        run_all(component.$$.on_destroy);\n        component.$$.fragment.d(detaching);\n        // TODO null out other refs, including component.$$ (but need to\n        // preserve final state?)\n        component.$$.on_destroy = component.$$.fragment = null;\n        component.$$.ctx = {};\n    }\n}\nfunction make_dirty(component, key) {\n    if (!component.$$.dirty) {\n        dirty_components.push(component);\n        schedule_update();\n        component.$$.dirty = blank_object();\n    }\n    component.$$.dirty[key] = true;\n}\nfunction init(component, options, instance, create_fragment, not_equal$$1, prop_names) {\n    const parent_component = current_component;\n    set_current_component(component);\n    const props = options.props || {};\n    const $$ = component.$$ = {\n        fragment: null,\n        ctx: null,\n        // state\n        props: prop_names,\n        update: noop,\n        not_equal: not_equal$$1,\n        bound: blank_object(),\n        // lifecycle\n        on_mount: [],\n        on_destroy: [],\n        before_render: [],\n        after_render: [],\n        context: new Map(parent_component ? parent_component.$$.context : []),\n        // everything else\n        callbacks: blank_object(),\n        dirty: null\n    };\n    let ready = false;\n    $$.ctx = instance\n        ? instance(component, props, (key, value) => {\n            if ($$.ctx && not_equal$$1($$.ctx[key], $$.ctx[key] = value)) {\n                if ($$.bound[key])\n                    $$.bound[key](value);\n                if (ready)\n                    make_dirty(component, key);\n            }\n        })\n        : props;\n    $$.update();\n    ready = true;\n    run_all($$.before_render);\n    $$.fragment = create_fragment($$.ctx);\n    if (options.target) {\n        if (options.hydrate) {\n            $$.fragment.l(children(options.target));\n        }\n        else {\n            $$.fragment.c();\n        }\n        if (options.intro && component.$$.fragment.i)\n            component.$$.fragment.i();\n        mount_component(component, options.target, options.anchor);\n        flush();\n    }\n    set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement !== 'undefined') {\n    SvelteElement = class extends HTMLElement {\n        constructor() {\n            super();\n            this.attachShadow({ mode: 'open' });\n        }\n        connectedCallback() {\n            // @ts-ignore todo: improve typings\n            for (const key in this.$$.slotted) {\n                // @ts-ignore todo: improve typings\n                this.appendChild(this.$$.slotted[key]);\n            }\n        }\n        attributeChangedCallback(attr$$1, oldValue, newValue) {\n            this[attr$$1] = newValue;\n        }\n        $destroy() {\n            destroy(this, true);\n            this.$destroy = noop;\n        }\n        $on(type, callback) {\n            // TODO should this delegate to addEventListener?\n            const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n            callbacks.push(callback);\n            return () => {\n                const index = callbacks.indexOf(callback);\n                if (index !== -1)\n                    callbacks.splice(index, 1);\n            };\n        }\n        $set() {\n            // overridden by instance, if it has props\n        }\n    };\n}\nclass SvelteComponent {\n    $destroy() {\n        destroy(this, true);\n        this.$destroy = noop;\n    }\n    $on(type, callback) {\n        const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n        callbacks.push(callback);\n        return () => {\n            const index = callbacks.indexOf(callback);\n            if (index !== -1)\n                callbacks.splice(index, 1);\n        };\n    }\n    $set() {\n        // overridden by instance, if it has props\n    }\n}\nclass SvelteComponentDev extends SvelteComponent {\n    constructor(options) {\n        if (!options || (!options.target && !options.$$inline)) {\n            throw new Error(`'target' is a required option`);\n        }\n        super();\n    }\n    $destroy() {\n        super.$destroy();\n        this.$destroy = () => {\n            console.warn(`Component was already destroyed`); // eslint-disable-line no-console\n        };\n    }\n}\n\nexport { create_animation, fix_position, handle_promise, append, insert, detach, detach_between, detach_before, detach_after, destroy_each, element, object_without_properties, svg_element, text, space, empty, listen, prevent_default, stop_propagation, attr, set_attributes, set_custom_element_data, xlink_attr, get_binding_group_value, to_number, time_ranges_to_array, children, claim_element, claim_text, set_data, set_input_type, set_style, select_option, select_options, select_value, select_multiple_value, add_resize_listener, toggle_class, custom_event, destroy_block, outro_and_destroy_block, fix_and_outro_and_destroy_block, update_keyed_each, measure, current_component, set_current_component, beforeUpdate, onMount, afterUpdate, onDestroy, createEventDispatcher, setContext, getContext, bubble, clear_loops, loop, dirty_components, intros, schedule_update, tick, add_binding_callback, add_render_callback, add_flush_callback, flush, get_spread_update, invalid_attribute_name_character, spread, escaped, escape, each, missing_component, validate_component, debug, create_ssr_component, get_store_value, group_outros, check_outros, on_outro, create_in_transition, create_out_transition, create_bidirectional_transition, noop, identity, assign, is_promise, add_location, run, blank_object, run_all, is_function, safe_not_equal, not_equal, validate_store, subscribe, create_slot, get_slot_context, get_slot_changes, exclude_internal_props, now, raf, set_now, set_raf, bind, mount_component, init, SvelteElement, SvelteComponent, SvelteComponentDev };\n","import { noop, safe_not_equal, run_all, is_function } from './internal';\n\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n    return {\n        subscribe: writable(value, start).subscribe,\n    };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n    let stop;\n    const subscribers = [];\n    function set(new_value) {\n        if (safe_not_equal(value, new_value)) {\n            value = new_value;\n            if (!stop) {\n                return; // not ready\n            }\n            subscribers.forEach((s) => s[1]());\n            subscribers.forEach((s) => s[0](value));\n        }\n    }\n    function update(fn) {\n        set(fn(value));\n    }\n    function subscribe(run, invalidate = noop) {\n        const subscriber = [run, invalidate];\n        subscribers.push(subscriber);\n        if (subscribers.length === 1) {\n            stop = start(set) || noop;\n        }\n        run(value);\n        return () => {\n            const index = subscribers.indexOf(subscriber);\n            if (index !== -1) {\n                subscribers.splice(index, 1);\n            }\n            if (subscribers.length === 0) {\n                stop();\n            }\n        };\n    }\n    return { set, update, subscribe };\n}\n/**\n * Derived value store by synchronizing one or more readable stores and\n * applying an aggregation function over its input values.\n * @param {Stores} stores input stores\n * @param {function(Stores=, function(*)=):*}fn function callback that aggregates the values\n * @param {*=}initial_value when used asynchronously\n */\nfunction derived(stores, fn, initial_value) {\n    const single = !Array.isArray(stores);\n    const stores_array = single\n        ? [stores]\n        : stores;\n    const auto = fn.length < 2;\n    return readable(initial_value, (set) => {\n        let inited = false;\n        const values = [];\n        let pending = 0;\n        let cleanup = noop;\n        const sync = () => {\n            if (pending) {\n                return;\n            }\n            cleanup();\n            const result = fn(single ? values[0] : values, set);\n            if (auto) {\n                set(result);\n            }\n            else {\n                cleanup = is_function(result) ? result : noop;\n            }\n        };\n        const unsubscribers = stores_array.map((store, i) => store.subscribe((value) => {\n            values[i] = value;\n            pending &= ~(1 << i);\n            if (inited) {\n                sync();\n            }\n        }, () => {\n            pending |= (1 << i);\n        }));\n        inited = true;\n        sync();\n        return function stop() {\n            run_all(unsubscribers);\n            cleanup();\n        };\n    });\n}\n/**\n * Get the current value from a store by subscribing and immediately unsubscribing.\n * @param store readable\n */\nfunction get(store) {\n    let value;\n    store.subscribe((_) => value = _)();\n    return value;\n}\n\nexport { readable, writable, derived, get };\n","/**\r\n *  These store is rensposible of handling the \"fake routing\" of the application,\r\n *  its a routing without browser history\r\n *\r\n */\r\nimport { writable, derived } from 'svelte/store';\r\n\r\nfunction createRouterStore() {\r\n  const { subscribe, set } = writable({\r\n    path: '/',\r\n    params: {}\r\n  });\r\n\r\n  return {\r\n    subscribe,\r\n    // Go To the defined path with the defined params\r\n    goTo: (path, params = {}) => set({ path, params })\r\n  };\r\n}\r\n\r\nexport const router = createRouterStore();\r\n\r\nexport const isCurrentPath = path =>\r\n  derived(router, $router => $router.path === path);\r\n","<script>\r\n    import {isCurrentPath} from '../store/router';\r\n    \r\n    export let component;\r\n    export let path;\r\n\r\n    const isActive = isCurrentPath(path);\r\n</script>\r\n\r\n<!-- Shows only the Active Component -->\r\n{#if $isActive}\r\n<svelte:component this={component} />\r\n{/if}","/**\r\n * Performs an Ajax Call\r\n *\r\n * @param {*} options\r\n * \r\n * @returns a fetch call\r\n */\r\nexport function ajaxCall(options = {}) {\r\n  const {\r\n    action,\r\n    nonce,\r\n    nonceField,\r\n    data,\r\n    method,\r\n    credentials,\r\n    url\r\n  } = options;\r\n\r\n  if (!action) {\r\n    throw new TypeError('Cannot make ajax call without action');\r\n  }\r\n  if (!nonce) {\r\n    throw new TypeError('Cannot make ajax call without nonce');\r\n  }\r\n  \r\n  if (data && typeof data !== 'object') {\r\n    throw new TypeError('Data to send must be an object');\r\n  }\r\n\r\n  // WordPress automatically defines ajaxurl since WordPress 2.8\r\n  if (!url && !window.ajaxurl) {\r\n    throw new TypeError('Cannot make ajax call without url');\r\n  }\r\n\r\n  let formData = new FormData();\r\n  formData.append('action', action);\r\n  formData.append(nonceField || 'security', nonce);\r\n\r\n  if (data) {\r\n    // appends data as form encoded\r\n    for (let key in data) {\r\n      formData.append(key, data[key]);\r\n    }\r\n  }\r\n\r\n  return fetch(url || window.ajaxurl, {\r\n    method: method || 'POST',\r\n    body: formData,\r\n    credentials: credentials || 'same-origin'\r\n  });\r\n}\r\n","import { writable } from 'svelte/store';\r\n\r\nfunction createNotificationStore() {\r\n    const { subscribe, update } = writable({\r\n        currentNotification: null\r\n      });\r\n    \r\n      return {\r\n        subscribe,\r\n        // Go To the defined path with the defined params\r\n        addNotification: (message, type = \"success\") => {\r\n            update( data => {\r\n                data.currentNotification = {message, type};\r\n                return {...data}\r\n            });\r\n            setTimeout(() => {\r\n                update( data => {\r\n                    data.currentNotification = null;\r\n                    return {...data}\r\n                })\r\n            }, 5000)\r\n        }\r\n      };\r\n}\r\n\r\nexport const notifications = createNotificationStore();\r\n","/**\r\n *\r\n * This store handles webflow data and makes api calls\r\n *\r\n */\r\nimport { writable } from 'svelte/store';\r\nimport { router } from './router';\r\nimport { ajaxCall } from '../utils/ajax';\r\nimport { notifications } from '../store/notifications';\r\n\r\nconst {\r\n  hasToken,\r\n  nonce,\r\n  pages,\r\n  collections,\r\n  site,\r\n  staticRules,\r\n  dynamicRules,\r\n  error,\r\n  cacheDuration\r\n} = window._wfAjaxData;\r\n\r\nif (site) {\r\n  site.dashboardUrl = `https://webflow.com/dashboard/sites/${site.shortName}/settings`\r\n}\r\n\r\nif (error) {\r\n    router.goTo('/login');\r\n    notifications.addNotification(error, \"error\");\r\n} else {\r\n  if (hasToken === 'true') {\r\n    router.goTo('/configuration');\r\n  } else {\r\n    router.goTo('/login');\r\n  }\r\n}\r\n\r\nfunction createWfDataStore() {\r\n  const { subscribe, set, update } = writable({\r\n    pages: pages || [],\r\n    collections: collections || [],\r\n    site: site || undefined,\r\n    staticRules: staticRules || [],\r\n    dynamicRules: dynamicRules || [],\r\n    cacheDuration: cacheDuration || 0\r\n  });\r\n\r\n  return {\r\n    subscribe,\r\n    // Go To the defined path with the defined params\r\n    saveToken: async token => {\r\n      try {\r\n        await ajaxCall({\r\n          nonce,\r\n          data: {\r\n            token\r\n          },\r\n          action: 'save_wf_token'\r\n        });\r\n\r\n        const call = await ajaxCall({\r\n          nonce,\r\n          action: 'get_wf_site_data'\r\n        });\r\n\r\n        let res = await call.json();\r\n        if (res.success) {\r\n          // set data\r\n          set({\r\n            pages: res.data.pages || [],\r\n            collections: res.data.collections || [],\r\n            site: res.data.site,\r\n            dynamicRules: [],\r\n            staticRules: []\r\n          });\r\n          notifications.addNotification('Token Saved Successfully');\r\n          // switch page\r\n          router.goTo('/configuration');\r\n        } else {\r\n          // invalid token prob\r\n          const error = res.data[0] || {\r\n            code: '401',\r\n            message: 'Invalid Token'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n        }\r\n      } catch (e) {\r\n        // should be an issue with server\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save api token, please try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n      }\r\n    },\r\n    removeToken: async () => {\r\n      try {\r\n        await ajaxCall({\r\n          nonce,\r\n          action: 'remove_wf_token'\r\n        });\r\n        notifications.addNotification('Token removed successfully');\r\n        window.location.reload();\r\n        \r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot remove token, please try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n      }\r\n    },\r\n    addStaticRule: (rule) => {\r\n      update(data => {\r\n        data.staticRules.push(rule);\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    removeStaticRule: index => {\r\n      update(data => {\r\n        data.staticRules.splice(index, 1);\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    addDynamicRule: (rule) => {\r\n      update(data => {\r\n        data.dynamicRules.push(rule); // [`/${slug}/*`, `/${slug}/`]\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    removeDynamicRule: index => {\r\n      update(data => {\r\n        data.dynamicRules.splice(index, 1);\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    saveStaticRules: async rules => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'save_wf_static_rules',\r\n          nonce,\r\n          data: {\r\n            rules: JSON.stringify(rules)\r\n          }\r\n        });\r\n\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          const staticRules = res.data;\r\n          update(n => {\r\n            n.staticRules = staticRules;\r\n            return {\r\n              ...n\r\n            };\r\n          });\r\n          notifications.addNotification(`Rules saved successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    saveDynamicRules: async rules => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'save_wf_dynamic_rules',\r\n          nonce,\r\n          data: {\r\n            rules: JSON.stringify(rules)\r\n          }\r\n        });\r\n\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          const dynamicRules = res.data;\r\n          update(n => {\r\n            n.dynamicRules = dynamicRules;\r\n            return {\r\n              ...n\r\n            };\r\n          });\r\n          notifications.addNotification(`Rules saved successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    invalidateCache: async () => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'invalidate_wf_cache',\r\n          nonce\r\n        });\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          notifications.addNotification(`Cache invalidated successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    changeCache: async (duration) => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'change_wf_cache_duration',\r\n          nonce,\r\n          data: {\r\n            duration\r\n          }\r\n        });\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          notifications.addNotification(`Cache settings changed successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    preloadCache: async () => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'preload_wf_cache',\r\n          nonce\r\n        });\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          const pages = res.data || 0;\r\n          notifications.addNotification(\r\n            `Preloaded ${pages} ${pages == 1 ? 'page' : 'pages'}!`\r\n          );\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    }\r\n  };\r\n}\r\n\r\nexport const store = createWfDataStore();\r\n","<script>\r\n  export let value = \"Submit\";\r\n  export let disabled = false;\r\n  export let variation = null;\r\n</script>\r\n\r\n<style>\r\n  input[type=\"submit\"] {\r\n    -webkit-appearance: button;\r\n  }\r\n\r\n  input[type=\"submit\"] {\r\n    display: inline-block;\r\n    padding: 9px 15px;\r\n    color: white;\r\n    border: 0;\r\n    line-height: inherit;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    border-radius: 4px;\r\n  }\r\n\r\n  .form_submit-button {\r\n    width: 100%;\r\n    height: 50px;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #4353ff;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button:hover {\r\n    background-color: #3545ee;\r\n  }\r\n  .form_submit-button:disabled {\r\n    opacity: 0.7;\r\n    cursor: not-allowed;\r\n  }\r\n  .form_submit-button[variation=\"small\"] {\r\n    width: 150px;\r\n    height: auto;\r\n  }\r\n\r\n  .form_submit-button[variation=\"black\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #333;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"black\"]:hover {\r\n    background-color: #000;\r\n  }\r\n\r\n  .form_submit-button[variation=\"red\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #ff6382;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"red\"]:hover {\r\n    background-color: #ff6382;\r\n  }\r\n\r\n  .form_submit-button[variation=\"grey\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #d2d4d5;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"grey\"]:hover {\r\n    background-color: #d2d4d5;\r\n  }\r\n</style>\r\n\r\n<input\r\n  type=\"submit\"\r\n  {value}\r\n  class=\"form_submit-button\"\r\n  {variation}\r\n  {disabled} />\r\n","<script>\r\n  export let forHtml = \"\";\r\n</script>\r\n\r\n<style>\r\n  .field_label {\r\n    margin-top: 6px;\r\n    margin-bottom: 6px;\r\n    color: #999999;\r\n    font-size: 12px;\r\n    line-height: 18px;\r\n    font-weight: bold;\r\n    display: block;\r\n  }\r\n</style>\r\n\r\n<label class=\"field_label\" for={forHtml}>\r\n  <slot />\r\n</label>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Container from \"../components/Container.svelte\";\r\n\r\n  import Submit from \"../components/Submit.svelte\";\r\n  import Label from \"../components/Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import Logo from \"../components/Logo.svelte\";\r\n\r\n  const loginStore = writable({\r\n    disabled: false,\r\n    value: \"Add Webflow API Key\"\r\n  });\r\n\r\n  let token = \"\";\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    loginStore.set({ disabled: true, value: \"Saving...\" });\r\n    await store.saveToken(token);\r\n    loginStore.set({ disabled: false, value: \"Add Webflow API Key\" });\r\n  };\r\n</script>\r\n\r\n<style>\r\n  .login-wrapper {\r\n    background-color: white;\r\n    padding: 40px;\r\n    border-radius: 4px;\r\n    border: 1px solid #f7f7f7;\r\n    width: 450px;\r\n    text-align: center;\r\n  }\r\n  form {\r\n    max-width: 500px;\r\n    margin: auto;\r\n  }\r\n  p {\r\n    text-align: center;\r\n    margin: 0;\r\n    margin-bottom: 30px;\r\n    font-size: 14px;\r\n  }\r\n  a {\r\n    color: black;\r\n    text-align: center;\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n  input.field-input {\r\n    margin-bottom: 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  .warning-notice {\r\n    background-color: #f7f8f9;\r\n    padding: 20px;\r\n    border-radius: 4px;\r\n    margin-top: 20px;\r\n  }\r\n</style>\r\n\r\n<Container>\r\n  <div class=\"login-wrapper\">\r\n    <Logo />\r\n    <b>Congratulations on installing the Webflow Wordpress plugin!</b>\r\n    <p>\r\n      You can find your site's API key by going to the <a href=\"https://webflow.com/dashboard?utm_source=wpplugin\" target=\"_blank\" rel=\"nofollow\">Webflow Dashboard</a>, then your site's settings\r\n    </p>\r\n    <form on:submit={handleSubmit}>\r\n\r\n      <input\r\n        class=\"field-input\"\r\n        bind:value={token}\r\n        type=\"password\"\r\n        name=\"api_keys\"\r\n        autocomplete=\"off\"\r\n        placeholder=\"Your Api Key...\"\r\n        required />\r\n      <Submit value={$loginStore.value} disabled={$loginStore.disabled} />\r\n    </form>\r\n\r\n    <div class=\"warning-notice\">\r\n      This version of the plugin is not compatible with Webflow Ecommerce. Please contact <a href=\"https://university.webflow.com/contact\" target=\"_blank\" rel=\"nofollow\">Webflow Support</a> for any help with the plugin.\r\n    </div>\r\n  </div>\r\n</Container>\r\n","<script>\r\n  import { router } from \"../store/router\";\r\n  import { isCurrentPath } from \"../store/router\";\r\n\r\n  export let path;\r\n  export let params = {};\r\n\r\n  export let text = \"\";\r\n\r\n  const handleClick = e => {\r\n    e.preventDefault();\r\n    router.goTo(path, params);\r\n  };\r\n\r\n  const isActive = isCurrentPath(path);\r\n \r\n</script>\r\n\r\n<style>\r\n  a {\r\n    height: 36px;\r\n    margin-bottom: 0px;\r\n    margin-right: 10px;\r\n    padding-left: 10px;\r\n    padding-right: 10px;\r\n    -webkit-box-flex: 0;\r\n    -webkit-flex: 0 0 auto;\r\n    -ms-flex: 0 0 auto;\r\n    flex: 0 0 auto;\r\n    -webkit-transition: color 200ms ease-in-out;\r\n    transition: color 200ms ease-in-out;\r\n    color: #888;\r\n    font-size: 15px;\r\n    line-height: 37px;\r\n    font-weight: 500;\r\n    text-decoration: none;\r\n    border-bottom: 2px solid transparent;\r\n  }\r\n  a:hover {\r\n    color: #000;\r\n  }\r\n  a.is-active {\r\n    color: #000;\r\n    border-bottom: 2px solid #000;\r\n  }\r\n  a:focus {\r\n    outline: none;\r\n    box-shadow: none;\r\n  }\r\n</style>\r\n\r\n<a href=\"/\" on:click={handleClick} class={$isActive ? 'is-active' : ''}>\r\n  {text}\r\n</a>\r\n"," <script>\r\n import Navbar from './Navbar.svelte';\r\n import Link from './Link.svelte';\r\n </script>\r\n \r\n <Navbar>\r\n    <Link path=\"/configuration\" text={\"Pages\"}></Link>\r\n    <Link path=\"/settings\" text={\"Settings\"}></Link>\r\n </Navbar>","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import { onMount } from \"svelte\";\r\n\r\n  const hasItems = $store.staticRules.length > 0;\r\n\r\n  let staticRule = [\"\", \"\"];\r\n\r\n  let canAdd = false;\r\n\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n   \r\n    await store.saveStaticRules($store.staticRules);\r\n    \r\n  };\r\n\r\n  const addStaticRule = e => {\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    store.addStaticRule(staticRule);\r\n    staticRule = [\"\", \"\"];\r\n    canAdd = false;\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const removeStaticRule = index => {\r\n    store.removeStaticRule(index);\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const handleInput = ({ target }) => {\r\n    let value = target.value;\r\n    let isAdd = target.getAttribute(\"data-add\");\r\n    target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    value = target.value;\r\n    const match = value.match(/^(\\.?){2}(\\/[a-zA-Z0-9_\\-]+)+\\/?$/g);\r\n    if (match && match[0] === value || value === \"/\") {\r\n      target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n\r\n  const pages = $store.pages.filter( page => page !== '/404' && page !== '/401' );\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n    margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n  .fields-wrapper {\r\n    flex: 1;\r\n    overflow: auto;\r\n  }\r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-pages-added {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n  }\r\n  .no-pages-added p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper, .added-pages .fields-headers{\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Static Pages</h3>\r\n    \r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n    <p class=\"section-description\">Create a new redirect</p>\r\n      <p class=\"description-subtitle\">Create redirects to serve a made-in-Webflow page in place of a WordPress Page</p>\r\n      <div class=\"grid grid-with-actions \">\r\n        <div>\r\n          <Label>WordPress Path</Label>\r\n        </div>\r\n        <div>\r\n          <Label>Webflow Page</Label>\r\n        </div>\r\n        <div style=\"visibility:hidden\">\r\n          <button disabled class=\"button add\">+</button>\r\n        </div>\r\n      </div>\r\n      <div class=\"input-wrapper\">\r\n\r\n        <form on:submit={addStaticRule} class=\"grid grid-with-actions\">\r\n          <div>\r\n            <input\r\n              data-add=\"true\"\r\n              class=\"field-input\"\r\n              type=\"text\"\r\n              bind:value={staticRule[0]}\r\n              required\r\n              placeholder=\"/path\"\r\n              on:input={handleInput} />\r\n            <small class=\"error-message\">\r\n              Path must start with / and be valid URLs\r\n            </small>\r\n          </div>\r\n          <div>\r\n\r\n            <select bind:value={staticRule[1]} class=\"field-select\">\r\n              {#each pages as page}\r\n                <option value={page}>\r\n                   {page.substr(1).replace('index.html', 'Home Page')}\r\n                </option>\r\n              {/each}\r\n            </select>\r\n          </div>\r\n\r\n          <button\r\n            type=\"submit\"\r\n            disabled={!canAdd}\r\n            class=\"button add\"\r\n            on:click={addStaticRule}>\r\n            +\r\n          </button>\r\n        </form>\r\n\r\n      </div>\r\n\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.staticRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.staticRules as staticRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={staticRule[0]}\r\n                    readonly\r\n                    on:input={handleInput} />\r\n                </div>\r\n                <div>\r\n                  <select bind:value={staticRule[1]} class=\"field-select\" disabled>\r\n                    {#each pages as page}\r\n                      <option value={page}>\r\n                         {page.substr(1).replace('index.html', 'Home Page')}\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeStaticRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-pages-added\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n</div>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n\r\n  const hasItems = $store.dynamicRules.length > 0;\r\n\r\n  const firstCollection = $store.collections[0];\r\n\r\n  let dynamicRule = [\"\", \"\"];\r\n  if ($store.collections.length) {\r\n    dynamicRule = [``, `/${$store.collections[0].slug}/`];\r\n  }\r\n\r\n  let canAdd = false;\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n\r\n    await store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const addDynamicRule = e => {\r\n    canAdd = false;\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    if (!dynamicRule || !dynamicRule[0]) {\r\n      canAdd = false;\r\n      return;\r\n    }\r\n    store.addDynamicRule(dynamicRule);\r\n    dynamicRule = [``, ``];\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const removeDynamicRule = index => {\r\n    store.removeDynamicRule(index);\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const handleInput = e => {\r\n    let value = e.target.value;\r\n    e.target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    let isAdd = e.target.getAttribute(\"data-add\");\r\n    value = e.target.value;\r\n    const match = value.match(/\\/.*?\\/\\*/g);\r\n    if (match && match[0] === value) {\r\n      e.target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      e.target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n     margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n  .fields-wrapper {\r\n    flex: 1;\r\n    overflow: auto;\r\n  }\r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-collections {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n    min-height: 90px;\r\n  }\r\n  .no-collections p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper,\r\n  .added-pages .fields-headers {\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div\r\n    style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Collection Pages</h3>\r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n      <p class=\"section-description\">Create a new Rule</p>\r\n      {#if $store.collections.length > 0}\r\n        <div class=\"grid grid-with-actions\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"input-wrapper\">\r\n          <form on:submit={addDynamicRule} class=\"grid grid-with-actions\">\r\n\r\n            <div>\r\n\r\n              <input\r\n                data-add=\"true\"\r\n                class=\"field-input\"\r\n                type=\"text\"\r\n                bind:value={dynamicRule[0]}\r\n                required\r\n                placeholder=\"/path/*\"\r\n                on:input={handleInput} />\r\n              <small class=\"error-message\">\r\n                Path must start with / and be valid URLs and end with /*\r\n              </small>\r\n            </div>\r\n            <div>\r\n\r\n              <select bind:value={dynamicRule[1]} class=\"field-select\">\r\n                {#each $store.collections as collection}\r\n                  <option value={'/' + collection.slug + '/'}>\r\n                    /{collection.slug}/*\r\n                  </option>\r\n                {/each}\r\n              </select>\r\n            </div>\r\n\r\n            <button\r\n              type=\"submit\"\r\n              disabled={!canAdd}\r\n              class=\"button add\"\r\n              on:click={addDynamicRule}>\r\n              +\r\n            </button>\r\n          </form>\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No collections</p>\r\n        </div>\r\n      {/if}\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.dynamicRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.dynamicRules as dynamicRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={dynamicRule[0]}\r\n                    required\r\n                    on:input={handleInput}\r\n                    readonly />\r\n\r\n                </div>\r\n                <div>\r\n                  <select\r\n                    bind:value={dynamicRule[1]}\r\n                    class=\"field-select\"\r\n                    disabled>\r\n                    {#each $store.collections as collection}\r\n                      <option value={'/' + collection.slug + '/'}>\r\n                        /{collection.slug}/*\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeDynamicRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n\r\n</div>\r\n","import { cubicOut, cubicInOut } from './easing';\nimport { is_function, assign } from './internal';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n    var t = {};\r\n    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n        t[p] = s[p];\r\n    if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n            t[p[i]] = s[p[i]];\r\n    return t;\r\n}\n\nfunction fade(node, { delay = 0, duration = 400 }) {\n    const o = +getComputedStyle(node).opacity;\n    return {\n        delay,\n        duration,\n        css: t => `opacity: ${t * o}`\n    };\n}\nfunction fly(node, { delay = 0, duration = 400, easing = cubicOut, x = 0, y = 0, opacity = 0 }) {\n    const style = getComputedStyle(node);\n    const target_opacity = +style.opacity;\n    const transform = style.transform === 'none' ? '' : style.transform;\n    const od = target_opacity * (1 - opacity);\n    return {\n        delay,\n        duration,\n        easing,\n        css: (t, u) => `\n\t\t\ttransform: ${transform} translate(${(1 - t) * x}px, ${(1 - t) * y}px);\n\t\t\topacity: ${target_opacity - (od * u)}`\n    };\n}\nfunction slide(node, { delay = 0, duration = 400, easing = cubicOut }) {\n    const style = getComputedStyle(node);\n    const opacity = +style.opacity;\n    const height = parseFloat(style.height);\n    const padding_top = parseFloat(style.paddingTop);\n    const padding_bottom = parseFloat(style.paddingBottom);\n    const margin_top = parseFloat(style.marginTop);\n    const margin_bottom = parseFloat(style.marginBottom);\n    const border_top_width = parseFloat(style.borderTopWidth);\n    const border_bottom_width = parseFloat(style.borderBottomWidth);\n    return {\n        delay,\n        duration,\n        easing,\n        css: t => `overflow: hidden;` +\n            `opacity: ${Math.min(t * 20, 1) * opacity};` +\n            `height: ${t * height}px;` +\n            `padding-top: ${t * padding_top}px;` +\n            `padding-bottom: ${t * padding_bottom}px;` +\n            `margin-top: ${t * margin_top}px;` +\n            `margin-bottom: ${t * margin_bottom}px;` +\n            `border-top-width: ${t * border_top_width}px;` +\n            `border-bottom-width: ${t * border_bottom_width}px;`\n    };\n}\nfunction scale(node, { delay = 0, duration = 400, easing = cubicOut, start = 0, opacity = 0 }) {\n    const style = getComputedStyle(node);\n    const target_opacity = +style.opacity;\n    const transform = style.transform === 'none' ? '' : style.transform;\n    const sd = 1 - start;\n    const od = target_opacity * (1 - opacity);\n    return {\n        delay,\n        duration,\n        easing,\n        css: (t, u) => `\n\t\t\ttransform: ${transform} scale(${1 - (sd * u)});\n\t\t\topacity: ${target_opacity - (od * u)}\n\t\t`\n    };\n}\nfunction draw(node, { delay = 0, speed, duration, easing = cubicInOut }) {\n    const len = node.getTotalLength();\n    if (duration === undefined) {\n        if (speed === undefined) {\n            duration = 800;\n        }\n        else {\n            duration = len / speed;\n        }\n    }\n    else if (typeof duration === 'function') {\n        duration = duration(len);\n    }\n    return {\n        delay,\n        duration,\n        easing,\n        css: (t, u) => `stroke-dasharray: ${t * len} ${u * len}`\n    };\n}\nfunction crossfade(_a) {\n    var { fallback } = _a, defaults = __rest(_a, [\"fallback\"]);\n    const to_receive = new Map();\n    const to_send = new Map();\n    function crossfade(from, node, params) {\n        const { delay = 0, duration = d => Math.sqrt(d) * 30, easing = cubicOut } = assign(assign({}, defaults), params);\n        const to = node.getBoundingClientRect();\n        const dx = from.left - to.left;\n        const dy = from.top - to.top;\n        const d = Math.sqrt(dx * dx + dy * dy);\n        const style = getComputedStyle(node);\n        const transform = style.transform === 'none' ? '' : style.transform;\n        const opacity = +style.opacity;\n        return {\n            delay,\n            duration: is_function(duration) ? duration(d) : duration,\n            easing,\n            css: (t, u) => `\n\t\t\t\topacity: ${t * opacity};\n\t\t\t\ttransform: ${transform} translate(${u * dx}px,${u * dy}px);\n\t\t\t`\n        };\n    }\n    function transition(items, counterparts, intro) {\n        return (node, params) => {\n            items.set(params.key, {\n                rect: node.getBoundingClientRect()\n            });\n            return () => {\n                if (counterparts.has(params.key)) {\n                    const { rect } = counterparts.get(params.key);\n                    counterparts.delete(params.key);\n                    return crossfade(rect, node, params);\n                }\n                // if the node is disappearing altogether\n                // (i.e. wasn't claimed by the other list)\n                // then we need to supply an outro\n                items.delete(params.key);\n                return fallback && fallback(node, params, intro);\n            };\n        };\n    }\n    return [\n        transition(to_send, to_receive, false),\n        transition(to_receive, to_send, true)\n    ];\n}\n\nexport { fade, fly, slide, scale, draw, crossfade };\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import { fade } from 'svelte/transition';\r\n\r\n  const removeTokenStore = writable({\r\n    disabled: false,\r\n    value: \"Reset\"\r\n  });\r\n\r\n  const modalStore = writable({\r\n    open: false\r\n  })\r\n\r\n  const handleRemoveToken = async e => {\r\n    e.preventDefault();\r\n    const res = await modalResponse();\r\n    if (!res) {\r\n      return;\r\n    }\r\n    removeTokenStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.removeToken();\r\n    removeTokenStore.set({ disabled: false, value: \"Reset\" });\r\n  };\r\n\r\n\r\n\r\n  const closeModal = e => {\r\n    e.preventDefault();\r\n    document.body.dispatchEvent(new CustomEvent('webflow-modal-remove-token', {detail: false}));\r\n  }\r\n\r\n  const acceptModal = e => {\r\n    e.preventDefault();\r\n    document.body.dispatchEvent(new CustomEvent('webflow-modal-remove-token', {detail: true}));\r\n  }\r\n\r\n  const modalResponse = () => {\r\n    return new Promise( res => {\r\n      modalStore.set({open: true});\r\n      document.body.addEventListener('webflow-modal-remove-token', e => {\r\n        modalStore.set({open: false})\r\n        res(e.detail);\r\n      }, {once: true});\r\n    })\r\n  }\r\n\r\n</script>\r\n\r\n<style>\r\n  .modal-wrapper {\r\n    position: fixed;\r\n    top: 0;\r\n    left: 0;\r\n    background-color: rgba(0, 0, 0, 0.7);\r\n    z-index: 99999999;\r\n    width: 100vw;\r\n    height: 100vh;\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .modal {\r\n    background-color: white;\r\n    height: 30vh;\r\n    width: 30vw;\r\n    display: grid;\r\n    grid-template-rows: auto 1fr;\r\n  }\r\n  .modal-header {\r\n    display: flex;\r\n    padding: 20px 15px;\r\n    justify-content: space-between;\r\n    font-weight: 700;\r\n    font-size: 16px;\r\n    border-bottom: 1px solid #f7f7f7;\r\n  }\r\n  .modal-header a {\r\n    color: black;\r\n    text-decoration: none;\r\n  }\r\n  .modal-content {\r\n    background-color: #f5f5f5;\r\n    display: flex;\r\n    flex-direction: column;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .modal-button {\r\n    display: inline-block;\r\n    padding: 9px 15px;\r\n    color: white;\r\n    border: 0;\r\n    line-height: inherit;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    border-radius: 4px;\r\n  }\r\n  .modal-button.red {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #FF6382;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .modal-button.red:hover {\r\n    background-color: #FF6382;\r\n  }\r\n\r\n  .modal-button.grey{\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #d2d4d5;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .modal-button.grey:hover {\r\n    background-color: #d2d4d5;\r\n  }\r\n</style>\r\n\r\n<h4>Remove Website</h4>\r\n<p class=\"description-subtitle\">Disconnect your Webflow project from your WordPress site.</p>\r\n<form on:submit={handleRemoveToken}>\r\n  <Submit\r\n    value={$removeTokenStore.value}\r\n    disabled={$removeTokenStore.disabled}\r\n    variation=\"red\" />\r\n</form>\r\n\r\n{#if $modalStore.open}\r\n<div class=\"modal-wrapper\">\r\n  <div class=\"modal\" transition:fade>\r\n    <div class=\"modal-header\">\r\n      <div>Do you want to remove all the Webflow Pages?</div>\r\n      <a on:click={closeModal}>X</a>\r\n    </div>\r\n    <div class=\"modal-content\">\r\n    <p>Are you sure you want to remove all your Webflow Settings?</p>\r\n        <div class=\"modal-actions\">\r\n          <button class=\"modal-button grey\" on:click={closeModal}>Cancel</button>\r\n          <button class=\"modal-button red\" on:click={acceptModal}>Confirm</button>\r\n        </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n{/if}","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const invalidateCacheStore = writable({\r\n    disabled: false,\r\n    value: \"Invalidate Cache\"\r\n  });\r\n\r\n  const handleInvalidateCache = async e => {\r\n    e.preventDefault();\r\n    invalidateCacheStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.invalidateCache();\r\n    invalidateCacheStore.set({ disabled: false, value: \"Invalidate Cache\" });\r\n  };\r\n</script>\r\n\r\n<h4>Invalidate Cache</h4>\r\n<p class=\"description-subtitle\">Deletes your WordPress site's cache, which can be helpful with debugging.</p>\r\n<form on:submit={handleInvalidateCache}>\r\n  <Submit\r\n    value={$invalidateCacheStore.value}\r\n    disabled={$invalidateCacheStore.disabled} variation=\"black\"/>\r\n</form>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const preloadCacheStore = writable({\r\n    disabled: false,\r\n    value: \"Preload Cache\"\r\n  });\r\n\r\n  const handlePreloadCache = async e => {\r\n    e.preventDefault();\r\n    preloadCacheStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.preloadCache();\r\n    preloadCacheStore.set({ disabled: false, value: \"Preload Cache\" });\r\n  };\r\n</script>\r\n\r\n<h4>Preload static page cache</h4>\r\n<p class=\"description-subtitle\">Preload your static page cache to help pages load faster.</p>\r\n<form on:submit={handlePreloadCache}>\r\n  <Submit\r\n    value={$preloadCacheStore.value}\r\n    disabled={$preloadCacheStore.disabled} variation=\"black\"/>\r\n</form>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const localStore = writable({\r\n    disabled: false,\r\n    value: \"Save\"\r\n  });\r\n\r\n  let val = $store.cacheDuration;\r\n\r\n  const options = [\r\n    {\r\n      value: \"0\",\r\n      name: \"As long as possible\"\r\n    },\r\n    {\r\n      value: \"60\",\r\n      name: \"1 minute\"\r\n    },\r\n    {\r\n      value: 60 * 5 + \"\",\r\n      name: \"5 minutes\"\r\n    },\r\n    {\r\n      value: 60 * 15 + \"\",\r\n      name: \"15 minutes\"\r\n    },\r\n    {\r\n      value: 60 * 60 + \"\",\r\n      name: \"1 hour\"\r\n    },\r\n    {\r\n      value: 60 * 60 * 24 + \"\",\r\n      name: \"1 day\"\r\n    }\r\n  ];\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    localStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.changeCache(val);\r\n    localStore.set({ disabled: false, value: \"Save\" });\r\n  };\r\n</script>\r\n<style>\r\nform {\r\ndisplay: grid;\r\n    grid-gap: 8px;\r\n    justify-content: center;\r\n    align-items: center;\r\n    grid-template-columns: 1fr 1fr;\r\n}\r\nselect {\r\n  background-color: #f7f8f9;\r\n}\r\n\r\n</style>\r\n<h4>Cache Duration</h4>\r\n<p class=\"description-subtitle\">Define how long your site caches your Webflow pages. Cached pages load faster.</p>\r\n<form on:submit={handleSubmit} >\r\n  <select class=\"field-select\" bind:value={val}>\r\n    {#each options as option}\r\n      <option value={option.value}> {option.name} </option>\r\n    {/each}\r\n  </select>\r\n  <Submit\r\n    value={$localStore.value}\r\n    disabled={$localStore.disabled}\r\n    variation=\"small\"\r\n   />\r\n</form>\r\n","<script>\r\n  import {store} from '../store/wfData';\r\n\r\n</script>\r\n\r\n<style>\r\n  img {\r\n    max-width: 100%;\r\n    height: auto;\r\n  }\r\n  a {box-shadow: none}\r\n</style>\r\n\r\n<div>\r\n  <a href={$store.site.dashboardUrl} target=\"_blank\">\r\n    <img src={$store.site.previewUrl} alt=\"site preview\" />\r\n    <h3>{$store.site.name}</h3>\r\n  </a>\r\n</div>\r\n","<script>\r\n    import {notifications} from '../store/notifications';\r\n    import { fade } from 'svelte/transition';\r\n   \r\n</script>\r\n<style>\r\ndiv {\r\n    position: fixed;\r\n    bottom: 40px;\r\n    left: 55%;\r\n    padding: 8px 100px;\r\n    transform: translateX(-50%);\r\n}\r\np {\r\n    margin: 0;\r\n    color: white;\r\n    font-size: 14px;\r\n    text-align: center;\r\n}\r\n</style>\r\n{#if $notifications.currentNotification}\r\n<div transition:fade style={$notifications.currentNotification.type == \"success\" ? \"background-color: #38D996\" : \"background-color:  #FF6382\"}>\r\n    <p>{$notifications.currentNotification.message}</p>\r\n</div>\r\n{/if}","<script>\n\timport Route from './components/Route.svelte';\n\timport LoginPage from './pages/Login.svelte';\n\timport ConfigurationPage from './pages/Configuration.svelte';\n\timport UtilsPage from './pages/Utils.svelte';\n\timport Notifications from './components/Notifications.svelte';\n\timport {store} from './store/wfData';\n\timport Footer from './components/Footer.svelte';\n\n</script>\n<!-- \"Routes\" of the dashboard -->\n<Route path=\"/login\" component={LoginPage}></Route>\n<Route path=\"/configuration\" component={ConfigurationPage}></Route>\n<Route path=\"/settings\" component={UtilsPage}></Route>\n\n<Notifications></Notifications>\n<Footer></Footer>\n\n<style>\n:global(#wpcontent) {\n\tpadding-left: 0;\n}\n:global(#webflow-dashboard-root) {\n\theight: 100%;\n\tdisplay: flex;\n\tmin-height: calc(100vh - 32px - 65px); /* 32 px is the admin bar , 65 px is the padding bottom*/\n}\n</style>","import App from './App.svelte';\n\n\n\tconst data = window._wfAjaxData;\n\tnew App({\n\t\ttarget: document.getElementById(\"webflow-dashboard-root\"), // inits app\n\t\tdata\n\t});\n"],"names":["noop","identity","x","assign","tar","src","k","run","fn","blank_object","Object","create","run_all","fns","forEach","is_function","thing","safe_not_equal","a","b","subscribe","component","store","callback","unsub","$$","on_destroy","push","unsubscribe","create_slot","definition","ctx","slot_ctx","get_slot_context","$$scope","get_slot_changes","changed","is_client","window","now","performance","Date","raf","requestAnimationFrame","tasks","Set","stylesheet","running","run_tasks","task","delete","size","append","target","node","appendChild","insert","anchor","insertBefore","detach","parentNode","removeChild","destroy_each","iterations","detaching","i","length","d","element","name","document","createElement","text","data","createTextNode","space","empty","listen","event","handler","options","addEventListener","removeEventListener","attr","attribute","value","removeAttribute","setAttribute","set_data","set_style","key","style","setProperty","select_option","select","option","__value","selected","select_value","selected_option","querySelector","current_component","active","current_rules","create_rule","duration","delay","ease","uid","step","keyframes","p","t","rule","str","hash","charCodeAt","head","sheet","insertRule","cssRules","animation","delete_rule","split","filter","anim","indexOf","join","deleteRule","set_current_component","dirty_components","resolved_promise","Promise","resolve","update_scheduled","binding_callbacks","render_callbacks","flush_callbacks","add_render_callback","flush","seen_callbacks","shift","update","pop","has","add","fragment","dirty","before_render","after_render","promise","outros","dispatch","direction","kind","dispatchEvent","type","detail","e","createEvent","initCustomEvent","custom_event","group_outros","remaining","callbacks","check_outros","on_outro","create_bidirectional_transition","params","intro","config","running_program","pending_program","animation_name","clear_animation","init","program","Math","abs","start","end","group","go","easing","tick","tick$$1","css","fulfil","loop","now$$1","[object Object]","then","mount_component","on_mount","m","new_on_destroy","map","make_dirty","instance","create_fragment","not_equal$$1","prop_names","parent_component","props","not_equal","bound","context","Map","ready","hydrate","l","Array","from","childNodes","c","SvelteComponent","this","$destroy","index","splice","writable","stop","subscribers","set","new_value","s","invalidate","subscriber","derived","stores","initial_value","single","isArray","stores_array","auto","inited","values","pending","cleanup","sync","result","unsubscribers","router","path","goTo","createRouterStore","isCurrentPath","$router","$isActive","isActive","ajaxCall","action","nonce","nonceField","method","credentials","url","TypeError","ajaxurl","formData","FormData","fetch","body","notifications","currentNotification","addNotification","message","setTimeout","createNotificationStore","hasToken","pages","collections","site","staticRules","dynamicRules","error","cacheDuration","_wfAjaxData","dashboardUrl","shortName","undefined","saveToken","async","token","call","res","json","success","code","removeToken","location","reload","addStaticRule","removeStaticRule","addDynamicRule","removeDynamicRule","saveStaticRules","rules","JSON","stringify","n","saveDynamicRules","invalidateCache","changeCache","preloadCache","createWfDataStore","variation","disabled","forHtml","$loginStore","handleSubmit","loginStore","preventDefault","handleClick","page","substr","replace","$store","staticRule","handleInput","click_handler","canAdd","activeElement","blur","isAdd","getAttribute","encodeURI","decodeURI","match","setCustomValidity","dynamicRule","collection","slug","fade","o","getComputedStyle","opacity","closeModal","acceptModal","$removeTokenStore","$modalStore","handleRemoveToken","open","removeTokenStore","modalStore","modalResponse","once","CustomEvent","$invalidateCacheStore","handleInvalidateCache","invalidateCacheStore","$preloadCacheStore","handlePreloadCache","preloadCacheStore","$localStore","val","localStore","previewUrl","$notifications","LoginPage","ConfigurationPage","UtilsPage","getElementById"],"mappings":"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"}
     1{"version":3,"file":"bundle.js","sources":["../node_modules/svelte/internal.mjs","../node_modules/svelte/store.mjs","../src/store/router.js","../src/components/Route.svelte","../src/utils/ajax.js","../src/store/notifications.js","../src/store/wfData.js","../src/components/Submit.svelte","../src/components/Label.svelte","../src/pages/Login.svelte","../src/components/Link.svelte","../src/components/Navigation.svelte","../src/components/StaticRules.svelte","../src/components/CollectionRules.svelte","../node_modules/svelte/transition.mjs","../src/components/RemoveTokenAction.svelte","../src/components/InvalidateCacheAction.svelte","../src/components/PreloadCacheAction.svelte","../src/components/ChangeCacheAction.svelte","../src/components/Site.svelte","../src/components/Notifications.svelte","../src/App.svelte","../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n    for (const k in src)\n        tar[k] = src[k];\n    return tar;\n}\nfunction is_promise(value) {\n    return value && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n    element.__svelte_meta = {\n        loc: { file, line, column, char }\n    };\n}\nfunction run(fn) {\n    return fn();\n}\nfunction blank_object() {\n    return Object.create(null);\n}\nfunction run_all(fns) {\n    fns.forEach(run);\n}\nfunction is_function(thing) {\n    return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n    return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n    return a != a ? b == b : a !== b;\n}\nfunction validate_store(store, name) {\n    if (!store || typeof store.subscribe !== 'function') {\n        throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n    }\n}\nfunction subscribe(component, store, callback) {\n    const unsub = store.subscribe(callback);\n    component.$$.on_destroy.push(unsub.unsubscribe\n        ? () => unsub.unsubscribe()\n        : unsub);\n}\nfunction create_slot(definition, ctx, fn) {\n    if (definition) {\n        const slot_ctx = get_slot_context(definition, ctx, fn);\n        return definition[0](slot_ctx);\n    }\n}\nfunction get_slot_context(definition, ctx, fn) {\n    return definition[1]\n        ? assign({}, assign(ctx.$$scope.ctx, definition[1](fn ? fn(ctx) : {})))\n        : ctx.$$scope.ctx;\n}\nfunction get_slot_changes(definition, ctx, changed, fn) {\n    return definition[1]\n        ? assign({}, assign(ctx.$$scope.changed || {}, definition[1](fn ? fn(changed) : {})))\n        : ctx.$$scope.changed || {};\n}\nfunction exclude_internal_props(props) {\n    const result = {};\n    for (const k in props)\n        if (k[0] !== '$')\n            result[k] = props[k];\n    return result;\n}\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n    ? () => window.performance.now()\n    : () => Date.now();\nlet raf = is_client ? requestAnimationFrame : noop;\n// used internally for testing\nfunction set_now(fn) {\n    now = fn;\n}\nfunction set_raf(fn) {\n    raf = fn;\n}\n\nconst tasks = new Set();\nlet running = false;\nfunction run_tasks() {\n    tasks.forEach(task => {\n        if (!task[0](now())) {\n            tasks.delete(task);\n            task[1]();\n        }\n    });\n    running = tasks.size > 0;\n    if (running)\n        raf(run_tasks);\n}\nfunction clear_loops() {\n    // for testing...\n    tasks.forEach(task => tasks.delete(task));\n    running = false;\n}\nfunction loop(fn) {\n    let task;\n    if (!running) {\n        running = true;\n        raf(run_tasks);\n    }\n    return {\n        promise: new Promise(fulfil => {\n            tasks.add(task = [fn, fulfil]);\n        }),\n        abort() {\n            tasks.delete(task);\n        }\n    };\n}\n\nfunction append(target, node) {\n    target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n    target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n    node.parentNode.removeChild(node);\n}\nfunction detach_between(before, after) {\n    while (before.nextSibling && before.nextSibling !== after) {\n        before.parentNode.removeChild(before.nextSibling);\n    }\n}\nfunction detach_before(after) {\n    while (after.previousSibling) {\n        after.parentNode.removeChild(after.previousSibling);\n    }\n}\nfunction detach_after(before) {\n    while (before.nextSibling) {\n        before.parentNode.removeChild(before.nextSibling);\n    }\n}\nfunction destroy_each(iterations, detaching) {\n    for (let i = 0; i < iterations.length; i += 1) {\n        if (iterations[i])\n            iterations[i].d(detaching);\n    }\n}\nfunction element(name) {\n    return document.createElement(name);\n}\nfunction object_without_properties(obj, exclude) {\n    const target = {};\n    for (const k in obj) {\n        if (Object.prototype.hasOwnProperty.call(obj, k)\n            // @ts-ignore\n            && exclude.indexOf(k) === -1) {\n            // @ts-ignore\n            target[k] = obj[k];\n        }\n    }\n    return target;\n}\nfunction svg_element(name) {\n    return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n    return document.createTextNode(data);\n}\nfunction space() {\n    return text(' ');\n}\nfunction empty() {\n    return text('');\n}\nfunction listen(node, event, handler, options) {\n    node.addEventListener(event, handler, options);\n    return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n    return function (event) {\n        event.preventDefault();\n        // @ts-ignore\n        return fn.call(this, event);\n    };\n}\nfunction stop_propagation(fn) {\n    return function (event) {\n        event.stopPropagation();\n        // @ts-ignore\n        return fn.call(this, event);\n    };\n}\nfunction attr(node, attribute, value) {\n    if (value == null)\n        node.removeAttribute(attribute);\n    else\n        node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n    for (const key in attributes) {\n        if (key === 'style') {\n            node.style.cssText = attributes[key];\n        }\n        else if (key in node) {\n            node[key] = attributes[key];\n        }\n        else {\n            attr(node, key, attributes[key]);\n        }\n    }\n}\nfunction set_custom_element_data(node, prop, value) {\n    if (prop in node) {\n        node[prop] = value;\n    }\n    else {\n        attr(node, prop, value);\n    }\n}\nfunction xlink_attr(node, attribute, value) {\n    node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group) {\n    const value = [];\n    for (let i = 0; i < group.length; i += 1) {\n        if (group[i].checked)\n            value.push(group[i].__value);\n    }\n    return value;\n}\nfunction to_number(value) {\n    return value === '' ? undefined : +value;\n}\nfunction time_ranges_to_array(ranges) {\n    const array = [];\n    for (let i = 0; i < ranges.length; i += 1) {\n        array.push({ start: ranges.start(i), end: ranges.end(i) });\n    }\n    return array;\n}\nfunction children(element) {\n    return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n    for (let i = 0; i < nodes.length; i += 1) {\n        const node = nodes[i];\n        if (node.nodeName === name) {\n            for (let j = 0; j < node.attributes.length; j += 1) {\n                const attribute = node.attributes[j];\n                if (!attributes[attribute.name])\n                    node.removeAttribute(attribute.name);\n            }\n            return nodes.splice(i, 1)[0]; // TODO strip unwanted attributes\n        }\n    }\n    return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n    for (let i = 0; i < nodes.length; i += 1) {\n        const node = nodes[i];\n        if (node.nodeType === 3) {\n            node.data = data;\n            return nodes.splice(i, 1)[0];\n        }\n    }\n    return text(data);\n}\nfunction set_data(text, data) {\n    data = '' + data;\n    if (text.data !== data)\n        text.data = data;\n}\nfunction set_input_type(input, type) {\n    try {\n        input.type = type;\n    }\n    catch (e) {\n        // do nothing\n    }\n}\nfunction set_style(node, key, value) {\n    node.style.setProperty(key, value);\n}\nfunction select_option(select, value) {\n    for (let i = 0; i < select.options.length; i += 1) {\n        const option = select.options[i];\n        if (option.__value === value) {\n            option.selected = true;\n            return;\n        }\n    }\n}\nfunction select_options(select, value) {\n    for (let i = 0; i < select.options.length; i += 1) {\n        const option = select.options[i];\n        option.selected = ~value.indexOf(option.__value);\n    }\n}\nfunction select_value(select) {\n    const selected_option = select.querySelector(':checked') || select.options[0];\n    return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n    return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\nfunction add_resize_listener(element, fn) {\n    if (getComputedStyle(element).position === 'static') {\n        element.style.position = 'relative';\n    }\n    const object = document.createElement('object');\n    object.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1;');\n    object.type = 'text/html';\n    let win;\n    object.onload = () => {\n        win = object.contentDocument.defaultView;\n        win.addEventListener('resize', fn);\n    };\n    if (/Trident/.test(navigator.userAgent)) {\n        element.appendChild(object);\n        object.data = 'about:blank';\n    }\n    else {\n        object.data = 'about:blank';\n        element.appendChild(object);\n    }\n    return {\n        cancel: () => {\n            win && win.removeEventListener && win.removeEventListener('resize', fn);\n            element.removeChild(object);\n        }\n    };\n}\nfunction toggle_class(element, name, toggle) {\n    element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n    const e = document.createEvent('CustomEvent');\n    e.initCustomEvent(type, false, false, detail);\n    return e;\n}\n\nlet stylesheet;\nlet active = 0;\nlet current_rules = {};\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n    let hash = 5381;\n    let i = str.length;\n    while (i--)\n        hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n    return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n    const step = 16.666 / duration;\n    let keyframes = '{\\n';\n    for (let p = 0; p <= 1; p += step) {\n        const t = a + (b - a) * ease(p);\n        keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n    }\n    const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n    const name = `__svelte_${hash(rule)}_${uid}`;\n    if (!current_rules[name]) {\n        if (!stylesheet) {\n            const style = element('style');\n            document.head.appendChild(style);\n            stylesheet = style.sheet;\n        }\n        current_rules[name] = true;\n        stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n    }\n    const animation = node.style.animation || '';\n    node.style.animation = `${animation ? `${animation}, ` : ``}${name} ${duration}ms linear ${delay}ms 1 both`;\n    active += 1;\n    return name;\n}\nfunction delete_rule(node, name) {\n    node.style.animation = (node.style.animation || '')\n        .split(', ')\n        .filter(name\n        ? anim => anim.indexOf(name) < 0 // remove specific animation\n        : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n    )\n        .join(', ');\n    if (name && !--active)\n        clear_rules();\n}\nfunction clear_rules() {\n    raf(() => {\n        if (active)\n            return;\n        let i = stylesheet.cssRules.length;\n        while (i--)\n            stylesheet.deleteRule(i);\n        current_rules = {};\n    });\n}\n\nfunction create_animation(node, from, fn, params) {\n    if (!from)\n        return noop;\n    const to = node.getBoundingClientRect();\n    if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n        return noop;\n    const { delay = 0, duration = 300, easing = identity, start: start_time = now() + delay, end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n    let running = true;\n    let started = false;\n    let name;\n    function start() {\n        if (css) {\n            name = create_rule(node, 0, 1, duration, delay, easing, css);\n        }\n        if (!delay) {\n            started = true;\n        }\n    }\n    function stop() {\n        if (css)\n            delete_rule(node, name);\n        running = false;\n    }\n    loop(now$$1 => {\n        if (!started && now$$1 >= start_time) {\n            started = true;\n        }\n        if (started && now$$1 >= end) {\n            tick(1, 0);\n            stop();\n        }\n        if (!running) {\n            return false;\n        }\n        if (started) {\n            const p = now$$1 - start_time;\n            const t = 0 + 1 * easing(p / duration);\n            tick(t, 1 - t);\n        }\n        return true;\n    });\n    start();\n    tick(0, 1);\n    return stop;\n}\nfunction fix_position(node) {\n    const style = getComputedStyle(node);\n    if (style.position !== 'absolute' && style.position !== 'fixed') {\n        const { width, height } = style;\n        const a = node.getBoundingClientRect();\n        node.style.position = 'absolute';\n        node.style.width = width;\n        node.style.height = height;\n        const b = node.getBoundingClientRect();\n        if (a.left !== b.left || a.top !== b.top) {\n            const style = getComputedStyle(node);\n            const transform = style.transform === 'none' ? '' : style.transform;\n            node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n        }\n    }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n    current_component = component;\n}\nfunction get_current_component() {\n    if (!current_component)\n        throw new Error(`Function called outside component initialization`);\n    return current_component;\n}\nfunction beforeUpdate(fn) {\n    get_current_component().$$.before_render.push(fn);\n}\nfunction onMount(fn) {\n    get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n    get_current_component().$$.after_render.push(fn);\n}\nfunction onDestroy(fn) {\n    get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n    const component = current_component;\n    return (type, detail) => {\n        const callbacks = component.$$.callbacks[type];\n        if (callbacks) {\n            // TODO are there situations where events could be dispatched\n            // in a server (non-DOM) environment?\n            const event = custom_event(type, detail);\n            callbacks.slice().forEach(fn => {\n                fn.call(component, event);\n            });\n        }\n    };\n}\nfunction setContext(key, context) {\n    get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n    return get_current_component().$$.context.get(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n    const callbacks = component.$$.callbacks[event.type];\n    if (callbacks) {\n        callbacks.slice().forEach(fn => fn(event));\n    }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nfunction schedule_update() {\n    if (!update_scheduled) {\n        update_scheduled = true;\n        resolved_promise.then(flush);\n    }\n}\nfunction tick() {\n    schedule_update();\n    return resolved_promise;\n}\nfunction add_binding_callback(fn) {\n    binding_callbacks.push(fn);\n}\nfunction add_render_callback(fn) {\n    render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n    flush_callbacks.push(fn);\n}\nfunction flush() {\n    const seen_callbacks = new Set();\n    do {\n        // first, call beforeUpdate functions\n        // and update components\n        while (dirty_components.length) {\n            const component = dirty_components.shift();\n            set_current_component(component);\n            update(component.$$);\n        }\n        while (binding_callbacks.length)\n            binding_callbacks.shift()();\n        // then, once components are updated, call\n        // afterUpdate functions. This may cause\n        // subsequent updates...\n        while (render_callbacks.length) {\n            const callback = render_callbacks.pop();\n            if (!seen_callbacks.has(callback)) {\n                callback();\n                // ...so guard against infinite loops\n                seen_callbacks.add(callback);\n            }\n        }\n    } while (dirty_components.length);\n    while (flush_callbacks.length) {\n        flush_callbacks.pop()();\n    }\n    update_scheduled = false;\n}\nfunction update($$) {\n    if ($$.fragment) {\n        $$.update($$.dirty);\n        run_all($$.before_render);\n        $$.fragment.p($$.dirty, $$.ctx);\n        $$.dirty = null;\n        $$.after_render.forEach(add_render_callback);\n    }\n}\n\nlet promise;\nfunction wait() {\n    if (!promise) {\n        promise = Promise.resolve();\n        promise.then(() => {\n            promise = null;\n        });\n    }\n    return promise;\n}\nfunction dispatch(node, direction, kind) {\n    node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nlet outros;\nfunction group_outros() {\n    outros = {\n        remaining: 0,\n        callbacks: []\n    };\n}\nfunction check_outros() {\n    if (!outros.remaining) {\n        run_all(outros.callbacks);\n    }\n}\nfunction on_outro(callback) {\n    outros.callbacks.push(callback);\n}\nfunction create_in_transition(node, fn, params) {\n    let config = fn(node, params);\n    let running = false;\n    let animation_name;\n    let task;\n    let uid = 0;\n    function cleanup() {\n        if (animation_name)\n            delete_rule(node, animation_name);\n    }\n    function go() {\n        const { delay = 0, duration = 300, easing = identity, tick: tick$$1 = noop, css } = config;\n        if (css)\n            animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n        tick$$1(0, 1);\n        const start_time = now() + delay;\n        const end_time = start_time + duration;\n        if (task)\n            task.abort();\n        running = true;\n        task = loop(now$$1 => {\n            if (running) {\n                if (now$$1 >= end_time) {\n                    tick$$1(1, 0);\n                    cleanup();\n                    return running = false;\n                }\n                if (now$$1 >= start_time) {\n                    const t = easing((now$$1 - start_time) / duration);\n                    tick$$1(t, 1 - t);\n                }\n            }\n            return running;\n        });\n    }\n    let started = false;\n    return {\n        start() {\n            if (started)\n                return;\n            delete_rule(node);\n            if (typeof config === 'function') {\n                config = config();\n                wait().then(go);\n            }\n            else {\n                go();\n            }\n        },\n        invalidate() {\n            started = false;\n        },\n        end() {\n            if (running) {\n                cleanup();\n                running = false;\n            }\n        }\n    };\n}\nfunction create_out_transition(node, fn, params) {\n    let config = fn(node, params);\n    let running = true;\n    let animation_name;\n    const group = outros;\n    group.remaining += 1;\n    function go() {\n        const { delay = 0, duration = 300, easing = identity, tick: tick$$1 = noop, css } = config;\n        if (css)\n            animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n        const start_time = now() + delay;\n        const end_time = start_time + duration;\n        loop(now$$1 => {\n            if (running) {\n                if (now$$1 >= end_time) {\n                    tick$$1(0, 1);\n                    if (!--group.remaining) {\n                        // this will result in `end()` being called,\n                        // so we don't need to clean up here\n                        run_all(group.callbacks);\n                    }\n                    return false;\n                }\n                if (now$$1 >= start_time) {\n                    const t = easing((now$$1 - start_time) / duration);\n                    tick$$1(1 - t, t);\n                }\n            }\n            return running;\n        });\n    }\n    if (typeof config === 'function') {\n        wait().then(() => {\n            config = config();\n            go();\n        });\n    }\n    else {\n        go();\n    }\n    return {\n        end(reset) {\n            if (reset && config.tick) {\n                config.tick(1, 0);\n            }\n            if (running) {\n                if (animation_name)\n                    delete_rule(node, animation_name);\n                running = false;\n            }\n        }\n    };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n    let config = fn(node, params);\n    let t = intro ? 0 : 1;\n    let running_program = null;\n    let pending_program = null;\n    let animation_name = null;\n    function clear_animation() {\n        if (animation_name)\n            delete_rule(node, animation_name);\n    }\n    function init(program, duration) {\n        const d = program.b - t;\n        duration *= Math.abs(d);\n        return {\n            a: t,\n            b: program.b,\n            d,\n            duration,\n            start: program.start,\n            end: program.start + duration,\n            group: program.group\n        };\n    }\n    function go(b) {\n        const { delay = 0, duration = 300, easing = identity, tick: tick$$1 = noop, css } = config;\n        const program = {\n            start: now() + delay,\n            b\n        };\n        if (!b) {\n            // @ts-ignore todo: improve typings\n            program.group = outros;\n            outros.remaining += 1;\n        }\n        if (running_program) {\n            pending_program = program;\n        }\n        else {\n            // if this is an intro, and there's a delay, we need to do\n            // an initial tick and/or apply CSS animation immediately\n            if (css) {\n                clear_animation();\n                animation_name = create_rule(node, t, b, duration, delay, easing, css);\n            }\n            if (b)\n                tick$$1(0, 1);\n            running_program = init(program, duration);\n            add_render_callback(() => dispatch(node, b, 'start'));\n            loop(now$$1 => {\n                if (pending_program && now$$1 > pending_program.start) {\n                    running_program = init(pending_program, duration);\n                    pending_program = null;\n                    dispatch(node, running_program.b, 'start');\n                    if (css) {\n                        clear_animation();\n                        animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n                    }\n                }\n                if (running_program) {\n                    if (now$$1 >= running_program.end) {\n                        tick$$1(t = running_program.b, 1 - t);\n                        dispatch(node, running_program.b, 'end');\n                        if (!pending_program) {\n                            // we're done\n                            if (running_program.b) {\n                                // intro — we can tidy up immediately\n                                clear_animation();\n                            }\n                            else {\n                                // outro — needs to be coordinated\n                                if (!--running_program.group.remaining)\n                                    run_all(running_program.group.callbacks);\n                            }\n                        }\n                        running_program = null;\n                    }\n                    else if (now$$1 >= running_program.start) {\n                        const p = now$$1 - running_program.start;\n                        t = running_program.a + running_program.d * easing(p / running_program.duration);\n                        tick$$1(t, 1 - t);\n                    }\n                }\n                return !!(running_program || pending_program);\n            });\n        }\n    }\n    return {\n        run(b) {\n            if (typeof config === 'function') {\n                wait().then(() => {\n                    config = config();\n                    go(b);\n                });\n            }\n            else {\n                go(b);\n            }\n        },\n        end() {\n            clear_animation();\n            running_program = pending_program = null;\n        }\n    };\n}\n\nfunction handle_promise(promise, info) {\n    const token = info.token = {};\n    function update(type, index, key, value) {\n        if (info.token !== token)\n            return;\n        info.resolved = key && { [key]: value };\n        const child_ctx = assign(assign({}, info.ctx), info.resolved);\n        const block = type && (info.current = type)(child_ctx);\n        if (info.block) {\n            if (info.blocks) {\n                info.blocks.forEach((block, i) => {\n                    if (i !== index && block) {\n                        group_outros();\n                        on_outro(() => {\n                            block.d(1);\n                            info.blocks[i] = null;\n                        });\n                        block.o(1);\n                        check_outros();\n                    }\n                });\n            }\n            else {\n                info.block.d(1);\n            }\n            block.c();\n            if (block.i)\n                block.i(1);\n            block.m(info.mount(), info.anchor);\n            flush();\n        }\n        info.block = block;\n        if (info.blocks)\n            info.blocks[index] = block;\n    }\n    if (is_promise(promise)) {\n        promise.then(value => {\n            update(info.then, 1, info.value, value);\n        }, error => {\n            update(info.catch, 2, info.error, error);\n        });\n        // if we previously had a then/catch block, destroy it\n        if (info.current !== info.pending) {\n            update(info.pending, 0);\n            return true;\n        }\n    }\n    else {\n        if (info.current !== info.then) {\n            update(info.then, 1, info.value, promise);\n            return true;\n        }\n        info.resolved = { [info.value]: promise };\n    }\n}\n\nfunction destroy_block(block, lookup) {\n    block.d(1);\n    lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n    on_outro(() => {\n        destroy_block(block, lookup);\n    });\n    block.o(1);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n    block.f();\n    outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, changed, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n    let o = old_blocks.length;\n    let n = list.length;\n    let i = o;\n    const old_indexes = {};\n    while (i--)\n        old_indexes[old_blocks[i].key] = i;\n    const new_blocks = [];\n    const new_lookup = new Map();\n    const deltas = new Map();\n    i = n;\n    while (i--) {\n        const child_ctx = get_context(ctx, list, i);\n        const key = get_key(child_ctx);\n        let block = lookup.get(key);\n        if (!block) {\n            block = create_each_block(key, child_ctx);\n            block.c();\n        }\n        else if (dynamic) {\n            block.p(changed, child_ctx);\n        }\n        new_lookup.set(key, new_blocks[i] = block);\n        if (key in old_indexes)\n            deltas.set(key, Math.abs(i - old_indexes[key]));\n    }\n    const will_move = new Set();\n    const did_move = new Set();\n    function insert(block) {\n        if (block.i)\n            block.i(1);\n        block.m(node, next);\n        lookup.set(block.key, block);\n        next = block.first;\n        n--;\n    }\n    while (o && n) {\n        const new_block = new_blocks[n - 1];\n        const old_block = old_blocks[o - 1];\n        const new_key = new_block.key;\n        const old_key = old_block.key;\n        if (new_block === old_block) {\n            // do nothing\n            next = new_block.first;\n            o--;\n            n--;\n        }\n        else if (!new_lookup.has(old_key)) {\n            // remove old block\n            destroy(old_block, lookup);\n            o--;\n        }\n        else if (!lookup.has(new_key) || will_move.has(new_key)) {\n            insert(new_block);\n        }\n        else if (did_move.has(old_key)) {\n            o--;\n        }\n        else if (deltas.get(new_key) > deltas.get(old_key)) {\n            did_move.add(new_key);\n            insert(new_block);\n        }\n        else {\n            will_move.add(old_key);\n            o--;\n        }\n    }\n    while (o--) {\n        const old_block = old_blocks[o];\n        if (!new_lookup.has(old_block.key))\n            destroy(old_block, lookup);\n    }\n    while (n)\n        insert(new_blocks[n - 1]);\n    return new_blocks;\n}\nfunction measure(blocks) {\n    const rects = {};\n    let i = blocks.length;\n    while (i--)\n        rects[blocks[i].key] = blocks[i].node.getBoundingClientRect();\n    return rects;\n}\n\nfunction get_spread_update(levels, updates) {\n    const update = {};\n    const to_null_out = {};\n    const accounted_for = { $$scope: 1 };\n    let i = levels.length;\n    while (i--) {\n        const o = levels[i];\n        const n = updates[i];\n        if (n) {\n            for (const key in o) {\n                if (!(key in n))\n                    to_null_out[key] = 1;\n            }\n            for (const key in n) {\n                if (!accounted_for[key]) {\n                    update[key] = n[key];\n                    accounted_for[key] = 1;\n                }\n            }\n            levels[i] = n;\n        }\n        else {\n            for (const key in o) {\n                accounted_for[key] = 1;\n            }\n        }\n    }\n    for (const key in to_null_out) {\n        if (!(key in update))\n            update[key] = undefined;\n    }\n    return update;\n}\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args) {\n    const attributes = Object.assign({}, ...args);\n    let str = '';\n    Object.keys(attributes).forEach(name => {\n        if (invalid_attribute_name_character.test(name))\n            return;\n        const value = attributes[name];\n        if (value === undefined)\n            return;\n        if (value === true)\n            str += \" \" + name;\n        const escaped = String(value)\n            .replace(/\"/g, '&#34;')\n            .replace(/'/g, '&#39;');\n        str += \" \" + name + \"=\" + JSON.stringify(escaped);\n    });\n    return str;\n}\nconst escaped = {\n    '\"': '&quot;',\n    \"'\": '&#39;',\n    '&': '&amp;',\n    '<': '&lt;',\n    '>': '&gt;'\n};\nfunction escape(html) {\n    return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n    let str = '';\n    for (let i = 0; i < items.length; i += 1) {\n        str += fn(items[i], i);\n    }\n    return str;\n}\nconst missing_component = {\n    $$render: () => ''\n};\nfunction validate_component(component, name) {\n    if (!component || !component.$$render) {\n        if (name === 'svelte:component')\n            name += ' this={...}';\n        throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n    }\n    return component;\n}\nfunction debug(file, line, column, values) {\n    console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n    console.log(values); // eslint-disable-line no-console\n    return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n    function $$render(result, props, bindings, slots) {\n        const parent_component = current_component;\n        const $$ = {\n            on_destroy,\n            context: new Map(parent_component ? parent_component.$$.context : []),\n            // these will be immediately discarded\n            on_mount: [],\n            before_render: [],\n            after_render: [],\n            callbacks: blank_object()\n        };\n        set_current_component({ $$ });\n        const html = fn(result, props, bindings, slots);\n        set_current_component(parent_component);\n        return html;\n    }\n    return {\n        render: (props = {}, options = {}) => {\n            on_destroy = [];\n            const result = { head: '', css: new Set() };\n            const html = $$render(result, props, {}, options);\n            run_all(on_destroy);\n            return {\n                html,\n                css: {\n                    code: Array.from(result.css).map(css => css.code).join('\\n'),\n                    map: null // TODO\n                },\n                head: result.head\n            };\n        },\n        $$render\n    };\n}\nfunction get_store_value(store) {\n    let value;\n    store.subscribe(_ => value = _)();\n    return value;\n}\n\nfunction bind(component, name, callback) {\n    if (component.$$.props.indexOf(name) === -1)\n        return;\n    component.$$.bound[name] = callback;\n    callback(component.$$.ctx[name]);\n}\nfunction mount_component(component, target, anchor) {\n    const { fragment, on_mount, on_destroy, after_render } = component.$$;\n    fragment.m(target, anchor);\n    // onMount happens after the initial afterUpdate. Because\n    // afterUpdate callbacks happen in reverse order (inner first)\n    // we schedule onMount callbacks before afterUpdate callbacks\n    add_render_callback(() => {\n        const new_on_destroy = on_mount.map(run).filter(is_function);\n        if (on_destroy) {\n            on_destroy.push(...new_on_destroy);\n        }\n        else {\n            // Edge case - component was destroyed immediately,\n            // most likely as a result of a binding initialising\n            run_all(new_on_destroy);\n        }\n        component.$$.on_mount = [];\n    });\n    after_render.forEach(add_render_callback);\n}\nfunction destroy(component, detaching) {\n    if (component.$$) {\n        run_all(component.$$.on_destroy);\n        component.$$.fragment.d(detaching);\n        // TODO null out other refs, including component.$$ (but need to\n        // preserve final state?)\n        component.$$.on_destroy = component.$$.fragment = null;\n        component.$$.ctx = {};\n    }\n}\nfunction make_dirty(component, key) {\n    if (!component.$$.dirty) {\n        dirty_components.push(component);\n        schedule_update();\n        component.$$.dirty = blank_object();\n    }\n    component.$$.dirty[key] = true;\n}\nfunction init(component, options, instance, create_fragment, not_equal$$1, prop_names) {\n    const parent_component = current_component;\n    set_current_component(component);\n    const props = options.props || {};\n    const $$ = component.$$ = {\n        fragment: null,\n        ctx: null,\n        // state\n        props: prop_names,\n        update: noop,\n        not_equal: not_equal$$1,\n        bound: blank_object(),\n        // lifecycle\n        on_mount: [],\n        on_destroy: [],\n        before_render: [],\n        after_render: [],\n        context: new Map(parent_component ? parent_component.$$.context : []),\n        // everything else\n        callbacks: blank_object(),\n        dirty: null\n    };\n    let ready = false;\n    $$.ctx = instance\n        ? instance(component, props, (key, value) => {\n            if ($$.ctx && not_equal$$1($$.ctx[key], $$.ctx[key] = value)) {\n                if ($$.bound[key])\n                    $$.bound[key](value);\n                if (ready)\n                    make_dirty(component, key);\n            }\n        })\n        : props;\n    $$.update();\n    ready = true;\n    run_all($$.before_render);\n    $$.fragment = create_fragment($$.ctx);\n    if (options.target) {\n        if (options.hydrate) {\n            $$.fragment.l(children(options.target));\n        }\n        else {\n            $$.fragment.c();\n        }\n        if (options.intro && component.$$.fragment.i)\n            component.$$.fragment.i();\n        mount_component(component, options.target, options.anchor);\n        flush();\n    }\n    set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement !== 'undefined') {\n    SvelteElement = class extends HTMLElement {\n        constructor() {\n            super();\n            this.attachShadow({ mode: 'open' });\n        }\n        connectedCallback() {\n            // @ts-ignore todo: improve typings\n            for (const key in this.$$.slotted) {\n                // @ts-ignore todo: improve typings\n                this.appendChild(this.$$.slotted[key]);\n            }\n        }\n        attributeChangedCallback(attr$$1, oldValue, newValue) {\n            this[attr$$1] = newValue;\n        }\n        $destroy() {\n            destroy(this, true);\n            this.$destroy = noop;\n        }\n        $on(type, callback) {\n            // TODO should this delegate to addEventListener?\n            const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n            callbacks.push(callback);\n            return () => {\n                const index = callbacks.indexOf(callback);\n                if (index !== -1)\n                    callbacks.splice(index, 1);\n            };\n        }\n        $set() {\n            // overridden by instance, if it has props\n        }\n    };\n}\nclass SvelteComponent {\n    $destroy() {\n        destroy(this, true);\n        this.$destroy = noop;\n    }\n    $on(type, callback) {\n        const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n        callbacks.push(callback);\n        return () => {\n            const index = callbacks.indexOf(callback);\n            if (index !== -1)\n                callbacks.splice(index, 1);\n        };\n    }\n    $set() {\n        // overridden by instance, if it has props\n    }\n}\nclass SvelteComponentDev extends SvelteComponent {\n    constructor(options) {\n        if (!options || (!options.target && !options.$$inline)) {\n            throw new Error(`'target' is a required option`);\n        }\n        super();\n    }\n    $destroy() {\n        super.$destroy();\n        this.$destroy = () => {\n            console.warn(`Component was already destroyed`); // eslint-disable-line no-console\n        };\n    }\n}\n\nexport { create_animation, fix_position, handle_promise, append, insert, detach, detach_between, detach_before, detach_after, destroy_each, element, object_without_properties, svg_element, text, space, empty, listen, prevent_default, stop_propagation, attr, set_attributes, set_custom_element_data, xlink_attr, get_binding_group_value, to_number, time_ranges_to_array, children, claim_element, claim_text, set_data, set_input_type, set_style, select_option, select_options, select_value, select_multiple_value, add_resize_listener, toggle_class, custom_event, destroy_block, outro_and_destroy_block, fix_and_outro_and_destroy_block, update_keyed_each, measure, current_component, set_current_component, beforeUpdate, onMount, afterUpdate, onDestroy, createEventDispatcher, setContext, getContext, bubble, clear_loops, loop, dirty_components, intros, schedule_update, tick, add_binding_callback, add_render_callback, add_flush_callback, flush, get_spread_update, invalid_attribute_name_character, spread, escaped, escape, each, missing_component, validate_component, debug, create_ssr_component, get_store_value, group_outros, check_outros, on_outro, create_in_transition, create_out_transition, create_bidirectional_transition, noop, identity, assign, is_promise, add_location, run, blank_object, run_all, is_function, safe_not_equal, not_equal, validate_store, subscribe, create_slot, get_slot_context, get_slot_changes, exclude_internal_props, now, raf, set_now, set_raf, bind, mount_component, init, SvelteElement, SvelteComponent, SvelteComponentDev };\n","import { noop, safe_not_equal, run_all, is_function } from './internal';\n\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n    return {\n        subscribe: writable(value, start).subscribe,\n    };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n    let stop;\n    const subscribers = [];\n    function set(new_value) {\n        if (safe_not_equal(value, new_value)) {\n            value = new_value;\n            if (!stop) {\n                return; // not ready\n            }\n            subscribers.forEach((s) => s[1]());\n            subscribers.forEach((s) => s[0](value));\n        }\n    }\n    function update(fn) {\n        set(fn(value));\n    }\n    function subscribe(run, invalidate = noop) {\n        const subscriber = [run, invalidate];\n        subscribers.push(subscriber);\n        if (subscribers.length === 1) {\n            stop = start(set) || noop;\n        }\n        run(value);\n        return () => {\n            const index = subscribers.indexOf(subscriber);\n            if (index !== -1) {\n                subscribers.splice(index, 1);\n            }\n            if (subscribers.length === 0) {\n                stop();\n            }\n        };\n    }\n    return { set, update, subscribe };\n}\n/**\n * Derived value store by synchronizing one or more readable stores and\n * applying an aggregation function over its input values.\n * @param {Stores} stores input stores\n * @param {function(Stores=, function(*)=):*}fn function callback that aggregates the values\n * @param {*=}initial_value when used asynchronously\n */\nfunction derived(stores, fn, initial_value) {\n    const single = !Array.isArray(stores);\n    const stores_array = single\n        ? [stores]\n        : stores;\n    const auto = fn.length < 2;\n    return readable(initial_value, (set) => {\n        let inited = false;\n        const values = [];\n        let pending = 0;\n        let cleanup = noop;\n        const sync = () => {\n            if (pending) {\n                return;\n            }\n            cleanup();\n            const result = fn(single ? values[0] : values, set);\n            if (auto) {\n                set(result);\n            }\n            else {\n                cleanup = is_function(result) ? result : noop;\n            }\n        };\n        const unsubscribers = stores_array.map((store, i) => store.subscribe((value) => {\n            values[i] = value;\n            pending &= ~(1 << i);\n            if (inited) {\n                sync();\n            }\n        }, () => {\n            pending |= (1 << i);\n        }));\n        inited = true;\n        sync();\n        return function stop() {\n            run_all(unsubscribers);\n            cleanup();\n        };\n    });\n}\n/**\n * Get the current value from a store by subscribing and immediately unsubscribing.\n * @param store readable\n */\nfunction get(store) {\n    let value;\n    store.subscribe((_) => value = _)();\n    return value;\n}\n\nexport { readable, writable, derived, get };\n","/**\r\n *  These store is rensposible of handling the \"fake routing\" of the application,\r\n *  its a routing without browser history\r\n *\r\n */\r\nimport { writable, derived } from 'svelte/store';\r\n\r\nfunction createRouterStore() {\r\n  const { subscribe, set } = writable({\r\n    path: '/',\r\n    params: {}\r\n  });\r\n\r\n  return {\r\n    subscribe,\r\n    // Go To the defined path with the defined params\r\n    goTo: (path, params = {}) => set({ path, params })\r\n  };\r\n}\r\n\r\nexport const router = createRouterStore();\r\n\r\nexport const isCurrentPath = path =>\r\n  derived(router, $router => $router.path === path);\r\n","<script>\r\n    import {isCurrentPath} from '../store/router';\r\n    \r\n    export let component;\r\n    export let path;\r\n\r\n    const isActive = isCurrentPath(path);\r\n</script>\r\n\r\n<!-- Shows only the Active Component -->\r\n{#if $isActive}\r\n<svelte:component this={component} />\r\n{/if}","/**\r\n * Performs an Ajax Call\r\n *\r\n * @param {*} options\r\n * \r\n * @returns a fetch call\r\n */\r\nexport function ajaxCall(options = {}) {\r\n  const {\r\n    action,\r\n    nonce,\r\n    nonceField,\r\n    data,\r\n    method,\r\n    credentials,\r\n    url\r\n  } = options;\r\n\r\n  if (!action) {\r\n    throw new TypeError('Cannot make ajax call without action');\r\n  }\r\n  if (!nonce) {\r\n    throw new TypeError('Cannot make ajax call without nonce');\r\n  }\r\n  \r\n  if (data && typeof data !== 'object') {\r\n    throw new TypeError('Data to send must be an object');\r\n  }\r\n\r\n  // WordPress automatically defines ajaxurl since WordPress 2.8\r\n  if (!url && !window.ajaxurl) {\r\n    throw new TypeError('Cannot make ajax call without url');\r\n  }\r\n\r\n  let formData = new FormData();\r\n  formData.append('action', action);\r\n  formData.append(nonceField || 'security', nonce);\r\n\r\n  if (data) {\r\n    // appends data as form encoded\r\n    for (let key in data) {\r\n      formData.append(key, data[key]);\r\n    }\r\n  }\r\n\r\n  return fetch(url || window.ajaxurl, {\r\n    method: method || 'POST',\r\n    body: formData,\r\n    credentials: credentials || 'same-origin'\r\n  });\r\n}\r\n","import { writable } from 'svelte/store';\r\n\r\nfunction createNotificationStore() {\r\n    const { subscribe, update } = writable({\r\n        currentNotification: null\r\n      });\r\n    \r\n      return {\r\n        subscribe,\r\n        // Go To the defined path with the defined params\r\n        addNotification: (message, type = \"success\") => {\r\n            update( data => {\r\n                data.currentNotification = {message, type};\r\n                return {...data}\r\n            });\r\n            setTimeout(() => {\r\n                update( data => {\r\n                    data.currentNotification = null;\r\n                    return {...data}\r\n                })\r\n            }, 5000)\r\n        }\r\n      };\r\n}\r\n\r\nexport const notifications = createNotificationStore();\r\n","/**\r\n *\r\n * This store handles webflow data and makes api calls\r\n *\r\n */\r\nimport { writable } from 'svelte/store';\r\nimport { router } from './router';\r\nimport { ajaxCall } from '../utils/ajax';\r\nimport { notifications } from '../store/notifications';\r\n\r\nconst {\r\n  hasToken,\r\n  nonce,\r\n  pages,\r\n  collections,\r\n  site,\r\n  staticRules,\r\n  dynamicRules,\r\n  error,\r\n  cacheDuration\r\n} = window._wfAjaxData;\r\n\r\nif (site) {\r\n  site.dashboardUrl = `https://webflow.com/dashboard/sites/${site.shortName}/settings`\r\n}\r\n\r\nif (error) {\r\n    router.goTo('/login');\r\n    notifications.addNotification(error, \"error\");\r\n} else {\r\n  if (hasToken === 'true') {\r\n    router.goTo('/configuration');\r\n  } else {\r\n    router.goTo('/login');\r\n  }\r\n}\r\n\r\nfunction createWfDataStore() {\r\n  const { subscribe, set, update } = writable({\r\n    pages: pages || [],\r\n    collections: collections || [],\r\n    site: site || undefined,\r\n    staticRules: staticRules || [],\r\n    dynamicRules: dynamicRules || [],\r\n    cacheDuration: cacheDuration || 0\r\n  });\r\n\r\n  return {\r\n    subscribe,\r\n    // Go To the defined path with the defined params\r\n    saveToken: async token => {\r\n      try {\r\n        await ajaxCall({\r\n          nonce,\r\n          data: {\r\n            token\r\n          },\r\n          action: 'save_wf_token'\r\n        });\r\n\r\n        const call = await ajaxCall({\r\n          nonce,\r\n          action: 'get_wf_site_data'\r\n        });\r\n\r\n        let res = await call.json();\r\n        if (res.success) {\r\n          // set data\r\n          set({\r\n            pages: res.data.pages || [],\r\n            collections: res.data.collections || [],\r\n            site: res.data.site,\r\n            dynamicRules: [],\r\n            staticRules: []\r\n          });\r\n          notifications.addNotification('Token Saved Successfully');\r\n          // switch page\r\n          router.goTo('/configuration');\r\n        } else {\r\n          // invalid token prob\r\n          const error = res.data[0] || {\r\n            code: '401',\r\n            message: 'Invalid Token'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n        }\r\n      } catch (e) {\r\n        // should be an issue with server\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save api token, please try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n      }\r\n    },\r\n    removeToken: async () => {\r\n      try {\r\n        await ajaxCall({\r\n          nonce,\r\n          action: 'remove_wf_token'\r\n        });\r\n        notifications.addNotification('Token removed successfully');\r\n        window.location.reload();\r\n        \r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot remove token, please try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n      }\r\n    },\r\n    addStaticRule: (rule) => {\r\n      update(data => {\r\n        data.staticRules.push(rule);\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    removeStaticRule: index => {\r\n      update(data => {\r\n        data.staticRules.splice(index, 1);\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    addDynamicRule: (rule) => {\r\n      update(data => {\r\n        data.dynamicRules.push(rule); // [`/${slug}/*`, `/${slug}/`]\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    removeDynamicRule: index => {\r\n      update(data => {\r\n        data.dynamicRules.splice(index, 1);\r\n        return {\r\n          ...data\r\n        };\r\n      });\r\n    },\r\n    saveStaticRules: async rules => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'save_wf_static_rules',\r\n          nonce,\r\n          data: {\r\n            rules: JSON.stringify(rules)\r\n          }\r\n        });\r\n\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          const staticRules = res.data;\r\n          update(n => {\r\n            n.staticRules = staticRules;\r\n            return {\r\n              ...n\r\n            };\r\n          });\r\n          notifications.addNotification(`Rules saved successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    saveDynamicRules: async rules => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'save_wf_dynamic_rules',\r\n          nonce,\r\n          data: {\r\n            rules: JSON.stringify(rules)\r\n          }\r\n        });\r\n\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          const dynamicRules = res.data;\r\n          update(n => {\r\n            n.dynamicRules = dynamicRules;\r\n            return {\r\n              ...n\r\n            };\r\n          });\r\n          notifications.addNotification(`Rules saved successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    invalidateCache: async () => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'invalidate_wf_cache',\r\n          nonce\r\n        });\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          notifications.addNotification(`Cache invalidated successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    changeCache: async (duration) => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'change_wf_cache_duration',\r\n          nonce,\r\n          data: {\r\n            duration\r\n          }\r\n        });\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          notifications.addNotification(`Cache settings changed successfully`);\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    },\r\n    preloadCache: async () => {\r\n      try {\r\n        const call = await ajaxCall({\r\n          action: 'preload_wf_cache',\r\n          nonce\r\n        });\r\n        const res = await call.json();\r\n        if (res.success) {\r\n          const pages = res.data || 0;\r\n          notifications.addNotification(\r\n            `Preloaded ${pages} ${pages == 1 ? 'page' : 'pages'}!`\r\n          );\r\n          return true;\r\n        } else {\r\n          const error = res.data[0] || {\r\n            code: '500',\r\n            message: 'Internal Server Error'\r\n          };\r\n          notifications.addNotification(error.message, 'error');\r\n          return false;\r\n        }\r\n      } catch (e) {\r\n        const error = {\r\n          code: e.code || '500',\r\n          message: e.message || 'Cannot save data please, try again later'\r\n        };\r\n        notifications.addNotification(error.message, 'error');\r\n        return false;\r\n      }\r\n    }\r\n  };\r\n}\r\n\r\nexport const store = createWfDataStore();\r\n","<script>\r\n  export let value = \"Submit\";\r\n  export let disabled = false;\r\n  export let variation = null;\r\n</script>\r\n\r\n<style>\r\n  input[type=\"submit\"] {\r\n    -webkit-appearance: button;\r\n  }\r\n\r\n  input[type=\"submit\"] {\r\n    display: inline-block;\r\n    padding: 9px 15px;\r\n    color: white;\r\n    border: 0;\r\n    line-height: inherit;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    border-radius: 4px;\r\n  }\r\n\r\n  .form_submit-button {\r\n    width: 100%;\r\n    height: 50px;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #4353ff;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button:hover {\r\n    background-color: #3545ee;\r\n  }\r\n  .form_submit-button:disabled {\r\n    opacity: 0.7;\r\n    cursor: not-allowed;\r\n  }\r\n  .form_submit-button[variation=\"small\"] {\r\n    width: 150px;\r\n    height: auto;\r\n  }\r\n\r\n  .form_submit-button[variation=\"black\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #333;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"black\"]:hover {\r\n    background-color: #000;\r\n  }\r\n\r\n  .form_submit-button[variation=\"red\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #ff6382;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"red\"]:hover {\r\n    background-color: #ff6382;\r\n  }\r\n\r\n  .form_submit-button[variation=\"grey\"] {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #d2d4d5;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .form_submit-button[variation=\"grey\"]:hover {\r\n    background-color: #d2d4d5;\r\n  }\r\n</style>\r\n\r\n<input\r\n  type=\"submit\"\r\n  {value}\r\n  class=\"form_submit-button\"\r\n  {variation}\r\n  {disabled} />\r\n","<script>\r\n  export let forHtml = \"\";\r\n</script>\r\n\r\n<style>\r\n  .field_label {\r\n    margin-top: 6px;\r\n    margin-bottom: 6px;\r\n    color: #999999;\r\n    font-size: 12px;\r\n    line-height: 18px;\r\n    font-weight: bold;\r\n    display: block;\r\n  }\r\n</style>\r\n\r\n<label class=\"field_label\" for={forHtml}>\r\n  <slot />\r\n</label>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Container from \"../components/Container.svelte\";\r\n\r\n  import Submit from \"../components/Submit.svelte\";\r\n  import Label from \"../components/Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import Logo from \"../components/Logo.svelte\";\r\n\r\n  const loginStore = writable({\r\n    disabled: false,\r\n    value: \"Add Webflow API Key\"\r\n  });\r\n\r\n  let token = \"\";\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    loginStore.set({ disabled: true, value: \"Saving...\" });\r\n    await store.saveToken(token);\r\n    loginStore.set({ disabled: false, value: \"Add Webflow API Key\" });\r\n  };\r\n</script>\r\n\r\n<style>\r\n  .login-wrapper {\r\n    background-color: white;\r\n    padding: 40px;\r\n    border-radius: 4px;\r\n    border: 1px solid #f7f7f7;\r\n    width: 450px;\r\n    text-align: center;\r\n  }\r\n  form {\r\n    max-width: 500px;\r\n    margin: auto;\r\n  }\r\n  p {\r\n    text-align: center;\r\n    margin: 0;\r\n    margin-bottom: 30px;\r\n    font-size: 14px;\r\n  }\r\n  a {\r\n    color: black;\r\n    text-align: center;\r\n    outline: 0;\r\n    box-shadow: none;\r\n  }\r\n  input.field-input {\r\n    margin-bottom: 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  .warning-notice {\r\n    background-color: #f7f8f9;\r\n    padding: 20px;\r\n    border-radius: 4px;\r\n    margin-top: 20px;\r\n  }\r\n</style>\r\n\r\n<Container>\r\n  <div class=\"login-wrapper\">\r\n    <Logo />\r\n    <b>Congratulations on installing the Webflow Wordpress plugin!</b>\r\n    <p>\r\n      You can find your site's API key by going to the <a href=\"https://webflow.com/dashboard?utm_source=wpplugin\" target=\"_blank\" rel=\"nofollow\">Webflow Dashboard</a>, then your site's settings\r\n    </p>\r\n    <form on:submit={handleSubmit}>\r\n\r\n      <input\r\n        class=\"field-input\"\r\n        bind:value={token}\r\n        type=\"password\"\r\n        name=\"api_keys\"\r\n        autocomplete=\"off\"\r\n        placeholder=\"Your Api Key...\"\r\n        required />\r\n      <Submit value={$loginStore.value} disabled={$loginStore.disabled} />\r\n    </form>\r\n\r\n    <div class=\"warning-notice\">\r\n      This version of the plugin is not compatible with Webflow Ecommerce. Please contact <a href=\"https://university.webflow.com/contact\" target=\"_blank\" rel=\"nofollow\">Webflow Support</a> for any help with the plugin.\r\n    </div>\r\n  </div>\r\n</Container>\r\n","<script>\r\n  import { router } from \"../store/router\";\r\n  import { isCurrentPath } from \"../store/router\";\r\n\r\n  export let path;\r\n  export let params = {};\r\n\r\n  export let text = \"\";\r\n\r\n  const handleClick = e => {\r\n    e.preventDefault();\r\n    router.goTo(path, params);\r\n  };\r\n\r\n  const isActive = isCurrentPath(path);\r\n \r\n</script>\r\n\r\n<style>\r\n  a {\r\n    height: 36px;\r\n    margin-bottom: 0px;\r\n    margin-right: 10px;\r\n    padding-left: 10px;\r\n    padding-right: 10px;\r\n    -webkit-box-flex: 0;\r\n    -webkit-flex: 0 0 auto;\r\n    -ms-flex: 0 0 auto;\r\n    flex: 0 0 auto;\r\n    -webkit-transition: color 200ms ease-in-out;\r\n    transition: color 200ms ease-in-out;\r\n    color: #888;\r\n    font-size: 15px;\r\n    line-height: 37px;\r\n    font-weight: 500;\r\n    text-decoration: none;\r\n    border-bottom: 2px solid transparent;\r\n  }\r\n  a:hover {\r\n    color: #000;\r\n  }\r\n  a.is-active {\r\n    color: #000;\r\n    border-bottom: 2px solid #000;\r\n  }\r\n  a:focus {\r\n    outline: none;\r\n    box-shadow: none;\r\n  }\r\n</style>\r\n\r\n<a href=\"/\" on:click={handleClick} class={$isActive ? 'is-active' : ''}>\r\n  {text}\r\n</a>\r\n"," <script>\r\n import Navbar from './Navbar.svelte';\r\n import Link from './Link.svelte';\r\n </script>\r\n \r\n <Navbar>\r\n    <Link path=\"/configuration\" text={\"Pages\"}></Link>\r\n    <Link path=\"/settings\" text={\"Settings\"}></Link>\r\n </Navbar>","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n  import { onMount } from \"svelte\";\r\n\r\n  const hasItems = $store.staticRules.length > 0;\r\n\r\n  let staticRule = [\"\", \"\"];\r\n\r\n  let canAdd = false;\r\n\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n   \r\n    await store.saveStaticRules($store.staticRules);\r\n    \r\n  };\r\n\r\n  const addStaticRule = e => {\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    store.addStaticRule(staticRule);\r\n    staticRule = [\"\", \"\"];\r\n    canAdd = false;\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const removeStaticRule = index => {\r\n    store.removeStaticRule(index);\r\n    store.saveStaticRules($store.staticRules);\r\n  };\r\n\r\n  const handleInput = ({ target }) => {\r\n    let value = target.value;\r\n    let isAdd = target.getAttribute(\"data-add\");\r\n    target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    value = target.value;\r\n    const match = value.match(/^(\\.?){2}(\\/[a-zA-Z0-9_\\-]+)+\\/?$/g);\r\n    if (match && match[0] === value || value === \"/\") {\r\n      target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n\r\n  const pages = $store.pages.filter( page => page !== '/404' && page !== '/401' );\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n    margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n\r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-pages-added {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n  }\r\n  .no-pages-added p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper, .added-pages .fields-headers{\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Static Pages</h3>\r\n    \r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n    <p class=\"section-description\">Create a new redirect</p>\r\n      <p class=\"description-subtitle\">Create redirects to serve a made-in-Webflow page in place of a WordPress Page</p>\r\n      <div class=\"grid grid-with-actions \">\r\n        <div>\r\n          <Label>WordPress Path</Label>\r\n        </div>\r\n        <div>\r\n          <Label>Webflow Page</Label>\r\n        </div>\r\n        <div style=\"visibility:hidden\">\r\n          <button disabled class=\"button add\">+</button>\r\n        </div>\r\n      </div>\r\n      <div class=\"input-wrapper\">\r\n\r\n        <form on:submit={addStaticRule} class=\"grid grid-with-actions\">\r\n          <div>\r\n            <input\r\n              data-add=\"true\"\r\n              class=\"field-input\"\r\n              type=\"text\"\r\n              bind:value={staticRule[0]}\r\n              required\r\n              placeholder=\"/path\"\r\n              on:input={handleInput} />\r\n            <small class=\"error-message\">\r\n              Path must start with / and be valid URLs\r\n            </small>\r\n          </div>\r\n          <div>\r\n\r\n            <select bind:value={staticRule[1]} class=\"field-select\">\r\n              {#each pages as page}\r\n                <option value={page}>\r\n                   {page.substr(1).replace('index.html', 'Home Page')}\r\n                </option>\r\n              {/each}\r\n            </select>\r\n          </div>\r\n\r\n          <button\r\n            type=\"submit\"\r\n            disabled={!canAdd}\r\n            class=\"button add\"\r\n            on:click={addStaticRule}>\r\n            +\r\n          </button>\r\n        </form>\r\n\r\n      </div>\r\n\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.staticRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.staticRules as staticRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={staticRule[0]}\r\n                    readonly\r\n                    disabled\r\n                    on:input={handleInput} />\r\n                </div>\r\n                <div>\r\n                  <select bind:value={staticRule[1]} class=\"field-select\" disabled>\r\n                    {#each pages as page}\r\n                      <option value={page}>\r\n                         {page.substr(1).replace('index.html', 'Home Page')}\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeStaticRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-pages-added\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n</div>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import Label from \"./Label.svelte\";\r\n  import { writable } from \"svelte/store\";\r\n\r\n  const hasItems = $store.dynamicRules.length > 0;\r\n\r\n  const firstCollection = $store.collections[0];\r\n\r\n  let dynamicRule = [\"\", \"\"];\r\n  if ($store.collections.length) {\r\n    dynamicRule = [``, `/${$store.collections[0].slug}/`];\r\n  }\r\n\r\n  let canAdd = false;\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n\r\n    await store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const addDynamicRule = e => {\r\n    canAdd = false;\r\n    e.preventDefault();\r\n    document.activeElement.blur();\r\n    if (!dynamicRule || !dynamicRule[0]) {\r\n      canAdd = false;\r\n      return;\r\n    }\r\n    store.addDynamicRule(dynamicRule);\r\n    dynamicRule = [``, ``];\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const removeDynamicRule = index => {\r\n    store.removeDynamicRule(index);\r\n    store.saveDynamicRules($store.dynamicRules);\r\n  };\r\n\r\n  const handleInput = e => {\r\n    let value = e.target.value;\r\n    e.target.value = encodeURI(decodeURI(value)); // little sanitification\r\n    let isAdd = e.target.getAttribute(\"data-add\");\r\n    value = e.target.value;\r\n    const match = value.match(/\\/.*?\\/\\*/g);\r\n    if (match && match[0] === value) {\r\n      e.target.setCustomValidity(\"\");\r\n      if (isAdd) {\r\n        canAdd = true;\r\n      }\r\n    } else {\r\n      e.target.setCustomValidity(\"Invalid field.\");\r\n      if (isAdd) {\r\n        canAdd = false;\r\n      }\r\n    }\r\n  };\r\n</script>\r\n\r\n<style>\r\n  \r\n  .headers h3 {\r\n    margin: 0;\r\n    height: 10%;\r\n     margin-bottom: 6px;\r\n  }\r\n  .form-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    height: auto;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    margin-bottom: 10px;\r\n  }\r\n\r\n  .form-wrapper.new-page {\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  form.configuration-form {\r\n    border-radius: 4px;\r\n    height: calc(100% - 32px);\r\n    width: 100%;\r\n    display: inline-flex;\r\n\r\n    flex-direction: column;\r\n  }\r\n  \r\n  .section-description {\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n  }\r\n  .no-collections {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    flex: 1;\r\n    width: 100%;\r\n    background-color: #f7f7f7;\r\n    border: 1px solid #f7f7f7;\r\n    min-height: 90px;\r\n  }\r\n  .no-collections p {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n  }\r\n  .added-pages {\r\n    flex: 1;\r\n    display: inline-flex;\r\n    flex-direction: column;\r\n  }\r\n  .added-pages .fields-wrapper,\r\n  .added-pages .fields-headers {\r\n    padding: 0 10px;\r\n    background-color: #f7f8f9;\r\n  }\r\n\r\n  :global(.fields-wrapper) {\r\n    flex: 1;\r\n    overflow: auto;\r\n    max-height: calc(50px * 5);\r\n  }\r\n\r\n:global(.fields-wrapper::-webkit-scrollbar){\r\n\twidth: 3px;\r\n\tbackground-color: #F5F5F5;\r\n}\r\n\r\n:global(.fields-wrapper::-webkit-scrollbar-thumb){\r\n\tbackground-color: #a1a1a1;\r\n}\r\n</style>\r\n\r\n<div class=\"wrapper\">\r\n  <div\r\n    style=\"display: flex; flex-direction: column; justify-content: space-evenly;\">\r\n    <div class=\"headers\">\r\n      <h3>Collection Pages</h3>\r\n    </div>\r\n    <div class=\"form-wrapper new-page\">\r\n      <p class=\"section-description\">Create a new Rule</p>\r\n      {#if $store.collections.length > 0}\r\n        <div class=\"grid grid-with-actions\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"input-wrapper\">\r\n          <form on:submit={addDynamicRule} class=\"grid grid-with-actions\">\r\n\r\n            <div>\r\n\r\n              <input\r\n                data-add=\"true\"\r\n                class=\"field-input\"\r\n                type=\"text\"\r\n                bind:value={dynamicRule[0]}\r\n                required\r\n                placeholder=\"/path/*\"\r\n                on:input={handleInput} />\r\n              <small class=\"error-message\">\r\n                Path must start with / and be valid URLs and end with /*\r\n              </small>\r\n            </div>\r\n            <div>\r\n\r\n              <select bind:value={dynamicRule[1]} class=\"field-select\">\r\n                {#each $store.collections as collection}\r\n                  <option value={'/' + collection.slug + '/'}>\r\n                    /{collection.slug}/*\r\n                  </option>\r\n                {/each}\r\n              </select>\r\n            </div>\r\n\r\n            <button\r\n              type=\"submit\"\r\n              disabled={!canAdd}\r\n              class=\"button add\"\r\n              on:click={addDynamicRule}>\r\n              +\r\n            </button>\r\n          </form>\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No collections</p>\r\n        </div>\r\n      {/if}\r\n    </div>\r\n  </div>\r\n  <div class=\"added-pages\">\r\n    <p class=\"section-description\">Rules</p>\r\n    <form on:submit={handleSubmit} class=\"configuration-form\">\r\n      {#if $store.dynamicRules.length}\r\n        <div class=\"grid grid-with-actions fields-headers\">\r\n          <div>\r\n            <Label>WordPress Path</Label>\r\n          </div>\r\n          <div>\r\n            <Label>Webflow Page</Label>\r\n          </div>\r\n          <div style=\"visibility:hidden\">\r\n            <button disabled class=\"button add\">+</button>\r\n          </div>\r\n        </div>\r\n        <div class=\"fields-wrapper\">\r\n          {#each $store.dynamicRules as dynamicRule, index}\r\n            <div class=\"input-wrapper\">\r\n              <div class=\"grid grid-with-actions\">\r\n                <div>\r\n                  <input\r\n                    class=\"field-input\"\r\n                    type=\"text\"\r\n                    bind:value={dynamicRule[0]}\r\n                    required\r\n                    disabled\r\n                    on:input={handleInput}\r\n                    readonly />\r\n\r\n                </div>\r\n                <div>\r\n                  <select\r\n                    bind:value={dynamicRule[1]}\r\n                    class=\"field-select\"\r\n                    disabled>\r\n                    {#each $store.collections as collection}\r\n                      <option value={'/' + collection.slug + '/'}>\r\n                        /{collection.slug}/*\r\n                      </option>\r\n                    {/each}\r\n                  </select>\r\n                </div>\r\n\r\n                <a\r\n                  class=\"button remove\"\r\n                  on:click={() => removeDynamicRule(index)}>\r\n                  X\r\n                </a>\r\n\r\n              </div>\r\n            </div>\r\n          {/each}\r\n        </div>\r\n      {:else}\r\n        <div class=\"no-collections\">\r\n          <p>No rules added</p>\r\n        </div>\r\n      {/if}\r\n    </form>\r\n  </div>\r\n\r\n</div>\r\n","import { cubicOut, cubicInOut } from './easing';\nimport { is_function, assign } from './internal';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n    var t = {};\r\n    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n        t[p] = s[p];\r\n    if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n            t[p[i]] = s[p[i]];\r\n    return t;\r\n}\n\nfunction fade(node, { delay = 0, duration = 400 }) {\n    const o = +getComputedStyle(node).opacity;\n    return {\n        delay,\n        duration,\n        css: t => `opacity: ${t * o}`\n    };\n}\nfunction fly(node, { delay = 0, duration = 400, easing = cubicOut, x = 0, y = 0, opacity = 0 }) {\n    const style = getComputedStyle(node);\n    const target_opacity = +style.opacity;\n    const transform = style.transform === 'none' ? '' : style.transform;\n    const od = target_opacity * (1 - opacity);\n    return {\n        delay,\n        duration,\n        easing,\n        css: (t, u) => `\n\t\t\ttransform: ${transform} translate(${(1 - t) * x}px, ${(1 - t) * y}px);\n\t\t\topacity: ${target_opacity - (od * u)}`\n    };\n}\nfunction slide(node, { delay = 0, duration = 400, easing = cubicOut }) {\n    const style = getComputedStyle(node);\n    const opacity = +style.opacity;\n    const height = parseFloat(style.height);\n    const padding_top = parseFloat(style.paddingTop);\n    const padding_bottom = parseFloat(style.paddingBottom);\n    const margin_top = parseFloat(style.marginTop);\n    const margin_bottom = parseFloat(style.marginBottom);\n    const border_top_width = parseFloat(style.borderTopWidth);\n    const border_bottom_width = parseFloat(style.borderBottomWidth);\n    return {\n        delay,\n        duration,\n        easing,\n        css: t => `overflow: hidden;` +\n            `opacity: ${Math.min(t * 20, 1) * opacity};` +\n            `height: ${t * height}px;` +\n            `padding-top: ${t * padding_top}px;` +\n            `padding-bottom: ${t * padding_bottom}px;` +\n            `margin-top: ${t * margin_top}px;` +\n            `margin-bottom: ${t * margin_bottom}px;` +\n            `border-top-width: ${t * border_top_width}px;` +\n            `border-bottom-width: ${t * border_bottom_width}px;`\n    };\n}\nfunction scale(node, { delay = 0, duration = 400, easing = cubicOut, start = 0, opacity = 0 }) {\n    const style = getComputedStyle(node);\n    const target_opacity = +style.opacity;\n    const transform = style.transform === 'none' ? '' : style.transform;\n    const sd = 1 - start;\n    const od = target_opacity * (1 - opacity);\n    return {\n        delay,\n        duration,\n        easing,\n        css: (t, u) => `\n\t\t\ttransform: ${transform} scale(${1 - (sd * u)});\n\t\t\topacity: ${target_opacity - (od * u)}\n\t\t`\n    };\n}\nfunction draw(node, { delay = 0, speed, duration, easing = cubicInOut }) {\n    const len = node.getTotalLength();\n    if (duration === undefined) {\n        if (speed === undefined) {\n            duration = 800;\n        }\n        else {\n            duration = len / speed;\n        }\n    }\n    else if (typeof duration === 'function') {\n        duration = duration(len);\n    }\n    return {\n        delay,\n        duration,\n        easing,\n        css: (t, u) => `stroke-dasharray: ${t * len} ${u * len}`\n    };\n}\nfunction crossfade(_a) {\n    var { fallback } = _a, defaults = __rest(_a, [\"fallback\"]);\n    const to_receive = new Map();\n    const to_send = new Map();\n    function crossfade(from, node, params) {\n        const { delay = 0, duration = d => Math.sqrt(d) * 30, easing = cubicOut } = assign(assign({}, defaults), params);\n        const to = node.getBoundingClientRect();\n        const dx = from.left - to.left;\n        const dy = from.top - to.top;\n        const d = Math.sqrt(dx * dx + dy * dy);\n        const style = getComputedStyle(node);\n        const transform = style.transform === 'none' ? '' : style.transform;\n        const opacity = +style.opacity;\n        return {\n            delay,\n            duration: is_function(duration) ? duration(d) : duration,\n            easing,\n            css: (t, u) => `\n\t\t\t\topacity: ${t * opacity};\n\t\t\t\ttransform: ${transform} translate(${u * dx}px,${u * dy}px);\n\t\t\t`\n        };\n    }\n    function transition(items, counterparts, intro) {\n        return (node, params) => {\n            items.set(params.key, {\n                rect: node.getBoundingClientRect()\n            });\n            return () => {\n                if (counterparts.has(params.key)) {\n                    const { rect } = counterparts.get(params.key);\n                    counterparts.delete(params.key);\n                    return crossfade(rect, node, params);\n                }\n                // if the node is disappearing altogether\n                // (i.e. wasn't claimed by the other list)\n                // then we need to supply an outro\n                items.delete(params.key);\n                return fallback && fallback(node, params, intro);\n            };\n        };\n    }\n    return [\n        transition(to_send, to_receive, false),\n        transition(to_receive, to_send, true)\n    ];\n}\n\nexport { fade, fly, slide, scale, draw, crossfade };\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n  import { fade } from 'svelte/transition';\r\n\r\n  const removeTokenStore = writable({\r\n    disabled: false,\r\n    value: \"Reset\"\r\n  });\r\n\r\n  const modalStore = writable({\r\n    open: false\r\n  })\r\n\r\n  const handleRemoveToken = async e => {\r\n    e.preventDefault();\r\n    const res = await modalResponse();\r\n    if (!res) {\r\n      return;\r\n    }\r\n    removeTokenStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.removeToken();\r\n    removeTokenStore.set({ disabled: false, value: \"Reset\" });\r\n  };\r\n\r\n\r\n\r\n  const closeModal = e => {\r\n    e.preventDefault();\r\n    document.body.dispatchEvent(new CustomEvent('webflow-modal-remove-token', {detail: false}));\r\n  }\r\n\r\n  const acceptModal = e => {\r\n    e.preventDefault();\r\n    document.body.dispatchEvent(new CustomEvent('webflow-modal-remove-token', {detail: true}));\r\n  }\r\n\r\n  const modalResponse = () => {\r\n    return new Promise( res => {\r\n      modalStore.set({open: true});\r\n      document.body.addEventListener('webflow-modal-remove-token', e => {\r\n        modalStore.set({open: false})\r\n        res(e.detail);\r\n      }, {once: true});\r\n    })\r\n  }\r\n\r\n</script>\r\n\r\n<style>\r\n  .modal-wrapper {\r\n    position: fixed;\r\n    top: 0;\r\n    left: 0;\r\n    background-color: rgba(0, 0, 0, 0.7);\r\n    z-index: 99999999;\r\n    width: 100vw;\r\n    height: 100vh;\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .modal {\r\n    background-color: white;\r\n    height: 30vh;\r\n    width: 30vw;\r\n    display: grid;\r\n    grid-template-rows: auto 1fr;\r\n  }\r\n  .modal-header {\r\n    display: flex;\r\n    padding: 20px 15px;\r\n    justify-content: space-between;\r\n    font-weight: 700;\r\n    font-size: 16px;\r\n    border-bottom: 1px solid #f7f7f7;\r\n  }\r\n  .modal-header a {\r\n    color: black;\r\n    text-decoration: none;\r\n  }\r\n  .modal-content {\r\n    background-color: #f5f5f5;\r\n    display: flex;\r\n    flex-direction: column;\r\n    justify-content: center;\r\n    align-items: center;\r\n  }\r\n  .modal-button {\r\n    display: inline-block;\r\n    padding: 9px 15px;\r\n    color: white;\r\n    border: 0;\r\n    line-height: inherit;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    border-radius: 4px;\r\n  }\r\n  .modal-button.red {\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #FF6382;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .modal-button.red:hover {\r\n    background-color: #FF6382;\r\n  }\r\n\r\n  .modal-button.grey{\r\n    width: auto;\r\n    height: auto;\r\n    padding-right: 28px;\r\n    padding-left: 28px;\r\n    background-color: #d2d4d5;\r\n    font-weight: 500;\r\n  }\r\n\r\n  .modal-button.grey:hover {\r\n    background-color: #d2d4d5;\r\n  }\r\n</style>\r\n\r\n<h4>Remove Website</h4>\r\n<p class=\"description-subtitle\">Disconnect your Webflow project from your WordPress site.</p>\r\n<form on:submit={handleRemoveToken}>\r\n  <Submit\r\n    value={$removeTokenStore.value}\r\n    disabled={$removeTokenStore.disabled}\r\n    variation=\"red\" />\r\n</form>\r\n\r\n{#if $modalStore.open}\r\n<div class=\"modal-wrapper\">\r\n  <div class=\"modal\" transition:fade>\r\n    <div class=\"modal-header\">\r\n      <div>Do you want to remove all the Webflow Pages?</div>\r\n      <a on:click={closeModal}>X</a>\r\n    </div>\r\n    <div class=\"modal-content\">\r\n    <p>Are you sure you want to remove all your Webflow Settings?</p>\r\n        <div class=\"modal-actions\">\r\n          <button class=\"modal-button grey\" on:click={closeModal}>Cancel</button>\r\n          <button class=\"modal-button red\" on:click={acceptModal}>Confirm</button>\r\n        </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n{/if}","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const invalidateCacheStore = writable({\r\n    disabled: false,\r\n    value: \"Invalidate Cache\"\r\n  });\r\n\r\n  const handleInvalidateCache = async e => {\r\n    e.preventDefault();\r\n    invalidateCacheStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.invalidateCache();\r\n    invalidateCacheStore.set({ disabled: false, value: \"Invalidate Cache\" });\r\n  };\r\n</script>\r\n\r\n<h4>Invalidate Cache</h4>\r\n<p class=\"description-subtitle\">Deletes your WordPress site's cache, which can be helpful with debugging.</p>\r\n<form on:submit={handleInvalidateCache}>\r\n  <Submit\r\n    value={$invalidateCacheStore.value}\r\n    disabled={$invalidateCacheStore.disabled} variation=\"black\"/>\r\n</form>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const preloadCacheStore = writable({\r\n    disabled: false,\r\n    value: \"Preload Cache\"\r\n  });\r\n\r\n  const handlePreloadCache = async e => {\r\n    e.preventDefault();\r\n    preloadCacheStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.preloadCache();\r\n    preloadCacheStore.set({ disabled: false, value: \"Preload Cache\" });\r\n  };\r\n</script>\r\n\r\n<h4>Preload static page cache</h4>\r\n<p class=\"description-subtitle\">Preload your static page cache to help pages load faster.</p>\r\n<form on:submit={handlePreloadCache}>\r\n  <Submit\r\n    value={$preloadCacheStore.value}\r\n    disabled={$preloadCacheStore.disabled} variation=\"black\"/>\r\n</form>\r\n","<script>\r\n  import { store } from \"../store/wfData\";\r\n  import { writable } from \"svelte/store\";\r\n  import Submit from \"./Submit.svelte\";\r\n\r\n  const localStore = writable({\r\n    disabled: false,\r\n    value: \"Save\"\r\n  });\r\n\r\n  let val = $store.cacheDuration;\r\n\r\n  const options = [\r\n    {\r\n      value: \"0\",\r\n      name: \"As long as possible\"\r\n    },\r\n    {\r\n      value: \"60\",\r\n      name: \"1 minute\"\r\n    },\r\n    {\r\n      value: 60 * 5 + \"\",\r\n      name: \"5 minutes\"\r\n    },\r\n    {\r\n      value: 60 * 15 + \"\",\r\n      name: \"15 minutes\"\r\n    },\r\n    {\r\n      value: 60 * 60 + \"\",\r\n      name: \"1 hour\"\r\n    },\r\n    {\r\n      value: 60 * 60 * 24 + \"\",\r\n      name: \"1 day\"\r\n    }\r\n  ];\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    localStore.set({ disabled: true, value: \"Wait...\" });\r\n    await store.changeCache(val);\r\n    localStore.set({ disabled: false, value: \"Save\" });\r\n  };\r\n</script>\r\n<style>\r\nform {\r\ndisplay: grid;\r\n    grid-gap: 8px;\r\n    justify-content: center;\r\n    align-items: center;\r\n    grid-template-columns: 1fr 1fr;\r\n}\r\nselect {\r\n  background-color: #f7f8f9;\r\n}\r\n\r\n</style>\r\n<h4>Cache Duration</h4>\r\n<p class=\"description-subtitle\">Define how long your site caches your Webflow pages. Cached pages load faster.</p>\r\n<form on:submit={handleSubmit} >\r\n  <select class=\"field-select\" bind:value={val}>\r\n    {#each options as option}\r\n      <option value={option.value}> {option.name} </option>\r\n    {/each}\r\n  </select>\r\n  <Submit\r\n    value={$localStore.value}\r\n    disabled={$localStore.disabled}\r\n    variation=\"small\"\r\n   />\r\n</form>\r\n","<script>\r\n  import {store} from '../store/wfData';\r\n\r\n</script>\r\n\r\n<style>\r\n  img {\r\n    max-width: 100%;\r\n    height: auto;\r\n  }\r\n  a {box-shadow: none}\r\n</style>\r\n\r\n<div>\r\n  <a href={$store.site.dashboardUrl} target=\"_blank\">\r\n    <img src={$store.site.previewUrl} alt=\"site preview\" />\r\n    <h3>{$store.site.name}</h3>\r\n  </a>\r\n</div>\r\n","<script>\r\n    import {notifications} from '../store/notifications';\r\n    import { fade } from 'svelte/transition';\r\n   \r\n</script>\r\n<style>\r\ndiv {\r\n    position: fixed;\r\n    bottom: 40px;\r\n    left: 55%;\r\n    padding: 8px 100px;\r\n    transform: translateX(-50%);\r\n}\r\np {\r\n    margin: 0;\r\n    color: white;\r\n    font-size: 14px;\r\n    text-align: center;\r\n}\r\n</style>\r\n{#if $notifications.currentNotification}\r\n<div transition:fade style={$notifications.currentNotification.type == \"success\" ? \"background-color: #38D996\" : \"background-color:  #FF6382\"}>\r\n    <p>{$notifications.currentNotification.message}</p>\r\n</div>\r\n{/if}","<script>\n\timport Route from './components/Route.svelte';\n\timport LoginPage from './pages/Login.svelte';\n\timport ConfigurationPage from './pages/Configuration.svelte';\n\timport UtilsPage from './pages/Utils.svelte';\n\timport Notifications from './components/Notifications.svelte';\n\timport {store} from './store/wfData';\n\timport Footer from './components/Footer.svelte';\n\n</script>\n<!-- \"Routes\" of the dashboard -->\n<Route path=\"/login\" component={LoginPage}></Route>\n<Route path=\"/configuration\" component={ConfigurationPage}></Route>\n<Route path=\"/settings\" component={UtilsPage}></Route>\n\n<Notifications></Notifications>\n<Footer></Footer>\n\n<style>\n:global(#wpcontent) {\n\tpadding-left: 0;\n}\n:global(#webflow-dashboard-root) {\n\theight: 100%;\n\tdisplay: flex;\n\tmin-height: calc(100vh - 32px - 65px); /* 32 px is the admin bar , 65 px is the padding bottom*/\n}\n</style>","import App from './App.svelte';\n\n\n\tconst data = window._wfAjaxData;\n\tnew App({\n\t\ttarget: document.getElementById(\"webflow-dashboard-root\"), // inits app\n\t\tdata\n\t});\n"],"names":["noop","identity","x","assign","tar","src","k","run","fn","blank_object","Object","create","run_all","fns","forEach","is_function","thing","safe_not_equal","a","b","subscribe","component","store","callback","unsub","$$","on_destroy","push","unsubscribe","create_slot","definition","ctx","slot_ctx","get_slot_context","$$scope","get_slot_changes","changed","is_client","window","now","performance","Date","raf","requestAnimationFrame","tasks","Set","stylesheet","running","run_tasks","task","delete","size","append","target","node","appendChild","insert","anchor","insertBefore","detach","parentNode","removeChild","destroy_each","iterations","detaching","i","length","d","element","name","document","createElement","text","data","createTextNode","space","empty","listen","event","handler","options","addEventListener","removeEventListener","attr","attribute","value","removeAttribute","setAttribute","set_data","set_style","key","style","setProperty","select_option","select","option","__value","selected","select_value","selected_option","querySelector","current_component","active","current_rules","create_rule","duration","delay","ease","uid","step","keyframes","p","t","rule","str","hash","charCodeAt","head","sheet","insertRule","cssRules","animation","delete_rule","split","filter","anim","indexOf","join","deleteRule","set_current_component","dirty_components","resolved_promise","Promise","resolve","update_scheduled","binding_callbacks","render_callbacks","flush_callbacks","add_render_callback","flush","seen_callbacks","shift","update","pop","has","add","fragment","dirty","before_render","after_render","promise","outros","dispatch","direction","kind","dispatchEvent","type","detail","e","createEvent","initCustomEvent","custom_event","group_outros","remaining","callbacks","check_outros","on_outro","create_bidirectional_transition","params","intro","config","running_program","pending_program","animation_name","clear_animation","init","program","Math","abs","start","end","group","go","easing","tick","tick$$1","css","fulfil","loop","now$$1","[object Object]","then","mount_component","on_mount","m","new_on_destroy","map","make_dirty","instance","create_fragment","not_equal$$1","prop_names","parent_component","props","not_equal","bound","context","Map","ready","hydrate","l","Array","from","childNodes","c","SvelteComponent","this","$destroy","index","splice","writable","stop","subscribers","set","new_value","s","invalidate","subscriber","derived","stores","initial_value","single","isArray","stores_array","auto","inited","values","pending","cleanup","sync","result","unsubscribers","router","path","goTo","createRouterStore","isCurrentPath","$router","$isActive","isActive","ajaxCall","action","nonce","nonceField","method","credentials","url","TypeError","ajaxurl","formData","FormData","fetch","body","notifications","currentNotification","addNotification","message","setTimeout","createNotificationStore","hasToken","pages","collections","site","staticRules","dynamicRules","error","cacheDuration","_wfAjaxData","dashboardUrl","shortName","undefined","saveToken","async","token","call","res","json","success","code","removeToken","location","reload","addStaticRule","removeStaticRule","addDynamicRule","removeDynamicRule","saveStaticRules","rules","JSON","stringify","n","saveDynamicRules","invalidateCache","changeCache","preloadCache","createWfDataStore","variation","disabled","forHtml","$loginStore","handleSubmit","loginStore","preventDefault","handleClick","page","substr","replace","$store","staticRule","handleInput","click_handler","canAdd","activeElement","blur","isAdd","getAttribute","encodeURI","decodeURI","match","setCustomValidity","dynamicRule","collection","slug","fade","o","getComputedStyle","opacity","closeModal","acceptModal","$removeTokenStore","$modalStore","handleRemoveToken","open","removeTokenStore","modalStore","modalResponse","once","CustomEvent","$invalidateCacheStore","handleInvalidateCache","invalidateCacheStore","$preloadCacheStore","handlePreloadCache","preloadCacheStore","$localStore","val","localStore","previewUrl","$notifications","LoginPage","ConfigurationPage","UtilsPage","getElementById"],"mappings":"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"}
  • webflow-pages/trunk/externals/dashboard/src/components/CollectionRules.svelte

    r2167725 r2284222  
    8888    flex-direction: column;
    8989  }
    90   .fields-wrapper {
    91     flex: 1;
    92     overflow: auto;
    93   }
     90 
    9491  .section-description {
    9592    font-size: 12px;
     
    120117    background-color: #f7f8f9;
    121118  }
     119
     120  :global(.fields-wrapper) {
     121    flex: 1;
     122    overflow: auto;
     123    max-height: calc(50px * 5);
     124  }
     125e
     126:global(.fields-wrapper::-webkit-scrollbar){
     127    width: 3px;
     128    background-color: #F5F5F5;
     129}
     130
     131:global(.fields-wrapper::-webkit-scrollbar-thumb){
     132    background-color: #a1a1a1;
     133}
    122134</style>
    123135
     
    211223                    bind:value={dynamicRule[0]}
    212224                    required
     225                    disabled
    213226                    on:input={handleInput}
    214227                    readonly />
  • webflow-pages/trunk/externals/dashboard/src/components/StaticRules.svelte

    r2167725 r2284222  
    8484    flex-direction: column;
    8585  }
    86   .fields-wrapper {
    87     flex: 1;
    88     overflow: auto;
    89   }
     86
    9087  .section-description {
    9188    font-size: 12px;
     
    201198                    bind:value={staticRule[0]}
    202199                    readonly
     200                    disabled
    203201                    on:input={handleInput} />
    204202                </div>
  • webflow-pages/trunk/externals/dashboard/src/pages/Configuration.svelte

    r2162160 r2284222  
    4444  :global(select.field-select[disabled]) {
    4545    -webkit-appearance: none;
     46    box-shadow: none;
     47    height: 50px;
     48    padding-right: 16px;
     49    padding-left: 16px;
     50    border: 1px none #000!important;
     51    border-radius: 0px;
     52
     53    background-color: white!important;
     54    display: block;
     55    width: 100%;
     56    height: 38px;
     57    padding: 8px 12px;
     58
     59    font-size: 14px;
     60    line-height: 1.42857143;
     61    color: #000;
    4662  }
    4763
     
    176192    border-radius: 50%;
    177193    color: #fff;
    178     font-size: 10px;
    179     height: auto;
     194    font-size: 10px!important;
     195    width: 30px;
     196    height: 30px;
    180197    box-shadow: none;
    181198  }
  • webflow-pages/trunk/includes/public/class-webflow-pages-public.php

    r2198669 r2284222  
    140140            $request = $wp->request;
    141141
     142            if ($request == null || is_preview() || is_customize_preview()) {
     143                $page_id = null;
     144                if (isset($_GET['page_id'])) {
     145                    $page_id = (int) $_GET['page_id'];
     146
     147                } elseif (isset($_GET['p'])) {
     148                        $page_id = (int) $_GET['p'];
     149                }
     150                if ($page_id != null) {
     151                    $page = get_post($page_id);
     152                    if ($page) {
     153                        $request = $page->post_name;
     154                        if ($request == "") { // Post has no slug (Unpublished)
     155                            return "";
     156                        }
     157                    }
     158                }
     159            }
    142160
    143161            $domain = wf_pages_get_site_domain();
  • webflow-pages/trunk/webflow-pages.php

    r2198669 r2284222  
    33 * Plugin Name: Webflow Pages
    44 * Description: Build pages visually with the power of code in Webflow, then serve them right on your WordPress site.
    5  * Version:     1.0.2
     5 * Version:     1.0.3
    66 * Author:      Webflow
    77 * Author URI:  https://webflow.com
Note: See TracChangeset for help on using the changeset viewer.