@iccandle/vuejs-widget 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +33 -2
- package/dist/widget-iccandle.cjs +3 -3
- package/dist/widget-iccandle.js +987 -832
- package/package.json +1 -1
package/dist/widget-iccandle.js
CHANGED
|
@@ -2,10 +2,25 @@
|
|
|
2
2
|
import { Fragment as e, Teleport as t, TransitionGroup as n, computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createStaticVNode as c, createTextVNode as l, createVNode as u, defineComponent as d, inject as f, isRef as p, mergeModels as m, nextTick as h, normalizeClass as g, normalizeStyle as _, onBeforeUnmount as v, onMounted as y, onWatcherCleanup as b, openBlock as x, provide as S, reactive as C, ref as w, renderList as T, renderSlot as ee, resolveDynamicComponent as E, shallowRef as D, toDisplayString as O, unref as k, useModel as A, vModelText as j, watch as M, withCtx as N, withDirectives as te, withModifiers as P } from "vue";
|
|
3
3
|
import F, { isAxiosError as I } from "axios";
|
|
4
4
|
//#region src/constants/app.constant.ts
|
|
5
|
-
var ne = "https://api.iccandle.ai", L = "Authorization", R = "An unknown error occurred", z = "https://embed-iccandle-app.iccandle.ai", B = "tv:clicked-news-event", V = "tv:selected-news-events", H = {
|
|
5
|
+
var ne = "https://api.iccandle.ai", L = "Authorization", R = "An unknown error occurred", z = "https://embed-iccandle-app.iccandle.ai", B = "tv:clicked-news-event", V = "tv:selected-news-events", H = "iccandle_token", re = {
|
|
6
6
|
light: "#ffffff",
|
|
7
7
|
dark: "#0F0F0F"
|
|
8
|
-
}, U =
|
|
8
|
+
}, U = 24 * 3600, W = 7 * U, ie = 30 * U, G = (e) => {
|
|
9
|
+
let t = e.trim().toUpperCase();
|
|
10
|
+
if (t === "D" || t === "1D" || t === "1440") return U;
|
|
11
|
+
if (t === "W" || t === "1W") return W;
|
|
12
|
+
if (t === "M" || t === "1M") return ie;
|
|
13
|
+
let n = /^(\d+)D$/.exec(t);
|
|
14
|
+
if (n) return Number(n[1]) * U;
|
|
15
|
+
let r = /^(\d+)W$/.exec(t);
|
|
16
|
+
if (r) return Number(r[1]) * W;
|
|
17
|
+
let i = /^(\d+)M$/.exec(t);
|
|
18
|
+
if (i) return Number(i[1]) * ie;
|
|
19
|
+
let a = /^(\d+)S$/.exec(t);
|
|
20
|
+
if (a) return Number(a[1]);
|
|
21
|
+
let o = Number.parseInt(t, 10);
|
|
22
|
+
return !Number.isFinite(o) || o <= 0 ? 60 : o * 60;
|
|
23
|
+
}, K = (e) => G(e), q = [
|
|
9
24
|
"en",
|
|
10
25
|
"zh",
|
|
11
26
|
"vi",
|
|
@@ -15,12 +30,12 @@ var ne = "https://api.iccandle.ai", L = "Authorization", R = "An unknown error o
|
|
|
15
30
|
"mn",
|
|
16
31
|
"ru"
|
|
17
32
|
];
|
|
18
|
-
function
|
|
19
|
-
return e &&
|
|
33
|
+
function ae(e) {
|
|
34
|
+
return e && q.includes(e) ? e : "en";
|
|
20
35
|
}
|
|
21
36
|
//#endregion
|
|
22
37
|
//#region src/i18n/widget-messages.ts
|
|
23
|
-
var
|
|
38
|
+
var J = {
|
|
24
39
|
en: {
|
|
25
40
|
Common: {
|
|
26
41
|
or: "OR",
|
|
@@ -7439,7 +7454,7 @@ var K = {
|
|
|
7439
7454
|
Legal: /* @__PURE__ */ JSON.parse("{\"Page\":{\"title\":{\"terms\":\"Условия обслуживания\",\"privacy\":\"Политика конфиденциальности\",\"refund\":\"Политика возврата средств и отмены\",\"cookie\":\"Политика использования файлов куки\"},\"tabs\":{\"terms\":\"Условия обслуживания\",\"privacy\":\"Политика конфиденциальности\",\"refund\":\"Политика возврата средств и отмены\",\"cookie\":\"Политика использования файлов куки\"},\"nav\":{\"terms\":\"Условия обслуживания\",\"privacy\":\"Политика конфиденциальности\",\"refund\":\"Политика возврата средств и отмены\",\"cookie\":\"Политика использования файлов куки\"}},\"Terms\":{\"title\":\"Условия обслуживания, TOS, условия, положения, отказ от ответственности, договор, соглашение\",\"intro\":{\"p1\":\"Настоящее соглашение заключается между Pixel Nexus Global, сингапурской компанией с ограниченной ответственностью, осуществляющей деятельность через сайт www.iccandle.ai («Pixel Nexus Global», «мы», «нас» или «наш»), и физическим или юридическим лицом, приобретающим или использующим услуги, предлагаемые через Платформу («Клиент», «вы» или «ваш»). Если вы приобретаете Услуги от имени третьей стороны, вы подтверждаете, что обладаете законными полномочиями обязать такую сторону соблюдать настоящие Условия обслуживания и несёте ответственность за их использование Услуг.\",\"p2\":\"Получая доступ к Платформе и Услугам, описанным в настоящем документе и размещённым на www.iccandle.ai, либо оформляя подписку через сайт iccandle.ai, вы подтверждаете, что прочитали, поняли и согласились с настоящими Условиями, Положениями и отказами от ответственности. Вы также соглашаетесь, что ваши отношения с нами регулируются положениями настоящих Условий обслуживания.\",\"p2Emphasis\":\"Если вы не принимаете данные условия, вы обязаны немедленно прекратить использование iccandle.ai и любых связанных услуг или платформ.\"},\"sections\":[{\"title\":\"1. Услуги\",\"paragraphs\":[\"Pixel Nexus Global will provide active customers in good standing with access to its AI-powered analytical tool (the “Platform”). As used in this Agreement, the term “Services” refers to Pixel Nexus Global’s provision of your access to the Platform. The Services will be provided to you under one or more subscriptions, account activations, sign-ups, or orders placed by you on the iccandle.ai website and accepted by Pixel Nexus Global (an “Order”).\",\"In case of any conflict between these TOS and an Order, the terms of these TOS shall take precedence. By accepting the Services, you acknowledge and agree that any different or additional terms proposed by you in an Order or otherwise are expressly rejected by Pixel Nexus Global, unless we have agreed to such terms in a written document signed by an authorized representative.\"]},{\"title\":\"2. Ваши обязательства\",\"subsections\":[{\"title\":\"Информация о клиенте и ответственность за аккаунт\",\"paragraphs\":[\"You agree to provide Pixel Nexus Global with accurate information when creating your account, throughout our business relationship, and in all correspondence with us. We may occasionally need to contact you via email or telephone regarding the Services. You agree to maintain a valid email address that you check daily and to promptly notify us of any changes to your contact information.\",\"Pixel Nexus Global shall not be responsible for any service interruptions, damages, or consequences resulting from misdirected communications due to your failure to provide current contact details. You also agree to complete all data entitlement surveys within the platform completely and truthfully to maintain compliance with exchange regulations.\"]},{\"title\":\"Разрешённое использование платформы\",\"paragraphs\":[\"Your use of the Platform must comply with these TOS and any accompanying documentation we provide. If you permit third parties to access the Platform, you agree to: (i) restrict their use in accordance with these terms; (ii) ensure their compliance with these TOS and our Privacy Policy; and (iii) remain fully liable for any violations of these TOS or the Privacy Policy by such third parties.\"]},{\"title\":\"Интеллектуальная собственность и соблюдение закона\",\"paragraphs\":[\"You agree not to alter, obscure, or remove any trademark or proprietary notices. You may only use the Platform in accordance with: (i) the laws governing these TOS; and (ii) all applicable laws in your jurisdiction.\",\"Несанкционированное использование строго запрещено.\"]}]},{\"title\":\"3. Срок действия\",\"subsections\":[{\"title\":\"Дата вступления в силу\",\"paragraphs\":[\"These Terms of Service (TOS) become effective (\\\"Effective Date\\\") on the earlier of: (i) the date you click \\\"I accept\\\" as recorded by our servers; or (ii) the date you first access or use the Platform.\",\"These TOS remain in effect for the duration of any active Order.\"]},{\"title\":\"Подписка и продление\",\"paragraphs\":[\"The Services will automatically renew for successive periods (monthly, quarterly, or annually) as specified in your Order. If unspecified, the default initial subscription period (\\\"Initial Term\\\") is one month. Subsequent renewal periods (\\\"Renewal Terms\\\") will match the Initial Term’s duration.\"]},{\"title\":\"Пробный период\",\"paragraphs\":[\"Pixel Nexus Global may offer trial periods (paid or free) as indicated on the iccandle.ai trial signup page. During any trial period:\"],\"listOrdered\":[\"применяются все условия как для платной подписки\",\"вы можете отменить подписку до автоматического продления\",\"условия могут изменяться без уведомления\"]},{\"title\":\"Управление подпиской\",\"paragraphs\":[\"You are solely responsible for managing your subscription, including:\"],\"listDisc\":[\"контроль дат продления\",\"обновление платёжных данных\",\"отмена подписки\",\"актуальность контактных данных\"],\"paragraphsAfter\":[\"Pixel Nexus Global is not responsible for any charges due to failure to manage your subscription.\"]}]},{\"title\":\"4. Прекращение\",\"subsections\":[{\"title\":\"Отмена и возвраты\",\"paragraphs\":[\"Details about cancellation and refund policies are available on our Refund and Cancellation Policy page at iccandle.ai. Terminating your account disables automatic renewals but does not cancel past invoices or make prior payments refundable unless stated otherwise in our Refund and Cancellation Policy.\",\"Any currently due invoices must be paid in full to settle your account. Your access to Pixel Nexus Global services will continue until the expiration of your prepaid period or trial term.\"]},{\"title\":\"Расторжение по инициативе сторон\",\"paragraphs\":[\"Either party may terminate any Order by providing written notice at least one (1) day before the expiration of the Initial Term or any Renewal Term. For purposes of this provision, “written notice” includes communication through email, live chat, telephone, or via the Online Portal, indicating a desire not to continue service with Pixel Nexus Global in the future.\"]},{\"title\":\"Нарушения\",\"paragraphs\":[\"Pixel Nexus Global reserve the right to immediately suspend Services and/or terminate any Order in cases of violation of these TOS, breach of our Privacy Policy, or use of Services in a manner contrary to law or generally accepted internet standards. Such termination may occur without prior notice, dispute resolution process, or refund of any fees.\"]},{\"title\":\"Последствия\",\"paragraphs\":[\"The expiration or termination of any Order does not affect any rights or obligations that either (i) came into effect upon or after such expiration/termination, or (ii) survive the termination and were incurred by the parties prior to termination. Upon termination, you must promptly settle any outstanding balance. Pixel Nexus Global is not obligated to return any paid fees for terminations occurring prior to completion of a full term, except as may be expressly provided in our Refund and Cancellation Policy.\",\"All termination matters are governed by the complete terms set forth in this agreement, and Pixel Nexus Global maintains full discretion in enforcing these provisions.\"]}]},{\"title\":\"5. Лицензия и ограничения\",\"paragraphs\":[\"Pixel Nexus Global grants you a limited, revocable, non-exclusive, non-transferable, worldwide license to utilize our proprietary technology (\\\"Pixel Nexus Technology\\\") solely for accessing and employing our analytical engines as part of the Services, including any generated reports (\\\"Reports\\\"). This license is restricted to your account's registered users and automatically terminates upon expiration or termination of these TOS.\",\"No rights beyond this limited license are conferred. All ownership rights in the Pixel Nexus Technology remain exclusively with Pixel Nexus Global or its licensors. You are expressly prohibited from: transferring, leasing, lending, sublicensing, reselling, or distributing the technology; using it for timesharing or service bureau purposes; or permitting unauthorized third-party access. You may not circumvent any protective measures safeguarding our proprietary interests, nor modify, reproduce, decompile, reverse engineer, or create derivative works from the Pixel Nexus Technology or Platform components. Upon termination, you must immediately cease using and permanently delete all Pixel Nexus Technology in your possession, ensuring any third parties with access do likewise.\"],\"subsections\":[{\"title\":\"Права собственности\",\"paragraphs\":[\"Pixel Nexus Global retains all rights, title, and interest in the Pixel Nexus Technology and Platform, including but not limited to all derivative works, improvements, enhancements, and associated intellectual property rights such as trademarks and copyrights.\"]},{\"title\":\"Положения об обратной связи\",\"paragraphs\":[\"You may voluntarily provide, or we may solicit, input regarding the Platform or Services (\\\"Feedback\\\"), including suggestions for modifications or improvements. You acknowledge such Feedback constitutes Pixel Nexus Global's confidential proprietary information and irrevocably assign all related rights and interests to us. Pixel Nexus Global may utilize Feedback for any purpose without limitation or compensation obligation. This assignment applies globally and survives termination of these TOS.\",\"All rights not expressly granted herein are reserved by Pixel Nexus Global. Any unauthorized use constitutes breach of these TOS and may result in immediate termination of your access rights.\"]}]},{\"title\":\"6. Использование данных и ИС\",\"paragraphs\":[\"Pixel Nexus Global may utilize information you provide or data collected from your use of the Platform and Services (\\\"Operational Information\\\") to deliver technical support and facilitate the implementation, operation, and administration of the Services. By using our Services, you grant us a perpetual, irrevocable license to process and analyze this Operational Information. We may combine this data with aggregate information from our general business operations to enhance existing Services or develop new products and offerings.\",\"Pixel Nexus Global shall retain exclusive ownership of all intellectual property derived from such analysis and improvements. You hereby irrevocably waive any potential rights to this intellectual property and assign all rights, title, and interest therein to Pixel Nexus Global. You further agree to provide reasonable cooperation in securing and protecting these rights. We reserve the right to commercialize this Operational Information through sale, monetization, or incorporation into other products and services, without obligation to compensate you or grant you any ownership interest.\",\"This license shall terminate upon expiration or cancellation of these Terms of Service, except with respect to historical data that has been aggregated and anonymized such that it cannot be identified as originating from your organization. Pixel Nexus Global may retain and continue to use such anonymized, aggregated data indefinitely for any lawful business purpose.\",\"All intellectual property rights not expressly granted herein remain the exclusive property of Pixel Nexus Global. Your continued use of the Services constitutes acceptance of these terms regarding data usage and intellectual property rights.\"]},{\"title\":\"7. Отказ от ответственности за точность информации\",\"paragraphs\":[\"Pixel Nexus Global relies on third-party data feeds to power its platform and therefore cannot guarantee the absolute accuracy of the information displayed. Different features within our system (such as scanners, automated analysis tools, charting functions, and back testing capabilities) may utilize separate data providers, which can result in variances between datasets across different platform features. Users should always verify analysis results and scanner conditions to ensure data consistency.\",\"The platform's analytical outputs are inherently dependent on the quality of underlying third-party data, and Pixel Nexus Global makes no representations or warranties regarding the accuracy of these analyses. The iccandle.ai website, Services, and Platform are designed solely for informational and research purposes - they should never serve as the sole basis for investment decisions. Pixel Nexus Global disclaims all liability for any financial losses resulting from reliance on potentially inaccurate data or analysis within the Platform.\",\"The Pixel Nexus Global system is provided strictly on an \\\"as-is\\\" basis without guarantees or warranties of any kind, as its functionality depends on unverified third- party data sources. The platform is intended exclusively for educational, entertainment, and general informational use - not as professional financial advice or a substitute for independent investment research. Users assume all risk associated with interpreting and acting upon any information displayed within the system.\",\"By accessing and using the Platform, you acknowledge these inherent limitations and agree that Pixel Nexus Global shall not be held responsible for any consequences arising from data inaccuracies, analysis errors, or investment decisions made based on platform content.\"]},{\"title\":\"8. Отказ от инвестиционных рекомендаций и ограничения платформы\",\"paragraphs\":[\"The analytical tools and outputs provided by Pixel Nexus Global's iccandle.ai platform are strictly for informational and research purposes only and should not be construed as investment advice. The platform relies on third-party data sources that may contain inaccuracies, and different features may produce varying results due to separate data providers. All analysis, including results from our Pattern Selector, Pattern Tracker, and News Impact Intelligence, is provided \\\"AS-IS\\\" without any guarantees of accuracy. These tools demonstrate historical patterns, probabilities, and market behavior under past conditions and cannot predict future results, as actual market outcomes may differ due to liquidity, execution, and other variables. You must never rely solely on platform analysis when making investment decisions.\"]},{\"title\":\"9. Признание рисков и ответственность пользователя\",\"paragraphs\":[\"By using Pixel Nexus Global's platform (iccandle.ai), you expressly acknowledge and accept full responsibility for all risks associated with any investment decisions made based on information or analysis obtained from our Platform. You understand that our services rely on third-party data sources that may contain inaccuracies, and that our analytical models employ mathematical formulas and sequences that have not been independently verified for predictive accuracy. Pixel Nexus Global cannot and does not guarantee the reliability of any market data, technical indicators, or analytical outputs generated by the Platform.\",\"Prior to executing any trades, you agree to either: (i) consult with a qualified, licensed financial professional; or (ii) conduct comprehensive independent research using multiple verified information sources.\",\"Pixel Nexus Global expressly disclaims all liability for any trading losses, missed opportunities, or other financial consequences resulting from your reliance on Platform content. By continuing to use iccandle.ai, you confirm your understanding that our tools are designed for informational purposes only and that you alone bear complete responsibility for all investment choices and outcomes. This warning constitutes an essential term of our agreement, and your use of the Platform signifies your unconditional acceptance of these risk disclosures.\"]},{\"title\":\"10. Отказ от гарантий и ограничения сервиса\",\"paragraphs\":[\"The Pixel Nexus Global platform (iccandle.ai), including all Services, scripts, reports, analytical engines, and related technology, is provided strictly on an \\\"AS-IS\\\" and \\\"AS- AVAILABLE\\\" basis. Pixel Nexus Global makes no representations or warranties of any kind, whether express or implied. This includes, but is not limited to, all implied warranties of non-infringement, merchantability, fitness for a particular purpose, accuracy, quality, or achievement of specific results. No warranties arise from any course of dealing, performance, or trade usage.\",\"Pixel Nexus Global does not guarantee that the Service will meet your requirements, operate without interruption, remain error-free, or be secure from viruses or other harmful components. Compatibility with all websites or browsers is not assured, and Pixel Nexus Global disclaims all liability for issues arising from browser incompatibility or third-party services, even if such services appear integrated with our Platform. Any data transmitted via our Services remains your sole responsibility, and Pixel Nexus Global expressly disclaims liability for such content. No warranties provided by third- party vendors to Pixel Nexus Global extend to you, and you are not a third-party beneficiary of such agreements.\"],\"subsections\":[{\"title\":\"Функции оповещений и бета-функции\",\"paragraphs\":[\"The Platform includes alert features (e.g., \\\"Dynamic Price Alerts\\\" and \\\"Multi-Factor Alerts\\\"), which are provided without warranty or guarantee of reliability. Technical delays or failures may occur due to cellular networks, email services, system errors, or other factors. You acknowledge that alerts may not function as intended and agree that Pixel Nexus Global bears no liability for trading losses resulting from reliance on these features, regardless of whether they were used correctly.\",\"Certain features labeled as 'Beta' are under active development and may exhibit unstable or unreliable performance, including inconsistent data or incorrect information due to software bugs or programming errors. These Beta features carry additional risks and should be used with extreme caution.\"]},{\"title\":\"Общие положения\",\"paragraphs\":[\"This warranty disclaimer applies to all oral or written information provided by Pixel Nexus Global, its employees, affiliates, or third-party vendors. You may not rely on any such statements or representations.\",\"Some jurisdictions may not permit the exclusion of certain warranties. If applicable to you, any warranty claim must be filed within ninety (90) days of the Service provision that gave rise to the claim. Failure to submit a claim within this period constitutes an irrevocable waiver of your right to pursue such claims thereafter.\",\"Third-party websites linked through the Pixel Nexus Global platform are not under our control, and we assume no responsibility for their content or functionality. Accessing these external sites is entirely at your own risk. Such links are provided for convenience only and do not constitute an endorsement or recommendation by Pixel Nexus Global.\",\"By using the Platform, you acknowledge and accept these limitations and disclaimers in full.\"]}]},{\"title\":\"11. Ограничение ответственности\",\"paragraphs\":[\"Pixel Nexus Global's total liability under this Agreement shall not exceed the aggregate fees actually paid by you to Pixel Nexus Global during the one (1) month period immediately preceding the event giving rise to such liability. For purposes of this limitation, \\\"Pixel Nexus Global\\\" includes its employees, agents, owners, directors, officers, affiliates, and any third-party service providers facilitating the Services.\",\"To the maximum extent permitted by law, you agree that under no circumstances - including negligence - shall Pixel Nexus Global or its licensors, agents, employees, officers, or third-party vendors be liable for any indirect, incidental, special, consequential, or punitive damages. This exclusion applies to, but is not limited to, damages for:\"],\"listOrdered\":[\"Упущенная прибыль или доход\",\"Прерывание бизнеса\",\"Потеря или повреждение данных\",\"Потеря сбережений\",\"Любые другие финансовые потери, понесённые вами, конечными пользователями или третьими лицами\"],\"paragraphsAfter\":[\"These limitations apply regardless of whether the action arises in contract, tort (including negligence), or any other legal theory, and shall remain in effect even if Pixel Nexus Global has been advised of the possibility of such damages. While some jurisdictions may not allow limitations on certain liabilities, you agree that, where such restrictions apply, Pixel Nexus Global's liability shall be limited to the maximum extent permitted by applicable law.\",\"This limitation of liability constitutes an essential basis of the bargain between you and Pixel Nexus Global and shall survive termination of this Agreement. By using the Services, you acknowledge that these limitations are reasonable and reflect the risk allocation between both parties.\"]},{\"title\":\"12. Уведомления\",\"paragraphs\":[\"All official notices will be sent to your account’s listed contact information. You are responsible for maintaining current and accurate contact details in our records at all times.\",\"For most inquiries, including technical support and billing matters, please visit our website at www.iccandle.ai for contact information and support options.\",\"However, any legal notices regarding these Terms of Service or other Pixel Nexus Global policies must be sent exclusively via postal mail to our designated address:\"],\"address\":{\"company\":\"Pixel Nexus Global PTE. LTD.\",\"lines\":[\"160 Robinson Road, #14-04\",\"Singapore Business Federation Center\",\"Singapore 068914\"]}},{\"title\":\"13. Форс-мажор\",\"paragraphs\":[\"Neither party shall be liable for any failure or delay in performance (except for payment obligations) due to events beyond their reasonable control, including, but not limited to, acts of God, natural disasters, war, civil unrest, epidemics, labor disputes, utility failures, telecommunication outages, supply chain disruptions, government actions, or other unforeseeable catastrophic events; provided that: (i) the affected party notifies the other in writing within ten (10) days of the event’s commencement; (ii) all payment obligations remain unaffected; (iii) the time for performance shall be extended day-for-day to match the duration of the disruption; and (iv) both parties use commercially reasonable efforts to mitigate the impact.\",\"It is understood that this clause does not permit termination of the Agreement solely due to force majeure conditions, nor does it extend the Agreement term beyond its original expiration date without mutual written agreement.\"]},{\"title\":\"14. Отказ от прав\",\"paragraphs\":[\"No failure or delay by Pixel Nexus Global in exercising any right under these Terms shall operate as a waiver of that right, nor shall any single or partial exercise of any right preclude the further or full exercise of that right or any other right under these Terms.\"]},{\"title\":\"15. Уступка\",\"paragraphs\":[\"Pixel Nexus Global may assign these Terms, or any rights hereunder, without your consent. You may not assign these Terms without our prior written approval. These Terms shall be binding upon, and inure to the benefit of, the parties' respective successors and permitted assigns.\"]},{\"title\":\"16. Разделимость\",\"paragraphs\":[\"If any provision of these Terms is held to be invalid or unenforceable by a court of competent jurisdiction, that provision shall be modified to the minimum extent necessary to make it valid and enforceable while preserving its original intent. All other provisions shall remain in full force and effect.\"]},{\"title\":\"17. Отсутствие агентских отношений\",\"paragraphs\":[\"Nothing in these Terms creates an agency, partnership, joint venture or employment relationship between the parties. Neither party has authority to bind the other or incur obligations on the other's behalf.\"]},{\"title\":\"18. Конфиденциальность и конфликты\",\"paragraphs\":[\"Our Privacy Policy is incorporated herein by reference. In the event of a conflict between agreements: (i) these Terms prevail over the Privacy Policy; (ii) any separate service agreement shall prevail over conflicting provisions of these Terms, but only with respect to those specific provisions; and (iii) in all other cases, these Terms shall govern.\"]},{\"title\":\"19. Юрисдикция и ограничения\",\"paragraphs\":[\"The services and information provided on iccandle.ai are not intended for use in jurisdictions where such services would be contrary to local laws or regulations. Access to and use of this website are strictly prohibited for citizens of the following jurisdictions: United States of America, Canada, Russian Federation, Iran, North Korea, Myanmar, Syria, Cuba, Crimea, Donetsk, and Luhansk regions of Ukraine, Afghanistan, Belarus, and Venezuela. This list may be updated at any time without prior notice. Users are solely responsible for ensuring that their access to and use of this website comply with all applicable laws and regulations in their country. iccandle.ai accepts no responsibility or liability for any non-compliance by users with their local regulatory requirements and reserves the right to restrict, block, or terminate access at its sole discretion.\"]}],\"content\":\"Условия обслуживания, TOS, условия, положения, отказ от ответственности, договор, соглашение\\nНастоящее соглашение заключается между Pixel Nexus Global, сингапурской компанией с ограниченной ответственностью, осуществляющей деятельность через сайт www.iccandle.ai («Pixel Nexus Global», «мы», «нас» или «наш»), и физическим или юридическим лицом, приобретающим или использующим услуги, предлагаемые через Платформу («Клиент», «вы» или «ваш»). Если вы приобретаете Услуги от имени третьей стороны, вы подтверждаете, что обладаете законными полномочиями обязать такую сторону соблюдать настоящие Условия обслуживания и несёте ответственность за их использование Услуг.\\n\\nУсловия обслуживания, TOS, условия, положения, отказ от ответственности, договор, соглашение Настоящее соглашение заключается между Pixel Nexus Global, сингапурской компанией с ограниченной ответственностью, осуществляющей деятельность через сайт www.iccandle.ai («Pixel Nexus Global», «мы», «нас» или «наш»), и физическим или юридическим лицом, приобретающим или использующим услуги, предлагаемые через Платформу («Клиент», «вы» или «ваш»). Если вы приобретаете Услуги от имени третьей стороны, вы подтверждаете, что обладаете законными полномочиями обязать такую сторону соблюдать настоящие Условия обслуживания и несёте ответственность за их использование Услуг.\\n\\nПолучая доступ к Платформе и Услугам, описанным в настоящем документе и размещённым на www.iccandle.ai, либо оформляя подписку через сайт iccandle.ai, вы подтверждаете, что прочитали, поняли и согласились с настоящими Условиями, Положениями и отказами от ответственности. Вы также соглашаетесь, что ваши отношения с нами регулируются положениями настоящих TOS.\\nЕсли вы не принимаете данные условия, вы обязаны немедленно прекратить использование iccandle.ai и любых связанных услуг или платформ.\\n\\n1. Услуги\\n\\nPixel Nexus Global предоставляет действующим клиентам, находящимся в надлежащем статусе, доступ к своему аналитическому инструменту на базе искусственного интеллекта («Платформа»).\\nВ рамках настоящего соглашения термин «Услуги» означает предоставление Pixel Nexus Global доступа к Платформе.\\nУслуги предоставляются в рамках одной или нескольких подписок, активаций аккаунта, регистраций или заказов, оформленных вами на сайте iccandle.ai и принятых Pixel Nexus Global («Заказ»).\\n\\nPixel Nexus Global предоставляет действующим клиентам, находящимся в надлежащем статусе, доступ к своему аналитическому инструменту на базе искусственного интеллекта («Платформа»). В рамках настоящего соглашения термин «Услуги» означает предоставление Pixel Nexus Global доступа к Платформе. Услуги предоставляются в рамках одной или нескольких подписок, активаций аккаунта, регистраций или заказов, оформленных вами на сайте iccandle.ai и принятых Pixel Nexus Global («Заказ»).\\n\\nВ случае противоречий между настоящими TOS и Заказом, приоритет имеют положения настоящих TOS.\\nПринимая Услуги, вы соглашаетесь, что любые иные или дополнительные условия, предложенные вами в Заказе или иным образом, прямо отклоняются Pixel Nexus Global, если только мы не согласовали их в письменной форме, подписанной уполномоченным представителем.\\n\\n2. Ваши обязательства\\nИнформация о клиенте и ответственность за аккаунт\\n\\nВы соглашаетесь предоставлять Pixel Nexus Global точную информацию при создании аккаунта, в течение всего периода взаимодействия и во всей переписке. Мы можем периодически связываться с вами по электронной почте или телефону. Вы обязуетесь поддерживать действующий e-mail, проверяемый ежедневно, и своевременно сообщать об изменениях контактных данных.\\n\\nВы соглашаетесь предоставлять Pixel Nexus Global точную информацию при создании аккаунта, в течение всего периода взаимодействия и во всей переписке.\\nМы можем периодически связываться с вами по электронной почте или телефону.\\nВы обязуетесь поддерживать действующий e-mail, проверяемый ежедневно, и своевременно сообщать об изменениях контактных данных.\\n\\nPixel Nexus Global не несёт ответственности за перебои в обслуживании, ущерб или последствия, вызванные некорректной доставкой сообщений из-за устаревших контактных данных. Вы также соглашаетесь полностью и добросовестно заполнять все анкеты на платформе для соблюдения требований регуляторов бирж.\\n\\nРазрешённое использование платформы\\nРазрешённое использование платформы\\n\\nИспользование Платформы должно соответствовать настоящим TOS и сопутствующей документации.\\nЕсли вы предоставляете доступ третьим лицам, вы обязуетесь: (i) ограничивать их использование в соответствии с условиями; (ii) обеспечивать соблюдение ими TOS и Политики конфиденциальности; (iii) нести полную ответственность за любые их нарушения.\\n\\nИспользование Платформы должно соответствовать настоящим TOS и сопутствующей документации.\\nЕсли вы предоставляете доступ третьим лицам,\\nвы обязуетесь: (i) ограничивать их использование в соответствии с условиями;\\n(ii) обеспечивать соблюдение ими TOS и Политики конфиденциальности;\\n(iii) нести полную ответственность за любые их нарушения.\\n\\nИнтеллектуальная собственность и соблюдение закона\\nИнтеллектуальная собственность и соблюдение закона\\nИнтеллектуальная собственность и соблюдение закона\\nИнтеллектуальная собственность и соблюдение закона\\nИнтеллектуальная собственность и соблюдение закона\\n\\nВы не имеете права изменять или удалять уведомления о товарных знаках и собственности. Использование Платформы допускается только в рамках:\\n(i) законодательства, регулирующего настоящие TOS;\\n(ii) всех применимых законов вашей юрисдикции.\\n\\nНесанкционированное использование строго запрещено.\\n\\nНесанкционированное испол\\nьзование строго запрещено.\\n\\n3. Срок действия\\nДата вступления в силу\\n\\nНастоящие Условия вступают в силу («Дата вступления в силу») с момента: (i) нажатия «Я принимаю» (фиксируется сервером),\\nили (ii) первого доступа или использования Платформы.\\n\\nУсловия действуют на протяжении любого активного Заказа.\\n\\nУсловия действуют на протяже\\nнии любого активного Заказа.\\n\\nПодписка и продление\\n\\nУслуги автоматически продлеваются (ежемесячно, ежеквартально или ежегодно) согласно Заказу.\\nПо умолчанию срок подписки — 1 месяц.\\n\\nПробный период\\nПробный период\\n\\nПробный период\\n\\nPixel Nexus Global может предоставлять пробные периоды (платные или бесплатные).\\nВ течение пробного периода:\\n\\nприменяются все условия как для платной подписки; вы можете отменить подписку до автоматического продления; условия могут изменяться без уведомления. Управление подпиской\\n\\nВы самостоятельно отвечаете за:\\n\\nВы самостоятельно отвечаете за:\\n\\nконтроль дат продления; обновление платёжных данных;\\nотмену подписки; актуальность контактных данных.\\n\\nPixel Nexus Global не несёт ответственности за списания из-за вашего несоблюдения этих обязанностей.\\n\\n4. Прекращение Отмена и возвраты\\n\\n4. Прекращение Отмена и возвраты\\n\\nИнформация о возвратах размещена на странице Refund and Cancellation Policy на iccandle.ai.\\nОтмена аккаунта отключает автопродление, но не аннулирует уже выставленные счета.\\n\\nРасторжение по инициативе сторон\\nРасторжение по инициативе сторон\\n\\nЛюбая сторона может расторгнуть Заказ, уведомив другую сторону минимум за 1 день до окончания срока.\\n\\nЛюбая сторона может расторгнуть Заказ, уведомив другую сторону минимум за 1 день до окончания срока.\\n\\nНарушения\\nНарушения\\n\\nPixel Nexus Global может немедленно приостановить или прекратить доступ без уведомления и возврата средств при нарушении условий или законодательства.\\n\\nПоследствия\\nПоследствия\\n\\nПоследствия\\n\\nОбязательства, возникшие до прекращения, сохраняются. Все задолженности должны быть оплачены.\\nВозврат средств не гарантируется.\\n\\n5. Лицензия и ограничения\\n\\nPixel Nexus Global предоставляет ограниченную, отзывную, неисключительную и непередаваемую лицензию на использование технологии («Pixel Nexus Technology») исключительно для доступа к аналитическим инструментам.\\n\\nPixel Nexus Global предоставляет ограниченную, отзывную, неисключительную и непередаваемую лицензию на использование технологии («Pixel Nexus Technology») исключительно для доступа к аналитическим инструментам.\\n\\nЗапрещено:\\nЗапрещено:\\n\\nпередача, продажа, аренда, сублицензирование; обратная разработка, декомпиляция; обход защитных механизмов; предоставление доступа третьим лицам.\\n\\nВсе права принадлежат Pixel Nexus Global.\\nВсе права принадлежат Pixel Nexus Global.\\nВсе права принадлежат Pixel Nexus Global.\\nВсе права принадлежат Pixel Nexus Global.\\nВсе права принадлежат Pixel Nexus Global.\\nВсе права принадлежат Pixel Nexus Global.\\n\\nВсе права принадлежат Pixel Nexus Global.\\n\\n6.\\nИспользование данных и ИС\\n\\nКомпания может использовать данные пользователя («Operational Information») для поддержки и улучшения услуг. Вы предоставляете бессрочную лицензию на обработку данных.\\n\\nPixel Nexus Global сохраняет исключительные права на результаты анализа и может коммерциализировать их без компенсации пользователю.\\n\\nPixel Nexus Global сохраняет исключительные права на результаты ан\\nализа и может коммерциализировать их без компенсации пользователю.\\n\\n7–9. Отказ от ответственности и риски\\n\\nПлатформа использует сторонние данные и предоставляется «как есть». Информация может быть неточной и не является инвестиционной рекомендацией. Пользователь полностью принимает риски финансовых потерь и обязан проводить самостоятельный анализ.\\n\\n10.\\nОтсутствие гарантий\\n\\n10. Отсутствие гарантий\\n\\nНет гарантий работоспособности, точности, отсутствия ошибок или бесперебойности.\\nБета-функции могут быть нестабильными.\\n\\n11.\\nОграничение ответственности\\n\\nМаксимальная ответственность ограничивается суммой, уплаченной за последний месяц.\\nКомпания не несёт ответственности за косвенные или случайные убытки.\\n\\nМаксимальная ответственность ограничивается суммой, уплаченной за последний месяц.\\nКомпания не несёт ответственности за косвенные или случайные убытки.\\n\\n12–19.\\nПрочие условия\\n\\nВключают уведомления, форс-мажор, отказ от прав, уступку прав,\\nразделимость положений, отсутствие агентских отношений, приоритет документов, юрисдикционные ограничения и запреты на использование в определённых странах.\"},\"Refund\":{\"title\":\"Политика возврата и отмены\",\"intro\":\"Настоящая Политика возврата и отмены («Политика») регулирует условия возврата и отмены услуг, предоставляемых компанией Pixel Nexus Global Pte. Ltd. («мы», «нас») через платформу iccandle.ai («Сервис»). Данная Политика является частью Условий обслуживания и должна рассматриваться совместно с ними.\",\"sections\":[{\"title\":\"1. Определения\",\"definitions\":[{\"term\":\"Подписка\",\"text\":\"A recurring paid access to the Services for a specified period (e.g., monthly or annually).\"},{\"term\":\"Биллинг-период\",\"text\":\"The recurring time interval for which a Subscription fee is charged.\"},{\"term\":\"Изменение подписки\",\"text\":\"Any upgrade or downgrade to a different Subscription plan.\"}]},{\"title\":\"2. Условия отмены\",\"subsections\":[{\"title\":\"Отмена подписки\",\"listDisc\":[\"You may cancel your Subscription at any time through your account dashboard or by contacting support.\",\"Cancellation will take effect at the end of the current billing period; you will retain access to the Services through the end of that period.\",\"Cancelling your Subscription does not automatically entitle you to a refund of fees already paid.\"]}]},{\"title\":\"3. Условия возврата\",\"subsections\":[{\"title\":\"3.1 Общие положения\",\"paragraphs\":[\"Except as expressly provided in this Policy or required by applicable law, all fees paid for Subscriptions are non‑refundable once charged.\"]},{\"title\":\"3.2 Случаи возможного возврата\",\"paragraphs\":[\"We may issue a refund at our sole discretion only in limited circumstances, including but not limited to:\"],\"listDisc\":[\"Duplicate payments (verified duplicate charges will be refunded).\",\"Technical errors that demonstrably prevented access to Services, where the error was not caused by user actions and is verified by us.\",\"Applicable statutory rights under consumer protection law where these rights apply and cannot be waived.\"],\"paragraphsAfter\":[\"Refunds, if approved, will be processed to the original payment method within a commercially reasonable timeframe determined by payment processors and banking partners.\"]},{\"title\":\"3.3 Отсутствие возврата за частичное использование\",\"paragraphs\":[\"Refunds will not be issued for:\"],\"listDisc\":[\"Partial use of the Services during a billing period.\",\"Downgrades of Subscription plans.\",\"Change of mind or business decisions after payment.\",\"Subscription cancellations submitted after a billing cycle has renewed.\"]}]},{\"title\":\"4. Изменение подписки\",\"paragraphs\":[\"We provide two options when changing your Subscription plan:\"],\"subsections\":[{\"title\":\"4.1 Немедленное изменение\",\"paragraphs\":[\"If you select \\\"Change Now,\\\" your new plan will take effect immediately, and the associated charge will be applied.\",\"Please note that no refunds, credits, or prorated adjustments will be provided for any unused portion of your current plan.\"]},{\"title\":\"4.2 Изменение со следующего периода\",\"paragraphs\":[\"If you choose \\\"Change on Next Billing,\\\" your current plan will remain active until the end of the current Billing Period.\",\"The new plan will take effect at the start of the next Billing Period.\",\"No refunds or credits apply to the current Billing Period.\"]}]},{\"title\":\"5. Отмена после продления\",\"paragraphs\":[\"If an automatic renewal has already occurred before you submit a cancellation request: The renewal fee is non-refundable. The cancellation will apply to the next Billing Period.\"]},{\"title\":\"6. Чарджбэки и споры\",\"paragraphs\":[\"We maintain a strict no-tolerance policy toward unjustified chargebacks.\",\"Initiating a chargeback or payment dispute without first contacting us to seek resolution is considered a breach of this Refund and Cancellation Policy and our Terms of Service. Such actions may result in immediate suspension or permanent termination of your account, without notice, and forfeiture of access to the Services.\",\"We reserve the right to challenge and dispute any chargeback that we deem unauthorized, abusive, or inconsistent with this Policy. This includes providing payment processors, banks, and financial institutions with all relevant evidence, including but not limited to:\"],\"listDisc\":[\"Подтверждение оказания услуг и журналы доступа\",\"Записи активности аккаунта\",\"Принятие наших Условий обслуживания и политик\",\"История переписки с клиентом\"],\"paragraphsAfter\":[\"Customers are strongly encouraged to contact our support team first to resolve any billing concerns. We are committed to addressing legitimate issues in good faith; however, chargebacks used as a substitute for cancellation or refund requests will not be tolerated.\"]},{\"title\":\"7. Изменение Политики\",\"paragraphs\":[\"We may update this Policy from time to time. Material changes will be posted on our website or communicated via email prior to taking effect. Continued use of the Services after such updates constitutes acceptance of the revised Policy.\"]},{\"title\":\"8. Контакты\",\"paragraphs\":[\"For all cancellation and refund requests, please contact our support team via our help center.\"]}],\"content\":\"Политика возврата и отмены\\n\\nНастоящая Политика возврата и отмены («Политика») регулирует условия возврата и отмены услуг, предоставляемых компанией Pixel Nexus Global Pte. Ltd. («мы», «нас») через платформу iccandle.ai («Сервис»). Данная Политика является частью Условий обслуживания и должна рассматриваться совместно с ними.\\n\\n1. Определения\\n\\nПодписка (Subscription): платный доступ к Сервису на определённый период (ежемесячно или ежегодно).\\n\\nБиллинг-период (Billing Period): повторяющийся интервал списания оплаты.\\n\\nИзменение подписки (Subscription Change): переход на другой тариф (повышение или понижение).\\n\\n2. Условия отмены\\nОтмена подписки\\nПодписку можно отменить в любое время через личный кабинет или поддержку\\nОтмена вступает в силу в конце текущего биллингового периода\\nДоступ к сервису сохраняется до конца оплаченного периода\\nУже оплаченные средства не подлежат автоматическому возврату\\n3. Условия возврата\\n3.1 Общие положения\\n\\nЕсли иное не предусмотрено настоящей Политикой или законом, все оплаченные суммы не подлежат возврату после списания.\\n\\n3.2 Случаи возможного возврата\\n\\nВозврат может быть произведён по нашему усмотрению в ограниченных случаях:\\n\\nДвойное списание (подтверждённое)\\nТехническая ошибка, полностью препятствующая доступу к сервису (не по вине пользователя)\\nПрава, предусмотренные законодательством о защите прав потребителей\\n\\nОдобренные возвраты обрабатываются через исходный платёжный метод в разумные сроки.\\n\\n3.3 Отсутствие возврата за частичное использование\\n\\nВозврат не предоставляется за:\\n\\nЧастичное использование периода\\nПонижение тарифа\\nИзменение решения после оплаты\\nОтмену после автоматического продления\\n4. Изменение подписки\\n4.1 Немедленное изменение\\n\\nНовый тариф вступает в силу сразу, соответствующая сумма списывается немедленно. Возвраты за неиспользованный период не предоставляются.\\n\\n4.2 Изменение со следующего периода\\n\\nТекущий тариф действует до конца периода, новый тариф вступает в силу со следующего биллинга.\\n\\n5. Отмена после продления\\n\\nЕсли подписка уже была автоматически продлена, возврат за текущий период не предоставляется, отмена применяется со следующего периода.\\n\\n6. Чарджбэки и споры\\n\\nМы не допускаем необоснованные чарджбэки.\\n\\nИнициирование спора без предварительного обращения в поддержку считается нарушением Политики и может привести к блокировке или удалению аккаунта.\\n\\n7. Изменение Политики\\n\\nМы можем периодически обновлять Политику. Существенные изменения будут заранее опубликованы или отправлены по электронной почте.\\n\\n8. Контакты\\n\\nВсе запросы на возврат и отмену направляйте через службу поддержки.\"},\"Privacy\":{\"title\":\"Политика конфиденциальности\",\"intro\":\"Настоящая Политика конфиденциальности объясняет, как Pixel Nexus Global Pte. Ltd. («мы», «нас») собирает, использует, раскрывает и защищает персональные данные при использовании веб-сайта, приложений и сервисов (далее — «Сервисы»).\",\"sections\":[{\"title\":\"1. Собираемая информация\",\"paragraphs\":[\"We collect the following information:\"],\"listDisc\":[\"Адрес электронной почты, предоставленный при регистрации\",\"Service usage information, including interactions with features, pages viewed, session activity, and general usage patterns, collected to improve the functionality, performance, and user experience of our Services\"],\"paragraphsAfter\":[\"Мы не собираем, не храним и не обрабатываем данные банковских карт или другую чувствительную платёжную информацию.\"]},{\"title\":\"2. Платежи и Stripe\",\"paragraphs\":[\"All payment transactions are processed by our third-party payment service provider, Stripe.\",\"When you make a payment, Stripe collects and processes payment-related information (such as card details, billing information, and transaction data) directly. This information is handled in accordance with Stripe’s Privacy Policy and security standards, including PCI-DSS compliance.\",\"We only receive limited information from Stripe necessary to operate our Services, including:\"],\"listDisc\":[\"подтверждение платежа\",\"статус подписки\",\"идентификаторы транзакций\"],\"paragraphsAfter\":[\"Мы не имеем доступа к полным платёжным данным.\",\"You can review Stripe’s Privacy Policy here:\"],\"stripePrivacyUrl\":\"https://stripe.com/privacy\"},{\"title\":\"3. Использование информации\",\"paragraphs\":[\"We use the email addresses we collect to:\"],\"listDisc\":[\"Provide, operate, and maintain our Services\",\"Analyze service usage and improve product functionality, performance, and user experience\",\"Communicate with you regarding technical notices, updates, and support\",\"Inform you about products, services, features, and events\"]},{\"title\":\"4. Передача данных\",\"paragraphs\":[\"We do not sell your personal information.\",\"We may share your information only with:\"],\"listDisc\":[\"Service providers who support our operations (including hosting, analytics, and payment processing via Stripe)\",\"Professional advisors, such as legal, accounting, or compliance consultants\",\"Law enforcement or regulatory authorities, when required by law or to protect our legal rights\"],\"paragraphsAfter\":[\"All third-party service providers are required to process personal data in accordance with applicable data protection laws.\"]},{\"title\":\"5. Ваши права\",\"paragraphs\":[\"Depending on your location, you may have the right to:\"],\"listDisc\":[\"получить доступ к данным\",\"исправить email\",\"удалить данные\",\"ограничить или возразить против обработки\"],\"paragraphsAfter\":[\"Requests related to payment data should be directed to Stripe, as they act as the data controller for payment information.\"]},{\"title\":\"6. Сторонние сервисы\",\"paragraphs\":[\"Our Services rely on third-party providers such as Stripe. Their handling of personal data is governed by their own privacy policies, and we encourage you to review them.\"]},{\"title\":\"7. Контакты\",\"paragraphs\":[\"If you have any questions about this Privacy Policy or our data practices, please contact us at:\",\"support@iccandle.ai\"]}],\"content\":\"Политика конфиденциальности\\n\\nНастоящая Политика конфиденциальности объясняет, как Pixel Nexus Global Pte. Ltd. («мы», «нас») собирает, использует, раскрывает и защищает персональные данные при использовании веб-сайта, приложений и сервисов (далее — «Сервисы»).\\n\\n1. Собираемая информация\\n\\nМы собираем следующие данные:\\n\\nАдрес электронной почты, предоставленный при регистрации\\nДанные об использовании сервиса (взаимодействие с функциями, просмотренные страницы, сессии и модели использования)\\n\\nЭти данные используются для улучшения функциональности, производительности и пользовательского опыта.\\n\\nМы не собираем, не храним и не обрабатываем данные банковских карт или другую чувствительную платёжную информацию.\\n\\n2. Платежи и Stripe\\n\\nВсе платежи обрабатываются сторонним провайдером Stripe.\\n\\nПри оплате Stripe напрямую собирает и обрабатывает платёжные данные (данные карты, биллинг-информация и транзакции) в соответствии со своей политикой конфиденциальности и стандартом PCI-DSS.\\n\\nМы получаем от Stripe только ограниченную информацию:\\n\\nподтверждение платежа\\nстатус подписки\\nидентификаторы транзакций\\n\\nМы не имеем доступа к полным платёжным данным.\\n\\nПолитика конфиденциальности Stripe: https://stripe.com/privacy\\n\\n3. Использование информации\\n\\nМы используем email для:\\n\\nпредоставления и поддержки сервиса\\nанализа и улучшения продукта\\nтехнических уведомлений и поддержки\\nинформирования о функциях и обновлениях\\n4. Передача данных\\n\\nМы не продаём персональные данные.\\n\\nМы можем передавать данные только:\\n\\nпоставщикам услуг (хостинг, аналитика, Stripe)\\nюридическим, бухгалтерским и комплаенс-консультантам\\nгосударственным органам при необходимости по закону\\n\\nВсе третьи стороны обязаны соблюдать законы о защите данных.\\n\\n5. Ваши права\\n\\nВ зависимости от юрисдикции вы можете иметь право:\\n\\nполучить доступ к данным\\nисправить email\\nудалить данные\\nограничить или возразить против обработки\\n\\nЗапросы по платёжным данным следует направлять напрямую в Stripe.\\n\\n6. Сторонние сервисы\\n\\nНаши сервисы используют сторонние платформы (например, Stripe), которые обрабатывают данные по своим политикам.\\n\\n7. Контакты\\n\\nsupport@iccandle.ai\"},\"Cookie\":{\"title\":\"Политика использования файлов куки\",\"intro\":[\"This Cookie Policy explains how Pixel Nexus Global Pte. Ltd. (\\\"we\\\", \\\"us\\\", or \\\"our\\\") uses cookies and similar technologies when you visit or use iccandle.ai and related services (collectively, the \\\"Services\\\").\",\"Эта Политика должна рассматриваться совместно с Политикой конфиденциальности.\"],\"sections\":[{\"title\":\"1. Что такое куки\",\"paragraphs\":[\"Cookies — это небольшие текстовые файлы, которые сохраняются на вашем устройстве при посещении веб-сайта. Они используются для:\",\"обеспечения работы сайта\"],\"listDisc\":[\"Сессионные куки (удаляются при закрытии браузера)\",\"Постоянные куки (хранятся определённый срок или до удаления).\"]},{\"title\":\"2. Типы используемых куки\",\"subsections\":[{\"title\":\"2.1 Строго необходимые куки\",\"paragraphs\":[\"Постоянные cookies (хранятся определённый срок или до удаления)\"],\"listDisc\":[\"безопасный вход и аутентификация\",\"поддержание пользовательских сессий\",\"защита от мошенничества и злоупотреблений\"],\"paragraphsAfter\":[\"Без этих куки сервис не может работать должным образом.\"]},{\"title\":\"2.2 Функциональные куки\",\"paragraphs\":[\"защита от мошенничества и злоупотреблений\"],\"listDisc\":[\"язык и регион\",\"настройки аккаунта\"],\"paragraphsAfter\":[\"Они улучшают удобство, но не являются строго необходимыми.\"]},{\"title\":\"2.3 Аналитические и производительные куки\",\"paragraphs\":[\"2.3 Аналитические и производительные cookies\"],\"listDisc\":[\"посещённые страницы\",\"продолжительность сессий\",\"данные об ошибках и производительности\"],\"paragraphsAfter\":[\"данные об ошибках и производительности\"]},{\"title\":\"2.4 Сторонние куки\",\"paragraphs\":[\"2.4 Сторонние cookies\"],\"listDisc\":[\"Некоторые cookies устанавливаются сторонними поставщиками:\",\"платёжные системы (например, Stripe)\"],\"paragraphsAfter\":[\"аналитические и инфраструктурные провайдеры\"]}]},{\"title\":\"3. Для чего мы НЕ используем куки\",\"listDisc\":[\"реклама и поведенческий таргетинг\",\"продажа cookie-данных\",\"сбор чувствительной персональной информации\"]},{\"title\":\"4. Управление куки\",\"paragraphs\":[\"4. Управление cookies\"],\"listDisc\":[\"просмотр куки\",\"удаление куки\",\"блокировка куки\"],\"paragraphsAfter\":[\"Отключение некоторых куки может повлиять на работу сервиса.\"]},{\"title\":\"5. Изменения политики\",\"paragraphs\":[\"5. Изменения политики\"]},{\"title\":\"6. Контакты\",\"paragraphs\":[\"6. Контакты\",\"support@iccandle.ai\"]}],\"content\":\"Политика использования файлов cookie\\n\\nНастоящая Политика использования файлов cookie объясняет, как Pixel Nexus Global Pte. Ltd. («мы», «нас») использует файлы cookie и аналогичные технологии при посещении или использовании iccandle.ai и связанных сервисов (далее — «Сервисы»).\\n\\nЭта Политика должна рассматриваться совместно с Политикой конфиденциальности.\\n\\n1. Что такое cookies\\n\\nCookies — это небольшие текстовые файлы, которые сохраняются на вашем устройстве при посещении веб-сайта. Они используются для:\\n\\nобеспечения работы сайта\\nулучшения пользовательского опыта\\nпредоставления информации владельцам сайта\\n\\nCookies бывают:\\n\\nСессионные cookies (удаляются при закрытии браузера)\\nПостоянные cookies (хранятся определённый срок или до удаления)\\n2. Типы используемых cookies\\n2.1 Строго необходимые cookies\\n\\nЭти cookies необходимы для работы сервиса и не могут быть отключены.\\n\\nбезопасный вход и аутентификация\\nподдержание пользовательских сессий\\nзащита от мошенничества и злоупотреблений\\n2.2 Функциональные cookies\\n\\nИспользуются для запоминания ваших настроек:\\n\\nязык и регион\\nнастройки аккаунта\\n2.3 Аналитические и производительные cookies\\n\\nИспользуются для анализа того, как пользователи взаимодействуют с сервисом:\\n\\nпосещённые страницы\\nпродолжительность сессий\\nданные об ошибках и производительности\\n\\nЭти данные используются только для улучшения сервиса и не идентифицируют пользователей напрямую.\\n\\n2.4 Сторонние cookies\\n\\nНекоторые cookies устанавливаются сторонними поставщиками:\\n\\nплатёжные системы (например, Stripe)\\nаналитические и инфраструктурные провайдеры\\n\\nЭти третьи стороны используют cookies в соответствии со своими политиками.\\n\\n3. Для чего мы НЕ используем cookies\\nреклама и поведенческий таргетинг\\nпродажа cookie-данных\\nсбор чувствительной персональной информации\\n4. Управление cookies\\n\\nВы можете управлять cookies через настройки браузера:\\n\\nпросмотр cookies\\nудаление cookies\\nблокировка cookies\\n\\nОтключение некоторых cookies может повлиять на работу сервиса.\\n\\n5. Изменения политики\\n\\nМы можем обновлять эту Политику. Существенные изменения будут опубликованы на сайте. Продолжение использования сервиса означает согласие с обновлениями.\\n\\n6. Контакты\\n\\nsupport@iccandle.ai\"}}")
|
|
7440
7455
|
}
|
|
7441
7456
|
};
|
|
7442
|
-
function
|
|
7457
|
+
function Y(e, t) {
|
|
7443
7458
|
let n = t.split("."), r = e;
|
|
7444
7459
|
for (let e of n) {
|
|
7445
7460
|
if (!r || typeof r != "object" || !(e in r)) return;
|
|
@@ -7447,74 +7462,74 @@ function ie(e, t) {
|
|
|
7447
7462
|
}
|
|
7448
7463
|
return typeof r == "string" ? r : void 0;
|
|
7449
7464
|
}
|
|
7450
|
-
function
|
|
7465
|
+
function oe(e, t) {
|
|
7451
7466
|
return t ? e.replace(/\{(\w+)\}/g, (e, n) => t[n] == null ? `{${n}}` : String(t[n])) : e;
|
|
7452
7467
|
}
|
|
7453
|
-
function
|
|
7454
|
-
return
|
|
7468
|
+
function se(e, t, n) {
|
|
7469
|
+
return oe(Y(J[e], t) ?? Y(J.en, t) ?? t, n);
|
|
7455
7470
|
}
|
|
7456
7471
|
//#endregion
|
|
7457
7472
|
//#region src/context/widget-language.ts
|
|
7458
|
-
var
|
|
7459
|
-
function
|
|
7460
|
-
|
|
7473
|
+
var ce = Symbol("widget-language"), le = "en";
|
|
7474
|
+
function ue(e) {
|
|
7475
|
+
le = e;
|
|
7461
7476
|
}
|
|
7462
|
-
function
|
|
7463
|
-
return
|
|
7477
|
+
function de() {
|
|
7478
|
+
return le;
|
|
7464
7479
|
}
|
|
7465
|
-
function
|
|
7466
|
-
|
|
7467
|
-
|
|
7480
|
+
function fe(e) {
|
|
7481
|
+
ue(e.value), M(e, (e) => {
|
|
7482
|
+
ue(e);
|
|
7468
7483
|
}, { immediate: !0 });
|
|
7469
7484
|
let t = {
|
|
7470
7485
|
language: e,
|
|
7471
|
-
t: (t, n) =>
|
|
7486
|
+
t: (t, n) => se(e.value, t, n)
|
|
7472
7487
|
};
|
|
7473
|
-
return S(
|
|
7488
|
+
return S(ce, t), t;
|
|
7474
7489
|
}
|
|
7475
7490
|
function X() {
|
|
7476
|
-
return f(
|
|
7491
|
+
return f(ce) || {
|
|
7477
7492
|
language: r(() => "en"),
|
|
7478
|
-
t: ((e, t) =>
|
|
7493
|
+
t: ((e, t) => se("en", e, t))
|
|
7479
7494
|
};
|
|
7480
7495
|
}
|
|
7481
7496
|
//#endregion
|
|
7482
7497
|
//#region src/components/ui/toast-state.ts
|
|
7483
|
-
var
|
|
7484
|
-
function
|
|
7485
|
-
let t =
|
|
7486
|
-
t && (clearTimeout(t),
|
|
7498
|
+
var pe = 5e3, me = 1, he = /* @__PURE__ */ new Map(), ge = w([]);
|
|
7499
|
+
function _e(e) {
|
|
7500
|
+
let t = he.get(e);
|
|
7501
|
+
t && (clearTimeout(t), he.delete(e)), ge.value = ge.value.filter((t) => t.id !== e);
|
|
7487
7502
|
}
|
|
7488
|
-
function
|
|
7489
|
-
let o =
|
|
7503
|
+
function ve({ title: e, description: t, action: n, dismiss: r, variant: i = "info", duration: a = pe }) {
|
|
7504
|
+
let o = me++, s = {
|
|
7490
7505
|
id: o,
|
|
7491
7506
|
title: e,
|
|
7492
7507
|
description: t,
|
|
7493
7508
|
action: n,
|
|
7494
7509
|
dismiss: r !== !1 && {
|
|
7495
|
-
label: r?.label ??
|
|
7510
|
+
label: r?.label ?? se(de(), "Common.dismiss"),
|
|
7496
7511
|
onClick: r?.onClick
|
|
7497
7512
|
},
|
|
7498
7513
|
variant: i
|
|
7499
7514
|
};
|
|
7500
|
-
if (
|
|
7501
|
-
let e = setTimeout(() =>
|
|
7502
|
-
|
|
7515
|
+
if (ge.value = [...ge.value, s], a > 0) {
|
|
7516
|
+
let e = setTimeout(() => _e(o), a);
|
|
7517
|
+
he.set(o, e);
|
|
7503
7518
|
}
|
|
7504
7519
|
return o;
|
|
7505
7520
|
}
|
|
7506
7521
|
//#endregion
|
|
7507
7522
|
//#region src/lib/search-filter-storage.ts
|
|
7508
|
-
var
|
|
7509
|
-
function
|
|
7523
|
+
var ye = "search-filter", be = "search-filter-session", xe = "scanner-always-show";
|
|
7524
|
+
function Se() {
|
|
7510
7525
|
if (typeof window > "u") return !0;
|
|
7511
|
-
let e = localStorage.getItem(
|
|
7526
|
+
let e = localStorage.getItem(xe);
|
|
7512
7527
|
return e === null || e === "true";
|
|
7513
7528
|
}
|
|
7514
|
-
function
|
|
7515
|
-
typeof window > "u" || localStorage.setItem(
|
|
7529
|
+
function Ce(e) {
|
|
7530
|
+
typeof window > "u" || localStorage.setItem(xe, String(e));
|
|
7516
7531
|
}
|
|
7517
|
-
function
|
|
7532
|
+
function we(e) {
|
|
7518
7533
|
if (!e) return {};
|
|
7519
7534
|
try {
|
|
7520
7535
|
return JSON.parse(e);
|
|
@@ -7522,32 +7537,32 @@ function be(e) {
|
|
|
7522
7537
|
return {};
|
|
7523
7538
|
}
|
|
7524
7539
|
}
|
|
7525
|
-
function
|
|
7526
|
-
return typeof window > "u" ? {} :
|
|
7540
|
+
function Te() {
|
|
7541
|
+
return typeof window > "u" ? {} : we(localStorage.getItem(ye));
|
|
7527
7542
|
}
|
|
7528
|
-
function
|
|
7529
|
-
let e =
|
|
7543
|
+
function Ee() {
|
|
7544
|
+
let e = Te();
|
|
7530
7545
|
return Array.isArray(e.symbols) && e.symbols.length > 0;
|
|
7531
7546
|
}
|
|
7532
|
-
function
|
|
7547
|
+
function De(e, t) {
|
|
7533
7548
|
if (typeof window > "u") return;
|
|
7534
7549
|
let n = JSON.stringify(e);
|
|
7535
|
-
t ? (localStorage.setItem(
|
|
7550
|
+
t ? (localStorage.setItem(ye, n), sessionStorage.removeItem(be)) : (sessionStorage.setItem(be, n), ke());
|
|
7536
7551
|
}
|
|
7537
|
-
function
|
|
7552
|
+
function Oe() {
|
|
7538
7553
|
if (typeof window > "u") return {};
|
|
7539
|
-
let e =
|
|
7540
|
-
return Object.keys(e).length > 0 ? e :
|
|
7554
|
+
let e = we(sessionStorage.getItem(be));
|
|
7555
|
+
return Object.keys(e).length > 0 ? e : Te();
|
|
7541
7556
|
}
|
|
7542
|
-
function
|
|
7543
|
-
typeof window > "u" || localStorage.removeItem(
|
|
7557
|
+
function ke() {
|
|
7558
|
+
typeof window > "u" || localStorage.removeItem(ye);
|
|
7544
7559
|
}
|
|
7545
|
-
function
|
|
7560
|
+
function Ae(e) {
|
|
7546
7561
|
return e.isAllSelected ? !1 : !Array.isArray(e.symbols) || e.symbols.length <= 1;
|
|
7547
7562
|
}
|
|
7548
7563
|
//#endregion
|
|
7549
7564
|
//#region src/constants/symbol.constant.ts
|
|
7550
|
-
var
|
|
7565
|
+
var je = {
|
|
7551
7566
|
min: 10,
|
|
7552
7567
|
max: 50,
|
|
7553
7568
|
custom: [
|
|
@@ -7958,11 +7973,11 @@ var De = {
|
|
|
7958
7973
|
type: "commodity",
|
|
7959
7974
|
session: "1700-1700"
|
|
7960
7975
|
}
|
|
7961
|
-
],
|
|
7976
|
+
], Me = { class: "iccandle-simple-tooltip-trigger" }, Ne = {
|
|
7962
7977
|
key: 0,
|
|
7963
7978
|
class: "iccandle-simple-tooltip-content",
|
|
7964
7979
|
role: "tooltip"
|
|
7965
|
-
},
|
|
7980
|
+
}, Pe = /* @__PURE__ */ d({
|
|
7966
7981
|
__name: "SimpleTooltip",
|
|
7967
7982
|
props: { text: {} },
|
|
7968
7983
|
setup(e) {
|
|
@@ -7971,9 +7986,9 @@ var De = {
|
|
|
7971
7986
|
class: "iccandle-simple-tooltip-wrapper",
|
|
7972
7987
|
onMouseenter: r[0] ||= (e) => t.value = !0,
|
|
7973
7988
|
onMouseleave: r[1] ||= (e) => t.value = !1
|
|
7974
|
-
}, [s("span",
|
|
7989
|
+
}, [s("span", Me, [ee(n.$slots, "default")]), t.value && e.text ? (x(), o("div", Ne, O(e.text), 1)) : a("", !0)], 32));
|
|
7975
7990
|
}
|
|
7976
|
-
}),
|
|
7991
|
+
}), Fe = ["width", "height"], Ie = ["stroke"], Le = ["stroke"], Re = ["stroke"], ze = ["stroke"], Be = ["stroke"], Ve = /* @__PURE__ */ d({
|
|
7977
7992
|
__name: "ScanIcon",
|
|
7978
7993
|
props: {
|
|
7979
7994
|
size: { default: 24 },
|
|
@@ -7996,7 +8011,7 @@ var De = {
|
|
|
7996
8011
|
"stroke-linecap": "round",
|
|
7997
8012
|
"stroke-linejoin": "round",
|
|
7998
8013
|
"stroke-width": "1.4"
|
|
7999
|
-
}, null, 8,
|
|
8014
|
+
}, null, 8, Ie),
|
|
8000
8015
|
s("path", {
|
|
8001
8016
|
d: "M16.54,12.13v1.34c0,2.11-1.71,3.83-3.83,3.83h-1.14",
|
|
8002
8017
|
fill: "none",
|
|
@@ -8004,7 +8019,7 @@ var De = {
|
|
|
8004
8019
|
"stroke-linecap": "round",
|
|
8005
8020
|
"stroke-linejoin": "round",
|
|
8006
8021
|
"stroke-width": "1.4"
|
|
8007
|
-
}, null, 8,
|
|
8022
|
+
}, null, 8, Le),
|
|
8008
8023
|
s("path", {
|
|
8009
8024
|
d: "M11.57,1.98h1.14c2.11,0,3.83,1.71,3.83,3.83v.91",
|
|
8010
8025
|
fill: "none",
|
|
@@ -8012,7 +8027,7 @@ var De = {
|
|
|
8012
8027
|
"stroke-linecap": "round",
|
|
8013
8028
|
"stroke-linejoin": "round",
|
|
8014
8029
|
"stroke-width": "1.4"
|
|
8015
|
-
}, null, 8,
|
|
8030
|
+
}, null, 8, Re),
|
|
8016
8031
|
s("path", {
|
|
8017
8032
|
d: "M.7,6.72v-.91c0-2.11,1.71-3.83,3.83-3.83h1.09",
|
|
8018
8033
|
fill: "none",
|
|
@@ -8020,7 +8035,7 @@ var De = {
|
|
|
8020
8035
|
"stroke-linecap": "round",
|
|
8021
8036
|
"stroke-linejoin": "round",
|
|
8022
8037
|
"stroke-width": "1.4"
|
|
8023
|
-
}, null, 8,
|
|
8038
|
+
}, null, 8, ze),
|
|
8024
8039
|
s("path", {
|
|
8025
8040
|
d: "M5.62,17.29h-1.09c-2.11,0-3.83-1.71-3.83-3.83v-1.34",
|
|
8026
8041
|
fill: "none",
|
|
@@ -8028,14 +8043,14 @@ var De = {
|
|
|
8028
8043
|
"stroke-linecap": "round",
|
|
8029
8044
|
"stroke-linejoin": "round",
|
|
8030
8045
|
"stroke-width": "1.4"
|
|
8031
|
-
}, null, 8,
|
|
8032
|
-
], 10,
|
|
8046
|
+
}, null, 8, Be)
|
|
8047
|
+
], 10, Fe));
|
|
8033
8048
|
}
|
|
8034
|
-
}),
|
|
8049
|
+
}), He = [
|
|
8035
8050
|
"width",
|
|
8036
8051
|
"height",
|
|
8037
8052
|
"fill"
|
|
8038
|
-
],
|
|
8053
|
+
], Ue = ["fill"], We = ["fill"], Ge = ["fill"], Ke = ["fill"], qe = ["fill"], Je = /* @__PURE__ */ d({
|
|
8039
8054
|
__name: "PatternTrackerIcon",
|
|
8040
8055
|
props: {
|
|
8041
8056
|
size: { default: 24 },
|
|
@@ -8055,35 +8070,35 @@ var De = {
|
|
|
8055
8070
|
s("path", {
|
|
8056
8071
|
d: "M4.97,15.12c-.4,0-.73-.33-.73-.73v-6.02c0-.4.33-.73.73-.73s.73.33.73.73v6.02c0,.4-.33.73-.73.73Z",
|
|
8057
8072
|
fill: e.color
|
|
8058
|
-
}, null, 8,
|
|
8073
|
+
}, null, 8, Ue),
|
|
8059
8074
|
s("path", {
|
|
8060
8075
|
d: "M7.79,16.95c-.4,0-.73-.33-.73-.73V5.22c0-.4.33-.73.73-.73s.73.33.73.73v11c0,.4-.33.73-.73.73Z",
|
|
8061
8076
|
fill: e.color
|
|
8062
|
-
}, null, 8,
|
|
8077
|
+
}, null, 8, We),
|
|
8063
8078
|
s("path", {
|
|
8064
8079
|
d: "M10.62,13.88c-.4,0-.73-.33-.73-.73v-5.23c0-.4.33-.73.73-.73s.73.33.73.73v5.23c0,.4-.33.73-.73.73Z",
|
|
8065
8080
|
fill: e.color
|
|
8066
|
-
}, null, 8,
|
|
8081
|
+
}, null, 8, Ge),
|
|
8067
8082
|
s("path", {
|
|
8068
8083
|
d: "M13.44,17.22c-.4,0-.73-.33-.73-.73v-7.54c0-.4.33-.73.73-.73s.73.33.73.73v7.54c0,.4-.33.73-.73.73Z",
|
|
8069
8084
|
fill: e.color
|
|
8070
|
-
}, null, 8,
|
|
8085
|
+
}, null, 8, Ke),
|
|
8071
8086
|
s("path", {
|
|
8072
8087
|
d: "M16.26,15.12c-.4,0-.73-.33-.73-.73V6.25c0-.4.33-.73.73-.73s.73.33.73.73v8.14c0,.4-.33.73-.73.73Z",
|
|
8073
8088
|
fill: e.color
|
|
8074
|
-
}, null, 8,
|
|
8089
|
+
}, null, 8, qe),
|
|
8075
8090
|
n[0] ||= s("path", { d: "M20.65,11.66h-2.48c-.4,0-.73-.33-.73-.73s.33-.73.73-.73h2.48c.4,0,.73.33.73.73s-.33.73-.73.73Z" }, null, -1),
|
|
8076
8091
|
n[1] ||= s("path", { d: "M3.21,11.66H.73c-.4,0-.73-.33-.73-.73s.33-.73.73-.73h2.48c.4,0,.73.33.73.73s-.33.73-.73.73Z" }, null, -1),
|
|
8077
8092
|
n[2] ||= s("path", { d: "M10.69,21.11c-.4,0-.73-.33-.73-.73v-2.48c0-.4.33-.73.73-.73s.73.33.73.73v2.48c0,.4-.33.73-.73.73Z" }, null, -1),
|
|
8078
8093
|
n[3] ||= s("path", { d: "M10.69,3.93c-.4,0-.73-.33-.73-.73V.73c0-.4.33-.73.73-.73s.73.33.73.73v2.48c0,.4-.33.73-.73.73Z" }, null, -1)
|
|
8079
|
-
]), n[4] ||= s("path", { d: "M15.15,20.03H6.08c-2.65,0-4.8-2.15-4.8-4.8V6.16C1.27,3.51,3.43,1.35,6.08,1.35h9.07c2.65,0,4.8,2.15,4.8,4.8v9.07c0,2.65-2.16,4.8-4.8,4.8ZM6.08,2.74c-1.88,0-3.42,1.53-3.42,3.42v9.07c0,1.88,1.53,3.42,3.42,3.42h9.07c1.88,0,3.42-1.53,3.42-3.42V6.16c0-1.88-1.53-3.42-3.42-3.42H6.08Z" }, null, -1)], 10,
|
|
8094
|
+
]), n[4] ||= s("path", { d: "M15.15,20.03H6.08c-2.65,0-4.8-2.15-4.8-4.8V6.16C1.27,3.51,3.43,1.35,6.08,1.35h9.07c2.65,0,4.8,2.15,4.8,4.8v9.07c0,2.65-2.16,4.8-4.8,4.8ZM6.08,2.74c-1.88,0-3.42,1.53-3.42,3.42v9.07c0,1.88,1.53,3.42,3.42,3.42h9.07c1.88,0,3.42-1.53,3.42-3.42V6.16c0-1.88-1.53-3.42-3.42-3.42H6.08Z" }, null, -1)], 10, He));
|
|
8080
8095
|
}
|
|
8081
|
-
}),
|
|
8096
|
+
}), Ye = [
|
|
8082
8097
|
"width",
|
|
8083
8098
|
"height",
|
|
8084
8099
|
"stroke",
|
|
8085
8100
|
"stroke-width"
|
|
8086
|
-
],
|
|
8101
|
+
], Xe = /* @__PURE__ */ d({
|
|
8087
8102
|
__name: "GripVerticalIcon",
|
|
8088
8103
|
props: {
|
|
8089
8104
|
size: { default: 24 },
|
|
@@ -8103,13 +8118,13 @@ var De = {
|
|
|
8103
8118
|
"stroke-linecap": "round",
|
|
8104
8119
|
"stroke-linejoin": "round",
|
|
8105
8120
|
class: g(e.className)
|
|
8106
|
-
}, [...n[0] ||= [c("<circle cx=\"9\" cy=\"12\" r=\"1\"></circle><circle cx=\"9\" cy=\"5\" r=\"1\"></circle><circle cx=\"9\" cy=\"19\" r=\"1\"></circle><circle cx=\"15\" cy=\"12\" r=\"1\"></circle><circle cx=\"15\" cy=\"5\" r=\"1\"></circle><circle cx=\"15\" cy=\"19\" r=\"1\"></circle>", 6)]], 10,
|
|
8121
|
+
}, [...n[0] ||= [c("<circle cx=\"9\" cy=\"12\" r=\"1\"></circle><circle cx=\"9\" cy=\"5\" r=\"1\"></circle><circle cx=\"9\" cy=\"19\" r=\"1\"></circle><circle cx=\"15\" cy=\"12\" r=\"1\"></circle><circle cx=\"15\" cy=\"5\" r=\"1\"></circle><circle cx=\"15\" cy=\"19\" r=\"1\"></circle>", 6)]], 10, Ye));
|
|
8107
8122
|
}
|
|
8108
|
-
}),
|
|
8123
|
+
}), Ze = [
|
|
8109
8124
|
"width",
|
|
8110
8125
|
"height",
|
|
8111
8126
|
"stroke"
|
|
8112
|
-
],
|
|
8127
|
+
], Qe = /* @__PURE__ */ d({
|
|
8113
8128
|
__name: "Minimize2Icon",
|
|
8114
8129
|
props: {
|
|
8115
8130
|
size: { default: 24 },
|
|
@@ -8141,13 +8156,13 @@ var De = {
|
|
|
8141
8156
|
y1: "21",
|
|
8142
8157
|
y2: "14"
|
|
8143
8158
|
}, null, -1)
|
|
8144
|
-
]], 8,
|
|
8159
|
+
]], 8, Ze));
|
|
8145
8160
|
}
|
|
8146
|
-
}),
|
|
8161
|
+
}), $e = [
|
|
8147
8162
|
"width",
|
|
8148
8163
|
"height",
|
|
8149
8164
|
"stroke"
|
|
8150
|
-
],
|
|
8165
|
+
], et = /* @__PURE__ */ d({
|
|
8151
8166
|
__name: "Maximize2Icon",
|
|
8152
8167
|
props: {
|
|
8153
8168
|
size: { default: 24 },
|
|
@@ -8179,15 +8194,15 @@ var De = {
|
|
|
8179
8194
|
y1: "21",
|
|
8180
8195
|
y2: "14"
|
|
8181
8196
|
}, null, -1)
|
|
8182
|
-
]], 8,
|
|
8197
|
+
]], 8, $e));
|
|
8183
8198
|
}
|
|
8184
|
-
}), Ze = "data:image/png;base64,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", Qe = { class: "iccandle-scanner-popup__inner" }, $e = { class: "iccandle-handle iccandle-scanner-popup__bars" }, et = ["disabled"], tt = ["disabled"], nt = {
|
|
8199
|
+
}), tt = "data:image/png;base64,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", nt = { class: "iccandle-scanner-popup__inner" }, rt = { class: "iccandle-handle iccandle-scanner-popup__bars" }, it = ["disabled"], at = ["disabled"], ot = {
|
|
8185
8200
|
key: 1,
|
|
8186
8201
|
class: "iccandle-scanner-popup__action-row"
|
|
8187
|
-
},
|
|
8202
|
+
}, st = ["src"], ct = {
|
|
8188
8203
|
key: 0,
|
|
8189
8204
|
class: "iccandle-scanner-popup__label"
|
|
8190
|
-
},
|
|
8205
|
+
}, lt = /* @__PURE__ */ d({
|
|
8191
8206
|
__name: "ScannerPopUp",
|
|
8192
8207
|
props: {
|
|
8193
8208
|
handleTrackPatternClick: {},
|
|
@@ -8279,7 +8294,7 @@ var De = {
|
|
|
8279
8294
|
});
|
|
8280
8295
|
async function E() {
|
|
8281
8296
|
if (n.selectedCandles?.length) {
|
|
8282
|
-
|
|
8297
|
+
ve({
|
|
8283
8298
|
title: c("Common.error"),
|
|
8284
8299
|
description: c("Selector.clearReplayFirst"),
|
|
8285
8300
|
variant: "error"
|
|
@@ -8289,62 +8304,62 @@ var De = {
|
|
|
8289
8304
|
let e = n.candles[0], t = n.candles[n.candles.length - 1];
|
|
8290
8305
|
if (!e || !t) return;
|
|
8291
8306
|
n.setScanLoading?.(!0);
|
|
8292
|
-
let r = e.timestamp, i = t.timestamp;
|
|
8307
|
+
let r = e.timestamp, i = t.timestamp, a = i > 0xe8d4a51000 ? Math.floor(i / 1e3) : i, o = r > 0xe8d4a51000 ? Math.floor(r / 1e3) : r;
|
|
8293
8308
|
if (n.chartWidget) {
|
|
8294
|
-
let e = n.chartWidget.activeChart(), t =
|
|
8309
|
+
let e = n.chartWidget.activeChart(), t = G(n.resolution), r = a - (100 * t + t * n.window_size + t * 100), i = a + 100 / 3 * t;
|
|
8295
8310
|
try {
|
|
8296
8311
|
await e.setVisibleRange({
|
|
8297
8312
|
from: r,
|
|
8298
|
-
to:
|
|
8313
|
+
to: i
|
|
8299
8314
|
});
|
|
8300
8315
|
} catch (e) {
|
|
8301
8316
|
console.error("Error setting visible range:", e);
|
|
8302
8317
|
}
|
|
8303
8318
|
}
|
|
8304
|
-
let
|
|
8319
|
+
let s;
|
|
8305
8320
|
try {
|
|
8306
8321
|
let { data: e } = await F.post("https://scan-service.iccandle.ai/cacheCandle", { candles: n.candles }, { headers: { Authorization: `Bearer ${localStorage.getItem("iccandle_token")}` } });
|
|
8307
|
-
|
|
8322
|
+
s = e;
|
|
8308
8323
|
} catch (e) {
|
|
8309
8324
|
console.error("Error caching candles:", e), n.setScanLoading?.(!1);
|
|
8310
8325
|
return;
|
|
8311
8326
|
}
|
|
8312
|
-
if (!
|
|
8327
|
+
if (!s?.id) {
|
|
8313
8328
|
n.setScanLoading?.(!1);
|
|
8314
8329
|
return;
|
|
8315
8330
|
}
|
|
8316
|
-
let
|
|
8331
|
+
let l = Oe(), u = l.timeframe || n.timeframe, d = {
|
|
8317
8332
|
reference_resolution: n.resolution,
|
|
8318
|
-
resolution:
|
|
8333
|
+
resolution: u,
|
|
8319
8334
|
symbol: n.currentSymbol,
|
|
8320
|
-
end_timestamp:
|
|
8321
|
-
start_timestamp:
|
|
8335
|
+
end_timestamp: a,
|
|
8336
|
+
start_timestamp: o,
|
|
8322
8337
|
window_size: n.window_size,
|
|
8323
|
-
top_k:
|
|
8338
|
+
top_k: l.top_k || 25,
|
|
8324
8339
|
percent: 90,
|
|
8325
|
-
analyze_window:
|
|
8326
|
-
candle_id:
|
|
8340
|
+
analyze_window: l.probability || 0,
|
|
8341
|
+
candle_id: s?.id || ""
|
|
8327
8342
|
};
|
|
8328
|
-
if (!
|
|
8329
|
-
symbols:
|
|
8330
|
-
types:
|
|
8343
|
+
if (!Ae(l) && !l.isAllSelected && (l.symbolTypes?.length ?? 0) > 0 && (l.symbols?.length ?? 0) > 0) d.filter = {
|
|
8344
|
+
symbols: l.symbols.join(","),
|
|
8345
|
+
types: l.symbolTypes || []
|
|
8331
8346
|
};
|
|
8332
|
-
else if (!
|
|
8347
|
+
else if (!l.isAllSelected) {
|
|
8333
8348
|
let e = Z.find((e) => e.ticker === n.currentSymbol)?.type;
|
|
8334
|
-
|
|
8349
|
+
d.filter = {
|
|
8335
8350
|
symbols: n.currentSymbol,
|
|
8336
8351
|
...e ? { types: [e] } : {}
|
|
8337
8352
|
};
|
|
8338
8353
|
}
|
|
8339
|
-
if (
|
|
8340
|
-
let e =
|
|
8341
|
-
|
|
8354
|
+
if (l.period && l.period > 0) {
|
|
8355
|
+
let e = a - l.period * 365.25 * 24 * 60 * 60;
|
|
8356
|
+
d.filter ||= {}, d.filter.period = e;
|
|
8342
8357
|
}
|
|
8343
|
-
let
|
|
8344
|
-
n.clearScannerNewsMarks(), n.submitCallback(
|
|
8358
|
+
let f = `${z}/${n.language}?symbol=${d.symbol}&ref_res=${d.reference_resolution}&tk=${d.top_k}&res=${d.resolution}&cid=${d.candle_id}&from=${d.start_timestamp * 1e3}&to=${d.end_timestamp * 1e3}` + (d.filter?.symbols?.length ? `&fs=${d.filter.symbols}` : "") + (d.filter?.period == null ? "" : `&period=${d.filter.period}`) + (l.model ? `&model=${l.model}` : "") + (l.temperature == null ? "" : `&temp=${l.temperature}`) + (n.theme === "dark" ? "&theme=dark" : "&theme=light");
|
|
8359
|
+
n.clearScannerNewsMarks(), n.submitCallback(f);
|
|
8345
8360
|
}
|
|
8346
8361
|
function D() {
|
|
8347
|
-
return localStorage.getItem("iccandle_token") ? !0 : (
|
|
8362
|
+
return localStorage.getItem("iccandle_token") ? !0 : (ve({
|
|
8348
8363
|
title: c("Common.warning"),
|
|
8349
8364
|
description: c("Selector.pleaseLoginFirst"),
|
|
8350
8365
|
variant: "info"
|
|
@@ -8353,15 +8368,15 @@ var De = {
|
|
|
8353
8368
|
function A() {
|
|
8354
8369
|
if (n.onScanClick?.(), D()) {
|
|
8355
8370
|
if (n.selectedCandles?.length) {
|
|
8356
|
-
|
|
8371
|
+
ve({
|
|
8357
8372
|
title: c("Common.error"),
|
|
8358
8373
|
description: c("Selector.clearReplayFirst"),
|
|
8359
8374
|
variant: "error"
|
|
8360
8375
|
});
|
|
8361
8376
|
return;
|
|
8362
8377
|
}
|
|
8363
|
-
if (
|
|
8364
|
-
let e =
|
|
8378
|
+
if (Ee() && !Se()) {
|
|
8379
|
+
let e = Te().timeframe;
|
|
8365
8380
|
e && n.onApplySavedTimeframe?.(e), E();
|
|
8366
8381
|
return;
|
|
8367
8382
|
}
|
|
@@ -8384,8 +8399,8 @@ var De = {
|
|
|
8384
8399
|
class: "iccandle-scanner-popup",
|
|
8385
8400
|
style: _(y.value),
|
|
8386
8401
|
onPointerdown: ee
|
|
8387
|
-
}, [s("div",
|
|
8388
|
-
u(
|
|
8402
|
+
}, [s("div", nt, [
|
|
8403
|
+
u(Xe, {
|
|
8389
8404
|
"stroke-width": 1,
|
|
8390
8405
|
size: 20,
|
|
8391
8406
|
color: "#b2b5be",
|
|
@@ -8393,11 +8408,11 @@ var De = {
|
|
|
8393
8408
|
}),
|
|
8394
8409
|
r[4] ||= s("div", { class: "iccandle-scanner-popup__divider" }, null, -1),
|
|
8395
8410
|
t.hasActiveShape ? (x(), o(e, { key: 0 }, [
|
|
8396
|
-
u(
|
|
8397
|
-
default: N(() => [s("div",
|
|
8411
|
+
u(Pe, { text: k(c)("Selector.availableBars") }, {
|
|
8412
|
+
default: N(() => [s("div", rt, O(t.window_size) + " bar ", 1)]),
|
|
8398
8413
|
_: 1
|
|
8399
8414
|
}, 8, ["text"]),
|
|
8400
|
-
t.hideScanButton ? a("", !0) : (x(), i(
|
|
8415
|
+
t.hideScanButton ? a("", !0) : (x(), i(Pe, {
|
|
8401
8416
|
key: 0,
|
|
8402
8417
|
text: k(c)("Selector.scan")
|
|
8403
8418
|
}, {
|
|
@@ -8406,47 +8421,47 @@ var De = {
|
|
|
8406
8421
|
disabled: p.value,
|
|
8407
8422
|
class: "iccandle-scanner-popup__action-btn",
|
|
8408
8423
|
onClick: A
|
|
8409
|
-
}, [u(
|
|
8424
|
+
}, [u(Ve, {
|
|
8410
8425
|
size: 20,
|
|
8411
8426
|
color: m.value
|
|
8412
8427
|
}, null, 8, ["color"]), l.value ? (x(), o("div", {
|
|
8413
8428
|
key: 0,
|
|
8414
8429
|
class: g(h.value)
|
|
8415
|
-
}, O(k(c)("Selector.scan")), 3)) : a("", !0)], 8,
|
|
8430
|
+
}, O(k(c)("Selector.scan")), 3)) : a("", !0)], 8, it)]),
|
|
8416
8431
|
_: 1
|
|
8417
8432
|
}, 8, ["text"])),
|
|
8418
|
-
t.hideTrackerButton ? a("", !0) : (x(), o(e, { key: 1 }, [r[2] ||= s("div", { class: "iccandle-scanner-popup__divider" }, null, -1), u(
|
|
8433
|
+
t.hideTrackerButton ? a("", !0) : (x(), o(e, { key: 1 }, [r[2] ||= s("div", { class: "iccandle-scanner-popup__divider" }, null, -1), u(Pe, { text: k(c)("Layout.headerNav.patternShortTitle") }, {
|
|
8419
8434
|
default: N(() => [s("button", {
|
|
8420
8435
|
type: "button",
|
|
8421
8436
|
disabled: p.value,
|
|
8422
8437
|
class: "iccandle-scanner-popup__action-btn",
|
|
8423
8438
|
onClick: j
|
|
8424
|
-
}, [u(
|
|
8439
|
+
}, [u(Je, {
|
|
8425
8440
|
size: 20,
|
|
8426
8441
|
color: m.value,
|
|
8427
8442
|
stroke: m.value
|
|
8428
8443
|
}, null, 8, ["color", "stroke"]), l.value ? (x(), o("div", {
|
|
8429
8444
|
key: 0,
|
|
8430
8445
|
class: g(h.value)
|
|
8431
|
-
}, O(k(c)("Layout.headerNav.patternShortTitle")), 3)) : a("", !0)], 8,
|
|
8446
|
+
}, O(k(c)("Layout.headerNav.patternShortTitle")), 3)) : a("", !0)], 8, at)]),
|
|
8432
8447
|
_: 1
|
|
8433
8448
|
}, 8, ["text"])], 64))
|
|
8434
|
-
], 64)) : (x(), o("div",
|
|
8449
|
+
], 64)) : (x(), o("div", ot, [u(Pe, { text: k(c)("Selector.activateSelector") }, {
|
|
8435
8450
|
default: N(() => [s("button", {
|
|
8436
8451
|
type: "button",
|
|
8437
8452
|
class: "iccandle-scanner-popup__action-btn iccandle-scanner-popup__action-btn--with-gap",
|
|
8438
8453
|
onClick: r[0] ||= (e) => t.triggerScanner?.()
|
|
8439
8454
|
}, [s("img", {
|
|
8440
|
-
src: k(
|
|
8455
|
+
src: k(tt),
|
|
8441
8456
|
width: "24",
|
|
8442
8457
|
height: "24",
|
|
8443
8458
|
alt: "scanner",
|
|
8444
8459
|
class: "iccandle-scanner-popup__logo"
|
|
8445
|
-
}, null, 8,
|
|
8460
|
+
}, null, 8, st), l.value ? (x(), o("div", ct, O(k(c)("Selector.activateSelector")), 1)) : a("", !0)])]),
|
|
8446
8461
|
_: 1
|
|
8447
8462
|
}, 8, ["text"])])),
|
|
8448
8463
|
r[5] ||= s("div", { class: "iccandle-scanner-popup__divider" }, null, -1),
|
|
8449
|
-
u(
|
|
8464
|
+
u(Pe, { text: k(c)("Selector.settings") }, {
|
|
8450
8465
|
default: N(() => [s("button", {
|
|
8451
8466
|
type: "button",
|
|
8452
8467
|
class: "iccandle-scanner-popup__settings",
|
|
@@ -8466,16 +8481,16 @@ var De = {
|
|
|
8466
8481
|
})], -1)]])]),
|
|
8467
8482
|
_: 1
|
|
8468
8483
|
}, 8, ["text"]),
|
|
8469
|
-
u(
|
|
8484
|
+
u(Pe, { text: l.value ? k(c)("Selector.collapseToolbar") : k(c)("Selector.expandToolbar") }, {
|
|
8470
8485
|
default: N(() => [s("button", {
|
|
8471
8486
|
type: "button",
|
|
8472
8487
|
class: "iccandle-scanner-popup__toggle",
|
|
8473
8488
|
onClick: te
|
|
8474
|
-
}, [l.value ? (x(), i(
|
|
8489
|
+
}, [l.value ? (x(), i(Qe, {
|
|
8475
8490
|
key: 0,
|
|
8476
8491
|
size: 20,
|
|
8477
8492
|
color: "#b2b5be"
|
|
8478
|
-
})) : (x(), i(
|
|
8493
|
+
})) : (x(), i(et, {
|
|
8479
8494
|
key: 1,
|
|
8480
8495
|
size: 20,
|
|
8481
8496
|
color: "#b2b5be"
|
|
@@ -8490,24 +8505,52 @@ var De = {
|
|
|
8490
8505
|
function Q(...e) {
|
|
8491
8506
|
return e.filter(Boolean).join(" ");
|
|
8492
8507
|
}
|
|
8493
|
-
function
|
|
8508
|
+
function ut(e, t) {
|
|
8494
8509
|
let n;
|
|
8495
8510
|
return (r, i) => {
|
|
8496
8511
|
clearTimeout(n), n = setTimeout(() => e(r, i), t);
|
|
8497
8512
|
};
|
|
8498
8513
|
}
|
|
8499
|
-
var
|
|
8514
|
+
var dt = (e) => e === "1D" || e === "D" || e === "1440", ft = (e) => {
|
|
8515
|
+
let t = e.trim().toUpperCase();
|
|
8516
|
+
return t === "W" || /^\d+W$/.test(t);
|
|
8517
|
+
}, pt = (e) => {
|
|
8518
|
+
let t = e.trim().toUpperCase();
|
|
8519
|
+
return t === "M" || /^\d+M$/.test(t);
|
|
8520
|
+
}, mt = (e) => dt(e) || ft(e) || pt(e), ht = (e) => {
|
|
8521
|
+
let t = new Date(e);
|
|
8522
|
+
t.setUTCHours(0, 0, 0, 0);
|
|
8523
|
+
let n = t.getUTCDay(), r = n === 0 ? 6 : n - 1;
|
|
8524
|
+
return t.setUTCDate(t.getUTCDate() - r), t.getTime();
|
|
8525
|
+
}, gt = (e, t, n) => {
|
|
8526
|
+
let r = e > 1e11 ? e : e * 1e3, i = t > 1e11 ? t : t * 1e3;
|
|
8527
|
+
if (pt(n)) {
|
|
8528
|
+
let e = new Date(r), t = new Date(i);
|
|
8529
|
+
return e.getUTCFullYear() === t.getUTCFullYear() && e.getUTCMonth() === t.getUTCMonth();
|
|
8530
|
+
}
|
|
8531
|
+
return ft(n) ? ht(r) === ht(i) : dt(n) ? _t(r, n) === _t(i, n) : r === i;
|
|
8532
|
+
}, _t = (e, t) => {
|
|
8500
8533
|
let n = e.toString().length > 11 ? e : e * 1e3;
|
|
8501
|
-
if (t
|
|
8502
|
-
let e = new Date(n);
|
|
8503
|
-
return e.setUTCHours(0, 0, 0, 0), e.getTime();
|
|
8534
|
+
if (dt(t)) {
|
|
8535
|
+
let e = new Date(n + 420 * 60 * 1e3);
|
|
8536
|
+
return e.setUTCHours(0, 0, 0, 0), e.getUTCDay() === 6 && e.setUTCDate(e.getUTCDate() - 1), e.getTime();
|
|
8504
8537
|
}
|
|
8505
8538
|
return n;
|
|
8506
|
-
},
|
|
8539
|
+
}, vt = (e, t) => {
|
|
8540
|
+
let n = e > 0xe8d4a51000 ? Math.floor(e / 1e3) : e;
|
|
8541
|
+
if (!mt(t)) return n;
|
|
8542
|
+
let r = /* @__PURE__ */ new Date(n * 1e3);
|
|
8543
|
+
return r.getUTCHours() !== 0 || r.getUTCMinutes() !== 0 || r.getUTCSeconds() !== 0 ? n : Math.floor(_t(e, t) / 1e3) + 720 * 60;
|
|
8544
|
+
}, yt = (e, t, n) => {
|
|
8545
|
+
for (let n = 0; n < e.length; n++) if (e[n][0] === t) return n;
|
|
8546
|
+
if (!mt(n)) return -1;
|
|
8547
|
+
for (let r = 0; r < e.length; r++) if (gt(e[r][0], t, n)) return r;
|
|
8548
|
+
return -1;
|
|
8549
|
+
}, bt = (e) => e > 1e11 ? Math.floor(e / 1e3) : e, xt = [
|
|
8507
8550
|
"width",
|
|
8508
8551
|
"height",
|
|
8509
8552
|
"stroke"
|
|
8510
|
-
],
|
|
8553
|
+
], St = /* @__PURE__ */ d({
|
|
8511
8554
|
__name: "XIcon",
|
|
8512
8555
|
props: {
|
|
8513
8556
|
size: { default: 24 },
|
|
@@ -8526,15 +8569,15 @@ var ct = (e, t) => {
|
|
|
8526
8569
|
"stroke-linecap": "round",
|
|
8527
8570
|
"stroke-linejoin": "round",
|
|
8528
8571
|
class: g(e.className)
|
|
8529
|
-
}, [...n[0] ||= [s("path", { d: "M18 6 6 18" }, null, -1), s("path", { d: "m6 6 12 12" }, null, -1)]], 10,
|
|
8572
|
+
}, [...n[0] ||= [s("path", { d: "M18 6 6 18" }, null, -1), s("path", { d: "m6 6 12 12" }, null, -1)]], 10, xt));
|
|
8530
8573
|
}
|
|
8531
|
-
}),
|
|
8574
|
+
}), Ct = ["width", "height"], wt = { class: "iccandle-info-tooltip-content__inner" }, Tt = { class: "iccandle-info-tooltip-content__title" }, Et = {
|
|
8532
8575
|
key: 0,
|
|
8533
8576
|
class: "iccandle-info-tooltip-content__body"
|
|
8534
|
-
},
|
|
8577
|
+
}, Dt = { class: "iccandle-info-tooltip-content__line-label" }, Ot = {
|
|
8535
8578
|
key: 1,
|
|
8536
8579
|
class: "iccandle-info-tooltip-content__description"
|
|
8537
|
-
},
|
|
8580
|
+
}, kt = /* @__PURE__ */ d({
|
|
8538
8581
|
__name: "ToolTip",
|
|
8539
8582
|
props: {
|
|
8540
8583
|
title: {},
|
|
@@ -8617,24 +8660,24 @@ var ct = (e, t) => {
|
|
|
8617
8660
|
}, null, -1),
|
|
8618
8661
|
s("path", { d: "M12 16v-4" }, null, -1),
|
|
8619
8662
|
s("path", { d: "M12 8h.01" }, null, -1)
|
|
8620
|
-
]], 10,
|
|
8663
|
+
]], 10, Ct))], 32), (x(), i(t, { to: p.value }, [f.value ? (x(), o("div", {
|
|
8621
8664
|
key: 0,
|
|
8622
8665
|
ref_key: "contentRef",
|
|
8623
8666
|
ref: d,
|
|
8624
8667
|
class: g(k(Q)("iccandle-info-tooltip-content", "iccandle-theme-scope", y.value && "iccandle-dark")),
|
|
8625
8668
|
role: "tooltip",
|
|
8626
8669
|
style: _(m.value)
|
|
8627
|
-
}, [s("div",
|
|
8670
|
+
}, [s("div", wt, [s("h4", Tt, O(n.title), 1), n.lines?.length ? (x(), o("div", Et, [(x(!0), o(e, null, T(n.lines, (e) => (x(), o("p", {
|
|
8628
8671
|
key: e.label,
|
|
8629
8672
|
class: "iccandle-info-tooltip-content__line"
|
|
8630
|
-
}, [s("span",
|
|
8673
|
+
}, [s("span", Dt, O(e.label), 1), l(" " + O(e.text), 1)]))), 128))])) : n.description ? (x(), o("p", Ot, O(n.description), 1)) : a("", !0)])], 6)) : a("", !0)], 8, ["to"]))], 64));
|
|
8631
8674
|
}
|
|
8632
|
-
}),
|
|
8675
|
+
}), At = [
|
|
8633
8676
|
"width",
|
|
8634
8677
|
"height",
|
|
8635
8678
|
"stroke",
|
|
8636
8679
|
"stroke-width"
|
|
8637
|
-
],
|
|
8680
|
+
], jt = /* @__PURE__ */ d({
|
|
8638
8681
|
__name: "ChevronDownIcon",
|
|
8639
8682
|
props: {
|
|
8640
8683
|
size: { default: 16 },
|
|
@@ -8654,12 +8697,12 @@ var ct = (e, t) => {
|
|
|
8654
8697
|
"stroke-linecap": "round",
|
|
8655
8698
|
"stroke-linejoin": "round",
|
|
8656
8699
|
class: g(e.className)
|
|
8657
|
-
}, [...n[0] ||= [s("path", { d: "m6 9 6 6 6-6" }, null, -1)]], 10,
|
|
8700
|
+
}, [...n[0] ||= [s("path", { d: "m6 9 6 6 6-6" }, null, -1)]], 10, At));
|
|
8658
8701
|
}
|
|
8659
|
-
}),
|
|
8702
|
+
}), Mt = ["aria-expanded"], Nt = ["aria-selected", "onClick"], Pt = {
|
|
8660
8703
|
key: 0,
|
|
8661
8704
|
class: "iccandle-scanner-ai-settings__upgrade-btn-wrap ai-gradient-border"
|
|
8662
|
-
},
|
|
8705
|
+
}, Ft = /* @__PURE__ */ d({
|
|
8663
8706
|
__name: "LimitSelect",
|
|
8664
8707
|
props: {
|
|
8665
8708
|
value: {},
|
|
@@ -8740,11 +8783,11 @@ var ct = (e, t) => {
|
|
|
8740
8783
|
"aria-expanded": n.open,
|
|
8741
8784
|
"aria-haspopup": "listbox",
|
|
8742
8785
|
onClick: j
|
|
8743
|
-
}, [s("span", null, O(n.getLabel(n.value)), 1), u(
|
|
8786
|
+
}, [s("span", null, O(n.getLabel(n.value)), 1), u(jt, {
|
|
8744
8787
|
size: 16,
|
|
8745
8788
|
"class-name": `iccandle-scanner-ai-settings__trigger-chevron${n.open ? " iccandle-scanner-ai-settings__trigger-chevron--open" : ""}`,
|
|
8746
8789
|
"aria-hidden": "true"
|
|
8747
|
-
}, null, 8, ["class-name"])], 8,
|
|
8790
|
+
}, null, 8, ["class-name"])], 8, Mt)], 2), n.open && C.value ? (x(), i(t, {
|
|
8748
8791
|
key: 0,
|
|
8749
8792
|
to: b.value
|
|
8750
8793
|
}, [s("div", {
|
|
@@ -8759,13 +8802,13 @@ var ct = (e, t) => {
|
|
|
8759
8802
|
"aria-selected": e === n.value,
|
|
8760
8803
|
class: g(["iccandle-scanner-ai-settings__dropdown-item", (n.isLocked?.(e) ?? !1) && "iccandle-scanner-ai-settings__dropdown-item--locked"]),
|
|
8761
8804
|
onClick: (t) => N(e, n.isLocked?.(e) ?? !1)
|
|
8762
|
-
}, [s("span", { class: g(n.isLocked?.(e) ?? !1 ? "is-disabled" : void 0) }, O(n.getLabel(e)), 3), n.isLocked?.(e) ? (x(), o("span",
|
|
8805
|
+
}, [s("span", { class: g(n.isLocked?.(e) ?? !1 ? "is-disabled" : void 0) }, O(n.getLabel(e)), 3), n.isLocked?.(e) ? (x(), o("span", Pt, [s("button", {
|
|
8763
8806
|
type: "button",
|
|
8764
8807
|
class: "iccandle-scanner-ai-settings__upgrade-btn",
|
|
8765
8808
|
onMousedown: te
|
|
8766
|
-
}, O(k(f)("Common.upgradePlan")), 33)])) : a("", !0)], 10,
|
|
8809
|
+
}, O(k(f)("Common.upgradePlan")), 33)])) : a("", !0)], 10, Nt))), 128))], 6)], 8, ["to"])) : a("", !0)], 2));
|
|
8767
8810
|
}
|
|
8768
|
-
}),
|
|
8811
|
+
}), It = { class: "iccandle-scanner-advanced-options" }, Lt = { class: "iccandle-scanner-advanced-options__row" }, Rt = { class: "iccandle-scanner-advanced-options__label" }, zt = { class: "iccandle-scanner-advanced-options__row" }, Bt = { class: "iccandle-scanner-advanced-options__label" }, Vt = { class: "iccandle-scanner-advanced-options__row" }, Ht = { class: "iccandle-scanner-advanced-options__label" }, Ut = /* @__PURE__ */ d({
|
|
8769
8812
|
__name: "ScannerAdvancedOptions",
|
|
8770
8813
|
props: /*@__PURE__*/ m({ temperature: {} }, {
|
|
8771
8814
|
modelValue: { required: !0 },
|
|
@@ -8851,14 +8894,14 @@ var ct = (e, t) => {
|
|
|
8851
8894
|
function y(e, t) {
|
|
8852
8895
|
c.value = t ? e : null;
|
|
8853
8896
|
}
|
|
8854
|
-
return (t, r) => (x(), o("div",
|
|
8855
|
-
s("div",
|
|
8897
|
+
return (t, r) => (x(), o("div", It, [
|
|
8898
|
+
s("div", Lt, [s("label", Rt, [l(O(k(a)("Selector.period")) + " ", 1), u(kt, {
|
|
8856
8899
|
title: k(a)("Selector.period"),
|
|
8857
8900
|
description: k(a)("Selector.periodTooltip"),
|
|
8858
8901
|
side: "right",
|
|
8859
8902
|
size: 16,
|
|
8860
8903
|
"class-name": "text-muted-foreground"
|
|
8861
|
-
}, null, 8, ["title", "description"])]), u(
|
|
8904
|
+
}, null, 8, ["title", "description"])]), u(Ft, {
|
|
8862
8905
|
value: n.value.period ?? 0,
|
|
8863
8906
|
options: p,
|
|
8864
8907
|
"get-label": (e) => g.value.get(e) ?? String(e),
|
|
@@ -8870,13 +8913,13 @@ var ct = (e, t) => {
|
|
|
8870
8913
|
"get-label",
|
|
8871
8914
|
"open"
|
|
8872
8915
|
])]),
|
|
8873
|
-
s("div",
|
|
8916
|
+
s("div", zt, [s("label", Bt, [l(O(k(a)("Common.timeframe")) + " ", 1), u(kt, {
|
|
8874
8917
|
title: k(a)("Common.timeframe"),
|
|
8875
8918
|
description: k(a)("Selector.timeframeTooltip"),
|
|
8876
8919
|
side: "right",
|
|
8877
8920
|
size: 16,
|
|
8878
8921
|
"class-name": "text-muted-foreground"
|
|
8879
|
-
}, null, 8, ["title", "description"])]), u(
|
|
8922
|
+
}, null, 8, ["title", "description"])]), u(Ft, {
|
|
8880
8923
|
value: n.value.timeframe,
|
|
8881
8924
|
options: m,
|
|
8882
8925
|
"get-label": (e) => _.value.get(e) ?? e,
|
|
@@ -8888,13 +8931,13 @@ var ct = (e, t) => {
|
|
|
8888
8931
|
"get-label",
|
|
8889
8932
|
"open"
|
|
8890
8933
|
])]),
|
|
8891
|
-
s("div",
|
|
8934
|
+
s("div", Vt, [s("label", Ht, [l(O(k(a)("Selector.aiTemperature")) + " ", 1), u(kt, {
|
|
8892
8935
|
title: k(a)("Selector.aiTemperature"),
|
|
8893
8936
|
description: k(a)("Selector.aiTemperatureTooltip"),
|
|
8894
8937
|
side: "right",
|
|
8895
8938
|
size: 16,
|
|
8896
8939
|
"class-name": "text-muted-foreground"
|
|
8897
|
-
}, null, 8, ["title", "description"])]), u(
|
|
8940
|
+
}, null, 8, ["title", "description"])]), u(Ft, {
|
|
8898
8941
|
value: e.temperature,
|
|
8899
8942
|
options: h,
|
|
8900
8943
|
"get-label": v,
|
|
@@ -8904,18 +8947,18 @@ var ct = (e, t) => {
|
|
|
8904
8947
|
}, null, 8, ["value", "open"])])
|
|
8905
8948
|
]));
|
|
8906
8949
|
}
|
|
8907
|
-
}),
|
|
8950
|
+
}), Wt = [
|
|
8908
8951
|
"light",
|
|
8909
8952
|
"standard",
|
|
8910
8953
|
"plus",
|
|
8911
8954
|
"pro"
|
|
8912
|
-
],
|
|
8913
|
-
function
|
|
8914
|
-
return
|
|
8955
|
+
], Gt = "light";
|
|
8956
|
+
function Kt(e) {
|
|
8957
|
+
return Wt.includes(e) ? e : Gt;
|
|
8915
8958
|
}
|
|
8916
8959
|
//#endregion
|
|
8917
8960
|
//#region src/components/selector/ScannerAiSettings.vue?vue&type=script&setup=true&lang.ts
|
|
8918
|
-
var
|
|
8961
|
+
var qt = { class: "iccandle-scanner-ai-settings" }, Jt = { class: "iccandle-scanner-ai-settings__row" }, Yt = { class: "iccandle-scanner-ai-settings__label" }, Xt = { class: "iccandle-scanner-ai-settings__row" }, Zt = { class: "iccandle-scanner-ai-settings__label" }, Qt = /* @__PURE__ */ d({
|
|
8919
8962
|
__name: "ScannerAiSettings",
|
|
8920
8963
|
props: /*@__PURE__*/ m({
|
|
8921
8964
|
userResultLimit: {},
|
|
@@ -8945,7 +8988,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
8945
8988
|
100,
|
|
8946
8989
|
150,
|
|
8947
8990
|
200
|
|
8948
|
-
], c = A(e, "topK"), d = e, f = t, { t: p } = X(), m = w(null), h = r(() =>
|
|
8991
|
+
], c = A(e, "topK"), d = e, f = t, { t: p } = X(), m = w(null), h = r(() => Wt.map((e) => ({
|
|
8949
8992
|
label: n[e],
|
|
8950
8993
|
text: p(i[e])
|
|
8951
8994
|
})));
|
|
@@ -8961,13 +9004,13 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
8961
9004
|
function y() {
|
|
8962
9005
|
f("upgradeClick");
|
|
8963
9006
|
}
|
|
8964
|
-
return (t, n) => (x(), o("div",
|
|
9007
|
+
return (t, n) => (x(), o("div", qt, [s("div", Jt, [s("label", Yt, [l(O(k(p)("Selector.result")) + " ", 1), u(kt, {
|
|
8965
9008
|
title: k(p)("Selector.result"),
|
|
8966
9009
|
description: k(p)("Selector.topResultsTooltip"),
|
|
8967
9010
|
side: "right",
|
|
8968
9011
|
size: 16,
|
|
8969
9012
|
"class-name": "text-muted-foreground"
|
|
8970
|
-
}, null, 8, ["title", "description"])]), u(
|
|
9013
|
+
}, null, 8, ["title", "description"])]), u(Ft, {
|
|
8971
9014
|
value: c.value ?? 30,
|
|
8972
9015
|
options: a,
|
|
8973
9016
|
"is-locked": g,
|
|
@@ -8980,15 +9023,15 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
8980
9023
|
"value",
|
|
8981
9024
|
"get-label",
|
|
8982
9025
|
"open"
|
|
8983
|
-
])]), s("div",
|
|
9026
|
+
])]), s("div", Xt, [s("div", Zt, [l(O(k(p)("Selector.aiModel")) + " ", 1), u(kt, {
|
|
8984
9027
|
title: "Candle simulation engine (CSE)",
|
|
8985
9028
|
lines: h.value,
|
|
8986
9029
|
side: "right",
|
|
8987
9030
|
size: 16,
|
|
8988
9031
|
"class-name": "text-muted-foreground"
|
|
8989
|
-
}, null, 8, ["lines"])]), u(
|
|
9032
|
+
}, null, 8, ["lines"])]), u(Ft, {
|
|
8990
9033
|
value: e.model,
|
|
8991
|
-
options: k(
|
|
9034
|
+
options: k(Wt),
|
|
8992
9035
|
"is-locked": _,
|
|
8993
9036
|
"get-label": v,
|
|
8994
9037
|
"wrap-class-name": "ai-gradient-border",
|
|
@@ -9002,38 +9045,38 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9002
9045
|
"open"
|
|
9003
9046
|
])])]));
|
|
9004
9047
|
}
|
|
9005
|
-
}),
|
|
9048
|
+
}), $t = { class: "iccandle-forexIcons" }, en = ["src"], tn = ["src"], nn = ["src"], rn = /* @__PURE__ */ d({
|
|
9006
9049
|
__name: "ForexIcons",
|
|
9007
9050
|
props: { name: {} },
|
|
9008
9051
|
setup(t) {
|
|
9009
9052
|
let n = t, i = r(() => Z?.find((e) => e.ticker === n.name)?.logo_urls.map((e) => e) || []);
|
|
9010
|
-
return (t, n) => (x(), o("div",
|
|
9053
|
+
return (t, n) => (x(), o("div", $t, [i.value.length === 1 ? (x(), o("img", {
|
|
9011
9054
|
key: 0,
|
|
9012
9055
|
src: i.value[0],
|
|
9013
9056
|
alt: "forex icon",
|
|
9014
9057
|
width: "24",
|
|
9015
9058
|
height: "24",
|
|
9016
9059
|
class: "iccandle-forexIcons__img iccandle-forexIcons__img--single"
|
|
9017
|
-
}, null, 8,
|
|
9060
|
+
}, null, 8, en)) : i.value.length === 2 ? (x(), o(e, { key: 1 }, [s("img", {
|
|
9018
9061
|
src: i.value[0],
|
|
9019
9062
|
alt: "forex icon 1",
|
|
9020
9063
|
width: "18",
|
|
9021
9064
|
height: "18",
|
|
9022
9065
|
class: "iccandle-forexIcons__img iccandle-forexIcons__img--left"
|
|
9023
|
-
}, null, 8,
|
|
9066
|
+
}, null, 8, tn), s("img", {
|
|
9024
9067
|
src: i.value[1],
|
|
9025
9068
|
alt: "forex icon 2",
|
|
9026
9069
|
width: "18",
|
|
9027
9070
|
height: "18",
|
|
9028
9071
|
class: "iccandle-forexIcons__img iccandle-forexIcons__img--right"
|
|
9029
|
-
}, null, 8,
|
|
9072
|
+
}, null, 8, nn)], 64)) : a("", !0)]));
|
|
9030
9073
|
}
|
|
9031
|
-
}),
|
|
9074
|
+
}), an = [
|
|
9032
9075
|
"width",
|
|
9033
9076
|
"height",
|
|
9034
9077
|
"stroke",
|
|
9035
9078
|
"stroke-width"
|
|
9036
|
-
],
|
|
9079
|
+
], on = /* @__PURE__ */ d({
|
|
9037
9080
|
__name: "CheckIcon",
|
|
9038
9081
|
props: {
|
|
9039
9082
|
size: { default: 16 },
|
|
@@ -9053,14 +9096,14 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9053
9096
|
"stroke-linecap": "round",
|
|
9054
9097
|
"stroke-linejoin": "round",
|
|
9055
9098
|
class: g(e.className)
|
|
9056
|
-
}, [...n[0] ||= [s("polyline", { points: "20 6 9 17 4 12" }, null, -1)]], 10,
|
|
9099
|
+
}, [...n[0] ||= [s("polyline", { points: "20 6 9 17 4 12" }, null, -1)]], 10, an));
|
|
9057
9100
|
}
|
|
9058
|
-
}),
|
|
9101
|
+
}), sn = [
|
|
9059
9102
|
"width",
|
|
9060
9103
|
"height",
|
|
9061
9104
|
"stroke",
|
|
9062
9105
|
"stroke-width"
|
|
9063
|
-
],
|
|
9106
|
+
], cn = /* @__PURE__ */ d({
|
|
9064
9107
|
__name: "ChevronsUpDownIcon",
|
|
9065
9108
|
props: {
|
|
9066
9109
|
size: { default: 16 },
|
|
@@ -9080,14 +9123,14 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9080
9123
|
"stroke-linecap": "round",
|
|
9081
9124
|
"stroke-linejoin": "round",
|
|
9082
9125
|
class: g(e.className)
|
|
9083
|
-
}, [...n[0] ||= [s("path", { d: "m7 15 5 5 5-5" }, null, -1), s("path", { d: "m7 9 5-5 5 5" }, null, -1)]], 10,
|
|
9126
|
+
}, [...n[0] ||= [s("path", { d: "m7 15 5 5 5-5" }, null, -1), s("path", { d: "m7 9 5-5 5 5" }, null, -1)]], 10, sn));
|
|
9084
9127
|
}
|
|
9085
|
-
}),
|
|
9128
|
+
}), ln = [
|
|
9086
9129
|
"width",
|
|
9087
9130
|
"height",
|
|
9088
9131
|
"stroke",
|
|
9089
9132
|
"stroke-width"
|
|
9090
|
-
],
|
|
9133
|
+
], un = /* @__PURE__ */ d({
|
|
9091
9134
|
__name: "MinusIcon",
|
|
9092
9135
|
props: {
|
|
9093
9136
|
size: { default: 16 },
|
|
@@ -9107,14 +9150,14 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9107
9150
|
"stroke-linecap": "round",
|
|
9108
9151
|
"stroke-linejoin": "round",
|
|
9109
9152
|
class: g(e.className)
|
|
9110
|
-
}, [...n[0] ||= [s("path", { d: "M5 12h14" }, null, -1)]], 10,
|
|
9153
|
+
}, [...n[0] ||= [s("path", { d: "M5 12h14" }, null, -1)]], 10, ln));
|
|
9111
9154
|
}
|
|
9112
|
-
}),
|
|
9155
|
+
}), dn = [
|
|
9113
9156
|
"width",
|
|
9114
9157
|
"height",
|
|
9115
9158
|
"stroke",
|
|
9116
9159
|
"stroke-width"
|
|
9117
|
-
],
|
|
9160
|
+
], fn = /* @__PURE__ */ d({
|
|
9118
9161
|
__name: "SearchIcon",
|
|
9119
9162
|
props: {
|
|
9120
9163
|
size: { default: 24 },
|
|
@@ -9138,47 +9181,47 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9138
9181
|
cx: "11",
|
|
9139
9182
|
cy: "11",
|
|
9140
9183
|
r: "8"
|
|
9141
|
-
}, null, -1), s("path", { d: "m21 21-4.3-4.3" }, null, -1)]], 10,
|
|
9184
|
+
}, null, -1), s("path", { d: "m21 21-4.3-4.3" }, null, -1)]], 10, dn));
|
|
9142
9185
|
}
|
|
9143
|
-
}),
|
|
9186
|
+
}), pn = ["aria-expanded"], mn = { class: "iccandle-scanner-symbol-search__chips" }, hn = {
|
|
9144
9187
|
key: 0,
|
|
9145
9188
|
class: "iccandle-scanner-symbol-search__placeholder"
|
|
9146
|
-
},
|
|
9189
|
+
}, gn = { class: "iccandle-scanner-symbol-search__chip-icon" }, _n = { class: "iccandle-scanner-symbol-search__chip-label" }, vn = [
|
|
9147
9190
|
"aria-label",
|
|
9148
9191
|
"onClick",
|
|
9149
9192
|
"onKeydown"
|
|
9150
|
-
],
|
|
9193
|
+
], yn = {
|
|
9151
9194
|
key: 0,
|
|
9152
9195
|
class: "iccandle-scanner-symbol-search__chip-overflow"
|
|
9153
|
-
},
|
|
9196
|
+
}, bn = { class: "iccandle-scanner-symbol-search__trigger-meta" }, xn = { class: "iccandle-scanner-symbol-search__search" }, Sn = [
|
|
9154
9197
|
"placeholder",
|
|
9155
9198
|
"value",
|
|
9156
9199
|
"aria-label"
|
|
9157
|
-
],
|
|
9200
|
+
], Cn = {
|
|
9158
9201
|
key: 0,
|
|
9159
9202
|
class: "iccandle-scanner-symbol-search__empty"
|
|
9160
|
-
},
|
|
9203
|
+
}, wn = {
|
|
9161
9204
|
key: 1,
|
|
9162
9205
|
class: "iccandle-scanner-symbol-search__select-all"
|
|
9163
|
-
},
|
|
9206
|
+
}, Tn = ["aria-label"], En = {
|
|
9164
9207
|
key: 0,
|
|
9165
9208
|
class: "iccandle-scanner-symbol-search__check iccandle-scanner-symbol-search__check--on"
|
|
9166
|
-
},
|
|
9209
|
+
}, Dn = {
|
|
9167
9210
|
key: 1,
|
|
9168
9211
|
class: "iccandle-scanner-symbol-search__check iccandle-scanner-symbol-search__check--on"
|
|
9169
|
-
},
|
|
9212
|
+
}, On = {
|
|
9170
9213
|
key: 2,
|
|
9171
9214
|
class: "iccandle-scanner-symbol-search__check"
|
|
9172
|
-
},
|
|
9215
|
+
}, kn = { class: "iccandle-scanner-symbol-search__group-row" }, An = ["aria-label", "onClick"], jn = {
|
|
9173
9216
|
key: 0,
|
|
9174
9217
|
class: "iccandle-scanner-symbol-search__check iccandle-scanner-symbol-search__check--on"
|
|
9175
|
-
},
|
|
9218
|
+
}, Mn = {
|
|
9176
9219
|
key: 1,
|
|
9177
9220
|
class: "iccandle-scanner-symbol-search__check iccandle-scanner-symbol-search__check--on"
|
|
9178
|
-
},
|
|
9221
|
+
}, Nn = {
|
|
9179
9222
|
key: 2,
|
|
9180
9223
|
class: "iccandle-scanner-symbol-search__check"
|
|
9181
|
-
},
|
|
9224
|
+
}, Pn = ["aria-expanded", "onClick"], Fn = ["aria-selected", "onClick"], In = { class: "iccandle-scanner-symbol-search__item-label" }, Ln = 3, Rn = /* @__PURE__ */ d({
|
|
9182
9225
|
__name: "ScannerSymbolSearch",
|
|
9183
9226
|
props: {
|
|
9184
9227
|
searchTerm: {},
|
|
@@ -9212,7 +9255,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9212
9255
|
let t = e?.closest(".iccandle-theme-scope, .iccandle-selector-widget") ?? document.body;
|
|
9213
9256
|
D.value = t;
|
|
9214
9257
|
}
|
|
9215
|
-
let F = r(() => (f.allSymbols ?? f.filteredSymbols ?? []).filter((e) => f.selectedSymbols[e.ticker])), I = r(() => F.value.slice(0,
|
|
9258
|
+
let F = r(() => (f.allSymbols ?? f.filteredSymbols ?? []).filter((e) => f.selectedSymbols[e.ticker])), I = r(() => F.value.slice(0, Ln)), ne = r(() => F.value.length - I.value.length), L = r(() => {
|
|
9216
9259
|
let e = /* @__PURE__ */ new Set();
|
|
9217
9260
|
for (let t of F.value) e.add(t.type);
|
|
9218
9261
|
return e;
|
|
@@ -9242,31 +9285,31 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9242
9285
|
[e]: !t
|
|
9243
9286
|
};
|
|
9244
9287
|
}
|
|
9245
|
-
function
|
|
9288
|
+
function re(e) {
|
|
9246
9289
|
p("symbolChange", e, !f.selectedSymbols[e]);
|
|
9247
9290
|
}
|
|
9248
|
-
function
|
|
9291
|
+
function U(e) {
|
|
9249
9292
|
let t = e.map((e) => e.ticker), n = B(e) !== "all";
|
|
9250
9293
|
p("groupChange", t, n);
|
|
9251
9294
|
}
|
|
9252
|
-
function
|
|
9295
|
+
function W() {
|
|
9253
9296
|
let e = z.value.map((e) => e.ticker), t = B(z.value) !== "all";
|
|
9254
9297
|
p("groupChange", e, t);
|
|
9255
9298
|
}
|
|
9256
|
-
function
|
|
9299
|
+
function ie(e, t) {
|
|
9257
9300
|
t.preventDefault(), t.stopPropagation(), p("symbolChange", e, !1);
|
|
9258
9301
|
}
|
|
9259
|
-
function
|
|
9302
|
+
function G() {
|
|
9260
9303
|
E.value = !1, j.value = null, p("searchChange", "");
|
|
9261
9304
|
}
|
|
9262
|
-
function
|
|
9305
|
+
function K(e) {
|
|
9263
9306
|
if (e) {
|
|
9264
9307
|
E.value = !0;
|
|
9265
9308
|
return;
|
|
9266
9309
|
}
|
|
9267
|
-
|
|
9310
|
+
G();
|
|
9268
9311
|
}
|
|
9269
|
-
function
|
|
9312
|
+
function q() {
|
|
9270
9313
|
let e = S.value;
|
|
9271
9314
|
if (!e) return;
|
|
9272
9315
|
let t = e.getBoundingClientRect(), n = window.innerHeight - t.bottom - 4 - 8, r = t.top - 8, i = n < 240 && r > n, a = Math.max(160, Math.min(384, i ? r : n)), o = i ? Math.max(8, t.top - 4 - a) : t.bottom + 4;
|
|
@@ -9277,22 +9320,22 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9277
9320
|
maxHeight: a
|
|
9278
9321
|
};
|
|
9279
9322
|
}
|
|
9280
|
-
function
|
|
9323
|
+
function ae(e) {
|
|
9281
9324
|
let t = e.target;
|
|
9282
|
-
t && (b.value?.contains(t) || C.value?.contains(t) ||
|
|
9325
|
+
t && (b.value?.contains(t) || C.value?.contains(t) || G());
|
|
9283
9326
|
}
|
|
9284
9327
|
function J(e) {
|
|
9285
|
-
e.key === "Escape" &&
|
|
9328
|
+
e.key === "Escape" && G();
|
|
9286
9329
|
}
|
|
9287
9330
|
function Y() {
|
|
9288
|
-
|
|
9331
|
+
q();
|
|
9289
9332
|
}
|
|
9290
9333
|
M(E, async (e) => {
|
|
9291
|
-
window.removeEventListener("resize", Y), window.removeEventListener("scroll", Y, !0), document.removeEventListener("mousedown",
|
|
9334
|
+
window.removeEventListener("resize", Y), window.removeEventListener("scroll", Y, !0), document.removeEventListener("mousedown", ae), document.removeEventListener("keydown", J), e && (q(), window.addEventListener("resize", Y), window.addEventListener("scroll", Y, !0), document.addEventListener("mousedown", ae), document.addEventListener("keydown", J), await h(), requestAnimationFrame(() => {
|
|
9292
9335
|
ee.value?.focus();
|
|
9293
9336
|
}));
|
|
9294
9337
|
}), v(() => {
|
|
9295
|
-
window.removeEventListener("resize", Y), window.removeEventListener("scroll", Y, !0), document.removeEventListener("mousedown",
|
|
9338
|
+
window.removeEventListener("resize", Y), window.removeEventListener("scroll", Y, !0), document.removeEventListener("mousedown", ae), document.removeEventListener("keydown", J);
|
|
9296
9339
|
});
|
|
9297
9340
|
let oe = r(() => B(z.value)), se = r(() => y.value <= 1 ? m("Pattern.symbolSelected", { count: y.value }) : m("Pattern.symbolsSelected", { count: y.value })), ce = r(() => j.value ? Math.max(120, j.value.maxHeight - 48) : 120);
|
|
9298
9341
|
return (r, c) => (x(), o("div", {
|
|
@@ -9306,27 +9349,27 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9306
9349
|
"aria-expanded": E.value,
|
|
9307
9350
|
"aria-haspopup": "listbox",
|
|
9308
9351
|
class: "iccandle-scanner-symbol-search__trigger",
|
|
9309
|
-
onClick: c[0] ||= (e) =>
|
|
9310
|
-
}, [s("div",
|
|
9352
|
+
onClick: c[0] ||= (e) => K(!E.value)
|
|
9353
|
+
}, [s("div", mn, [F.value.length === 0 ? (x(), o("span", hn, O(k(m)("Selector.searchSymbol")), 1)) : (x(), o(e, { key: 1 }, [(x(!0), o(e, null, T(I.value, (e) => (x(), o("span", {
|
|
9311
9354
|
key: e.ticker,
|
|
9312
9355
|
class: "iccandle-scanner-symbol-search__chip"
|
|
9313
9356
|
}, [
|
|
9314
|
-
s("span",
|
|
9315
|
-
s("span",
|
|
9357
|
+
s("span", gn, [u(rn, { name: e.ticker }, null, 8, ["name"])]),
|
|
9358
|
+
s("span", _n, O(e.display_name), 1),
|
|
9316
9359
|
s("span", {
|
|
9317
9360
|
role: "button",
|
|
9318
9361
|
tabindex: "0",
|
|
9319
9362
|
"aria-label": `Remove ${e.display_name}`,
|
|
9320
9363
|
class: "iccandle-scanner-symbol-search__chip-remove",
|
|
9321
|
-
onClick: (t) =>
|
|
9364
|
+
onClick: (t) => ie(e.ticker, t),
|
|
9322
9365
|
onKeydown: (t) => {
|
|
9323
9366
|
(t.key === "Enter" || t.key === " ") && (t.preventDefault(), t.stopPropagation(), p("symbolChange", e.ticker, !1));
|
|
9324
9367
|
}
|
|
9325
|
-
}, [u(
|
|
9326
|
-
]))), 128)), ne.value > 0 ? (x(), o("span",
|
|
9368
|
+
}, [u(St, { size: 10 })], 40, vn)
|
|
9369
|
+
]))), 128)), ne.value > 0 ? (x(), o("span", yn, " +" + O(ne.value), 1)) : a("", !0)], 64))]), s("div", bn, [s("span", null, O(se.value), 1), u(cn, {
|
|
9327
9370
|
size: 16,
|
|
9328
9371
|
"class-name": "iccandle-scanner-symbol-search__trigger-meta-icon"
|
|
9329
|
-
})])], 8,
|
|
9372
|
+
})])], 8, pn), E.value && j.value ? (x(), i(t, {
|
|
9330
9373
|
key: 0,
|
|
9331
9374
|
to: D.value
|
|
9332
9375
|
}, [s("div", {
|
|
@@ -9341,7 +9384,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9341
9384
|
width: `${j.value.width}px`,
|
|
9342
9385
|
maxHeight: `${j.value.maxHeight}px`
|
|
9343
9386
|
})
|
|
9344
|
-
}, [s("div",
|
|
9387
|
+
}, [s("div", xn, [u(fn, {
|
|
9345
9388
|
size: 16,
|
|
9346
9389
|
"class-name": "iccandle-scanner-symbol-search__search-icon"
|
|
9347
9390
|
}), s("input", {
|
|
@@ -9353,64 +9396,64 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9353
9396
|
value: n.searchTerm,
|
|
9354
9397
|
"aria-label": k(m)("Selector.searchSymbol"),
|
|
9355
9398
|
onInput: c[1] ||= (e) => p("searchChange", e.target.value.toUpperCase())
|
|
9356
|
-
}, null, 40,
|
|
9399
|
+
}, null, 40, Sn)]), s("div", {
|
|
9357
9400
|
class: "iccandle-scanner-symbol-search__command-list",
|
|
9358
9401
|
style: _({ maxHeight: `${ce.value}px` })
|
|
9359
9402
|
}, [
|
|
9360
|
-
n.searchTerm.trim() && z.value.length === 0 ? (x(), o("div",
|
|
9361
|
-
z.value.length > 0 ? (x(), o("div",
|
|
9403
|
+
n.searchTerm.trim() && z.value.length === 0 ? (x(), o("div", Cn, O(k(m)("Selector.noResultsFound")), 1)) : a("", !0),
|
|
9404
|
+
z.value.length > 0 ? (x(), o("div", wn, [s("button", {
|
|
9362
9405
|
type: "button",
|
|
9363
9406
|
class: "iccandle-scanner-symbol-search__group-check-btn",
|
|
9364
9407
|
"aria-label": k(m)("Selector.selectAll"),
|
|
9365
|
-
onClick:
|
|
9366
|
-
}, [oe.value === "all" ? (x(), o("div",
|
|
9408
|
+
onClick: W
|
|
9409
|
+
}, [oe.value === "all" ? (x(), o("div", En, [u(on, { size: 12 })])) : oe.value === "some" ? (x(), o("div", Dn, [u(un, { size: 12 })])) : (x(), o("div", On))], 8, Tn), s("button", {
|
|
9367
9410
|
type: "button",
|
|
9368
9411
|
class: "iccandle-scanner-symbol-search__group-label-btn",
|
|
9369
|
-
onClick:
|
|
9412
|
+
onClick: W
|
|
9370
9413
|
}, O(k(m)("Selector.selectAll")), 1)])) : a("", !0),
|
|
9371
9414
|
(x(!0), o(e, null, T(R.value, (t) => (x(), o("div", {
|
|
9372
9415
|
key: t.type,
|
|
9373
9416
|
class: "iccandle-scanner-symbol-search__group"
|
|
9374
|
-
}, [s("div",
|
|
9417
|
+
}, [s("div", kn, [s("button", {
|
|
9375
9418
|
type: "button",
|
|
9376
9419
|
class: "iccandle-scanner-symbol-search__group-check-btn",
|
|
9377
9420
|
"aria-label": `${k(m)("Selector.selectAll")} ${k(m)(d[t.type])}`,
|
|
9378
|
-
onClick: P((e) =>
|
|
9379
|
-
}, [B(t.symbols) === "all" ? (x(), o("div",
|
|
9421
|
+
onClick: P((e) => U(t.symbols), ["stop", "prevent"])
|
|
9422
|
+
}, [B(t.symbols) === "all" ? (x(), o("div", jn, [u(on, { size: 12 })])) : B(t.symbols) === "some" ? (x(), o("div", Mn, [u(un, { size: 12 })])) : (x(), o("div", Nn))], 8, An), s("button", {
|
|
9380
9423
|
type: "button",
|
|
9381
9424
|
class: "iccandle-scanner-symbol-search__group-expand-btn",
|
|
9382
9425
|
"aria-expanded": V(t.type),
|
|
9383
9426
|
onClick: (e) => H(t.type)
|
|
9384
|
-
}, [s("span", null, O(k(m)(d[t.type])), 1), u(
|
|
9427
|
+
}, [s("span", null, O(k(m)(d[t.type])), 1), u(jt, {
|
|
9385
9428
|
size: 16,
|
|
9386
9429
|
"class-name": k(Q)("iccandle-scanner-symbol-search__group-expand-icon", !V(t.type) && "iccandle-scanner-symbol-search__group-expand-icon--collapsed")
|
|
9387
|
-
}, null, 8, ["class-name"])], 8,
|
|
9430
|
+
}, null, 8, ["class-name"])], 8, Pn)]), V(t.type) ? (x(!0), o(e, { key: 0 }, T(t.symbols, (e) => (x(), o("button", {
|
|
9388
9431
|
key: e.ticker,
|
|
9389
9432
|
type: "button",
|
|
9390
9433
|
role: "option",
|
|
9391
9434
|
"aria-selected": !!n.selectedSymbols[e.ticker],
|
|
9392
9435
|
class: "iccandle-scanner-symbol-search__item",
|
|
9393
|
-
onClick: (t) =>
|
|
9436
|
+
onClick: (t) => re(e.ticker)
|
|
9394
9437
|
}, [
|
|
9395
|
-
s("div", { class: g(k(Q)("iccandle-scanner-symbol-search__check", n.selectedSymbols[e.ticker] && "iccandle-scanner-symbol-search__check--on")) }, [n.selectedSymbols[e.ticker] ? (x(), i(
|
|
9438
|
+
s("div", { class: g(k(Q)("iccandle-scanner-symbol-search__check", n.selectedSymbols[e.ticker] && "iccandle-scanner-symbol-search__check--on")) }, [n.selectedSymbols[e.ticker] ? (x(), i(on, {
|
|
9396
9439
|
key: 0,
|
|
9397
9440
|
size: 12
|
|
9398
9441
|
})) : a("", !0)], 2),
|
|
9399
|
-
u(
|
|
9400
|
-
s("div",
|
|
9401
|
-
], 8,
|
|
9442
|
+
u(rn, { name: e.ticker }, null, 8, ["name"]),
|
|
9443
|
+
s("div", In, O(e.display_name), 1)
|
|
9444
|
+
], 8, Fn))), 128)) : a("", !0)]))), 128))
|
|
9402
9445
|
], 4)], 6)], 8, ["to"])) : a("", !0)], 512));
|
|
9403
9446
|
}
|
|
9404
|
-
}),
|
|
9447
|
+
}), zn = { class: "iccandle-scanner-settings" }, Bn = { class: "iccandle-scanner-settings__header" }, Vn = { class: "iccandle-scanner-settings__title-wrap" }, Hn = { class: "iccandle-scanner-settings__title" }, Un = { class: "iccandle-scanner-settings__description" }, Wn = ["aria-label"], Gn = { class: "iccandle-scanner-settings__body" }, Kn = { class: "iccandle-scanner-settings__section" }, qn = { class: "iccandle-scanner-settings__section-title" }, Jn = { class: "iccandle-scanner-settings__section" }, Yn = { class: "iccandle-scanner-settings__section" }, Xn = ["aria-expanded"], Zn = {
|
|
9405
9448
|
key: 0,
|
|
9406
9449
|
class: "iccandle-scanner-settings__accordion-content"
|
|
9407
|
-
},
|
|
9450
|
+
}, Qn = { class: "iccandle-scanner-option__footer" }, $n = {
|
|
9408
9451
|
key: 0,
|
|
9409
9452
|
class: "iccandle-scanner-option__error"
|
|
9410
|
-
},
|
|
9453
|
+
}, er = { class: "iccandle-scanner-option__actions" }, tr = { class: "iccandle-scanner-option__always-show" }, nr = ["checked"], rr = {
|
|
9411
9454
|
for: "scanner-always-show",
|
|
9412
9455
|
class: "iccandle-scanner-option__always-show-label"
|
|
9413
|
-
},
|
|
9456
|
+
}, ir = { class: "iccandle-scanner-option__buttons" }, ar = /* @__PURE__ */ d({
|
|
9414
9457
|
__name: "ScannerSettingsStep",
|
|
9415
9458
|
props: {
|
|
9416
9459
|
intent: {},
|
|
@@ -9435,11 +9478,11 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9435
9478
|
}
|
|
9436
9479
|
let d = e, f = t, { t: m } = X();
|
|
9437
9480
|
function h() {
|
|
9438
|
-
let e =
|
|
9481
|
+
let e = Te();
|
|
9439
9482
|
return Object.keys(e).length > 0 ? e : null;
|
|
9440
9483
|
}
|
|
9441
9484
|
function _(e, t) {
|
|
9442
|
-
return e && !
|
|
9485
|
+
return e && !Ae(e) && e.symbols?.length ? e.symbols : t ? [t] : [];
|
|
9443
9486
|
}
|
|
9444
9487
|
function b(e, t) {
|
|
9445
9488
|
return _(e, t).reduce((e, t) => (e[t] = !0, e), {});
|
|
@@ -9447,8 +9490,8 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9447
9490
|
function S(e, t) {
|
|
9448
9491
|
return e?.timeframe ? e.timeframe : t === "1" || t === "5" ? "60" : t || "60";
|
|
9449
9492
|
}
|
|
9450
|
-
let T = w(localStorage.getItem("iccandle_token") ? null : "free"), ee = r(() => c(T.value)), E = r(() => T.value === "pro" || T.value === "expert"), D = w(
|
|
9451
|
-
let e =
|
|
9493
|
+
let T = w(localStorage.getItem("iccandle_token") ? null : "free"), ee = r(() => c(T.value)), E = r(() => T.value === "pro" || T.value === "expert"), D = w(Se()), A = h(), j = A?.top_k ?? 30, N = w(""), te = w(""), P = null, I = w(!1), L = w((() => {
|
|
9494
|
+
let e = Kt(A?.model);
|
|
9452
9495
|
return !localStorage.getItem("iccandle_token") && e !== "light" ? "light" : e;
|
|
9453
9496
|
})()), R = w(A?.temperature ?? 1), z = w(b(A, d.currentSymbol)), B = w(null), V = null, H = C({
|
|
9454
9497
|
probability: A?.probability ?? 0,
|
|
@@ -9462,16 +9505,16 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9462
9505
|
te.value = e;
|
|
9463
9506
|
}, 0);
|
|
9464
9507
|
});
|
|
9465
|
-
let
|
|
9508
|
+
let re = r(() => {
|
|
9466
9509
|
let e = /* @__PURE__ */ new Map();
|
|
9467
9510
|
return Z.forEach((t) => {
|
|
9468
9511
|
e.set(t.ticker, t.logo_urls);
|
|
9469
9512
|
}), e;
|
|
9470
|
-
}),
|
|
9513
|
+
}), U = r(() => {
|
|
9471
9514
|
let e = te.value.toLowerCase();
|
|
9472
9515
|
return Z.filter((t) => t.display_name.toLowerCase().includes(e));
|
|
9473
|
-
}),
|
|
9474
|
-
function
|
|
9516
|
+
}), W = r(() => Object.values(z.value).filter(Boolean).length);
|
|
9517
|
+
function ie(e) {
|
|
9475
9518
|
let t = Object.entries(e).filter(([, e]) => e).map(([e]) => e);
|
|
9476
9519
|
H.symbols = t;
|
|
9477
9520
|
}
|
|
@@ -9480,19 +9523,19 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9480
9523
|
}), M(() => H.symbols.length, (e) => {
|
|
9481
9524
|
e > 0 && (B.value = null);
|
|
9482
9525
|
});
|
|
9483
|
-
function
|
|
9526
|
+
function G(e, t) {
|
|
9484
9527
|
let n = {
|
|
9485
9528
|
...z.value,
|
|
9486
9529
|
[e]: t
|
|
9487
9530
|
};
|
|
9488
|
-
z.value = n,
|
|
9531
|
+
z.value = n, ie(n);
|
|
9489
9532
|
}
|
|
9490
|
-
function
|
|
9533
|
+
function K(e, t) {
|
|
9491
9534
|
let n = { ...z.value };
|
|
9492
9535
|
for (let r of e) n[r] = t;
|
|
9493
|
-
z.value = n,
|
|
9536
|
+
z.value = n, ie(n);
|
|
9494
9537
|
}
|
|
9495
|
-
function
|
|
9538
|
+
function q() {
|
|
9496
9539
|
let e = H.symbols ?? [];
|
|
9497
9540
|
if (e.length === 0) {
|
|
9498
9541
|
B.value = m("Pattern.signalDialog.selectOneSymbol"), V && clearTimeout(V), V = setTimeout(() => {
|
|
@@ -9501,7 +9544,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9501
9544
|
return;
|
|
9502
9545
|
}
|
|
9503
9546
|
let t = Array.from(new Set(Z.filter((t) => e.includes(t.ticker)).map((e) => e.type))), n = Z.every((e) => z.value[e.ticker]) ?? !1;
|
|
9504
|
-
|
|
9547
|
+
De({
|
|
9505
9548
|
probability: 0,
|
|
9506
9549
|
top_k: H.top_k,
|
|
9507
9550
|
timeframe: H.timeframe,
|
|
@@ -9512,17 +9555,17 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9512
9555
|
followCurrentSymbol: e.length === 1,
|
|
9513
9556
|
model: L.value,
|
|
9514
9557
|
temperature: R.value
|
|
9515
|
-
}, !0),
|
|
9558
|
+
}, !0), Ce(D.value), d.setResolution(H.timeframe), f("cancel"), d.intent === "settings" ? ve({
|
|
9516
9559
|
title: m("Common.success"),
|
|
9517
9560
|
description: m("Selector.searchFilterSaved"),
|
|
9518
9561
|
variant: "success"
|
|
9519
9562
|
}) : f("scanConfigSaved");
|
|
9520
9563
|
}
|
|
9521
|
-
function
|
|
9522
|
-
e.preventDefault(),
|
|
9564
|
+
function ae(e) {
|
|
9565
|
+
e.preventDefault(), q();
|
|
9523
9566
|
}
|
|
9524
9567
|
function J(e) {
|
|
9525
|
-
D.value = e,
|
|
9568
|
+
D.value = e, Ce(e);
|
|
9526
9569
|
}
|
|
9527
9570
|
function Y() {
|
|
9528
9571
|
f("cancel");
|
|
@@ -9548,28 +9591,28 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9548
9591
|
window.removeEventListener("keydown", se), P && clearTimeout(P), V && clearTimeout(V);
|
|
9549
9592
|
});
|
|
9550
9593
|
let ce = r(() => d.intent === "scan" ? m("Selector.scan") : m("Selector.saveOptions"));
|
|
9551
|
-
return (t, n) => (x(), o("div",
|
|
9552
|
-
s("div",
|
|
9594
|
+
return (t, n) => (x(), o("div", zn, [
|
|
9595
|
+
s("div", Bn, [s("div", Vn, [s("div", Hn, O(k(m)("Selector.scannerOptions")), 1), s("div", Un, O(k(m)("Selector.scannerOptionsDescription")), 1)]), s("button", {
|
|
9553
9596
|
type: "button",
|
|
9554
9597
|
class: "iccandle-scanner-option__close-btn",
|
|
9555
9598
|
"aria-label": k(m)("Common.close"),
|
|
9556
9599
|
onClick: Y
|
|
9557
|
-
}, [u(
|
|
9600
|
+
}, [u(St, { size: 20 })], 8, Wn)]),
|
|
9558
9601
|
s("form", {
|
|
9559
9602
|
id: "scanner-option-form",
|
|
9560
9603
|
class: "iccandle-scanner-settings__form",
|
|
9561
|
-
onSubmit:
|
|
9562
|
-
}, [s("div",
|
|
9563
|
-
s("section",
|
|
9604
|
+
onSubmit: ae
|
|
9605
|
+
}, [s("div", Gn, [
|
|
9606
|
+
s("section", Kn, [s("h3", qn, O(k(m)("Selector.tabSymbols")), 1), u(Rn, {
|
|
9564
9607
|
"search-term": N.value,
|
|
9565
9608
|
"selected-symbols": z.value,
|
|
9566
|
-
"filtered-symbols":
|
|
9567
|
-
"selected-count":
|
|
9568
|
-
"logo-by-ticker":
|
|
9609
|
+
"filtered-symbols": U.value,
|
|
9610
|
+
"selected-count": W.value,
|
|
9611
|
+
"logo-by-ticker": re.value,
|
|
9569
9612
|
"all-symbols": k(Z),
|
|
9570
9613
|
onSearchChange: n[0] ||= (e) => N.value = e,
|
|
9571
|
-
onSymbolChange:
|
|
9572
|
-
onGroupChange:
|
|
9614
|
+
onSymbolChange: G,
|
|
9615
|
+
onGroupChange: K
|
|
9573
9616
|
}, null, 8, [
|
|
9574
9617
|
"search-term",
|
|
9575
9618
|
"selected-symbols",
|
|
@@ -9578,7 +9621,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9578
9621
|
"logo-by-ticker",
|
|
9579
9622
|
"all-symbols"
|
|
9580
9623
|
])]),
|
|
9581
|
-
s("section",
|
|
9624
|
+
s("section", Jn, [u(Qt, {
|
|
9582
9625
|
"top-k": k(H).top_k,
|
|
9583
9626
|
"onUpdate:topK": n[1] ||= (e) => k(H).top_k = e,
|
|
9584
9627
|
"user-result-limit": ee.value,
|
|
@@ -9592,24 +9635,24 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9592
9635
|
"model",
|
|
9593
9636
|
"is-pro-model-enabled"
|
|
9594
9637
|
])]),
|
|
9595
|
-
s("section",
|
|
9638
|
+
s("section", Yn, [s("button", {
|
|
9596
9639
|
type: "button",
|
|
9597
9640
|
class: "iccandle-scanner-settings__accordion-trigger",
|
|
9598
9641
|
"aria-expanded": I.value,
|
|
9599
9642
|
onClick: n[3] ||= (e) => I.value = !I.value
|
|
9600
|
-
}, [s("span", null, O(k(m)("Selector.tabAdvancedOptions")), 1), s("span", { class: g(k(Q)("iccandle-scanner-settings__accordion-caret", I.value && "iccandle-scanner-settings__accordion-caret--open")) }, null, 2)], 8,
|
|
9643
|
+
}, [s("span", null, O(k(m)("Selector.tabAdvancedOptions")), 1), s("span", { class: g(k(Q)("iccandle-scanner-settings__accordion-caret", I.value && "iccandle-scanner-settings__accordion-caret--open")) }, null, 2)], 8, Xn), I.value ? (x(), o("div", Zn, [u(Ut, {
|
|
9601
9644
|
modelValue: k(H),
|
|
9602
9645
|
"onUpdate:modelValue": n[4] ||= (e) => p(H) ? H.value = e : H = e,
|
|
9603
9646
|
temperature: R.value,
|
|
9604
9647
|
onTemperatureChange: n[5] ||= (e) => R.value = e
|
|
9605
9648
|
}, null, 8, ["modelValue", "temperature"])])) : a("", !0)])
|
|
9606
9649
|
])], 32),
|
|
9607
|
-
s("div",
|
|
9650
|
+
s("div", Qn, [B.value ? (x(), o("p", $n, O(B.value), 1)) : a("", !0), s("div", er, [s("div", tr, [s("input", {
|
|
9608
9651
|
id: "scanner-always-show",
|
|
9609
9652
|
type: "checkbox",
|
|
9610
9653
|
checked: D.value,
|
|
9611
9654
|
onChange: n[6] ||= (e) => J(e.target.checked)
|
|
9612
|
-
}, null, 40,
|
|
9655
|
+
}, null, 40, nr), s("label", rr, O(k(m)("Selector.alwaysShow")), 1)]), s("div", ir, [s("button", {
|
|
9613
9656
|
type: "button",
|
|
9614
9657
|
class: "iccandle-scanner-option__btn iccandle-scanner-option__btn--outline",
|
|
9615
9658
|
onClick: Y
|
|
@@ -9617,14 +9660,14 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9617
9660
|
type: "submit",
|
|
9618
9661
|
form: "scanner-option-form",
|
|
9619
9662
|
class: g(k(Q)("iccandle-scanner-option__btn iccandle-scanner-option__btn--primary", e.intent === "scan" && "iccandle-scanner-option__btn--scan"))
|
|
9620
|
-
}, [e.intent === "scan" ? (x(), i(
|
|
9663
|
+
}, [e.intent === "scan" ? (x(), i(Ve, {
|
|
9621
9664
|
key: 0,
|
|
9622
9665
|
size: 14,
|
|
9623
9666
|
color: "#ffb84d"
|
|
9624
9667
|
})) : a("", !0), l(" " + O(ce.value), 1)], 2)])])])
|
|
9625
9668
|
]));
|
|
9626
9669
|
}
|
|
9627
|
-
}),
|
|
9670
|
+
}), or = /* @__PURE__ */ d({
|
|
9628
9671
|
__name: "ScannerOption",
|
|
9629
9672
|
props: {
|
|
9630
9673
|
intent: { default: "settings" },
|
|
@@ -9653,7 +9696,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9653
9696
|
}, [s("div", {
|
|
9654
9697
|
class: "iccandle-scanner-option__card",
|
|
9655
9698
|
onPointerdown: r[0] ||= P(() => {}, ["stop"])
|
|
9656
|
-
}, [u(
|
|
9699
|
+
}, [u(ar, {
|
|
9657
9700
|
intent: e.intent,
|
|
9658
9701
|
"set-resolution": e.setResolution,
|
|
9659
9702
|
timeframe: e.timeframe,
|
|
@@ -9669,11 +9712,11 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9669
9712
|
"onCancel"
|
|
9670
9713
|
])], 32)], 34)]));
|
|
9671
9714
|
}
|
|
9672
|
-
}),
|
|
9715
|
+
}), sr = [
|
|
9673
9716
|
"width",
|
|
9674
9717
|
"height",
|
|
9675
9718
|
"stroke"
|
|
9676
|
-
],
|
|
9719
|
+
], cr = /* @__PURE__ */ d({
|
|
9677
9720
|
__name: "BellIcon",
|
|
9678
9721
|
props: {
|
|
9679
9722
|
size: { default: 20 },
|
|
@@ -9692,9 +9735,9 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9692
9735
|
"stroke-linecap": "round",
|
|
9693
9736
|
"stroke-linejoin": "round",
|
|
9694
9737
|
class: g(e.className)
|
|
9695
|
-
}, [...n[0] ||= [s("path", { d: "M10.268 21a2 2 0 0 0 3.464 0" }, null, -1), s("path", { d: "M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326" }, null, -1)]], 10,
|
|
9738
|
+
}, [...n[0] ||= [s("path", { d: "M10.268 21a2 2 0 0 0 3.464 0" }, null, -1), s("path", { d: "M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326" }, null, -1)]], 10, sr));
|
|
9696
9739
|
}
|
|
9697
|
-
}),
|
|
9740
|
+
}), lr = ["width", "height"], ur = ["stroke"], dr = ["stroke"], fr = /* @__PURE__ */ d({
|
|
9698
9741
|
__name: "CloseIcon",
|
|
9699
9742
|
props: {
|
|
9700
9743
|
size: { default: 24 },
|
|
@@ -9715,24 +9758,24 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9715
9758
|
"stroke-width": "2",
|
|
9716
9759
|
"stroke-linecap": "round",
|
|
9717
9760
|
"stroke-linejoin": "round"
|
|
9718
|
-
}, null, 8,
|
|
9761
|
+
}, null, 8, ur), s("path", {
|
|
9719
9762
|
d: "m6 6 12 12",
|
|
9720
9763
|
stroke: e.color,
|
|
9721
9764
|
"stroke-width": "2",
|
|
9722
9765
|
"stroke-linecap": "round",
|
|
9723
9766
|
"stroke-linejoin": "round"
|
|
9724
|
-
}, null, 8,
|
|
9767
|
+
}, null, 8, dr)], 10, lr));
|
|
9725
9768
|
}
|
|
9726
|
-
}),
|
|
9769
|
+
}), pr = { class: "iccandle-pattern-alert-name" }, mr = { class: "iccandle-pattern-alert-name__header" }, hr = { class: "iccandle-pattern-alert-name__title-row" }, gr = { class: "iccandle-pattern-alert-name__title" }, _r = ["aria-label"], vr = { class: "iccandle-pattern-alert-name__description" }, yr = { class: "iccandle-pattern-alert-name__content" }, br = { class: "iccandle-pattern-alert-name__form" }, xr = { class: "iccandle-pattern-alert-name__field" }, Sr = {
|
|
9727
9770
|
for: "patternName",
|
|
9728
9771
|
class: "iccandle-pattern-alert-name__label"
|
|
9729
|
-
},
|
|
9772
|
+
}, Cr = ["placeholder", "value"], wr = {
|
|
9730
9773
|
key: 0,
|
|
9731
9774
|
class: "iccandle-pattern-alert-name__error"
|
|
9732
|
-
},
|
|
9775
|
+
}, Tr = {
|
|
9733
9776
|
key: 1,
|
|
9734
9777
|
class: "iccandle-pattern-alert-name__error"
|
|
9735
|
-
},
|
|
9778
|
+
}, Er = { class: "iccandle-pattern-alert-name__footer-wrap" }, Dr = { class: "iccandle-pattern-alert-name__footer" }, Or = ["disabled"], kr = /* @__PURE__ */ d({
|
|
9736
9779
|
__name: "PatternAlertNameStep",
|
|
9737
9780
|
props: {
|
|
9738
9781
|
patternName: {},
|
|
@@ -9746,8 +9789,8 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9746
9789
|
let t = e.target.value.slice(0, 20);
|
|
9747
9790
|
n("patternNameChange", t);
|
|
9748
9791
|
}
|
|
9749
|
-
return (t, n) => (x(), o("div",
|
|
9750
|
-
s("div",
|
|
9792
|
+
return (t, n) => (x(), o("div", pr, [
|
|
9793
|
+
s("div", mr, [s("div", hr, [s("h2", gr, [u(Je, {
|
|
9751
9794
|
size: 20,
|
|
9752
9795
|
"class-name": "iccandle-pattern-alert-name__title-icon"
|
|
9753
9796
|
}), l(" " + O(k(r)("Pattern.addToPatternTracker")), 1)]), s("button", {
|
|
@@ -9755,12 +9798,12 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9755
9798
|
class: "iccandle-pattern-alert-name__close-btn",
|
|
9756
9799
|
"aria-label": k(r)("Common.close"),
|
|
9757
9800
|
onClick: n[0] ||= (...t) => e.onCancel && e.onCancel(...t)
|
|
9758
|
-
}, [u(
|
|
9759
|
-
s("div",
|
|
9801
|
+
}, [u(fr, { size: 20 })], 8, _r)]), s("p", vr, O(k(r)("Pattern.addToPatternTrackerDescription")), 1)]),
|
|
9802
|
+
s("div", yr, [u(cr, {
|
|
9760
9803
|
size: 64,
|
|
9761
9804
|
"class-name": "iccandle-pattern-alert-name__bell-icon"
|
|
9762
|
-
}), s("div",
|
|
9763
|
-
s("label",
|
|
9805
|
+
}), s("div", br, [s("div", xr, [
|
|
9806
|
+
s("label", Sr, O(k(r)("Pattern.patternName")), 1),
|
|
9764
9807
|
s("input", {
|
|
9765
9808
|
id: "patternName",
|
|
9766
9809
|
class: "iccandle-pattern-alert-name__input",
|
|
@@ -9769,10 +9812,10 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9769
9812
|
maxlength: "20",
|
|
9770
9813
|
minlength: "5",
|
|
9771
9814
|
onInput: i
|
|
9772
|
-
}, null, 40,
|
|
9773
|
-
e.patternName.length === 20 ? (x(), o("p",
|
|
9815
|
+
}, null, 40, Cr),
|
|
9816
|
+
e.patternName.length === 20 ? (x(), o("p", wr, O(k(r)("Pattern.patternNameMaxChars")), 1)) : e.patternName.trim().length > 0 && e.patternName.trim().length < 5 ? (x(), o("p", Tr, O(k(r)("Pattern.patternNameMinChars")), 1)) : a("", !0)
|
|
9774
9817
|
])])]),
|
|
9775
|
-
s("div",
|
|
9818
|
+
s("div", Er, [n[3] ||= s("hr", { class: "iccandle-pattern-alert-name__divider" }, null, -1), s("div", Dr, [s("button", {
|
|
9776
9819
|
type: "button",
|
|
9777
9820
|
class: "iccandle-pattern-alert-name__btn iccandle-pattern-alert-name__btn--outline",
|
|
9778
9821
|
onClick: n[1] ||= (...t) => e.onCancel && e.onCancel(...t)
|
|
@@ -9781,10 +9824,10 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9781
9824
|
class: "iccandle-pattern-alert-name__btn iccandle-pattern-alert-name__btn--primary",
|
|
9782
9825
|
disabled: e.patternName.trim().length < 5,
|
|
9783
9826
|
onClick: n[2] ||= (...t) => e.onNext && e.onNext(...t)
|
|
9784
|
-
}, O(k(r)("Common.next")), 9,
|
|
9827
|
+
}, O(k(r)("Common.next")), 9, Or)])])
|
|
9785
9828
|
]));
|
|
9786
9829
|
}
|
|
9787
|
-
}),
|
|
9830
|
+
}), Ar = [
|
|
9788
9831
|
{
|
|
9789
9832
|
value: "M15",
|
|
9790
9833
|
label: "M15",
|
|
@@ -9821,33 +9864,33 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9821
9864
|
description: "Daily",
|
|
9822
9865
|
type: "daily"
|
|
9823
9866
|
}
|
|
9824
|
-
],
|
|
9867
|
+
], jr = ["aria-expanded"], Mr = { class: "iccandle-scanner-timeframe-search__chips" }, Nr = {
|
|
9825
9868
|
key: 0,
|
|
9826
9869
|
class: "iccandle-scanner-timeframe-search__placeholder"
|
|
9827
|
-
},
|
|
9870
|
+
}, Pr = { class: "iccandle-scanner-timeframe-search__chip-label" }, Fr = [
|
|
9828
9871
|
"aria-label",
|
|
9829
9872
|
"onClick",
|
|
9830
9873
|
"onKeydown"
|
|
9831
|
-
],
|
|
9874
|
+
], Ir = { class: "iccandle-scanner-timeframe-search__trigger-meta" }, Lr = { class: "iccandle-scanner-timeframe-search__search" }, Rr = [
|
|
9832
9875
|
"placeholder",
|
|
9833
9876
|
"value",
|
|
9834
9877
|
"aria-label"
|
|
9835
|
-
],
|
|
9878
|
+
], zr = {
|
|
9836
9879
|
key: 0,
|
|
9837
9880
|
class: "iccandle-scanner-timeframe-search__empty"
|
|
9838
|
-
},
|
|
9881
|
+
}, Br = {
|
|
9839
9882
|
key: 1,
|
|
9840
9883
|
class: "iccandle-scanner-timeframe-search__select-all"
|
|
9841
|
-
},
|
|
9884
|
+
}, Vr = ["aria-label"], Hr = {
|
|
9842
9885
|
key: 0,
|
|
9843
9886
|
class: "iccandle-scanner-timeframe-search__check iccandle-scanner-timeframe-search__check--on"
|
|
9844
|
-
},
|
|
9887
|
+
}, Ur = {
|
|
9845
9888
|
key: 1,
|
|
9846
9889
|
class: "iccandle-scanner-timeframe-search__check iccandle-scanner-timeframe-search__check--on"
|
|
9847
|
-
},
|
|
9890
|
+
}, Wr = {
|
|
9848
9891
|
key: 2,
|
|
9849
9892
|
class: "iccandle-scanner-timeframe-search__check"
|
|
9850
|
-
},
|
|
9893
|
+
}, Gr = ["aria-selected", "onClick"], Kr = { class: "iccandle-scanner-timeframe-search__item-label" }, qr = { class: "iccandle-scanner-timeframe-search__item-description" }, Jr = /* @__PURE__ */ d({
|
|
9851
9894
|
__name: "ScannerTimeframeSearch",
|
|
9852
9895
|
props: {
|
|
9853
9896
|
searchTerm: {},
|
|
@@ -9868,7 +9911,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9868
9911
|
let t = e?.closest(".iccandle-theme-scope, .iccandle-selector-widget") ?? document.body;
|
|
9869
9912
|
C.value = t;
|
|
9870
9913
|
}
|
|
9871
|
-
let A = r(() => l.allTimeframes ?? l.filteredTimeframes ??
|
|
9914
|
+
let A = r(() => l.allTimeframes ?? l.filteredTimeframes ?? Ar), j = r(() => l.filteredTimeframes ?? Ar), N = r(() => A.value.filter((e) => l.selectedTimeframes[e.value]));
|
|
9872
9915
|
function te(e) {
|
|
9873
9916
|
if (e.length === 0) return "none";
|
|
9874
9917
|
let t = e.filter((e) => l.selectedTimeframes[e.value]).length;
|
|
@@ -9925,7 +9968,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9925
9968
|
}), v(() => {
|
|
9926
9969
|
window.removeEventListener("resize", B), window.removeEventListener("scroll", B, !0), document.removeEventListener("mousedown", V), document.removeEventListener("keydown", H);
|
|
9927
9970
|
});
|
|
9928
|
-
let
|
|
9971
|
+
let re = r(() => te(j.value)), U = r(() => l.selectedCount <= 1 ? f("Pattern.timeframeSelected", { count: l.selectedCount }) : f("Pattern.timeframesSelected", { count: l.selectedCount })), W = r(() => E.value ? Math.max(120, E.value.maxHeight - 48) : 120);
|
|
9929
9972
|
return (r, c) => (x(), o("div", {
|
|
9930
9973
|
ref: (e) => D(e),
|
|
9931
9974
|
class: "iccandle-scanner-timeframe-search iccandle-scanner-timeframe-search--combobox"
|
|
@@ -9938,10 +9981,10 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9938
9981
|
"aria-haspopup": "listbox",
|
|
9939
9982
|
class: "iccandle-scanner-timeframe-search__trigger",
|
|
9940
9983
|
onClick: c[0] ||= (e) => z(!S.value)
|
|
9941
|
-
}, [s("div",
|
|
9984
|
+
}, [s("div", Mr, [N.value.length === 0 ? (x(), o("span", Nr, O(k(f)("Selector.searchTimeframe")), 1)) : (x(!0), o(e, { key: 1 }, T(N.value, (e) => (x(), o("span", {
|
|
9942
9985
|
key: e.value,
|
|
9943
9986
|
class: "iccandle-scanner-timeframe-search__chip"
|
|
9944
|
-
}, [s("span",
|
|
9987
|
+
}, [s("span", Pr, O(e.label), 1), s("span", {
|
|
9945
9988
|
role: "button",
|
|
9946
9989
|
tabindex: "0",
|
|
9947
9990
|
"aria-label": `Remove ${e.label}`,
|
|
@@ -9950,10 +9993,10 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9950
9993
|
onKeydown: (t) => {
|
|
9951
9994
|
(t.key === "Enter" || t.key === " ") && (t.preventDefault(), t.stopPropagation(), d("timeframeChange", e.value, !1));
|
|
9952
9995
|
}
|
|
9953
|
-
}, [u(
|
|
9996
|
+
}, [u(St, { size: 10 })], 40, Fr)]))), 128))]), s("div", Ir, [s("span", null, O(U.value), 1), u(cn, {
|
|
9954
9997
|
size: 16,
|
|
9955
9998
|
style: { opacity: .6 }
|
|
9956
|
-
})])], 8,
|
|
9999
|
+
})])], 8, jr), (x(), i(t, { to: C.value }, [S.value && E.value ? (x(), o("div", {
|
|
9957
10000
|
key: 0,
|
|
9958
10001
|
ref_key: "popoverRef",
|
|
9959
10002
|
ref: y,
|
|
@@ -9966,7 +10009,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9966
10009
|
width: `${E.value.width}px`,
|
|
9967
10010
|
maxHeight: `${E.value.maxHeight}px`
|
|
9968
10011
|
})
|
|
9969
|
-
}, [s("div",
|
|
10012
|
+
}, [s("div", Lr, [u(fn, {
|
|
9970
10013
|
size: 16,
|
|
9971
10014
|
"class-name": "iccandle-scanner-timeframe-search__search-icon"
|
|
9972
10015
|
}), s("input", {
|
|
@@ -9978,17 +10021,17 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
9978
10021
|
value: n.searchTerm,
|
|
9979
10022
|
"aria-label": k(f)("Selector.searchTimeframe"),
|
|
9980
10023
|
onInput: c[1] ||= (e) => d("searchChange", e.target.value.toUpperCase())
|
|
9981
|
-
}, null, 40,
|
|
10024
|
+
}, null, 40, Rr)]), s("div", {
|
|
9982
10025
|
class: "iccandle-scanner-timeframe-search__command-list",
|
|
9983
|
-
style: _({ maxHeight: `${
|
|
10026
|
+
style: _({ maxHeight: `${W.value}px` })
|
|
9984
10027
|
}, [
|
|
9985
|
-
n.searchTerm.trim() && j.value.length === 0 ? (x(), o("div",
|
|
9986
|
-
j.value.length > 0 ? (x(), o("div",
|
|
10028
|
+
n.searchTerm.trim() && j.value.length === 0 ? (x(), o("div", zr, O(k(f)("Selector.noResultsFound")), 1)) : a("", !0),
|
|
10029
|
+
j.value.length > 0 ? (x(), o("div", Br, [s("button", {
|
|
9987
10030
|
type: "button",
|
|
9988
10031
|
class: "iccandle-scanner-timeframe-search__group-check-btn",
|
|
9989
10032
|
"aria-label": k(f)("Selector.selectAllTimeframes"),
|
|
9990
10033
|
onClick: ne
|
|
9991
|
-
}, [
|
|
10034
|
+
}, [re.value === "all" ? (x(), o("div", Hr, [u(on, { size: 12 })])) : re.value === "some" ? (x(), o("div", Ur, [u(un, { size: 12 })])) : (x(), o("div", Wr))], 8, Vr), s("button", {
|
|
9992
10035
|
type: "button",
|
|
9993
10036
|
class: "iccandle-scanner-timeframe-search__group-label-btn",
|
|
9994
10037
|
onClick: ne
|
|
@@ -10001,16 +10044,16 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10001
10044
|
class: "iccandle-scanner-timeframe-search__item",
|
|
10002
10045
|
onClick: (t) => I(e.value)
|
|
10003
10046
|
}, [
|
|
10004
|
-
s("div", { class: g(k(Q)("iccandle-scanner-timeframe-search__check", n.selectedTimeframes[e.value] && "iccandle-scanner-timeframe-search__check--on")) }, [n.selectedTimeframes[e.value] ? (x(), i(
|
|
10047
|
+
s("div", { class: g(k(Q)("iccandle-scanner-timeframe-search__check", n.selectedTimeframes[e.value] && "iccandle-scanner-timeframe-search__check--on")) }, [n.selectedTimeframes[e.value] ? (x(), i(on, {
|
|
10005
10048
|
key: 0,
|
|
10006
10049
|
size: 12
|
|
10007
10050
|
})) : a("", !0)], 2),
|
|
10008
|
-
s("span",
|
|
10009
|
-
s("span",
|
|
10010
|
-
], 8,
|
|
10051
|
+
s("span", Kr, O(P(e.value)), 1),
|
|
10052
|
+
s("span", qr, O(F(e.value)), 1)
|
|
10053
|
+
], 8, Gr))), 128))
|
|
10011
10054
|
], 4)], 6)) : a("", !0)], 8, ["to"]))], 512));
|
|
10012
10055
|
}
|
|
10013
|
-
}),
|
|
10056
|
+
}), Yr = { class: "iccandle-timeframes-tab" }, Xr = { class: "iccandle-timeframes-tab__header" }, Zr = { class: "iccandle-timeframes-tab__title" }, Qr = /* @__PURE__ */ d({
|
|
10014
10057
|
__name: "TimeframesTab",
|
|
10015
10058
|
props: { form: {} },
|
|
10016
10059
|
setup(e) {
|
|
@@ -10022,13 +10065,13 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10022
10065
|
}, { immediate: !0 });
|
|
10023
10066
|
let l = r(() => t.form.timeframes.reduce((e, t) => (e[t] = !0, e), {})), d = r(() => {
|
|
10024
10067
|
let e = a.value.toLowerCase();
|
|
10025
|
-
return
|
|
10068
|
+
return Ar.filter((t) => {
|
|
10026
10069
|
let r = n(`Pattern.timeframeOptions.${t.value}.displayName`).toLowerCase(), i = n(`Pattern.timeframeOptions.${t.value}.description`).toLowerCase();
|
|
10027
10070
|
return t.label.toLowerCase().includes(e) || t.value.toLowerCase().includes(e) || r.includes(e) || i.includes(e);
|
|
10028
10071
|
});
|
|
10029
10072
|
}), f = r(() => Object.values(l.value).filter(Boolean).length);
|
|
10030
10073
|
function p(e) {
|
|
10031
|
-
t.form.timeframes =
|
|
10074
|
+
t.form.timeframes = Ar.filter((t) => e[t.value]).map((e) => e.value);
|
|
10032
10075
|
}
|
|
10033
10076
|
function m(e, t) {
|
|
10034
10077
|
p({
|
|
@@ -10041,12 +10084,12 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10041
10084
|
for (let r of e) n[r] = t;
|
|
10042
10085
|
p(n);
|
|
10043
10086
|
}
|
|
10044
|
-
return (e, t) => (x(), o("div",
|
|
10087
|
+
return (e, t) => (x(), o("div", Yr, [s("div", Xr, [s("h3", Zr, O(k(n)("Pattern.selectTimeframes")), 1)]), u(Jr, {
|
|
10045
10088
|
"search-term": i.value,
|
|
10046
10089
|
"selected-timeframes": l.value,
|
|
10047
10090
|
"filtered-timeframes": d.value,
|
|
10048
10091
|
"selected-count": f.value,
|
|
10049
|
-
"all-timeframes": [...k(
|
|
10092
|
+
"all-timeframes": [...k(Ar)],
|
|
10050
10093
|
onSearchChange: t[0] ||= (e) => i.value = e,
|
|
10051
10094
|
onTimeframeChange: m,
|
|
10052
10095
|
onGroupChange: h
|
|
@@ -10058,7 +10101,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10058
10101
|
"all-timeframes"
|
|
10059
10102
|
])]));
|
|
10060
10103
|
}
|
|
10061
|
-
}),
|
|
10104
|
+
}), $r = { class: "iccandle-symbols-tab" }, ei = { class: "iccandle-symbols-tab__header" }, ti = { class: "iccandle-symbols-tab__title" }, ni = /* @__PURE__ */ d({
|
|
10062
10105
|
__name: "SymbolsTab",
|
|
10063
10106
|
props: { form: {} },
|
|
10064
10107
|
setup(e) {
|
|
@@ -10094,7 +10137,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10094
10137
|
for (let r of e) n[r] = t;
|
|
10095
10138
|
m(n);
|
|
10096
10139
|
}
|
|
10097
|
-
return (e, t) => (x(), o("div",
|
|
10140
|
+
return (e, t) => (x(), o("div", $r, [s("div", ei, [s("h3", ti, O(k(n)("Pattern.signalDialog.selectCurrencyPairs")), 1)]), u(Rn, {
|
|
10098
10141
|
"search-term": i.value,
|
|
10099
10142
|
"selected-symbols": l.value,
|
|
10100
10143
|
"filtered-symbols": d.value,
|
|
@@ -10113,7 +10156,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10113
10156
|
"all-symbols"
|
|
10114
10157
|
])]));
|
|
10115
10158
|
}
|
|
10116
|
-
}),
|
|
10159
|
+
}), ri = [
|
|
10117
10160
|
{
|
|
10118
10161
|
value: "new_york",
|
|
10119
10162
|
label: "New York Session",
|
|
@@ -10142,12 +10185,12 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10142
10185
|
start: "09:00",
|
|
10143
10186
|
end: "18:00"
|
|
10144
10187
|
}
|
|
10145
|
-
],
|
|
10188
|
+
], ii = [
|
|
10146
10189
|
{
|
|
10147
10190
|
value: "all_time",
|
|
10148
10191
|
label: "All time"
|
|
10149
10192
|
},
|
|
10150
|
-
...
|
|
10193
|
+
...ri.map((e) => ({
|
|
10151
10194
|
value: e.value,
|
|
10152
10195
|
label: e.label
|
|
10153
10196
|
})),
|
|
@@ -10155,61 +10198,61 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10155
10198
|
value: "customize",
|
|
10156
10199
|
label: "Customize"
|
|
10157
10200
|
}
|
|
10158
|
-
],
|
|
10201
|
+
], ai = (e) => {
|
|
10159
10202
|
let t = e.match(/GMT([+-])(\d{1,2})(?::?(\d{2}))?/);
|
|
10160
10203
|
if (!t) return 0;
|
|
10161
10204
|
let n = t[1] === "-" ? -1 : 1, r = Number(t[2]), i = Number(t[3] ?? "0");
|
|
10162
10205
|
return n * (r * 60 + i);
|
|
10163
|
-
},
|
|
10206
|
+
}, oi = (e, t) => ai(new Intl.DateTimeFormat("en-US", {
|
|
10164
10207
|
timeZone: t,
|
|
10165
10208
|
timeZoneName: "shortOffset",
|
|
10166
10209
|
hour: "2-digit"
|
|
10167
|
-
}).formatToParts(e).find((e) => e.type === "timeZoneName")?.value ?? "GMT+0"),
|
|
10168
|
-
let [r, i] = e.split(":").map(Number), a = /* @__PURE__ */ new Date(), o = Date.UTC(a.getUTCFullYear(), a.getUTCMonth(), a.getUTCDate(), r, i, 0), s = o -
|
|
10169
|
-
return s = o -
|
|
10210
|
+
}).formatToParts(e).find((e) => e.type === "timeZoneName")?.value ?? "GMT+0"), si = (e, t, n) => {
|
|
10211
|
+
let [r, i] = e.split(":").map(Number), a = /* @__PURE__ */ new Date(), o = Date.UTC(a.getUTCFullYear(), a.getUTCMonth(), a.getUTCDate(), r, i, 0), s = o - oi(new Date(o), t) * 6e4;
|
|
10212
|
+
return s = o - oi(new Date(s), t) * 6e4, new Intl.DateTimeFormat("en-GB", {
|
|
10170
10213
|
timeZone: n,
|
|
10171
10214
|
hour12: !1,
|
|
10172
10215
|
hour: "2-digit",
|
|
10173
10216
|
minute: "2-digit"
|
|
10174
10217
|
}).format(new Date(s));
|
|
10175
|
-
},
|
|
10176
|
-
let n =
|
|
10218
|
+
}, ci = (e, t) => {
|
|
10219
|
+
let n = ri.find((t) => t.value === e);
|
|
10177
10220
|
return n ? {
|
|
10178
|
-
start_time:
|
|
10179
|
-
end_time:
|
|
10221
|
+
start_time: si(n.start, n.timezone, t),
|
|
10222
|
+
end_time: si(n.end, n.timezone, t),
|
|
10180
10223
|
timezone: t
|
|
10181
10224
|
} : null;
|
|
10182
|
-
},
|
|
10225
|
+
}, li = (e, t) => {
|
|
10183
10226
|
if (!e) return "all_time";
|
|
10184
10227
|
let n = e.timezone || t, r = !!(e.start_time && e.end_time);
|
|
10185
10228
|
if (e.preset_session) {
|
|
10186
10229
|
if (e.preset_session === "all_time") return "all_time";
|
|
10187
10230
|
if (e.preset_session === "customize") return "customize";
|
|
10188
|
-
let t =
|
|
10231
|
+
let t = ci(e.preset_session, n);
|
|
10189
10232
|
if (t && t.start_time === e.start_time && t.end_time === e.end_time) return e.preset_session;
|
|
10190
10233
|
}
|
|
10191
10234
|
if (!r) return "customize";
|
|
10192
|
-
let i =
|
|
10193
|
-
let r =
|
|
10235
|
+
let i = ri.find((t) => {
|
|
10236
|
+
let r = ci(t.value, n);
|
|
10194
10237
|
return r && r.start_time === e.start_time && r.end_time === e.end_time;
|
|
10195
10238
|
});
|
|
10196
10239
|
return i ? i.value : "customize";
|
|
10197
|
-
},
|
|
10240
|
+
}, ui = (e) => {
|
|
10198
10241
|
let t = Intl, n = typeof t.supportedValuesOf == "function" ? t.supportedValuesOf("timeZone") ?? [] : [], r = e || "UTC";
|
|
10199
10242
|
return (n.length ? n : [r]).filter(Boolean);
|
|
10200
|
-
},
|
|
10243
|
+
}, di = { class: "iccandle-time-config-section__header" }, fi = { class: "iccandle-time-config-section__title" }, pi = { class: "iccandle-time-config-section__fields" }, mi = { class: "iccandle-time-config-section__row" }, hi = { class: "iccandle-time-config-section__field" }, gi = { class: "iccandle-time-config-section__label" }, _i = ["aria-expanded"], vi = { class: "iccandle-time-config-section__select-label" }, yi = { class: "iccandle-time-config-section__field" }, bi = { class: "iccandle-time-config-section__label" }, xi = ["aria-expanded", "disabled"], Si = { class: "iccandle-time-config-section__select-label" }, Ci = { class: "iccandle-time-config-section__row" }, wi = { class: "iccandle-time-config-section__field" }, Ti = { class: "iccandle-time-config-section__label" }, Ei = ["disabled", "value"], Di = { class: "iccandle-time-config-section__field" }, Oi = { class: "iccandle-time-config-section__label" }, ki = ["disabled", "value"], Ai = { class: "iccandle-time-config-section__dropdown-search" }, ji = ["placeholder"], Mi = {
|
|
10201
10244
|
class: "iccandle-time-config-section__dropdown-group-label",
|
|
10202
10245
|
"aria-hidden": "true"
|
|
10203
|
-
},
|
|
10246
|
+
}, Ni = {
|
|
10204
10247
|
key: 0,
|
|
10205
10248
|
class: "iccandle-time-config-section__dropdown-empty"
|
|
10206
|
-
},
|
|
10249
|
+
}, Pi = ["aria-selected", "onClick"], Fi = { class: "iccandle-time-config-section__dropdown-header" }, Ii = { class: "iccandle-time-config-section__dropdown-title" }, Li = { class: "iccandle-time-config-section__dropdown-subtitle" }, Ri = { class: "iccandle-time-config-section__dropdown-search" }, zi = ["placeholder"], Bi = {
|
|
10207
10250
|
class: "iccandle-time-config-section__dropdown-group-label",
|
|
10208
10251
|
"aria-hidden": "true"
|
|
10209
|
-
},
|
|
10252
|
+
}, Vi = {
|
|
10210
10253
|
key: 0,
|
|
10211
10254
|
class: "iccandle-time-config-section__dropdown-empty"
|
|
10212
|
-
},
|
|
10255
|
+
}, Hi = ["aria-selected", "onClick"], Ui = /* @__PURE__ */ d({
|
|
10213
10256
|
__name: "TimeConfigSection",
|
|
10214
10257
|
props: {
|
|
10215
10258
|
timeconfig: {},
|
|
@@ -10233,11 +10276,11 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10233
10276
|
let t = e?.closest(".iccandle-theme-scope, .iccandle-selector-widget") ?? document.body;
|
|
10234
10277
|
ee.value = t;
|
|
10235
10278
|
}
|
|
10236
|
-
let L = Intl.DateTimeFormat().resolvedOptions().timeZone, R = r(() =>
|
|
10279
|
+
let L = Intl.DateTimeFormat().resolvedOptions().timeZone, R = r(() => li(d.timeconfig, L)), z = (e) => p(c[e]), B = r(() => d.timeconfig?.timezone?.trim() || L || "UTC"), V = r(() => R.value === "all_time" ? p("TimeConfig.yourTimezone") : B.value), H = r(() => ui(L)), re = r(() => {
|
|
10237
10280
|
let e = N.value.trim().toLowerCase();
|
|
10238
|
-
return e ?
|
|
10239
|
-
}),
|
|
10240
|
-
function
|
|
10281
|
+
return e ? ii.filter((t) => z(t.value).toLowerCase().includes(e) || t.value.toLowerCase().includes(e)) : ii;
|
|
10282
|
+
}), U = r(() => f(H.value, P.value)), W = r(() => `iccandle-time-config-section ${d.containerClassName}`.trim());
|
|
10283
|
+
function ie(e, t) {
|
|
10241
10284
|
if (!e) return;
|
|
10242
10285
|
let n = e.getBoundingClientRect(), r = window.innerHeight - n.bottom - 4 - 8, i = n.top - 8, a = r < 180 && i > r, o = Math.max(160, Math.min(320, a ? i : r));
|
|
10243
10286
|
t({
|
|
@@ -10247,13 +10290,13 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10247
10290
|
maxHeight: o
|
|
10248
10291
|
});
|
|
10249
10292
|
}
|
|
10250
|
-
function
|
|
10293
|
+
function G() {
|
|
10251
10294
|
A.value = !1, N.value = "", F.value = null;
|
|
10252
10295
|
}
|
|
10253
|
-
function
|
|
10296
|
+
function K() {
|
|
10254
10297
|
D.value = !1, P.value = "", I.value = null;
|
|
10255
10298
|
}
|
|
10256
|
-
function
|
|
10299
|
+
function q(e, t) {
|
|
10257
10300
|
let n = d.timeconfig || { timezone: L };
|
|
10258
10301
|
d.onTimeConfigChange({
|
|
10259
10302
|
...n,
|
|
@@ -10261,9 +10304,9 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10261
10304
|
preset_session: "customize"
|
|
10262
10305
|
}, { shouldDirty: !0 });
|
|
10263
10306
|
}
|
|
10264
|
-
function
|
|
10265
|
-
if (
|
|
10266
|
-
d.timeconfig && d.onTimeConfigChange(void 0, { shouldDirty: !0 }),
|
|
10307
|
+
function ae(e) {
|
|
10308
|
+
if (G(), e === "all_time") {
|
|
10309
|
+
d.timeconfig && d.onTimeConfigChange(void 0, { shouldDirty: !0 }), K();
|
|
10267
10310
|
return;
|
|
10268
10311
|
}
|
|
10269
10312
|
if (e === "customize") {
|
|
@@ -10278,7 +10321,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10278
10321
|
}, { shouldDirty: !0 });
|
|
10279
10322
|
return;
|
|
10280
10323
|
}
|
|
10281
|
-
let t =
|
|
10324
|
+
let t = ci(e, d.timeconfig?.timezone || L);
|
|
10282
10325
|
t && d.onTimeConfigChange({
|
|
10283
10326
|
...t,
|
|
10284
10327
|
preset_session: e
|
|
@@ -10286,7 +10329,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10286
10329
|
}
|
|
10287
10330
|
function J(e) {
|
|
10288
10331
|
if (R.value !== "all_time" && R.value !== "customize") {
|
|
10289
|
-
let t =
|
|
10332
|
+
let t = ci(R.value, e);
|
|
10290
10333
|
t && d.onTimeConfigChange({
|
|
10291
10334
|
...t,
|
|
10292
10335
|
preset_session: R.value
|
|
@@ -10295,7 +10338,7 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10295
10338
|
...d.timeconfig || {},
|
|
10296
10339
|
timezone: e
|
|
10297
10340
|
}, { shouldDirty: !0 });
|
|
10298
|
-
|
|
10341
|
+
K();
|
|
10299
10342
|
}
|
|
10300
10343
|
function Y(e) {
|
|
10301
10344
|
if (R.value !== "customize") return;
|
|
@@ -10305,18 +10348,18 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10305
10348
|
} catch {}
|
|
10306
10349
|
}
|
|
10307
10350
|
function oe() {
|
|
10308
|
-
A.value &&
|
|
10351
|
+
A.value && ie(y.value, (e) => {
|
|
10309
10352
|
F.value = e;
|
|
10310
|
-
}), D.value &&
|
|
10353
|
+
}), D.value && ie(b.value, (e) => {
|
|
10311
10354
|
I.value = e;
|
|
10312
10355
|
});
|
|
10313
10356
|
}
|
|
10314
10357
|
function se(e) {
|
|
10315
10358
|
let t = e.target;
|
|
10316
|
-
t && (m.value?.contains(t) || S.value?.contains(t) || C.value?.contains(t) || (A.value &&
|
|
10359
|
+
t && (m.value?.contains(t) || S.value?.contains(t) || C.value?.contains(t) || (A.value && G(), D.value && K()));
|
|
10317
10360
|
}
|
|
10318
10361
|
function ce(e) {
|
|
10319
|
-
e.key === "Escape" && (A.value &&
|
|
10362
|
+
e.key === "Escape" && (A.value && G(), D.value && K());
|
|
10320
10363
|
}
|
|
10321
10364
|
M(() => [d.timeconfig, R.value], () => {
|
|
10322
10365
|
!d.timeconfig || R.value === "all_time" || d.timeconfig.timezone || d.onTimeConfigChange({
|
|
@@ -10331,10 +10374,10 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10331
10374
|
let le = r(() => F.value ? Math.max(120, F.value.maxHeight - 52) : 120), ue = r(() => I.value ? Math.max(120, I.value.maxHeight - 96) : 120);
|
|
10332
10375
|
return (r, c) => (x(), o("div", {
|
|
10333
10376
|
ref: (e) => ne(e),
|
|
10334
|
-
class: g(
|
|
10377
|
+
class: g(W.value)
|
|
10335
10378
|
}, [
|
|
10336
|
-
s("div",
|
|
10337
|
-
s("div",
|
|
10379
|
+
s("div", di, [s("h3", fi, O(k(p)("TimeConfig.title")), 1)]),
|
|
10380
|
+
s("div", pi, [s("div", mi, [s("div", hi, [s("label", gi, O(k(p)("TimeConfig.session")), 1), s("div", { class: g(["iccandle-time-config-section__select-wrap", A.value && "iccandle-time-config-section__select-wrap--open"]) }, [s("button", {
|
|
10338
10381
|
ref_key: "sessionTriggerRef",
|
|
10339
10382
|
ref: y,
|
|
10340
10383
|
type: "button",
|
|
@@ -10343,12 +10386,12 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10343
10386
|
"aria-expanded": A.value,
|
|
10344
10387
|
onClick: c[0] ||= () => {
|
|
10345
10388
|
if (A.value) {
|
|
10346
|
-
|
|
10389
|
+
G();
|
|
10347
10390
|
return;
|
|
10348
10391
|
}
|
|
10349
|
-
|
|
10392
|
+
K(), A.value = !0;
|
|
10350
10393
|
}
|
|
10351
|
-
}, [s("span",
|
|
10394
|
+
}, [s("span", vi, O(z(R.value) || k(p)("TimeConfig.selectSession")), 1)], 8, _i)], 2)]), s("div", yi, [s("label", bi, O(k(p)("TimeConfig.timezone")), 1), s("div", { class: g(["iccandle-time-config-section__select-wrap", D.value && "iccandle-time-config-section__select-wrap--open"]) }, [s("button", {
|
|
10352
10395
|
ref_key: "timezoneTriggerRef",
|
|
10353
10396
|
ref: b,
|
|
10354
10397
|
type: "button",
|
|
@@ -10358,26 +10401,26 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10358
10401
|
disabled: R.value === "all_time",
|
|
10359
10402
|
onClick: c[1] ||= () => {
|
|
10360
10403
|
if (D.value) {
|
|
10361
|
-
|
|
10404
|
+
K();
|
|
10362
10405
|
return;
|
|
10363
10406
|
}
|
|
10364
|
-
|
|
10407
|
+
G(), D.value = !0;
|
|
10365
10408
|
}
|
|
10366
|
-
}, [s("span",
|
|
10409
|
+
}, [s("span", Si, O(V.value), 1)], 8, xi)], 2)])]), s("div", Ci, [s("div", wi, [s("label", Ti, O(k(p)("TimeConfig.startTime")), 1), s("input", {
|
|
10367
10410
|
type: "time",
|
|
10368
10411
|
disabled: R.value !== "customize",
|
|
10369
10412
|
value: n.timeconfig?.start_time ?? "",
|
|
10370
10413
|
class: "iccandle-time-config-section__input",
|
|
10371
|
-
onInput: c[2] ||= (e) =>
|
|
10414
|
+
onInput: c[2] ||= (e) => q("start_time", e.target.value),
|
|
10372
10415
|
onClick: Y
|
|
10373
|
-
}, null, 40,
|
|
10416
|
+
}, null, 40, Ei)]), s("div", Di, [s("label", Oi, O(k(p)("TimeConfig.endTime")), 1), s("input", {
|
|
10374
10417
|
type: "time",
|
|
10375
10418
|
disabled: R.value !== "customize",
|
|
10376
10419
|
value: n.timeconfig?.end_time ?? "",
|
|
10377
10420
|
class: "iccandle-time-config-section__input",
|
|
10378
|
-
onInput: c[3] ||= (e) =>
|
|
10421
|
+
onInput: c[3] ||= (e) => q("end_time", e.target.value),
|
|
10379
10422
|
onClick: Y
|
|
10380
|
-
}, null, 40,
|
|
10423
|
+
}, null, 40, ki)])])]),
|
|
10381
10424
|
(x(), i(t, { to: ee.value }, [A.value && F.value ? (x(), o("div", {
|
|
10382
10425
|
key: 0,
|
|
10383
10426
|
ref_key: "sessionPopoverRef",
|
|
@@ -10390,22 +10433,22 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10390
10433
|
width: `${F.value.width}px`,
|
|
10391
10434
|
maxHeight: `${F.value.maxHeight}px`
|
|
10392
10435
|
})
|
|
10393
|
-
}, [s("div",
|
|
10436
|
+
}, [s("div", Ai, [te(s("input", {
|
|
10394
10437
|
"onUpdate:modelValue": c[4] ||= (e) => N.value = e,
|
|
10395
10438
|
type: "text",
|
|
10396
10439
|
class: "iccandle-time-config-section__dropdown-search-input",
|
|
10397
10440
|
placeholder: k(p)("TimeConfig.searchSession"),
|
|
10398
10441
|
autofocus: ""
|
|
10399
|
-
}, null, 8,
|
|
10442
|
+
}, null, 8, ji), [[j, N.value]])]), s("ul", {
|
|
10400
10443
|
class: "iccandle-time-config-section__dropdown-list",
|
|
10401
10444
|
style: _({ maxHeight: `${le.value}px` })
|
|
10402
|
-
}, [s("li",
|
|
10445
|
+
}, [s("li", Mi, O(k(p)("TimeConfig.sessionsHeading")), 1), re.value.length === 0 ? (x(), o("li", Ni, O(k(p)("TimeConfig.noSessionFound")), 1)) : (x(!0), o(e, { key: 1 }, T(re.value, (e) => (x(), o("li", { key: e.value }, [s("button", {
|
|
10403
10446
|
type: "button",
|
|
10404
10447
|
role: "option",
|
|
10405
10448
|
"aria-selected": R.value === e.value,
|
|
10406
10449
|
class: g(["iccandle-time-config-section__dropdown-item", R.value === e.value && "iccandle-time-config-section__dropdown-item--selected"]),
|
|
10407
|
-
onClick: (t) =>
|
|
10408
|
-
}, [u(
|
|
10450
|
+
onClick: (t) => ae(e.value)
|
|
10451
|
+
}, [u(on, { "class-name": ["iccandle-time-config-section__check", R.value === e.value && "iccandle-time-config-section__check--visible"].filter(Boolean).join(" ") }, null, 8, ["class-name"]), l(" " + O(z(e.value)), 1)], 10, Pi)]))), 128))], 4)], 6)) : a("", !0)], 8, ["to"])),
|
|
10409
10452
|
(x(), i(t, { to: ee.value }, [D.value && I.value ? (x(), o("div", {
|
|
10410
10453
|
key: 0,
|
|
10411
10454
|
ref_key: "timezonePopoverRef",
|
|
@@ -10419,31 +10462,31 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10419
10462
|
maxHeight: `${I.value.maxHeight}px`
|
|
10420
10463
|
})
|
|
10421
10464
|
}, [
|
|
10422
|
-
s("div",
|
|
10423
|
-
s("div",
|
|
10465
|
+
s("div", Fi, [s("p", Ii, O(k(p)("TimeConfig.selectTimezone")), 1), s("p", Li, O(k(p)("TimeConfig.selectTimezoneHint")), 1)]),
|
|
10466
|
+
s("div", Ri, [te(s("input", {
|
|
10424
10467
|
"onUpdate:modelValue": c[5] ||= (e) => P.value = e,
|
|
10425
10468
|
type: "text",
|
|
10426
10469
|
class: "iccandle-time-config-section__dropdown-search-input",
|
|
10427
10470
|
placeholder: k(p)("TimeConfig.searchTimezone"),
|
|
10428
10471
|
autofocus: ""
|
|
10429
|
-
}, null, 8,
|
|
10472
|
+
}, null, 8, zi), [[j, P.value]])]),
|
|
10430
10473
|
s("ul", {
|
|
10431
10474
|
class: "iccandle-time-config-section__dropdown-list",
|
|
10432
10475
|
style: _({ maxHeight: `${ue.value}px` })
|
|
10433
|
-
}, [s("li",
|
|
10476
|
+
}, [s("li", Bi, O(k(p)("TimeConfig.timezonesHeading")), 1), U.value.length === 0 ? (x(), o("li", Vi, O(k(p)("TimeConfig.noTimezoneFound")), 1)) : (x(!0), o(e, { key: 1 }, T(U.value, (e) => (x(), o("li", { key: e }, [s("button", {
|
|
10434
10477
|
type: "button",
|
|
10435
10478
|
role: "option",
|
|
10436
10479
|
"aria-selected": B.value === e,
|
|
10437
10480
|
class: g(["iccandle-time-config-section__dropdown-item", B.value === e && "iccandle-time-config-section__dropdown-item--selected"]),
|
|
10438
10481
|
onClick: (t) => J(e)
|
|
10439
|
-
}, [u(
|
|
10482
|
+
}, [u(on, { "class-name": ["iccandle-time-config-section__check", B.value === e && "iccandle-time-config-section__check--visible"].filter(Boolean).join(" ") }, null, 8, ["class-name"]), l(" " + O(e), 1)], 10, Hi)]))), 128))], 4)
|
|
10440
10483
|
], 6)) : a("", !0)], 8, ["to"]))
|
|
10441
10484
|
], 2));
|
|
10442
10485
|
}
|
|
10443
|
-
}),
|
|
10486
|
+
}), Wi = { class: "iccandle-pattern-alert-settings" }, Gi = { class: "iccandle-pattern-alert-settings__header-row" }, Ki = { class: "iccandle-pattern-alert-settings__header" }, qi = { class: "iccandle-pattern-alert-settings__title-row" }, Ji = { class: "iccandle-pattern-alert-settings__title" }, Yi = { class: "iccandle-pattern-alert-settings__title-text" }, Xi = ["aria-label"], Zi = { class: "iccandle-pattern-alert-settings__sections" }, Qi = { class: "iccandle-pattern-alert-settings__section" }, $i = { class: "iccandle-pattern-alert-settings__section" }, ea = { class: "iccandle-pattern-alert-settings__section" }, ta = { class: "iccandle-pattern-alert-settings__footer" }, na = {
|
|
10444
10487
|
key: 0,
|
|
10445
10488
|
class: "iccandle-pattern-alert-settings__error iccandle-pattern-alert-settings__error--visible"
|
|
10446
|
-
},
|
|
10489
|
+
}, ra = ["disabled"], ia = /* @__PURE__ */ d({
|
|
10447
10490
|
__name: "PatternAlertSettingsStep",
|
|
10448
10491
|
props: {
|
|
10449
10492
|
form: {},
|
|
@@ -10480,30 +10523,30 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10480
10523
|
function h(e, n) {
|
|
10481
10524
|
t.form.timeconfig = e;
|
|
10482
10525
|
}
|
|
10483
|
-
return (t, r) => (x(), o("div",
|
|
10484
|
-
s("div",
|
|
10526
|
+
return (t, r) => (x(), o("div", Wi, [
|
|
10527
|
+
s("div", Gi, [u(Je, {
|
|
10485
10528
|
size: 20,
|
|
10486
10529
|
"class-name": "iccandle-pattern-alert-settings__header-icon"
|
|
10487
|
-
}), s("div",
|
|
10530
|
+
}), s("div", Ki, [s("div", qi, [s("h2", Ji, [s("span", Yi, O(k(n)("Pattern.configurePatternTracker")), 1)]), s("button", {
|
|
10488
10531
|
type: "button",
|
|
10489
10532
|
class: "iccandle-pattern-alert-settings__close-btn",
|
|
10490
10533
|
"aria-label": k(n)("Common.close"),
|
|
10491
10534
|
onClick: r[0] ||= (...t) => e.onCancel && e.onCancel(...t)
|
|
10492
|
-
}, [u(
|
|
10535
|
+
}, [u(fr, { size: 16 })], 8, Xi)])])]),
|
|
10493
10536
|
s("form", {
|
|
10494
10537
|
class: "iccandle-pattern-alert-settings__form",
|
|
10495
10538
|
id: "pattern-alert-settings-form",
|
|
10496
10539
|
onSubmit: m
|
|
10497
|
-
}, [s("div",
|
|
10498
|
-
s("section",
|
|
10499
|
-
s("section",
|
|
10500
|
-
s("section",
|
|
10540
|
+
}, [s("div", Zi, [
|
|
10541
|
+
s("section", Qi, [u(Qr, { form: e.form }, null, 8, ["form"])]),
|
|
10542
|
+
s("section", $i, [u(ni, { form: e.form }, null, 8, ["form"])]),
|
|
10543
|
+
s("section", ea, [u(Ui, {
|
|
10501
10544
|
timeconfig: e.form.timeconfig,
|
|
10502
10545
|
"on-time-config-change": h,
|
|
10503
10546
|
"container-class-name": "iccandle-pattern-alert-settings__time-config"
|
|
10504
10547
|
}, null, 8, ["timeconfig"])])
|
|
10505
10548
|
])], 32),
|
|
10506
|
-
s("div",
|
|
10549
|
+
s("div", ta, [f.value ? (x(), o("p", na, O(f.value), 1)) : a("", !0), s("div", { class: g(["iccandle-pattern-alert-settings__actions", f.value && "iccandle-pattern-alert-settings__actions--with-error"]) }, [s("button", {
|
|
10507
10550
|
type: "button",
|
|
10508
10551
|
class: "iccandle-pattern-alert-settings__btn iccandle-pattern-alert-settings__btn--outline",
|
|
10509
10552
|
onClick: r[1] ||= (...t) => e.onBack && e.onBack(...t)
|
|
@@ -10512,13 +10555,13 @@ var It = { class: "iccandle-scanner-ai-settings" }, Lt = { class: "iccandle-scan
|
|
|
10512
10555
|
form: "pattern-alert-settings-form",
|
|
10513
10556
|
class: "iccandle-pattern-alert-settings__btn iccandle-pattern-alert-settings__btn--primary",
|
|
10514
10557
|
disabled: e.isSubscribing
|
|
10515
|
-
}, O(e.isSubscribing ? k(n)("Pattern.subscribing") : k(n)("Pattern.subscribe")), 9,
|
|
10558
|
+
}, O(e.isSubscribing ? k(n)("Pattern.subscribing") : k(n)("Pattern.subscribe")), 9, ra)], 2)])
|
|
10516
10559
|
]));
|
|
10517
10560
|
}
|
|
10518
10561
|
});
|
|
10519
10562
|
//#endregion
|
|
10520
10563
|
//#region src/services/pattern-tracker.ts
|
|
10521
|
-
async function
|
|
10564
|
+
async function aa(e) {
|
|
10522
10565
|
let { data: t } = await F.post("https://api.iccandle.ai/custom-pattern/v1/searchless", e, { headers: {
|
|
10523
10566
|
Authorization: `Bearer ${localStorage.getItem("iccandle_token")}`,
|
|
10524
10567
|
...window.location.hostname === "localhost" ? {} : { "X-Client-Name": window.location.origin }
|
|
@@ -10527,63 +10570,63 @@ async function Ji(e) {
|
|
|
10527
10570
|
}
|
|
10528
10571
|
//#endregion
|
|
10529
10572
|
//#region src/services/base-service.ts
|
|
10530
|
-
var
|
|
10573
|
+
var oa = F.create({
|
|
10531
10574
|
timeout: 6e4,
|
|
10532
10575
|
baseURL: ne
|
|
10533
10576
|
});
|
|
10534
|
-
|
|
10577
|
+
oa.interceptors.request.use(async (e) => {
|
|
10535
10578
|
if (typeof window > "u") return e;
|
|
10536
10579
|
let t = localStorage.getItem("iccandle_token");
|
|
10537
10580
|
return t && (e.headers[L] = `Bearer ${t}`), e;
|
|
10538
|
-
}, (e) => Promise.reject(e)),
|
|
10581
|
+
}, (e) => Promise.reject(e)), oa.interceptors.response.use((e) => e, async (e) => Promise.reject(e));
|
|
10539
10582
|
//#endregion
|
|
10540
10583
|
//#region src/services/credits.ts
|
|
10541
|
-
async function
|
|
10542
|
-
let { data: e } = await
|
|
10584
|
+
async function sa() {
|
|
10585
|
+
let { data: e } = await oa.get("/credits/v1/me");
|
|
10543
10586
|
return e;
|
|
10544
10587
|
}
|
|
10545
|
-
function
|
|
10588
|
+
function ca(e) {
|
|
10546
10589
|
return e.usage?.pattern;
|
|
10547
10590
|
}
|
|
10548
|
-
function
|
|
10591
|
+
function la(e) {
|
|
10549
10592
|
return e.user_credit?.plan?.toLowerCase() || "free";
|
|
10550
10593
|
}
|
|
10551
10594
|
//#endregion
|
|
10552
10595
|
//#region src/lib/find-error-message.ts
|
|
10553
|
-
var
|
|
10596
|
+
var ua = (e) => {
|
|
10554
10597
|
if (typeof e == "string") return e;
|
|
10555
10598
|
if (typeof e != "object" || !e) return R;
|
|
10556
10599
|
for (let t in e) if (Object.prototype.hasOwnProperty.call(e, t)) {
|
|
10557
|
-
let n =
|
|
10600
|
+
let n = ua(e[t]);
|
|
10558
10601
|
if (n) return n;
|
|
10559
10602
|
}
|
|
10560
10603
|
return R;
|
|
10561
|
-
},
|
|
10562
|
-
function
|
|
10604
|
+
}, da = (e) => I(e) ? ua(e.response?.data) : e.message, fa = "pattern.custom_pattern_saved";
|
|
10605
|
+
function pa() {
|
|
10563
10606
|
return JSON.stringify({
|
|
10564
|
-
name:
|
|
10607
|
+
name: fa,
|
|
10565
10608
|
data: null
|
|
10566
10609
|
});
|
|
10567
10610
|
}
|
|
10568
|
-
function
|
|
10611
|
+
function ma(e, t, n = 0) {
|
|
10569
10612
|
!e || n > 4 || e.querySelectorAll("iframe").forEach((e) => {
|
|
10570
10613
|
let r = e.contentWindow;
|
|
10571
10614
|
if (!(!r || t.has(r))) {
|
|
10572
10615
|
t.add(r);
|
|
10573
10616
|
try {
|
|
10574
|
-
|
|
10617
|
+
ma(e.contentDocument, t, n + 1);
|
|
10575
10618
|
} catch {}
|
|
10576
10619
|
}
|
|
10577
10620
|
});
|
|
10578
10621
|
}
|
|
10579
|
-
function
|
|
10622
|
+
function ha() {
|
|
10580
10623
|
if (typeof document > "u") return;
|
|
10581
|
-
let e =
|
|
10582
|
-
|
|
10624
|
+
let e = pa(), t = /* @__PURE__ */ new Set();
|
|
10625
|
+
ma(document, t), t.forEach((t) => t.postMessage(e, "*"));
|
|
10583
10626
|
}
|
|
10584
10627
|
//#endregion
|
|
10585
10628
|
//#region src/components/pattern-tracker/PatternTrackerSubscriptionModal.vue?vue&type=script&setup=true&lang.ts
|
|
10586
|
-
var
|
|
10629
|
+
var ga = ["aria-label"], _a = /* @__PURE__ */ d({
|
|
10587
10630
|
__name: "PatternTrackerSubscriptionModal",
|
|
10588
10631
|
props: {
|
|
10589
10632
|
open: { type: Boolean },
|
|
@@ -10665,10 +10708,10 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10665
10708
|
};
|
|
10666
10709
|
m.value = !0;
|
|
10667
10710
|
try {
|
|
10668
|
-
let e = await
|
|
10711
|
+
let e = await sa(), t = ca(e);
|
|
10669
10712
|
if (t && t.remaining <= 0) {
|
|
10670
|
-
let t =
|
|
10671
|
-
|
|
10713
|
+
let t = la(e), n = t === "free", r = t === "expert";
|
|
10714
|
+
ve({
|
|
10672
10715
|
title: u(n ? "Pattern.currentPlan" : "Pattern.limitReached"),
|
|
10673
10716
|
description: u(n ? "Pattern.trackerTutorialPlanNoTracking" : r ? "Pattern.limitReachedTrackerDescription" : "Pattern.trackerUpgradeToastDescription"),
|
|
10674
10717
|
variant: "warning",
|
|
@@ -10679,14 +10722,14 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10679
10722
|
});
|
|
10680
10723
|
return;
|
|
10681
10724
|
}
|
|
10682
|
-
await
|
|
10725
|
+
await aa(a), ha(), ve({
|
|
10683
10726
|
title: u("Pattern.patternSubscribed"),
|
|
10684
10727
|
description: u("Pattern.patternSubscribedDesc", { name: d.value }),
|
|
10685
10728
|
variant: "success"
|
|
10686
10729
|
}), l(!1);
|
|
10687
10730
|
} catch (e) {
|
|
10688
|
-
let t =
|
|
10689
|
-
p.value = t,
|
|
10731
|
+
let t = da(e);
|
|
10732
|
+
p.value = t, ve({
|
|
10690
10733
|
title: u("Pattern.patternSubscriptionError"),
|
|
10691
10734
|
description: t,
|
|
10692
10735
|
variant: "error"
|
|
@@ -10715,7 +10758,7 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10715
10758
|
class: g(k(Q)("iccandle-pattern-tracker-modal__content", f.value && "iccandle-pattern-tracker-modal__content--settings")),
|
|
10716
10759
|
style: _({ height: f.value ? "100%" : void 0 }),
|
|
10717
10760
|
onPointerdown: r[1] ||= P(() => {}, ["stop"])
|
|
10718
|
-
}, [f.value ? (x(), i(
|
|
10761
|
+
}, [f.value ? (x(), i(ia, {
|
|
10719
10762
|
key: 1,
|
|
10720
10763
|
form: h,
|
|
10721
10764
|
"on-back": T,
|
|
@@ -10728,18 +10771,18 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10728
10771
|
"on-cancel",
|
|
10729
10772
|
"is-subscribing",
|
|
10730
10773
|
"error-message"
|
|
10731
|
-
])) : (x(), i(
|
|
10774
|
+
])) : (x(), i(kr, {
|
|
10732
10775
|
key: 0,
|
|
10733
10776
|
"pattern-name": d.value,
|
|
10734
10777
|
"on-next": y,
|
|
10735
10778
|
"on-cancel": () => l(!1),
|
|
10736
10779
|
onPatternNameChange: r[0] ||= (e) => d.value = e
|
|
10737
|
-
}, null, 8, ["pattern-name", "on-cancel"]))], 38)], 46,
|
|
10780
|
+
}, null, 8, ["pattern-name", "on-cancel"]))], 38)], 46, ga)) : a("", !0)]));
|
|
10738
10781
|
}
|
|
10739
|
-
}),
|
|
10782
|
+
}), va = { class: "iccandle-event-info-modal__header" }, ya = { class: "iccandle-event-info-modal__title-row" }, ba = { class: "iccandle-event-info-modal__title" }, xa = ["aria-label"], Sa = {
|
|
10740
10783
|
key: 0,
|
|
10741
10784
|
class: "iccandle-event-info-modal__date"
|
|
10742
|
-
},
|
|
10785
|
+
}, Ca = { class: "iccandle-event-info-modal__rows" }, wa = { class: "iccandle-event-info-modal__row" }, Ta = { class: "iccandle-event-info-modal__label" }, Ea = { class: "iccandle-event-info-modal__value" }, Da = { class: "iccandle-event-info-modal__row" }, Oa = { class: "iccandle-event-info-modal__label" }, ka = { class: "iccandle-event-info-modal__value" }, Aa = { class: "iccandle-event-info-modal__row" }, ja = { class: "iccandle-event-info-modal__label" }, Ma = { class: "iccandle-event-info-modal__value" }, Na = { class: "iccandle-event-info-modal__row" }, Pa = { class: "iccandle-event-info-modal__label" }, Fa = { class: "iccandle-event-info-modal__actions" }, Ia = /* @__PURE__ */ d({
|
|
10743
10786
|
__name: "EventInfoModal",
|
|
10744
10787
|
props: {
|
|
10745
10788
|
event: {},
|
|
@@ -10796,21 +10839,21 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10796
10839
|
onClick: n[0] ||= P(() => {}, ["stop"]),
|
|
10797
10840
|
onKeydown: h
|
|
10798
10841
|
}, [
|
|
10799
|
-
s("div",
|
|
10842
|
+
s("div", va, [s("div", ya, [u(rn, { name: e.event.default_symbol || e.symbol || "" }, null, 8, ["name"]), s("h3", ba, O(e.event.event_name), 1)]), s("button", {
|
|
10800
10843
|
ref_key: "closeButtonRef",
|
|
10801
10844
|
ref: l,
|
|
10802
10845
|
type: "button",
|
|
10803
10846
|
class: "iccandle-event-info-modal__close",
|
|
10804
10847
|
"aria-label": k(i)("Common.close"),
|
|
10805
10848
|
onClick: p
|
|
10806
|
-
}, [u(
|
|
10807
|
-
s("div", null, [e.event.timestamp ? (x(), o("p",
|
|
10808
|
-
s("div",
|
|
10809
|
-
s("div",
|
|
10810
|
-
s("div",
|
|
10811
|
-
s("div",
|
|
10849
|
+
}, [u(St, { size: 20 })], 8, xa)]),
|
|
10850
|
+
s("div", null, [e.event.timestamp ? (x(), o("p", Sa, O(f(e.event.timestamp, k(c))), 1)) : a("", !0), s("div", Ca, [
|
|
10851
|
+
s("div", wa, [s("span", Ta, O(k(i)("Common.actual")) + ": ", 1), s("span", Ea, O(e.event.actual || "-"), 1)]),
|
|
10852
|
+
s("div", Da, [s("span", Oa, O(k(i)("News.previousActual")) + ": ", 1), s("span", ka, O(e.event.previous || "-"), 1)]),
|
|
10853
|
+
s("div", Aa, [s("span", ja, O(k(i)("News.currentForecast")) + ": ", 1), s("span", Ma, O(e.event.forecast || "-"), 1)]),
|
|
10854
|
+
s("div", Na, [s("span", Pa, O(k(i)("News.previousForecast")) + ": ", 1), n[1] ||= s("span", { class: "iccandle-event-info-modal__value" }, "-", -1)])
|
|
10812
10855
|
])]),
|
|
10813
|
-
s("div",
|
|
10856
|
+
s("div", Fa, [s("button", {
|
|
10814
10857
|
type: "button",
|
|
10815
10858
|
class: "iccandle-event-info-modal__btn iccandle-event-info-modal__btn--outline",
|
|
10816
10859
|
onClick: p
|
|
@@ -10821,7 +10864,7 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10821
10864
|
}, O(k(i)("News.goToEventDetail")), 1)])
|
|
10822
10865
|
], 36)]));
|
|
10823
10866
|
}
|
|
10824
|
-
}),
|
|
10867
|
+
}), La = ["width", "height"], Ra = ["stroke"], za = ["stroke"], Ba = ["stroke"], Va = /* @__PURE__ */ d({
|
|
10825
10868
|
__name: "AlertTriangleIcon",
|
|
10826
10869
|
props: {
|
|
10827
10870
|
size: { default: 24 },
|
|
@@ -10843,28 +10886,28 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10843
10886
|
"stroke-width": "2",
|
|
10844
10887
|
"stroke-linecap": "round",
|
|
10845
10888
|
"stroke-linejoin": "round"
|
|
10846
|
-
}, null, 8,
|
|
10889
|
+
}, null, 8, Ra),
|
|
10847
10890
|
s("path", {
|
|
10848
10891
|
d: "M12 9v4",
|
|
10849
10892
|
stroke: e.color,
|
|
10850
10893
|
"stroke-width": "2",
|
|
10851
10894
|
"stroke-linecap": "round",
|
|
10852
10895
|
"stroke-linejoin": "round"
|
|
10853
|
-
}, null, 8,
|
|
10896
|
+
}, null, 8, za),
|
|
10854
10897
|
s("path", {
|
|
10855
10898
|
d: "M12 17h.01",
|
|
10856
10899
|
stroke: e.color,
|
|
10857
10900
|
"stroke-width": "2",
|
|
10858
10901
|
"stroke-linecap": "round",
|
|
10859
10902
|
"stroke-linejoin": "round"
|
|
10860
|
-
}, null, 8,
|
|
10861
|
-
], 10,
|
|
10903
|
+
}, null, 8, Ba)
|
|
10904
|
+
], 10, La));
|
|
10862
10905
|
}
|
|
10863
|
-
}),
|
|
10906
|
+
}), Ha = [
|
|
10864
10907
|
"width",
|
|
10865
10908
|
"height",
|
|
10866
10909
|
"stroke"
|
|
10867
|
-
],
|
|
10910
|
+
], Ua = /* @__PURE__ */ d({
|
|
10868
10911
|
__name: "CheckCircleIcon",
|
|
10869
10912
|
props: {
|
|
10870
10913
|
size: { default: 20 },
|
|
@@ -10887,13 +10930,13 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10887
10930
|
cx: "12",
|
|
10888
10931
|
cy: "12",
|
|
10889
10932
|
r: "10"
|
|
10890
|
-
}, null, -1), s("path", { d: "m9 12 2 2 4-4" }, null, -1)]], 10,
|
|
10933
|
+
}, null, -1), s("path", { d: "m9 12 2 2 4-4" }, null, -1)]], 10, Ha));
|
|
10891
10934
|
}
|
|
10892
|
-
}),
|
|
10935
|
+
}), Wa = [
|
|
10893
10936
|
"width",
|
|
10894
10937
|
"height",
|
|
10895
10938
|
"stroke"
|
|
10896
|
-
],
|
|
10939
|
+
], Ga = /* @__PURE__ */ d({
|
|
10897
10940
|
__name: "AlertCircleIcon",
|
|
10898
10941
|
props: {
|
|
10899
10942
|
size: { default: 20 },
|
|
@@ -10930,40 +10973,40 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10930
10973
|
y1: "16",
|
|
10931
10974
|
y2: "16"
|
|
10932
10975
|
}, null, -1)
|
|
10933
|
-
]], 10,
|
|
10976
|
+
]], 10, Wa));
|
|
10934
10977
|
}
|
|
10935
|
-
}),
|
|
10978
|
+
}), Ka = {
|
|
10936
10979
|
class: "custom-toast",
|
|
10937
10980
|
role: "alert"
|
|
10938
|
-
},
|
|
10981
|
+
}, qa = { class: "custom-toast__icon-wrap" }, Ja = { class: "custom-toast__content" }, Ya = { class: "custom-toast__header" }, Xa = { class: "custom-toast__title" }, Za = {
|
|
10939
10982
|
key: 0,
|
|
10940
10983
|
class: "custom-toast__description"
|
|
10941
|
-
},
|
|
10984
|
+
}, Qa = {
|
|
10942
10985
|
key: 1,
|
|
10943
10986
|
class: "custom-toast__actions"
|
|
10944
|
-
},
|
|
10987
|
+
}, $a = /* @__PURE__ */ d({
|
|
10945
10988
|
__name: "CustomToast",
|
|
10946
10989
|
props: { toast: {} },
|
|
10947
10990
|
setup(e) {
|
|
10948
10991
|
let t = e, n = r(() => {
|
|
10949
10992
|
switch (t.toast.variant) {
|
|
10950
|
-
case "warning": return
|
|
10951
|
-
case "success": return
|
|
10952
|
-
case "error": return
|
|
10953
|
-
default: return
|
|
10993
|
+
case "warning": return Va;
|
|
10994
|
+
case "success": return Ua;
|
|
10995
|
+
case "error": return Ga;
|
|
10996
|
+
default: return cr;
|
|
10954
10997
|
}
|
|
10955
10998
|
});
|
|
10956
10999
|
function c() {
|
|
10957
|
-
t.toast.action?.onClick(),
|
|
11000
|
+
t.toast.action?.onClick(), _e(t.toast.id);
|
|
10958
11001
|
}
|
|
10959
11002
|
function l() {
|
|
10960
11003
|
let e = t.toast.dismiss;
|
|
10961
|
-
e && typeof e == "object" && e.onClick?.(),
|
|
11004
|
+
e && typeof e == "object" && e.onClick?.(), _e(t.toast.id);
|
|
10962
11005
|
}
|
|
10963
|
-
return (t, r) => (x(), o("div",
|
|
10964
|
-
s("div",
|
|
10965
|
-
e.toast.description ? (x(), o("p",
|
|
10966
|
-
e.toast.action || e.toast.dismiss ? (x(), o("div",
|
|
11006
|
+
return (t, r) => (x(), o("div", Ka, [s("div", qa, [(x(), i(E(n.value), { class: "custom-toast__icon" }))]), s("div", Ja, [
|
|
11007
|
+
s("div", Ya, [s("p", Xa, O(e.toast.title), 1)]),
|
|
11008
|
+
e.toast.description ? (x(), o("p", Za, O(e.toast.description), 1)) : a("", !0),
|
|
11009
|
+
e.toast.action || e.toast.dismiss ? (x(), o("div", Qa, [e.toast.action ? (x(), o("button", {
|
|
10967
11010
|
key: 0,
|
|
10968
11011
|
type: "button",
|
|
10969
11012
|
class: "custom-toast__button custom-toast__button--action",
|
|
@@ -10976,7 +11019,7 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10976
11019
|
}, O(e.toast.dismiss.label ?? "Dismiss"), 1)) : a("", !0)])) : a("", !0)
|
|
10977
11020
|
])]));
|
|
10978
11021
|
}
|
|
10979
|
-
}),
|
|
11022
|
+
}), eo = /*#__PURE__*/ ((e, t) => {
|
|
10980
11023
|
let n = e.__vccOpts || e;
|
|
10981
11024
|
for (let [e, r] of t) n[e] = r;
|
|
10982
11025
|
return n;
|
|
@@ -10998,16 +11041,16 @@ var aa = ["aria-label"], oa = /* @__PURE__ */ d({
|
|
|
10998
11041
|
tag: "div",
|
|
10999
11042
|
class: "iccandle-toast-list"
|
|
11000
11043
|
}, {
|
|
11001
|
-
default: N(() => [(x(!0), o(e, null, T(k(
|
|
11044
|
+
default: N(() => [(x(!0), o(e, null, T(k(ge), (e) => (x(), i($a, {
|
|
11002
11045
|
key: e.id,
|
|
11003
11046
|
toast: e
|
|
11004
11047
|
}, null, 8, ["toast"]))), 128))]),
|
|
11005
11048
|
_: 1
|
|
11006
11049
|
})], 6));
|
|
11007
11050
|
}
|
|
11008
|
-
}), [["__scopeId", "data-v-1549ae5b"]]),
|
|
11009
|
-
function
|
|
11010
|
-
let t = e ||
|
|
11051
|
+
}), [["__scopeId", "data-v-1549ae5b"]]), to = "#00dfb9";
|
|
11052
|
+
function no(e) {
|
|
11053
|
+
let t = e || to;
|
|
11011
11054
|
return {
|
|
11012
11055
|
shape: "date_range",
|
|
11013
11056
|
overrides: {
|
|
@@ -11024,7 +11067,7 @@ function Ga(e) {
|
|
|
11024
11067
|
}
|
|
11025
11068
|
};
|
|
11026
11069
|
}
|
|
11027
|
-
var
|
|
11070
|
+
var ro = "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n \n \n \n \n ", io = {
|
|
11028
11071
|
symbol: "XAU_USD",
|
|
11029
11072
|
interval: "60",
|
|
11030
11073
|
library_path: "/charting_library/",
|
|
@@ -11034,7 +11077,7 @@ var Ka = "\n \n \n
|
|
|
11034
11077
|
user_id: "public_user_id",
|
|
11035
11078
|
fullscreen: !1,
|
|
11036
11079
|
autosize: !0
|
|
11037
|
-
},
|
|
11080
|
+
}, ao = {
|
|
11038
11081
|
D: "1440",
|
|
11039
11082
|
H4: "240",
|
|
11040
11083
|
H2: "120",
|
|
@@ -11046,7 +11089,7 @@ var Ka = "\n \n \n
|
|
|
11046
11089
|
};
|
|
11047
11090
|
//#endregion
|
|
11048
11091
|
//#region src/composables/use-selected-news-window-message.ts
|
|
11049
|
-
function
|
|
11092
|
+
function oo(e, t) {
|
|
11050
11093
|
let n = async ({ origin: n, data: r }) => {
|
|
11051
11094
|
if (n !== "https://embed-iccandle-app.iccandle.ai" || typeof r != "string") return;
|
|
11052
11095
|
let i;
|
|
@@ -11088,19 +11131,19 @@ function Ya(e, t) {
|
|
|
11088
11131
|
}
|
|
11089
11132
|
//#endregion
|
|
11090
11133
|
//#region src/lib/debounce.ts
|
|
11091
|
-
function
|
|
11134
|
+
function so(e, t, n = 1) {
|
|
11092
11135
|
if (t === 0 || !isFinite(t)) return n;
|
|
11093
11136
|
let r = e / t;
|
|
11094
11137
|
return isFinite(r) ? r : n;
|
|
11095
11138
|
}
|
|
11096
|
-
function
|
|
11139
|
+
function co(e) {
|
|
11097
11140
|
if (e.length === 0) return 0;
|
|
11098
11141
|
let t = [...e].sort((e, t) => e - t), n = Math.floor(t.length / 2);
|
|
11099
11142
|
return t.length % 2 == 0 ? (t[n - 1] + t[n]) / 2 : t[n];
|
|
11100
11143
|
}
|
|
11101
|
-
function
|
|
11144
|
+
function lo(e, t, n = []) {
|
|
11102
11145
|
if (e.length === 0) return [];
|
|
11103
|
-
let r = n.map((e) => Math.abs(e.c - e.o)), i =
|
|
11146
|
+
let r = n.map((e) => Math.abs(e.c - e.o)), i = co(e.map((e) => Math.abs(e.c - e.o))), a = so(co(r), i), o = e[0].o, s = t.c;
|
|
11104
11147
|
return e.map((e) => {
|
|
11105
11148
|
let t = (e.o - o) * a + s, n = (e.h - o) * a + s, r = (e.l - o) * a + s, i = (e.c - o) * a + s;
|
|
11106
11149
|
return {
|
|
@@ -11113,7 +11156,7 @@ function Qa(e, t, n = []) {
|
|
|
11113
11156
|
}
|
|
11114
11157
|
//#endregion
|
|
11115
11158
|
//#region src/lib/session-time.ts
|
|
11116
|
-
var
|
|
11159
|
+
var uo = "America/New_York", fo = 17, po = {
|
|
11117
11160
|
Sun: 0,
|
|
11118
11161
|
Mon: 1,
|
|
11119
11162
|
Tue: 2,
|
|
@@ -11121,49 +11164,82 @@ var $a = "America/New_York", eo = 17, to = {
|
|
|
11121
11164
|
Thu: 4,
|
|
11122
11165
|
Fri: 5,
|
|
11123
11166
|
Sat: 6
|
|
11124
|
-
},
|
|
11125
|
-
timeZone:
|
|
11167
|
+
}, mo = new Intl.DateTimeFormat("en-US", {
|
|
11168
|
+
timeZone: uo,
|
|
11126
11169
|
weekday: "short",
|
|
11127
11170
|
hour: "numeric",
|
|
11128
11171
|
minute: "numeric",
|
|
11129
11172
|
hourCycle: "h23"
|
|
11130
|
-
}),
|
|
11131
|
-
let t =
|
|
11173
|
+
}), ho = (e) => {
|
|
11174
|
+
let t = mo.formatToParts(new Date(e)), n = t.find((e) => e.type === "weekday")?.value ?? "Sun", r = Number(t.find((e) => e.type === "hour")?.value), i = r === 24 ? 0 : r;
|
|
11132
11175
|
return {
|
|
11133
|
-
day:
|
|
11176
|
+
day: po[n] ?? 0,
|
|
11134
11177
|
hour: i
|
|
11135
11178
|
};
|
|
11136
|
-
},
|
|
11137
|
-
let { day: t, hour: n } =
|
|
11138
|
-
return t === 6 ? !1 : t === 0 ? n >=
|
|
11139
|
-
},
|
|
11179
|
+
}, go = (e) => {
|
|
11180
|
+
let { day: t, hour: n } = ho(e);
|
|
11181
|
+
return t === 6 ? !1 : t === 0 ? n >= fo : t !== 5 || n < fo;
|
|
11182
|
+
}, _o = (e, t) => {
|
|
11140
11183
|
let n = e, r = Math.max(1, Math.ceil(11520 * 60 * 1e3 / t));
|
|
11141
|
-
for (let e = 0; e < r && !
|
|
11184
|
+
for (let e = 0; e < r && !go(n); e++) n += t;
|
|
11185
|
+
return n;
|
|
11186
|
+
}, vo = 1440 * 60 * 1e3, yo = 7 * vo, bo = (e) => e > 1e11 ? e : e * 1e3, xo = (e, t) => {
|
|
11187
|
+
let n = e + vo;
|
|
11188
|
+
for (; t && new Date(n).getUTCDay() % 6 == 0;) n += vo;
|
|
11189
|
+
return n;
|
|
11190
|
+
}, So = (e) => {
|
|
11191
|
+
let t = new Date(e), n = t.getUTCDate(), r = t.getUTCHours(), i = t.getUTCMinutes(), a = t.getUTCSeconds(), o = t.getUTCMilliseconds(), s = t.getUTCFullYear(), c = t.getUTCMonth() + 1, l = new Date(Date.UTC(s, c + 1, 0)).getUTCDate();
|
|
11192
|
+
return Date.UTC(s, c, Math.min(n, l), r, i, a, o);
|
|
11193
|
+
}, Co = (e, t) => {
|
|
11194
|
+
let n = [], r = bo(e);
|
|
11195
|
+
for (let e = 0; e < t; e++) r += yo, n.push(r);
|
|
11142
11196
|
return n;
|
|
11143
|
-
},
|
|
11144
|
-
let
|
|
11145
|
-
for (let e = 0; e <
|
|
11197
|
+
}, wo = (e, t) => {
|
|
11198
|
+
let n = [], r = bo(e);
|
|
11199
|
+
for (let e = 0; e < t; e++) r = So(r), n.push(r);
|
|
11200
|
+
return n;
|
|
11201
|
+
}, To = (e, t, n, r) => {
|
|
11202
|
+
let i = r !== "24x7", a = [], o = bo(e);
|
|
11203
|
+
for (let e = 0; e < n; e++) o = xo(o, i), a.push(o);
|
|
11204
|
+
return a;
|
|
11205
|
+
}, Eo = (e, t, n, r) => {
|
|
11206
|
+
let i = r !== "24x7", a = _t(t, n), o = 0, s = _t(e, n);
|
|
11207
|
+
for (; s < a;) s = xo(s, i), s <= a && o++;
|
|
11208
|
+
return o;
|
|
11209
|
+
}, Do = (e, t) => {
|
|
11210
|
+
let n = bo(t), r = 0, i = bo(e);
|
|
11211
|
+
for (; i < n;) i = So(i), i <= n && r++;
|
|
11212
|
+
return r;
|
|
11213
|
+
}, Oo = (e, t, n) => {
|
|
11214
|
+
let r = K(t) * 1e3, i = [], a = e;
|
|
11215
|
+
for (let e = 0; e < n; e++) a += r, go(a) || (a = _o(a, r)), i.push(a);
|
|
11146
11216
|
return i;
|
|
11147
|
-
},
|
|
11217
|
+
}, ko = (e, t, n, r) => {
|
|
11148
11218
|
if (n <= 0) return [];
|
|
11219
|
+
if (dt(t)) return To(e, t, n, r);
|
|
11220
|
+
if (ft(t)) return Co(e, n);
|
|
11221
|
+
if (pt(t)) return wo(e, n);
|
|
11149
11222
|
if (r === "24x7") {
|
|
11150
|
-
let r =
|
|
11223
|
+
let r = K(t) * 1e3;
|
|
11151
11224
|
return Array.from({ length: n }, (t, n) => e + (n + 1) * r);
|
|
11152
11225
|
}
|
|
11153
|
-
if (r === "1700-1700") return
|
|
11154
|
-
let i =
|
|
11226
|
+
if (r === "1700-1700") return Oo(e, t, n);
|
|
11227
|
+
let i = K(t) * 1e3;
|
|
11155
11228
|
return Array.from({ length: n }, (t, n) => e + (n + 1) * i);
|
|
11156
|
-
},
|
|
11229
|
+
}, Ao = (e, t, n, r) => {
|
|
11230
|
+
if (dt(n)) return Eo(e, t, n, r);
|
|
11231
|
+
if (ft(n)) return Math.max(0, Math.floor((bo(t) - bo(e)) / yo));
|
|
11232
|
+
if (pt(n)) return Do(e, t);
|
|
11157
11233
|
if (r === "24x7") {
|
|
11158
|
-
let r =
|
|
11234
|
+
let r = K(n) * 1e3;
|
|
11159
11235
|
return Math.max(0, Math.floor((t - e) / r));
|
|
11160
11236
|
}
|
|
11161
11237
|
if (r === "1700-1700") {
|
|
11162
|
-
let r =
|
|
11163
|
-
for (; a < t;) a += r,
|
|
11238
|
+
let r = K(n) * 1e3, i = 0, a = e;
|
|
11239
|
+
for (; a < t;) a += r, go(a) || (a = _o(a, r)), a <= t && i++;
|
|
11164
11240
|
return i;
|
|
11165
11241
|
}
|
|
11166
|
-
let i =
|
|
11242
|
+
let i = K(n) * 1e3;
|
|
11167
11243
|
return Math.max(0, Math.floor((t - e) / i));
|
|
11168
11244
|
}, $ = C({
|
|
11169
11245
|
activeTab: "patterns",
|
|
@@ -11190,89 +11266,92 @@ var $a = "America/New_York", eo = 17, to = {
|
|
|
11190
11266
|
this.gapCount = e;
|
|
11191
11267
|
}
|
|
11192
11268
|
});
|
|
11193
|
-
function
|
|
11269
|
+
function jo() {
|
|
11194
11270
|
return $;
|
|
11195
11271
|
}
|
|
11196
11272
|
//#endregion
|
|
11197
11273
|
//#region src/lib/play-chart.ts
|
|
11198
|
-
var
|
|
11199
|
-
function
|
|
11200
|
-
Number.isFinite(e) && e >
|
|
11274
|
+
var Mo = null, No = !1, Po = !1, Fo = 0, Io = !1;
|
|
11275
|
+
function Lo(e) {
|
|
11276
|
+
Number.isFinite(e) && e > Fo && (Fo = e);
|
|
11277
|
+
}
|
|
11278
|
+
function Ro(e) {
|
|
11279
|
+
Number.isFinite(e) && e > 0 && (Fo = e);
|
|
11201
11280
|
}
|
|
11202
|
-
function
|
|
11203
|
-
|
|
11281
|
+
function zo() {
|
|
11282
|
+
Fo = 0;
|
|
11204
11283
|
}
|
|
11205
|
-
function
|
|
11206
|
-
return
|
|
11284
|
+
function Bo() {
|
|
11285
|
+
return Io;
|
|
11207
11286
|
}
|
|
11208
|
-
function
|
|
11209
|
-
|
|
11287
|
+
function Vo() {
|
|
11288
|
+
Io = !1;
|
|
11210
11289
|
}
|
|
11211
|
-
function
|
|
11290
|
+
function Ho(e) {
|
|
11212
11291
|
return typeof e == "function" && typeof e.onReady != "function";
|
|
11213
11292
|
}
|
|
11214
|
-
function
|
|
11293
|
+
function Uo(e) {
|
|
11215
11294
|
if (typeof e?.onReady != "function") throw Error("withPlayChart: expected a TradingView datafeed object with onReady(). If you use a factory, call it first: withPlayChart(yourDataFeed(...)) or pass factory args: withPlayChart(yourDataFeed, arg1, arg2).");
|
|
11216
11295
|
}
|
|
11217
|
-
function
|
|
11218
|
-
return
|
|
11219
|
-
t?.time &&
|
|
11296
|
+
function Wo(e) {
|
|
11297
|
+
return Mo = e, (t) => {
|
|
11298
|
+
t?.time && Lo(t.time), !(!No && Po) && e(t);
|
|
11220
11299
|
};
|
|
11221
11300
|
}
|
|
11222
|
-
function
|
|
11223
|
-
|
|
11301
|
+
function Go(e) {
|
|
11302
|
+
Uo(e);
|
|
11224
11303
|
let t = e.getBars?.bind(e), n = e.subscribeBars?.bind(e);
|
|
11225
11304
|
return !n && !t ? e : Object.assign(Object.create(Object.getPrototypeOf(e)), e, {
|
|
11226
11305
|
getBars(e, n, r, i, a) {
|
|
11227
11306
|
if (t) return t(e, n, r, (e, t) => {
|
|
11228
11307
|
let n = e?.[e.length - 1];
|
|
11229
|
-
n?.time &&
|
|
11308
|
+
n?.time && Lo(n.time), i(e, t);
|
|
11230
11309
|
}, a);
|
|
11231
11310
|
},
|
|
11232
11311
|
subscribeBars(e, t, r, i, a) {
|
|
11233
|
-
if (n) return n(e, t,
|
|
11312
|
+
if (n) return n(e, t, Wo(r), i, a);
|
|
11234
11313
|
}
|
|
11235
11314
|
});
|
|
11236
11315
|
}
|
|
11237
|
-
function
|
|
11238
|
-
if (
|
|
11239
|
-
if (t.length > 0) return
|
|
11316
|
+
function Ko(e, ...t) {
|
|
11317
|
+
if (Ho(e)) {
|
|
11318
|
+
if (t.length > 0) return Go(e(...t));
|
|
11240
11319
|
throw Error("withPlayChart: received a datafeed factory. Call it before passing to TradingView: withPlayChart(yourDataFeed(...)) or pass factory arguments: withPlayChart(yourDataFeed, arg1, arg2).");
|
|
11241
11320
|
}
|
|
11242
|
-
return
|
|
11321
|
+
return Go(e);
|
|
11243
11322
|
}
|
|
11244
|
-
function
|
|
11245
|
-
|
|
11323
|
+
function qo(e) {
|
|
11324
|
+
Po = e;
|
|
11246
11325
|
}
|
|
11247
|
-
function
|
|
11248
|
-
if (!
|
|
11249
|
-
if (
|
|
11250
|
-
|
|
11326
|
+
function Jo(e) {
|
|
11327
|
+
if (!Mo) return !1;
|
|
11328
|
+
if (Fo > 0 && e.time < Fo) return !0;
|
|
11329
|
+
No = !0;
|
|
11251
11330
|
try {
|
|
11252
|
-
|
|
11331
|
+
Lo(e.time), Io = !0, Mo(e);
|
|
11253
11332
|
} finally {
|
|
11254
|
-
|
|
11333
|
+
No = !1;
|
|
11255
11334
|
}
|
|
11256
11335
|
return !0;
|
|
11257
11336
|
}
|
|
11258
11337
|
//#endregion
|
|
11259
11338
|
//#region src/lib/highlight-bars-store.ts
|
|
11260
|
-
var
|
|
11261
|
-
|
|
11262
|
-
},
|
|
11263
|
-
let n =
|
|
11264
|
-
return t.find((e) =>
|
|
11265
|
-
},
|
|
11266
|
-
id:
|
|
11339
|
+
var Yo = [], Xo = null, Zo = (e, t) => {
|
|
11340
|
+
Yo = e, Xo = t ?? null;
|
|
11341
|
+
}, Qo = () => Yo, $o = (e) => e > 1e11 ? e : e * 1e3, es = (e, t) => {
|
|
11342
|
+
let n = $o(e), r = t.find((e) => $o(e.time) === n);
|
|
11343
|
+
return r || !Xo || !mt(Xo) ? r : t.find((e) => gt($o(e.time), n, Xo));
|
|
11344
|
+
}, ts = "Generated Candles - By iC Candle", ns = "Generated Candles Background - By iC Candle", rs = "revealed_count", is = {
|
|
11345
|
+
id: rs,
|
|
11267
11346
|
name: "Revealed Count",
|
|
11268
11347
|
type: "integer",
|
|
11269
11348
|
defval: 0,
|
|
11270
11349
|
isHidden: !0,
|
|
11271
11350
|
min: 0
|
|
11272
|
-
},
|
|
11351
|
+
}, as = (e) => {
|
|
11273
11352
|
let t = Math.max(0, Number(e(0)) || 0);
|
|
11274
|
-
return
|
|
11275
|
-
},
|
|
11353
|
+
return Qo().slice(0, t);
|
|
11354
|
+
}, os = (e, t) => !!es(e, t), ss = ({ id: e, description: t, shortDescription: n, isHiddenStudy: r, bodyColors: i, wickColors: a, borderColors: o }) => ({
|
|
11276
11355
|
_metainfoVersion: 51,
|
|
11277
11356
|
id: e,
|
|
11278
11357
|
description: t,
|
|
@@ -11285,7 +11364,7 @@ var Do = [], Oo = (e) => {
|
|
|
11285
11364
|
type: "price",
|
|
11286
11365
|
precision: 2
|
|
11287
11366
|
},
|
|
11288
|
-
inputs: [
|
|
11367
|
+
inputs: [is],
|
|
11289
11368
|
palettes: {
|
|
11290
11369
|
palette_bar: {
|
|
11291
11370
|
colors: {
|
|
@@ -11413,9 +11492,9 @@ var Do = [], Oo = (e) => {
|
|
|
11413
11492
|
} }
|
|
11414
11493
|
},
|
|
11415
11494
|
precision: 2,
|
|
11416
|
-
inputs: { [
|
|
11495
|
+
inputs: { [rs]: 0 }
|
|
11417
11496
|
}
|
|
11418
|
-
}),
|
|
11497
|
+
}), cs = 0, ls = (e = "light") => re[e], us = [
|
|
11419
11498
|
NaN,
|
|
11420
11499
|
NaN,
|
|
11421
11500
|
NaN,
|
|
@@ -11423,32 +11502,32 @@ var Do = [], Oo = (e) => {
|
|
|
11423
11502
|
NaN,
|
|
11424
11503
|
NaN,
|
|
11425
11504
|
NaN
|
|
11426
|
-
],
|
|
11505
|
+
], ds = (e) => function() {
|
|
11427
11506
|
this.init = function(e) {
|
|
11428
11507
|
this._context = e;
|
|
11429
11508
|
}, this.main = function(t, n) {
|
|
11430
11509
|
this._context = t;
|
|
11431
|
-
let r = t.symbol.time, i =
|
|
11432
|
-
return !Number.isFinite(r) || !i.length || !
|
|
11510
|
+
let r = t.symbol.time, i = as(n);
|
|
11511
|
+
return !Number.isFinite(r) || !i.length || !os(r, i) ? [...us] : e(t, i);
|
|
11433
11512
|
};
|
|
11434
|
-
},
|
|
11435
|
-
let t =
|
|
11436
|
-
name:
|
|
11513
|
+
}, fs = (e = "light") => {
|
|
11514
|
+
let t = ls(e), n = {
|
|
11515
|
+
name: ns,
|
|
11437
11516
|
metainfo: {
|
|
11438
11517
|
_metainfoVersion: 51,
|
|
11439
11518
|
id: "Generated Candles Background - By iC Candle@tv-basicstudies-1",
|
|
11440
|
-
description:
|
|
11519
|
+
description: ns,
|
|
11441
11520
|
shortDescription: "Generated Candles Background",
|
|
11442
11521
|
isCustomIndicator: !0,
|
|
11443
11522
|
is_hidden_study: !0,
|
|
11444
11523
|
is_price_study: !0,
|
|
11445
11524
|
linkedToSeries: !0,
|
|
11446
11525
|
format: { type: "inherit" },
|
|
11447
|
-
inputs: [
|
|
11526
|
+
inputs: [is],
|
|
11448
11527
|
palettes: {
|
|
11449
11528
|
prediction_bar_palette: {
|
|
11450
11529
|
colors: { 0: { name: "Predicted Bar" } },
|
|
11451
|
-
valToIndex: { [
|
|
11530
|
+
valToIndex: { [cs]: 0 }
|
|
11452
11531
|
},
|
|
11453
11532
|
prediction_mask_palette: {
|
|
11454
11533
|
colors: { 0: { name: "Predicted Mask" } },
|
|
@@ -11526,7 +11605,7 @@ var Do = [], Oo = (e) => {
|
|
|
11526
11605
|
style: 0
|
|
11527
11606
|
} } }
|
|
11528
11607
|
},
|
|
11529
|
-
inputs: { [
|
|
11608
|
+
inputs: { [rs]: 0 }
|
|
11530
11609
|
}
|
|
11531
11610
|
},
|
|
11532
11611
|
constructor: function() {
|
|
@@ -11534,8 +11613,8 @@ var Do = [], Oo = (e) => {
|
|
|
11534
11613
|
this._context = e;
|
|
11535
11614
|
}, this.main = function(e, t) {
|
|
11536
11615
|
this._context = e;
|
|
11537
|
-
let n = e.symbol.time, r =
|
|
11538
|
-
if (!Number.isFinite(n) || !
|
|
11616
|
+
let n = e.symbol.time, r = as(t);
|
|
11617
|
+
if (!Number.isFinite(n) || !os(n, r)) return [
|
|
11539
11618
|
NaN,
|
|
11540
11619
|
NaN,
|
|
11541
11620
|
NaN,
|
|
@@ -11547,7 +11626,7 @@ var Do = [], Oo = (e) => {
|
|
|
11547
11626
|
];
|
|
11548
11627
|
let { open: i, high: a, low: o, close: s } = e.symbol, c = Math.max(a - o, Math.abs(s - i), Math.abs(s) * 1e-4, .01);
|
|
11549
11628
|
return [
|
|
11550
|
-
|
|
11629
|
+
cs,
|
|
11551
11630
|
i,
|
|
11552
11631
|
a + c,
|
|
11553
11632
|
o - c,
|
|
@@ -11559,19 +11638,19 @@ var Do = [], Oo = (e) => {
|
|
|
11559
11638
|
};
|
|
11560
11639
|
}
|
|
11561
11640
|
}, r = {
|
|
11562
|
-
name:
|
|
11563
|
-
metainfo:
|
|
11641
|
+
name: ts,
|
|
11642
|
+
metainfo: ss({
|
|
11564
11643
|
id: "Generated Candles - By iC Candle@tv-basicstudies-1",
|
|
11565
|
-
description:
|
|
11644
|
+
description: ts,
|
|
11566
11645
|
shortDescription: "Generated Candles",
|
|
11567
11646
|
isHiddenStudy: !1,
|
|
11568
11647
|
bodyColors: ["#00dfb9", "#ffb84d"],
|
|
11569
11648
|
wickColors: ["#00dfb9", "#ffb84d"],
|
|
11570
11649
|
borderColors: ["#00dfb9", "#ffb84d"]
|
|
11571
11650
|
}),
|
|
11572
|
-
constructor:
|
|
11573
|
-
let n =
|
|
11574
|
-
if (!n) return [...
|
|
11651
|
+
constructor: ds((e, t) => {
|
|
11652
|
+
let n = es(e.symbol.time, t);
|
|
11653
|
+
if (!n) return [...us];
|
|
11575
11654
|
let r = +(n.close < n.open);
|
|
11576
11655
|
return [
|
|
11577
11656
|
n.open,
|
|
@@ -11585,35 +11664,35 @@ var Do = [], Oo = (e) => {
|
|
|
11585
11664
|
})
|
|
11586
11665
|
};
|
|
11587
11666
|
return Promise.resolve([n, r]);
|
|
11588
|
-
},
|
|
11667
|
+
}, ps = (e, t) => {
|
|
11589
11668
|
if (t) try {
|
|
11590
11669
|
e.removeEntity(t);
|
|
11591
11670
|
} catch {}
|
|
11592
|
-
},
|
|
11671
|
+
}, ms = (e) => ({
|
|
11593
11672
|
"ohlcPlots.mask_candle.color": e,
|
|
11594
11673
|
"ohlcPlots.mask_candle.borderColor": e,
|
|
11595
11674
|
"ohlcPlots.mask_candle.wickColor": e,
|
|
11596
11675
|
"palettes.prediction_bar_palette.colors.0.color": e,
|
|
11597
11676
|
"palettes.prediction_mask_palette.colors.0.color": e
|
|
11598
|
-
}),
|
|
11677
|
+
}), hs = (e, t) => {
|
|
11599
11678
|
try {
|
|
11600
11679
|
e.getSeries().sendToBack();
|
|
11601
11680
|
} catch {}
|
|
11602
11681
|
let n = t.generatedCandlesStudyIdRef.current;
|
|
11603
11682
|
n && e.bringToFront([n]);
|
|
11604
|
-
},
|
|
11683
|
+
}, gs = (e) => {
|
|
11605
11684
|
try {
|
|
11606
11685
|
e.getSeries().bringToFront();
|
|
11607
11686
|
} catch {}
|
|
11608
|
-
},
|
|
11609
|
-
|
|
11610
|
-
let r = await e.createStudy(
|
|
11687
|
+
}, _s = async (e, t, n) => {
|
|
11688
|
+
ps(e, t.generatedCandlesStudyIdRef.current), ps(e, t.generatedCandlesBackgroundStudyIdRef.current), t.generatedCandlesStudyIdRef.current = null, t.generatedCandlesBackgroundStudyIdRef.current = null;
|
|
11689
|
+
let r = await e.createStudy(ns, !0, !0, void 0, ms(n));
|
|
11611
11690
|
r && (t.generatedCandlesBackgroundStudyIdRef.current = r);
|
|
11612
|
-
let i = await e.createStudy(
|
|
11613
|
-
i && (t.generatedCandlesStudyIdRef.current = i),
|
|
11614
|
-
},
|
|
11691
|
+
let i = await e.createStudy(ts, !0, !0);
|
|
11692
|
+
i && (t.generatedCandlesStudyIdRef.current = i), hs(e, t);
|
|
11693
|
+
}, vs = (e, t, n) => {
|
|
11615
11694
|
let r = {
|
|
11616
|
-
id:
|
|
11695
|
+
id: rs,
|
|
11617
11696
|
value: n
|
|
11618
11697
|
};
|
|
11619
11698
|
for (let n of [t.generatedCandlesBackgroundStudyIdRef, t.generatedCandlesStudyIdRef]) if (n.current) try {
|
|
@@ -11622,22 +11701,22 @@ var Do = [], Oo = (e) => {
|
|
|
11622
11701
|
};
|
|
11623
11702
|
//#endregion
|
|
11624
11703
|
//#region src/composables/use-predict-candle.ts
|
|
11625
|
-
function
|
|
11704
|
+
function ys(e, t, n, r, i, a) {
|
|
11626
11705
|
let o = t.highlightBarsRef, s = { current: i.value }, c = { current: null }, l = !1, u, d = () => {
|
|
11627
11706
|
u &&= (clearInterval(u), void 0);
|
|
11628
11707
|
}, f = (n) => {
|
|
11629
11708
|
let r = e.value;
|
|
11630
11709
|
if (r) try {
|
|
11631
|
-
|
|
11710
|
+
vs(r.activeChart(), t, n);
|
|
11632
11711
|
} catch {}
|
|
11633
11712
|
}, p = (t, r, a = []) => {
|
|
11634
11713
|
let o = e.value, s = i.value, c = $.targetCandles;
|
|
11635
11714
|
if (!(!o || !s?.length) && !(!t.length && !a.length) && c.length) try {
|
|
11636
|
-
let e = o.activeChart(), i =
|
|
11637
|
-
if (r > 0 && t.length > 0) l =
|
|
11715
|
+
let e = o.activeChart(), i = G(n.value), s = _t(c[0].timestamp, n.value) / 1e3 - 100 * i, l;
|
|
11716
|
+
if (r > 0 && t.length > 0) l = $o(t[r - 1].time) / 1e3 + 100 / 3 * i;
|
|
11638
11717
|
else {
|
|
11639
11718
|
let e = t[t.length - 1] ?? a[a.length - 1];
|
|
11640
|
-
l = (e ?
|
|
11719
|
+
l = (e ? $o(e.time) : _t(c[c.length - 1].timestamp, n.value)) / 1e3 + 100 / 3 * i;
|
|
11641
11720
|
}
|
|
11642
11721
|
e.setVisibleRange({
|
|
11643
11722
|
from: s,
|
|
@@ -11663,7 +11742,7 @@ function Xo(e, t, n, r, i, a) {
|
|
|
11663
11742
|
return;
|
|
11664
11743
|
}
|
|
11665
11744
|
let t = e[i];
|
|
11666
|
-
if (t &&
|
|
11745
|
+
if (t && Jo(t)) {
|
|
11667
11746
|
i++, a = 0, n?.(i), i >= e.length && o();
|
|
11668
11747
|
return;
|
|
11669
11748
|
}
|
|
@@ -11675,14 +11754,14 @@ function Xo(e, t, n, r, i, a) {
|
|
|
11675
11754
|
if (!(!n || !t.generatedCandlesStudyIdRef || !t.generatedCandlesBackgroundStudyIdRef)) {
|
|
11676
11755
|
if (t.generatedCandlesStudyIdRef.current && t.generatedCandlesBackgroundStudyIdRef.current) try {
|
|
11677
11756
|
let e = n.activeChart();
|
|
11678
|
-
|
|
11757
|
+
vs(e, t, 0), hs(e, t);
|
|
11679
11758
|
return;
|
|
11680
11759
|
} catch {}
|
|
11681
11760
|
try {
|
|
11682
11761
|
await new Promise((e) => {
|
|
11683
11762
|
n.onChartReady(async () => {
|
|
11684
11763
|
try {
|
|
11685
|
-
await
|
|
11764
|
+
await _s(n.activeChart(), t, a.value);
|
|
11686
11765
|
} catch (e) {
|
|
11687
11766
|
console.error("Failed to recreate generated candle studies:", e);
|
|
11688
11767
|
}
|
|
@@ -11692,61 +11771,79 @@ function Xo(e, t, n, r, i, a) {
|
|
|
11692
11771
|
} catch {}
|
|
11693
11772
|
}
|
|
11694
11773
|
}, g = (e) => {
|
|
11695
|
-
l || (
|
|
11696
|
-
}, _ = async (
|
|
11697
|
-
if (l || (
|
|
11698
|
-
if (p(
|
|
11699
|
-
|
|
11700
|
-
|
|
11701
|
-
|
|
11702
|
-
|
|
11703
|
-
|
|
11774
|
+
l || (qo(!1), c.current = i.value, o.current = e);
|
|
11775
|
+
}, _ = async (r, i = []) => {
|
|
11776
|
+
if (l || (qo(!0), Zo(r, n.value), o.current = [], await h(), l)) return;
|
|
11777
|
+
if (p(r, 0, i), i.length > 0) {
|
|
11778
|
+
let e = G(n.value) * 1e3;
|
|
11779
|
+
Ro(Math.max(0, i[0].time - e));
|
|
11780
|
+
for (let e of i) {
|
|
11781
|
+
if (l) return;
|
|
11782
|
+
Jo(e);
|
|
11783
|
+
}
|
|
11784
|
+
}
|
|
11785
|
+
if (await m(r, 100, (e) => {
|
|
11786
|
+
f(e), o.current = r.slice(0, e);
|
|
11704
11787
|
}), l) return;
|
|
11705
|
-
let
|
|
11706
|
-
if (
|
|
11707
|
-
|
|
11788
|
+
let a = e.value;
|
|
11789
|
+
if (a) try {
|
|
11790
|
+
hs(a.activeChart(), t);
|
|
11708
11791
|
} catch {}
|
|
11709
|
-
g(
|
|
11792
|
+
g(r);
|
|
11710
11793
|
}, y = () => {
|
|
11711
11794
|
l = !1, d();
|
|
11712
11795
|
let a = i.value, u = $.targetCandles, f = $.gapCount, p = e.value;
|
|
11713
11796
|
if (a?.length && u.length > 0) {
|
|
11714
11797
|
if (c.current === a) return;
|
|
11715
|
-
|
|
11716
|
-
|
|
11717
|
-
|
|
11718
|
-
|
|
11719
|
-
|
|
11720
|
-
|
|
11721
|
-
|
|
11722
|
-
|
|
11723
|
-
|
|
11724
|
-
|
|
11725
|
-
|
|
11726
|
-
|
|
11727
|
-
|
|
11728
|
-
|
|
11729
|
-
|
|
11730
|
-
|
|
11731
|
-
|
|
11732
|
-
|
|
11733
|
-
|
|
11734
|
-
|
|
11735
|
-
|
|
11736
|
-
|
|
11798
|
+
(async () => {
|
|
11799
|
+
let e = mt(n.value) && f || 0, t = lo([...a].slice(-50 - e), u[u.length - 1], u), i = Z.find((e) => e.ticker === r.value || e.display_name === r.value)?.session || "24x7", o = u[u.length - 1], s = mt(n.value) ? o.timestamp > 1e11 ? o.timestamp : o.timestamp * 1e3 : _t(o.timestamp, n.value), c = o.c, d = ko(s, n.value, e, i), m = d.map((e) => ({
|
|
11800
|
+
open: c,
|
|
11801
|
+
high: c,
|
|
11802
|
+
low: c,
|
|
11803
|
+
close: c,
|
|
11804
|
+
time: e
|
|
11805
|
+
})), h = ko(e ? d[d.length - 1] : s, n.value, t.length, i);
|
|
11806
|
+
if (mt(n.value) && e === 0 && p) try {
|
|
11807
|
+
let { data: e } = await p.activeChart().exportData({ includedStudies: [] }), r = _t(s, n.value), a = [];
|
|
11808
|
+
for (let i of e ?? []) {
|
|
11809
|
+
let e = i[0] > 1e11 ? i[0] : i[0] * 1e3;
|
|
11810
|
+
if (_t(e, n.value) <= r) continue;
|
|
11811
|
+
let o = a[a.length - 1];
|
|
11812
|
+
if (!(o != null && gt(o, e, n.value)) && (a.push(e), a.length >= t.length)) break;
|
|
11813
|
+
}
|
|
11814
|
+
if (a.length > 0) {
|
|
11815
|
+
let e = ko(a[a.length - 1], n.value, t.length - a.length, i);
|
|
11816
|
+
h = [...a, ...e];
|
|
11817
|
+
}
|
|
11818
|
+
} catch {}
|
|
11819
|
+
let g = [...t.map((e, t) => ({
|
|
11820
|
+
open: e.o,
|
|
11821
|
+
high: e.h,
|
|
11822
|
+
low: e.l,
|
|
11823
|
+
close: e.c,
|
|
11824
|
+
time: mt(n.value) ? h[t] : _t(h[t], n.value)
|
|
11825
|
+
}))].sort((e, t) => e.time - t.time);
|
|
11826
|
+
if (!l) try {
|
|
11827
|
+
p?.onChartReady(() => {
|
|
11828
|
+
_(g, m);
|
|
11829
|
+
});
|
|
11830
|
+
} catch {
|
|
11831
|
+
_(g, m);
|
|
11832
|
+
}
|
|
11833
|
+
})();
|
|
11737
11834
|
} else {
|
|
11738
|
-
if (
|
|
11739
|
-
|
|
11835
|
+
if (qo(!1), Zo([]), c.current = null, o.current = [], p) try {
|
|
11836
|
+
vs(p.activeChart(), t, 0);
|
|
11740
11837
|
} catch {}
|
|
11741
11838
|
try {
|
|
11742
11839
|
p?.onChartReady(() => {
|
|
11743
|
-
p &&
|
|
11840
|
+
p && gs(p.activeChart());
|
|
11744
11841
|
});
|
|
11745
11842
|
} catch {}
|
|
11746
11843
|
}
|
|
11747
11844
|
s.current = a;
|
|
11748
11845
|
}, b = () => {
|
|
11749
|
-
l = !0, d(),
|
|
11846
|
+
l = !0, d(), qo(!1);
|
|
11750
11847
|
};
|
|
11751
11848
|
M([
|
|
11752
11849
|
e,
|
|
@@ -11764,30 +11861,30 @@ function Xo(e, t, n, r, i, a) {
|
|
|
11764
11861
|
deep: !0
|
|
11765
11862
|
}), M(i, (n) => {
|
|
11766
11863
|
if (!n?.length) {
|
|
11767
|
-
|
|
11864
|
+
Zo([]), o.current = [];
|
|
11768
11865
|
let n = e.value;
|
|
11769
11866
|
if (n) try {
|
|
11770
|
-
|
|
11867
|
+
vs(n.activeChart(), t, 0);
|
|
11771
11868
|
} catch {}
|
|
11772
11869
|
}
|
|
11773
11870
|
}), v(b);
|
|
11774
11871
|
}
|
|
11775
11872
|
//#endregion
|
|
11776
11873
|
//#region src/composables/use-window-message.ts
|
|
11777
|
-
var
|
|
11874
|
+
var bs = (e) => Number(bt(e)), xs = (e, t) => ({
|
|
11778
11875
|
o: e[1],
|
|
11779
11876
|
h: e[2],
|
|
11780
11877
|
l: e[3],
|
|
11781
11878
|
c: e[4],
|
|
11782
|
-
timestamp:
|
|
11783
|
-
}),
|
|
11879
|
+
timestamp: mt(t) ? e[0] > 1e11 ? e[0] : e[0] * 1e3 : bs(e[0])
|
|
11880
|
+
}), Ss = (e) => bs(e[0]), Cs = (e, t) => {
|
|
11784
11881
|
let n = -1, r = -Infinity;
|
|
11785
11882
|
for (let i = 0; i < e.length; i++) {
|
|
11786
|
-
let a =
|
|
11883
|
+
let a = Ss(e[i]);
|
|
11787
11884
|
a <= t && a >= r && (r = a, n = i);
|
|
11788
11885
|
}
|
|
11789
11886
|
return n;
|
|
11790
|
-
},
|
|
11887
|
+
}, ws = (e, t = 500) => new Promise((n) => {
|
|
11791
11888
|
let r = !1, i = () => {
|
|
11792
11889
|
r || (r = !0, n());
|
|
11793
11890
|
};
|
|
@@ -11795,7 +11892,7 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11795
11892
|
e.onDataLoaded().subscribe(null, i, !0);
|
|
11796
11893
|
} catch {}
|
|
11797
11894
|
setTimeout(i, t);
|
|
11798
|
-
}),
|
|
11895
|
+
}), Ts = (e, t, n) => t >= e && t - e < n, Es = (e, t, n, r) => t > e && (!mt(r) || !Ts(e, t, n)), Ds = (e, t) => {
|
|
11799
11896
|
if (t.current) {
|
|
11800
11897
|
try {
|
|
11801
11898
|
let n = e?.activeChart?.();
|
|
@@ -11805,7 +11902,7 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11805
11902
|
} catch {}
|
|
11806
11903
|
t.current = null;
|
|
11807
11904
|
}
|
|
11808
|
-
},
|
|
11905
|
+
}, Os = (e) => {
|
|
11809
11906
|
try {
|
|
11810
11907
|
localStorage.removeItem(B);
|
|
11811
11908
|
} catch {}
|
|
@@ -11814,25 +11911,25 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11814
11911
|
if (!t) return;
|
|
11815
11912
|
t.clearMarks(2), t.refreshMarks();
|
|
11816
11913
|
} catch {}
|
|
11817
|
-
},
|
|
11914
|
+
}, ks = (e, t) => {
|
|
11818
11915
|
try {
|
|
11819
11916
|
localStorage.setItem(B, JSON.stringify(t));
|
|
11820
11917
|
} catch {}
|
|
11821
11918
|
try {
|
|
11822
11919
|
(e?.activeChart?.())?.refreshMarks();
|
|
11823
11920
|
} catch {}
|
|
11824
|
-
},
|
|
11921
|
+
}, As = async (e, t) => {
|
|
11825
11922
|
if (!(!e || !Number.isFinite(t) || t <= 0)) try {
|
|
11826
11923
|
await e.headerReady();
|
|
11827
|
-
let n = e.activeChart(), r =
|
|
11828
|
-
a = i?.from != null && i?.to != null && i.to > i.from ? (i.to - i.from) / 2 : 100 *
|
|
11924
|
+
let n = e.activeChart(), r = bs(t), i = n.getVisibleRange(), a;
|
|
11925
|
+
a = i?.from != null && i?.to != null && i.to > i.from ? (i.to - i.from) / 2 : 100 * K(n.resolution()) / 2, await n.setVisibleRange({
|
|
11829
11926
|
from: r - a,
|
|
11830
11927
|
to: r + a
|
|
11831
|
-
}), await
|
|
11928
|
+
}), await ws(n);
|
|
11832
11929
|
} catch (e) {
|
|
11833
11930
|
console.error("Error centering visible range on event", e);
|
|
11834
11931
|
}
|
|
11835
|
-
},
|
|
11932
|
+
}, js = async (e, t, n) => {
|
|
11836
11933
|
if (!e || !Number.isFinite(t) || t <= 0) return;
|
|
11837
11934
|
await e?.headerReady();
|
|
11838
11935
|
let r = e?.activeChart?.();
|
|
@@ -11844,11 +11941,11 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11844
11941
|
n.current = null;
|
|
11845
11942
|
}
|
|
11846
11943
|
try {
|
|
11847
|
-
let e =
|
|
11944
|
+
let e = r.resolution(), i = K(e), a = bs(t), { data: o } = await r.exportData({
|
|
11848
11945
|
includedStudies: [],
|
|
11849
|
-
from:
|
|
11850
|
-
to:
|
|
11851
|
-
}),
|
|
11946
|
+
from: a - 5 * i,
|
|
11947
|
+
to: a + i
|
|
11948
|
+
}), s = o ?? [], c = Cs(s, a), l = a - a % i, u = vt(c >= 0 && Ts(Ss(s[c]), a, i) ? Ss(s[c]) : l, e), d = await r.createShape({ time: u }, {
|
|
11852
11949
|
shape: "vertical_line",
|
|
11853
11950
|
lock: !0,
|
|
11854
11951
|
disableSelection: !0,
|
|
@@ -11857,27 +11954,27 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11857
11954
|
linewidth: 1
|
|
11858
11955
|
}
|
|
11859
11956
|
});
|
|
11860
|
-
|
|
11957
|
+
d && (r.getShapeById(d)?.setSavingEnabled(!1), n.current = d);
|
|
11861
11958
|
} catch {}
|
|
11862
11959
|
} catch {}
|
|
11863
|
-
},
|
|
11960
|
+
}, Ms = async (e, t) => {
|
|
11864
11961
|
if (!(!e || !Number.isFinite(t) || t <= 0)) try {
|
|
11865
11962
|
await e.headerReady();
|
|
11866
|
-
let n = e.activeChart(), r =
|
|
11963
|
+
let n = e.activeChart(), r = K(n.resolution()), { data: i } = await n.exportData();
|
|
11867
11964
|
if (!i?.length) return;
|
|
11868
|
-
let a =
|
|
11965
|
+
let a = Ss(i[i.length - 1]), o = bs(t);
|
|
11869
11966
|
await n.setVisibleRange({
|
|
11870
11967
|
from: a - 100 * r,
|
|
11871
11968
|
to: o + 100 / 3 * r
|
|
11872
|
-
}), await
|
|
11969
|
+
}), await ws(n);
|
|
11873
11970
|
} catch (e) {
|
|
11874
11971
|
console.error("Error expanding visible range for future event", e);
|
|
11875
11972
|
}
|
|
11876
|
-
},
|
|
11973
|
+
}, Ns = async (e, t, n) => {
|
|
11877
11974
|
if (!e || !n || !Number.isFinite(t) || t <= 0) return !1;
|
|
11878
11975
|
try {
|
|
11879
11976
|
await e.headerReady();
|
|
11880
|
-
let r = e.activeChart(), i = r.resolution(), a =
|
|
11977
|
+
let r = e.activeChart(), i = r.resolution(), a = K(i), o = bs(t), s = async (e, t) => {
|
|
11881
11978
|
let { data: n } = await r.exportData({
|
|
11882
11979
|
includedStudies: [],
|
|
11883
11980
|
...e != null && t != null ? {
|
|
@@ -11888,43 +11985,45 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11888
11985
|
return n ?? [];
|
|
11889
11986
|
}, c = await s();
|
|
11890
11987
|
if (!c.length) return !1;
|
|
11891
|
-
let l =
|
|
11988
|
+
let l = Es(Ss(c[c.length - 1]), o, a, i), u = r.symbol(), d = Z.find((e) => e.ticker === u || e.display_name === u)?.session || "24x7";
|
|
11892
11989
|
n.clearSelectedCandles();
|
|
11893
11990
|
let f = $.playEndTimestamp;
|
|
11894
|
-
$.setPlayEndTimestamp(null),
|
|
11991
|
+
$.setPlayEndTimestamp(null), qo(!1);
|
|
11895
11992
|
let p = () => {
|
|
11896
11993
|
f != null && Number.isFinite(f) && $.setPlayEndTimestamp(f);
|
|
11897
11994
|
};
|
|
11898
|
-
l ? await
|
|
11995
|
+
l ? await Ms(e, t) : await As(e, t);
|
|
11899
11996
|
let m = async () => {
|
|
11900
11997
|
let e = await s(o - 250 * a, o + 100 / 3 * a);
|
|
11901
11998
|
return e.length ? e : s();
|
|
11902
11999
|
};
|
|
11903
12000
|
if (c = await m(), !c.length) return p(), !1;
|
|
11904
12001
|
let h = (e) => {
|
|
11905
|
-
let t =
|
|
11906
|
-
return t < 0
|
|
11907
|
-
}, g =
|
|
12002
|
+
let t = Cs(e, o);
|
|
12003
|
+
return t < 0 ? -1 : mt(i) && t + 1 < e.length ? o < Ss(e[t + 1]) ? t : -1 : Ts(Ss(e[t]), o, a) ? t : -1;
|
|
12004
|
+
}, g = Ss(c[c.length - 1]), _ = Es(g, o, a, i), v = _ ? -1 : h(c);
|
|
11908
12005
|
if (!_ && v < 0) {
|
|
11909
|
-
if (await
|
|
11910
|
-
g =
|
|
12006
|
+
if (await ws(r), c = await m(), !c.length) return p(), !1;
|
|
12007
|
+
g = Ss(c[c.length - 1]), _ = Es(g, o, a, i), v = _ ? -1 : h(c);
|
|
11911
12008
|
}
|
|
11912
12009
|
if (_) {
|
|
11913
|
-
let e = o - o % a,
|
|
11914
|
-
$.setGapCount(
|
|
11915
|
-
let
|
|
11916
|
-
return
|
|
12010
|
+
let e = o - o % a, r = Ao(_t(g, i), _t(e, i), i, d);
|
|
12011
|
+
$.setGapCount(mt(i) ? Math.max(0, r - 1) : r), $.setPlayEndTimestamp(mt(i) ? t : e);
|
|
12012
|
+
let s = c.slice(-50).map((e) => xs(e, i));
|
|
12013
|
+
return s.length === 0 || n.setTargetCandles(s), !0;
|
|
11917
12014
|
}
|
|
11918
12015
|
if ($.setGapCount(0), v < 0) return p(), !1;
|
|
11919
|
-
|
|
11920
|
-
|
|
11921
|
-
|
|
12016
|
+
let y = mt(i) ? v - 1 : v;
|
|
12017
|
+
if (y < 0) return p(), !1;
|
|
12018
|
+
$.setPlayEndTimestamp(Ss(c[y]));
|
|
12019
|
+
let b = c.slice(Math.max(0, y - 49), y + 1).map((e) => xs(e, i));
|
|
12020
|
+
return b.length === 0 ? (p(), !1) : (n.setTargetCandles(b), !1);
|
|
11922
12021
|
} catch (e) {
|
|
11923
12022
|
return console.error("Error preparing event target candles", e), !1;
|
|
11924
12023
|
}
|
|
11925
|
-
},
|
|
11926
|
-
if (!e || !
|
|
11927
|
-
|
|
12024
|
+
}, Ps = (e) => {
|
|
12025
|
+
if (!e || !Bo()) {
|
|
12026
|
+
Vo();
|
|
11928
12027
|
return;
|
|
11929
12028
|
}
|
|
11930
12029
|
try {
|
|
@@ -11935,13 +12034,13 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11935
12034
|
n = e?.from, r = e?.to;
|
|
11936
12035
|
} catch {}
|
|
11937
12036
|
try {
|
|
11938
|
-
t.resetData(), e.resetCache?.(),
|
|
12037
|
+
t.resetData(), e.resetCache?.(), zo();
|
|
11939
12038
|
} catch (e) {
|
|
11940
12039
|
console.error("Error resetting chart data", e);
|
|
11941
12040
|
} finally {
|
|
11942
|
-
|
|
12041
|
+
Vo();
|
|
11943
12042
|
}
|
|
11944
|
-
n != null && r != null && Number.isFinite(n) && Number.isFinite(r) && n < r &&
|
|
12043
|
+
n != null && r != null && Number.isFinite(n) && Number.isFinite(r) && n < r && ws(t, 800).then(() => {
|
|
11945
12044
|
t.setVisibleRange({
|
|
11946
12045
|
from: n,
|
|
11947
12046
|
to: r
|
|
@@ -11949,11 +12048,11 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11949
12048
|
});
|
|
11950
12049
|
});
|
|
11951
12050
|
} catch {
|
|
11952
|
-
|
|
12051
|
+
Vo();
|
|
11953
12052
|
}
|
|
11954
|
-
},
|
|
11955
|
-
t([]), n?.preserveStartAnchor || ($.setPlayEndTimestamp(null), $.setGapCount(0)),
|
|
11956
|
-
},
|
|
12053
|
+
}, Fs = (e, t, n) => {
|
|
12054
|
+
t([]), n?.preserveStartAnchor || ($.setPlayEndTimestamp(null), $.setGapCount(0)), qo(!1), Ps(e);
|
|
12055
|
+
}, Is = (e, t) => {
|
|
11957
12056
|
if (e) try {
|
|
11958
12057
|
let n = e.activeChart?.();
|
|
11959
12058
|
if (!n) return;
|
|
@@ -11969,23 +12068,23 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11969
12068
|
} catch {}
|
|
11970
12069
|
});
|
|
11971
12070
|
} catch {}
|
|
11972
|
-
},
|
|
12071
|
+
}, Ls = (e) => ao[e] || e, Rs = (e) => {
|
|
11973
12072
|
if (!e) return null;
|
|
11974
12073
|
let t = Object.keys(e)[0], n = Number(t);
|
|
11975
12074
|
return Number.isFinite(n) && n > 0 ? n : null;
|
|
11976
|
-
},
|
|
12075
|
+
}, zs = async (e, t, n, r, i, a) => {
|
|
11977
12076
|
if (!e) return;
|
|
11978
|
-
let { end_timestamp: o, symbol: s, timeframe: c } = t, l =
|
|
12077
|
+
let { end_timestamp: o, symbol: s, timeframe: c } = t, l = Rs(i), u = Ls(c);
|
|
11979
12078
|
if (!(!s || !c || !Number.isFinite(o) || o <= 0 || l == null) && !(a && a.length > 0 && !a.includes(u) && !a.includes(c))) try {
|
|
11980
12079
|
await e.headerReady();
|
|
11981
|
-
let i =
|
|
11982
|
-
r?.clearSelectedCandles(), $.setPlayEndTimestamp(null), $.setGapCount(0),
|
|
12080
|
+
let i = K(u);
|
|
12081
|
+
r?.clearSelectedCandles(), $.setPlayEndTimestamp(null), $.setGapCount(0), qo(!1), r && (r.applyingPatternRef.current = !0);
|
|
11983
12082
|
try {
|
|
11984
12083
|
await new Promise((t) => {
|
|
11985
12084
|
e.setSymbol(s, u, () => t());
|
|
11986
12085
|
});
|
|
11987
12086
|
let a = e.activeChart();
|
|
11988
|
-
|
|
12087
|
+
Is(e, n);
|
|
11989
12088
|
let c = o - (l - 1) * i;
|
|
11990
12089
|
try {
|
|
11991
12090
|
await a.setVisibleRange({
|
|
@@ -11997,7 +12096,7 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
11997
12096
|
}
|
|
11998
12097
|
let { data: d } = await a.exportData(), f = d.findIndex((e) => e[0] === o);
|
|
11999
12098
|
f === -1 && (f = d.length - 1);
|
|
12000
|
-
let p = Math.max(0, f - l + 1), m = d.slice(p, f + 1), h = m[0]?.[0] ?? o, g = m[m.length - 1]?.[0] ?? o, _ = t.pattern?.trim() || "", v =
|
|
12099
|
+
let p = Math.max(0, f - l + 1), m = d.slice(p, f + 1), h = m[0]?.[0] ?? o, g = m[m.length - 1]?.[0] ?? o, _ = t.pattern?.trim() || "", v = no(), y = await a.createMultipointShape([{ time: h }, { time: g }], {
|
|
12001
12100
|
...v,
|
|
12002
12101
|
overrides: {
|
|
12003
12102
|
...v.overrides,
|
|
@@ -12015,7 +12114,7 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
12015
12114
|
} }), e.setSavingEnabled(!1)), n.current = y, r && (r.lastEntity.current = y);
|
|
12016
12115
|
}
|
|
12017
12116
|
if (r && m.length > 0) {
|
|
12018
|
-
let e = m.map(
|
|
12117
|
+
let e = m.map((e) => xs(e, u)), t = e.slice(-50);
|
|
12019
12118
|
r.setSymbol(s), r.setResolution(u), r.setTimeframe(u), r.setWindowSize(e.length), r.setCandles(e), r.setTargetCandles(t), r.setHasActiveShape(!0);
|
|
12020
12119
|
}
|
|
12021
12120
|
} finally {
|
|
@@ -12029,7 +12128,7 @@ var Zo = (e) => Number(lt(e)), Qo = (e) => ({
|
|
|
12029
12128
|
}, 600);
|
|
12030
12129
|
}
|
|
12031
12130
|
};
|
|
12032
|
-
function
|
|
12131
|
+
function Bs(e, t, n, r, i, a, o, s, c) {
|
|
12033
12132
|
let l = { current: n.value }, u = { current: e.value }, d = { current: t }, f = { current: r }, p = { current: i }, m = { current: a }, h = { current: o }, g = { current: typeof s == "function" ? s() : s }, _ = { current: c }, y = { current: null }, b = { current: null }, x = { current: null }, S = { current: null };
|
|
12034
12133
|
M(n, (e) => {
|
|
12035
12134
|
l.current = e;
|
|
@@ -12052,7 +12151,7 @@ function gs(e, t, n, r, i, a, o, s, c) {
|
|
|
12052
12151
|
}
|
|
12053
12152
|
if (!n || typeof n != "object") return;
|
|
12054
12153
|
let r = () => {
|
|
12055
|
-
|
|
12154
|
+
Is(u.current, b);
|
|
12056
12155
|
let e = m.current;
|
|
12057
12156
|
e && (e.lastEntity.current = null, e.setHasActiveShape(!1), e.setCandles([]), e.setTargetCandles([]));
|
|
12058
12157
|
}, i = n.name;
|
|
@@ -12078,9 +12177,9 @@ function gs(e, t, n, r, i, a, o, s, c) {
|
|
|
12078
12177
|
} catch {
|
|
12079
12178
|
n = null;
|
|
12080
12179
|
}
|
|
12081
|
-
let r = e.playEndTimestamp != null && Number.isFinite(e.playEndTimestamp) ?
|
|
12082
|
-
($.playEndTimestamp == null || $.targetCandles.length === 0) && n != null && await
|
|
12083
|
-
let i = $.playEndTimestamp ?? r ?? S.current ?? (n == null ? l.current :
|
|
12180
|
+
let r = e.playEndTimestamp != null && Number.isFinite(e.playEndTimestamp) ? bs(e.playEndTimestamp) : null;
|
|
12181
|
+
($.playEndTimestamp == null || $.targetCandles.length === 0) && n != null && await Ns(u.current, n, m.current);
|
|
12182
|
+
let i = $.playEndTimestamp ?? r ?? S.current ?? (n == null ? l.current : bs(n));
|
|
12084
12183
|
i != null && Number.isFinite(i) && (S.current = i, $.setPlayEndTimestamp(i)), d.current(t);
|
|
12085
12184
|
})();
|
|
12086
12185
|
return;
|
|
@@ -12095,13 +12194,13 @@ function gs(e, t, n, r, i, a, o, s, c) {
|
|
|
12095
12194
|
case "chart.stop":
|
|
12096
12195
|
if (a?.isReplay === !1) {
|
|
12097
12196
|
let e = $.playEndTimestamp;
|
|
12098
|
-
e != null && Number.isFinite(e) && (S.current = e), d.current([]),
|
|
12197
|
+
e != null && Number.isFinite(e) && (S.current = e), d.current([]), qo(!1), Ps(u.current);
|
|
12099
12198
|
break;
|
|
12100
12199
|
}
|
|
12101
|
-
d.current(null), S.current = null, $.setPlayEndTimestamp(null), $.setGapCount(0),
|
|
12200
|
+
d.current(null), S.current = null, $.setPlayEndTimestamp(null), $.setGapCount(0), qo(!1), Ps(u.current);
|
|
12102
12201
|
break;
|
|
12103
12202
|
case "selector.closeResult":
|
|
12104
|
-
|
|
12203
|
+
Fs(u.current, d.current), p.current?.();
|
|
12105
12204
|
break;
|
|
12106
12205
|
case "selector.loading": {
|
|
12107
12206
|
let e = a;
|
|
@@ -12110,37 +12209,37 @@ function gs(e, t, n, r, i, a, o, s, c) {
|
|
|
12110
12209
|
}
|
|
12111
12210
|
case "auth.signIn": {
|
|
12112
12211
|
let e = a;
|
|
12113
|
-
localStorage.setItem(
|
|
12212
|
+
localStorage.setItem(H, e?.idToken || "");
|
|
12114
12213
|
break;
|
|
12115
12214
|
}
|
|
12116
12215
|
case "auth.signOut":
|
|
12117
|
-
localStorage.removeItem(
|
|
12216
|
+
localStorage.removeItem(H);
|
|
12118
12217
|
break;
|
|
12119
12218
|
case "news.eventClicked": {
|
|
12120
12219
|
let e = a?.event;
|
|
12121
12220
|
if (!e?.timestamp) return;
|
|
12122
|
-
x.current = e.timestamp,
|
|
12123
|
-
await
|
|
12221
|
+
x.current = e.timestamp, ks(u.current, e), (async () => {
|
|
12222
|
+
await Ns(u.current, e.timestamp, m.current), await js(u.current, e.timestamp, y);
|
|
12124
12223
|
})();
|
|
12125
12224
|
break;
|
|
12126
12225
|
}
|
|
12127
12226
|
case "news.back":
|
|
12128
|
-
|
|
12227
|
+
Ds(u.current, y), Os(u.current), Fs(u.current, d.current), x.current = null, S.current = null, $.setGapCount(0), m.current?.setTargetCandles([]);
|
|
12129
12228
|
break;
|
|
12130
12229
|
case "news.backToSimilarEvents":
|
|
12131
|
-
|
|
12230
|
+
Fs(u.current, d.current);
|
|
12132
12231
|
break;
|
|
12133
12232
|
case "pattern.classicPatternSelected": {
|
|
12134
12233
|
let e = n.data?.pattern, t = e?.compared_pattern;
|
|
12135
12234
|
if (!t) return;
|
|
12136
|
-
|
|
12235
|
+
zs(u.current, t, b, m.current, e?.results?.matches_by_window, g.current);
|
|
12137
12236
|
break;
|
|
12138
12237
|
}
|
|
12139
12238
|
case "pattern.custom_pattern_selected":
|
|
12140
12239
|
case "patter.custom_pattern_selected": {
|
|
12141
12240
|
let e = a?.pattern, t = e?.compared_pattern;
|
|
12142
12241
|
if (!t) return;
|
|
12143
|
-
|
|
12242
|
+
zs(u.current, t, b, m.current, e?.results?.matches_by_window, g.current);
|
|
12144
12243
|
break;
|
|
12145
12244
|
}
|
|
12146
12245
|
case "pattern.clear_custom_pattern_selected":
|
|
@@ -12164,76 +12263,76 @@ function gs(e, t, n, r, i, a, o, s, c) {
|
|
|
12164
12263
|
}
|
|
12165
12264
|
//#endregion
|
|
12166
12265
|
//#region src/lib/post-chart-resolution.ts
|
|
12167
|
-
var
|
|
12168
|
-
function
|
|
12266
|
+
var Vs = "chart-resolution";
|
|
12267
|
+
function Hs(e) {
|
|
12169
12268
|
return {
|
|
12170
|
-
type:
|
|
12269
|
+
type: Vs,
|
|
12171
12270
|
resolution: e
|
|
12172
12271
|
};
|
|
12173
12272
|
}
|
|
12174
|
-
function
|
|
12175
|
-
let n = JSON.stringify(
|
|
12273
|
+
function Us(e, t) {
|
|
12274
|
+
let n = JSON.stringify(Hs(t));
|
|
12176
12275
|
e.postMessage(n, "*");
|
|
12177
12276
|
}
|
|
12178
|
-
function
|
|
12277
|
+
function Ws(e, t, n = 0) {
|
|
12179
12278
|
!e || n > 4 || e.querySelectorAll("iframe").forEach((e) => {
|
|
12180
12279
|
let r = e.contentWindow;
|
|
12181
12280
|
if (!(!r || t.has(r))) {
|
|
12182
12281
|
t.add(r);
|
|
12183
12282
|
try {
|
|
12184
|
-
|
|
12283
|
+
Ws(e.contentDocument, t, n + 1);
|
|
12185
12284
|
} catch {}
|
|
12186
12285
|
}
|
|
12187
12286
|
});
|
|
12188
12287
|
}
|
|
12189
|
-
function
|
|
12288
|
+
function Gs(e, t) {
|
|
12190
12289
|
if (!t) return !1;
|
|
12191
12290
|
let n = /* @__PURE__ */ new Set();
|
|
12192
|
-
return e?.contentWindow && n.add(e.contentWindow), typeof document < "u" &&
|
|
12291
|
+
return e?.contentWindow && n.add(e.contentWindow), typeof document < "u" && Ws(document, n), n.forEach((e) => Us(e, t)), n.size > 0;
|
|
12193
12292
|
}
|
|
12194
12293
|
//#endregion
|
|
12195
12294
|
//#region src/lib/post-selector-loading.ts
|
|
12196
|
-
var
|
|
12197
|
-
function
|
|
12295
|
+
var Ks = "selector-loading";
|
|
12296
|
+
function qs(e) {
|
|
12198
12297
|
return {
|
|
12199
|
-
type:
|
|
12298
|
+
type: Ks,
|
|
12200
12299
|
isLoading: e
|
|
12201
12300
|
};
|
|
12202
12301
|
}
|
|
12203
|
-
function
|
|
12302
|
+
function Js(e, t) {
|
|
12204
12303
|
let n = e?.contentWindow;
|
|
12205
12304
|
if (!n) return !1;
|
|
12206
12305
|
let r = "*";
|
|
12207
12306
|
try {
|
|
12208
12307
|
e?.src && (r = new URL(e.src).origin);
|
|
12209
12308
|
} catch {}
|
|
12210
|
-
return n.postMessage(JSON.stringify(
|
|
12309
|
+
return n.postMessage(JSON.stringify(qs(t)), r), !0;
|
|
12211
12310
|
}
|
|
12212
12311
|
//#endregion
|
|
12213
12312
|
//#region src/lib/post-parent-message.ts
|
|
12214
|
-
var
|
|
12215
|
-
function
|
|
12313
|
+
var Ys = "open-pricing";
|
|
12314
|
+
function Xs(e) {
|
|
12216
12315
|
return {
|
|
12217
|
-
type:
|
|
12316
|
+
type: Ys,
|
|
12218
12317
|
...e
|
|
12219
12318
|
};
|
|
12220
12319
|
}
|
|
12221
|
-
function
|
|
12222
|
-
e.postMessage(JSON.stringify(
|
|
12320
|
+
function Zs(e, t) {
|
|
12321
|
+
e.postMessage(JSON.stringify(Xs(t)), "*");
|
|
12223
12322
|
}
|
|
12224
|
-
function
|
|
12323
|
+
function Qs(e, t) {
|
|
12225
12324
|
let n = e?.contentWindow;
|
|
12226
|
-
return n ? (
|
|
12325
|
+
return n ? (Zs(n, t), !0) : !1;
|
|
12227
12326
|
}
|
|
12228
|
-
function
|
|
12229
|
-
return typeof window > "u" || window.parent === window ? !1 : (
|
|
12327
|
+
function $s(e) {
|
|
12328
|
+
return typeof window > "u" || window.parent === window ? !1 : (Zs(window.parent, e), !0);
|
|
12230
12329
|
}
|
|
12231
12330
|
//#endregion
|
|
12232
12331
|
//#region src/tradingview/WidgetIccandle.vue?vue&type=script&setup=true&lang.ts
|
|
12233
|
-
var
|
|
12332
|
+
var ec = ["lang"], tc = {
|
|
12234
12333
|
key: 3,
|
|
12235
12334
|
class: "iccandle-selector-widget__overlay"
|
|
12236
|
-
},
|
|
12335
|
+
}, nc = /* @__PURE__ */ d({
|
|
12237
12336
|
__name: "WidgetIccandle",
|
|
12238
12337
|
props: {
|
|
12239
12338
|
chartWidget: {},
|
|
@@ -12286,22 +12385,22 @@ var As = ["lang"], js = {
|
|
|
12286
12385
|
function c(e) {
|
|
12287
12386
|
return !(!e?.event_name || !e.currency || e.event_name === "Holiday" || e.status === "early");
|
|
12288
12387
|
}
|
|
12289
|
-
let l = e, d = r(() =>
|
|
12290
|
-
|
|
12388
|
+
let l = e, d = r(() => ae(l.language));
|
|
12389
|
+
fe(d);
|
|
12291
12390
|
let f = {
|
|
12292
12391
|
highlightBarsRef: { current: [] },
|
|
12293
12392
|
generatedCandlesBackgroundStudyIdRef: { current: null },
|
|
12294
12393
|
generatedCandlesStudyIdRef: { current: null }
|
|
12295
12394
|
};
|
|
12296
12395
|
t({ chartRefs: f });
|
|
12297
|
-
let p = { current: null }, m = { current: null }, h = { current: !1 }, S = w(null), C = { current: [] }, T = w(null), E =
|
|
12396
|
+
let p = { current: null }, m = { current: null }, h = { current: !1 }, S = w(null), C = { current: [] }, T = w(null), E = jo(), O = w(!1), k = w(null), A = w(!1), j = w(null), N = w(null), te = () => T.value && getComputedStyle(T.value).getPropertyValue("--iccandle-primary").trim() || void 0, P = { current: te };
|
|
12298
12397
|
M(T, () => {
|
|
12299
12398
|
P.current = te;
|
|
12300
12399
|
}, { immediate: !0 });
|
|
12301
12400
|
let F = r(() => l.theme === "system" ? window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light" : l.theme), I = r(() => ({
|
|
12302
|
-
light: l.chartMaskColors?.light ??
|
|
12303
|
-
dark: l.chartMaskColors?.dark ??
|
|
12304
|
-
})[F.value]), ne = r(() => ({ zIndex: 9999999999 })), L = w(!1), R = w(!1),
|
|
12401
|
+
light: l.chartMaskColors?.light ?? re.light,
|
|
12402
|
+
dark: l.chartMaskColors?.dark ?? re.dark
|
|
12403
|
+
})[F.value]), ne = r(() => ({ zIndex: 9999999999 })), L = w(!1), R = w(!1), H = w(!1), U = w(25), W = w([]), ie = w(null), G = w(!1), K = w("60"), q = w(io.interval || "60"), J = w(""), Y = () => {
|
|
12305
12404
|
try {
|
|
12306
12405
|
let e = l.chartWidget?.activeChart?.();
|
|
12307
12406
|
if (e) {
|
|
@@ -12318,44 +12417,44 @@ var As = ["lang"], js = {
|
|
|
12318
12417
|
});
|
|
12319
12418
|
}
|
|
12320
12419
|
} catch {}
|
|
12321
|
-
|
|
12420
|
+
H.value = !1, W.value = [], E.setTargetCandles([]);
|
|
12322
12421
|
}, oe = (e) => {
|
|
12323
12422
|
let t = e;
|
|
12324
12423
|
try {
|
|
12325
12424
|
t = new URL(e, `${z}/`).pathname;
|
|
12326
12425
|
} catch {}
|
|
12327
|
-
t.includes("/news") && Y(), k.value?.length && (E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null,
|
|
12426
|
+
t.includes("/news") && Y(), k.value?.length && (E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null, qo(!1));
|
|
12328
12427
|
}, se = () => {
|
|
12329
12428
|
R.value = !0;
|
|
12330
|
-
},
|
|
12429
|
+
}, ce = () => {
|
|
12331
12430
|
R.value = !1;
|
|
12332
12431
|
}, le = () => {
|
|
12333
|
-
E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null,
|
|
12432
|
+
E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null, qo(!1), S.value?.();
|
|
12334
12433
|
}, ue = () => {
|
|
12335
|
-
|
|
12434
|
+
ie.value = "settings";
|
|
12336
12435
|
}, de = () => {
|
|
12337
|
-
|
|
12338
|
-
},
|
|
12339
|
-
|
|
12436
|
+
ie.value = "scan";
|
|
12437
|
+
}, X = () => {
|
|
12438
|
+
ie.value = null;
|
|
12340
12439
|
}, pe = () => {
|
|
12341
|
-
|
|
12440
|
+
G.value = !1;
|
|
12342
12441
|
}, me = () => {
|
|
12343
|
-
|
|
12442
|
+
G.value = !0;
|
|
12344
12443
|
}, he = (e) => {
|
|
12345
|
-
O.value = e,
|
|
12444
|
+
O.value = e, Js(l.resultIframeRef?.current, e);
|
|
12346
12445
|
}, ge = () => {
|
|
12347
12446
|
let e = q.value;
|
|
12348
12447
|
try {
|
|
12349
|
-
e =
|
|
12448
|
+
e = De.value?.activeChart?.()?.resolution?.() || q.value;
|
|
12350
12449
|
} catch {
|
|
12351
12450
|
e = q.value;
|
|
12352
12451
|
}
|
|
12353
|
-
|
|
12452
|
+
Gs(l.resultIframeRef?.current, e);
|
|
12354
12453
|
}, _e = { current: [] }, ve = (e) => {
|
|
12355
12454
|
_e.current.forEach((e) => window.clearTimeout(e));
|
|
12356
12455
|
let t = () => {
|
|
12357
12456
|
if (e) {
|
|
12358
|
-
|
|
12457
|
+
Gs(l.resultIframeRef?.current, e);
|
|
12359
12458
|
return;
|
|
12360
12459
|
}
|
|
12361
12460
|
ge();
|
|
@@ -12372,13 +12471,13 @@ var As = ["lang"], js = {
|
|
|
12372
12471
|
theme: F.value === "dark" ? "dark" : "light",
|
|
12373
12472
|
language: d.value
|
|
12374
12473
|
};
|
|
12375
|
-
|
|
12474
|
+
Qs(l.resultIframeRef?.current, e) || $s(e) || l.submitCallback(`${z}/${d.value}?pricing=true&theme=${F.value === "dark" ? "dark" : "light"}`);
|
|
12376
12475
|
}, be = () => {
|
|
12377
12476
|
A.value = !1, j.value = null, N.value = null;
|
|
12378
12477
|
}, xe = () => {
|
|
12379
12478
|
L.value = !0;
|
|
12380
12479
|
}, Se = (e) => {
|
|
12381
|
-
let t = e.default_symbol || J.value, n = F.value === "dark" ? "dark" : "light", r =
|
|
12480
|
+
let t = e.default_symbol || J.value, n = F.value === "dark" ? "dark" : "light", r = De.value;
|
|
12382
12481
|
Y(), k.value = null, E.setPlayEndTimestamp(null);
|
|
12383
12482
|
let i = {
|
|
12384
12483
|
id: e.id,
|
|
@@ -12399,17 +12498,17 @@ var As = ["lang"], js = {
|
|
|
12399
12498
|
r?.activeChart?.()?.refreshMarks();
|
|
12400
12499
|
} catch {}
|
|
12401
12500
|
(async () => {
|
|
12402
|
-
await
|
|
12501
|
+
await Ns(r, e.timestamp, {
|
|
12403
12502
|
lastEntity: p,
|
|
12404
12503
|
applyingPatternRef: h,
|
|
12405
12504
|
setHasActiveShape: (e) => {
|
|
12406
|
-
|
|
12505
|
+
H.value = e;
|
|
12407
12506
|
},
|
|
12408
12507
|
setCandles: (e) => {
|
|
12409
|
-
|
|
12508
|
+
W.value = e;
|
|
12410
12509
|
},
|
|
12411
12510
|
setWindowSize: (e) => {
|
|
12412
|
-
|
|
12511
|
+
U.value = e;
|
|
12413
12512
|
},
|
|
12414
12513
|
setSymbol: (e) => {
|
|
12415
12514
|
J.value = e;
|
|
@@ -12418,7 +12517,7 @@ var As = ["lang"], js = {
|
|
|
12418
12517
|
q.value = e;
|
|
12419
12518
|
},
|
|
12420
12519
|
setTimeframe: (e) => {
|
|
12421
|
-
|
|
12520
|
+
K.value = e;
|
|
12422
12521
|
},
|
|
12423
12522
|
setTargetCandles: (e) => {
|
|
12424
12523
|
E.setTargetCandles(e);
|
|
@@ -12426,11 +12525,11 @@ var As = ["lang"], js = {
|
|
|
12426
12525
|
clearSelectedCandles: () => {
|
|
12427
12526
|
k.value = null;
|
|
12428
12527
|
}
|
|
12429
|
-
}), await
|
|
12528
|
+
}), await js(r, e.timestamp, m);
|
|
12430
12529
|
})(), l.submitCallback(`${z}/${d.value}/news/similar-events/${e.id}?symbol=${encodeURIComponent(t)}&theme=${n}`);
|
|
12431
12530
|
}, Ce = (e) => {
|
|
12432
12531
|
if (!e) return;
|
|
12433
|
-
let t =
|
|
12532
|
+
let t = De.value;
|
|
12434
12533
|
if (!t) return;
|
|
12435
12534
|
let n;
|
|
12436
12535
|
try {
|
|
@@ -12469,9 +12568,9 @@ var As = ["lang"], js = {
|
|
|
12469
12568
|
let f = d.timestamp ? d.timestamp / 1e3 : null, p = i.to - i.from, m = u(f ?? i.from + p * .5);
|
|
12470
12569
|
m && (N.value = m), j.value = d, A.value = !0;
|
|
12471
12570
|
}, we = () => {
|
|
12472
|
-
h.current || (p.current = null,
|
|
12571
|
+
h.current || (p.current = null, H.value = !1);
|
|
12473
12572
|
}, Te = (e) => {
|
|
12474
|
-
|
|
12573
|
+
K.value = e, q.value = e, ve(e), we(), l.availableIntervals != null && !l.availableIntervals.includes(String(e)) && (ie.value = null, G.value = !1), h.current || k.value?.length && (E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null, qo(!1));
|
|
12475
12574
|
let t = null;
|
|
12476
12575
|
try {
|
|
12477
12576
|
t = JSON.parse(localStorage.getItem("tv:clicked-news-event") || "null");
|
|
@@ -12479,17 +12578,17 @@ var As = ["lang"], js = {
|
|
|
12479
12578
|
t = null;
|
|
12480
12579
|
}
|
|
12481
12580
|
!t?.timestamp || !l.chartWidget || (async () => {
|
|
12482
|
-
await
|
|
12581
|
+
await Ns(l.chartWidget, t.timestamp, {
|
|
12483
12582
|
lastEntity: p,
|
|
12484
12583
|
applyingPatternRef: h,
|
|
12485
12584
|
setHasActiveShape: (e) => {
|
|
12486
|
-
|
|
12585
|
+
H.value = e;
|
|
12487
12586
|
},
|
|
12488
12587
|
setCandles: (e) => {
|
|
12489
|
-
|
|
12588
|
+
W.value = e;
|
|
12490
12589
|
},
|
|
12491
12590
|
setWindowSize: (e) => {
|
|
12492
|
-
|
|
12591
|
+
U.value = e;
|
|
12493
12592
|
},
|
|
12494
12593
|
setSymbol: (e) => {
|
|
12495
12594
|
J.value = e;
|
|
@@ -12498,7 +12597,7 @@ var As = ["lang"], js = {
|
|
|
12498
12597
|
q.value = e;
|
|
12499
12598
|
},
|
|
12500
12599
|
setTimeframe: (e) => {
|
|
12501
|
-
|
|
12600
|
+
K.value = e;
|
|
12502
12601
|
},
|
|
12503
12602
|
setTargetCandles: (e) => {
|
|
12504
12603
|
E.setTargetCandles(e);
|
|
@@ -12506,17 +12605,17 @@ var As = ["lang"], js = {
|
|
|
12506
12605
|
clearSelectedCandles: () => {
|
|
12507
12606
|
k.value = null;
|
|
12508
12607
|
}
|
|
12509
|
-
}), await
|
|
12608
|
+
}), await js(l.chartWidget, t.timestamp, m);
|
|
12510
12609
|
})();
|
|
12511
12610
|
}, Ee = (e) => {
|
|
12512
|
-
J.value = e.library_custom_fields?.ticker || e.ticker || e.name || e.base_name + "" || "", we(), ve(), !h.current && k.value?.length && (E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null,
|
|
12513
|
-
},
|
|
12611
|
+
J.value = e.library_custom_fields?.ticker || e.ticker || e.name || e.base_name + "" || "", we(), ve(), !h.current && k.value?.length && (E.setPlayEndTimestamp(null), E.setGapCount(0), k.value = null, qo(!1));
|
|
12612
|
+
}, De = D(l.chartWidget);
|
|
12514
12613
|
M(() => l.chartWidget, (e) => {
|
|
12515
|
-
|
|
12516
|
-
}), M(
|
|
12614
|
+
De.value = e;
|
|
12615
|
+
}), M(De, (e) => {
|
|
12517
12616
|
let t, r, i;
|
|
12518
12617
|
b(() => {
|
|
12519
|
-
|
|
12618
|
+
H.value = !1, p.current = null, S.value = null;
|
|
12520
12619
|
try {
|
|
12521
12620
|
if (r && clearTimeout(r), e) {
|
|
12522
12621
|
let n = e.activeChart();
|
|
@@ -12529,50 +12628,50 @@ var As = ["lang"], js = {
|
|
|
12529
12628
|
let a = e.activeChart();
|
|
12530
12629
|
if (a) {
|
|
12531
12630
|
let o = a.resolution();
|
|
12532
|
-
|
|
12631
|
+
K.value = o, q.value = o;
|
|
12533
12632
|
let s = Z?.find((e) => e.display_name === a.symbol());
|
|
12534
12633
|
J.value = s?.ticker || a.symbol();
|
|
12535
12634
|
let c = async (e, t) => {
|
|
12536
12635
|
if (((a?.getAllShapes())?.filter((e) => e.name === "date_range"))?.forEach((e) => {
|
|
12537
12636
|
a?.removeEntity(e.id);
|
|
12538
12637
|
}), t) {
|
|
12539
|
-
let { data:
|
|
12540
|
-
i === -1 && (i =
|
|
12541
|
-
let o =
|
|
12542
|
-
|
|
12543
|
-
let
|
|
12544
|
-
if (!
|
|
12545
|
-
if (p.current = await a.createMultipointShape([{ time:
|
|
12638
|
+
let { data: e } = await a.exportData(), r = a.resolution(), i = yt(e, t, r);
|
|
12639
|
+
i === -1 && (i = e.length - 1);
|
|
12640
|
+
let o = e.slice(Math.max(0, i - 25 + 1), i + 1), s = e.slice(Math.max(0, i - 49), i + 1);
|
|
12641
|
+
U.value = o.length, W.value = o.map(n), E.setTargetCandles(s.map(n)), H.value = !0;
|
|
12642
|
+
let c = o[0], l = o[o.length - 1];
|
|
12643
|
+
if (!c || !l) return;
|
|
12644
|
+
if (p.current = await a.createMultipointShape([{ time: vt(c[0], r) }, { time: vt(l[0], r) }], no(P.current())), p.current) {
|
|
12546
12645
|
let e = a.getShapeById(p.current);
|
|
12547
12646
|
e && e.setSavingEnabled && (e.setProperties({ customText: {
|
|
12548
12647
|
visible: !0,
|
|
12549
|
-
text:
|
|
12648
|
+
text: ro
|
|
12550
12649
|
} }), e.setSavingEnabled(!1));
|
|
12551
12650
|
}
|
|
12552
12651
|
}
|
|
12553
12652
|
};
|
|
12554
|
-
t =
|
|
12555
|
-
if (!h.current && (r === "remove" && (p.current === t && (p.current = null),
|
|
12653
|
+
t = ut(async (t, r) => {
|
|
12654
|
+
if (!h.current && (r === "remove" && (p.current === t && (p.current = null), H.value = !1), r === "points_changed" && a.getAllShapes().filter((e) => e.name === "date_range").some((e) => e.id === t) && e)) {
|
|
12556
12655
|
let e = a.getShapeById(t);
|
|
12557
12656
|
if (!e) return;
|
|
12558
|
-
let r = e.getPoints(), i = r[0].time, o = r[1].time, { data: s } = await a.exportData(), c =
|
|
12559
|
-
|
|
12560
|
-
let
|
|
12561
|
-
|
|
12657
|
+
let r = e.getPoints(), i = r[0].time, o = r[1].time, { data: s } = await a.exportData(), c = a.resolution(), l = yt(s, o, c), u = yt(s, i, c);
|
|
12658
|
+
l === -1 && (l = s.length - 2, u = s.length - 1 - 25);
|
|
12659
|
+
let d = s.slice(u, l + 1).length - 1;
|
|
12660
|
+
d > je.max ? (d = Math.round(d / 10) * 10 - 1, d > je.custom[je.custom.length - 1] && (d = je.custom[je.custom.length - 1] - 1)) : d <= je.min && (d = je.min - 1), p.current && a.removeEntity(p.current), a.getAllShapes().filter((e) => e.name === "date_range").forEach((e) => {
|
|
12562
12661
|
a.removeEntity(e.id);
|
|
12563
12662
|
});
|
|
12564
|
-
let
|
|
12565
|
-
if (!
|
|
12566
|
-
if (p.current = await a.createMultipointShape([{ time:
|
|
12663
|
+
let f = s.slice(l - d, l + 1), m = s.slice(l - 49, l + 1), h = f[0], g = f[f.length - 1];
|
|
12664
|
+
if (!h || !g) return;
|
|
12665
|
+
if (p.current = await a.createMultipointShape([{ time: vt(h[0], c) }, { time: vt(g[0], c) }], no(P.current())), U.value = f.length, W.value = f.map(n), E.setTargetCandles(m.map(n)), H.value = !0, p.current) {
|
|
12567
12666
|
let e = a.getShapeById(p.current);
|
|
12568
12667
|
e && e.setSavingEnabled && (e.setProperties({ customText: {
|
|
12569
12668
|
visible: !0,
|
|
12570
|
-
text:
|
|
12669
|
+
text: ro
|
|
12571
12670
|
} }), e.setSavingEnabled(!1));
|
|
12572
12671
|
}
|
|
12573
12672
|
}
|
|
12574
12673
|
}, 500), S.value = () => {
|
|
12575
|
-
|
|
12674
|
+
H.value = !0;
|
|
12576
12675
|
let e = a.getVisibleRange();
|
|
12577
12676
|
e?.from && e?.to && c(e.from, e.to);
|
|
12578
12677
|
};
|
|
@@ -12593,25 +12692,25 @@ var As = ["lang"], js = {
|
|
|
12593
12692
|
};
|
|
12594
12693
|
i = (e) => {
|
|
12595
12694
|
r && clearTimeout(r), r = setTimeout(() => {
|
|
12596
|
-
l(e) ?
|
|
12695
|
+
l(e) ? H.value = !1 : p.current && (H.value = !0);
|
|
12597
12696
|
}, 150);
|
|
12598
12697
|
}, a.onIntervalChanged().subscribe(null, Te), a.onSymbolChanged().subscribe(null, Ee), a.onVisibleRangeChanged().subscribe(null, i), e.subscribe?.("drawing_event", t);
|
|
12599
12698
|
}
|
|
12600
12699
|
});
|
|
12601
12700
|
}, { immediate: !0 });
|
|
12602
|
-
let
|
|
12603
|
-
|
|
12604
|
-
let
|
|
12701
|
+
let Oe = r(() => W.value[W.value.length - 1]?.timestamp ?? null);
|
|
12702
|
+
oo(De, C);
|
|
12703
|
+
let ke = {
|
|
12605
12704
|
lastEntity: p,
|
|
12606
12705
|
applyingPatternRef: h,
|
|
12607
12706
|
setHasActiveShape: (e) => {
|
|
12608
|
-
|
|
12707
|
+
H.value = e;
|
|
12609
12708
|
},
|
|
12610
12709
|
setCandles: (e) => {
|
|
12611
|
-
|
|
12710
|
+
W.value = e;
|
|
12612
12711
|
},
|
|
12613
12712
|
setWindowSize: (e) => {
|
|
12614
|
-
|
|
12713
|
+
U.value = e;
|
|
12615
12714
|
},
|
|
12616
12715
|
setSymbol: (e) => {
|
|
12617
12716
|
J.value = e;
|
|
@@ -12620,7 +12719,7 @@ var As = ["lang"], js = {
|
|
|
12620
12719
|
q.value = e;
|
|
12621
12720
|
},
|
|
12622
12721
|
setTimeframe: (e) => {
|
|
12623
|
-
|
|
12722
|
+
K.value = e;
|
|
12624
12723
|
},
|
|
12625
12724
|
setTargetCandles: (e) => {
|
|
12626
12725
|
E.setTargetCandles(e);
|
|
@@ -12629,11 +12728,11 @@ var As = ["lang"], js = {
|
|
|
12629
12728
|
k.value = null;
|
|
12630
12729
|
}
|
|
12631
12730
|
};
|
|
12632
|
-
|
|
12731
|
+
Bs(De, (e) => {
|
|
12633
12732
|
k.value = e;
|
|
12634
|
-
},
|
|
12733
|
+
}, Oe, (e) => {
|
|
12635
12734
|
O.value = e;
|
|
12636
|
-
}, l.onCloseResult,
|
|
12735
|
+
}, l.onCloseResult, ke, oe, () => l.availableIntervals, ge), M(() => l.iframeLoaded, (e) => {
|
|
12637
12736
|
e && ve();
|
|
12638
12737
|
}), y(() => {
|
|
12639
12738
|
if (typeof document > "u") return;
|
|
@@ -12646,7 +12745,7 @@ var As = ["lang"], js = {
|
|
|
12646
12745
|
}), v(() => {
|
|
12647
12746
|
t.disconnect(), window.clearTimeout(e);
|
|
12648
12747
|
});
|
|
12649
|
-
}), M([
|
|
12748
|
+
}), M([De, I], ([e]) => {
|
|
12650
12749
|
if (!e) return;
|
|
12651
12750
|
let t = !1;
|
|
12652
12751
|
b(() => {
|
|
@@ -12657,7 +12756,7 @@ var As = ["lang"], js = {
|
|
|
12657
12756
|
}), e.onChartReady(async () => {
|
|
12658
12757
|
if (!t) {
|
|
12659
12758
|
try {
|
|
12660
|
-
await
|
|
12759
|
+
await _s(e.activeChart(), f, I.value);
|
|
12661
12760
|
} catch (e) {
|
|
12662
12761
|
console.error("Failed to create generated candle studies:", e);
|
|
12663
12762
|
}
|
|
@@ -12666,8 +12765,8 @@ var As = ["lang"], js = {
|
|
|
12666
12765
|
} catch {}
|
|
12667
12766
|
}
|
|
12668
12767
|
});
|
|
12669
|
-
}, { immediate: !0 }),
|
|
12670
|
-
let
|
|
12768
|
+
}, { immediate: !0 }), ys(De, f, q, J, k, I);
|
|
12769
|
+
let Ae = () => {
|
|
12671
12770
|
try {
|
|
12672
12771
|
localStorage.removeItem(V), localStorage.removeItem(B);
|
|
12673
12772
|
} catch {}
|
|
@@ -12683,12 +12782,12 @@ var As = ["lang"], js = {
|
|
|
12683
12782
|
} catch {}
|
|
12684
12783
|
}
|
|
12685
12784
|
}, Me = (e) => {
|
|
12686
|
-
|
|
12785
|
+
K.value = e;
|
|
12687
12786
|
}, Ne = (e) => {
|
|
12688
12787
|
L.value = e;
|
|
12689
|
-
}, Pe = r(() => Z.find((e) => e.ticker === J.value)?.type ?? "forex"), Fe = r(() => J.value || localStorage.getItem("tv:latest-symbol") || "XAU_USD");
|
|
12788
|
+
}, Pe = r(() => Z.find((e) => e.ticker === J.value)?.type ?? "forex"), Fe = r(() => l.availableIntervals == null || l.availableIntervals.includes(String(q.value))), Ie = r(() => J.value || localStorage.getItem("tv:latest-symbol") || "XAU_USD");
|
|
12690
12789
|
return v(() => {
|
|
12691
|
-
_e.current.forEach((e) => window.clearTimeout(e)),
|
|
12790
|
+
_e.current.forEach((e) => window.clearTimeout(e)), H.value = !1, p.current = null, S.value = null;
|
|
12692
12791
|
}), (t, n) => (x(), o("div", {
|
|
12693
12792
|
ref_key: "rootEl",
|
|
12694
12793
|
ref: T,
|
|
@@ -12696,8 +12795,8 @@ var As = ["lang"], js = {
|
|
|
12696
12795
|
class: g(["iccandle-selector-widget", F.value === "dark" ? "iccandle-dark" : ""])
|
|
12697
12796
|
}, [
|
|
12698
12797
|
ee(t.$slots, "default", { chartRefs: f }),
|
|
12699
|
-
u(
|
|
12700
|
-
hide: !e.isShowScannerPopup,
|
|
12798
|
+
u(lt, {
|
|
12799
|
+
hide: !e.isShowScannerPopup || !Fe.value,
|
|
12701
12800
|
"hide-scan-button": !e.isShowScanButton,
|
|
12702
12801
|
"hide-tracker-button": !e.isShowTrackerButton,
|
|
12703
12802
|
"submit-callback": e.submitCallback,
|
|
@@ -12706,21 +12805,21 @@ var As = ["lang"], js = {
|
|
|
12706
12805
|
"on-scan-click": e.onScanClick,
|
|
12707
12806
|
"set-scan-loading": he,
|
|
12708
12807
|
"on-apply-saved-timeframe": Me,
|
|
12709
|
-
"pending-scan-after-config":
|
|
12808
|
+
"pending-scan-after-config": G.value,
|
|
12710
12809
|
"on-pending-scan-handled": pe,
|
|
12711
12810
|
"trigger-scanner": le,
|
|
12712
|
-
window_size:
|
|
12811
|
+
window_size: U.value,
|
|
12713
12812
|
"current-symbol": J.value,
|
|
12714
12813
|
resolution: q.value,
|
|
12715
|
-
timeframe:
|
|
12814
|
+
timeframe: K.value,
|
|
12716
12815
|
"chart-widget": e.chartWidget,
|
|
12717
|
-
candles:
|
|
12816
|
+
candles: W.value,
|
|
12718
12817
|
"handle-start-drag": se,
|
|
12719
|
-
"handle-stop-drag":
|
|
12720
|
-
"has-active-shape":
|
|
12818
|
+
"handle-stop-drag": ce,
|
|
12819
|
+
"has-active-shape": H.value,
|
|
12721
12820
|
theme: F.value,
|
|
12722
12821
|
language: d.value,
|
|
12723
|
-
"clear-scanner-news-marks":
|
|
12822
|
+
"clear-scanner-news-marks": Ae,
|
|
12724
12823
|
"selected-candles": k.value,
|
|
12725
12824
|
"iframe-loaded": e.iframeLoaded,
|
|
12726
12825
|
"is-loading": O.value,
|
|
@@ -12745,14 +12844,14 @@ var As = ["lang"], js = {
|
|
|
12745
12844
|
"iframe-loaded",
|
|
12746
12845
|
"is-loading"
|
|
12747
12846
|
]),
|
|
12748
|
-
L.value ? (x(), i(
|
|
12847
|
+
L.value ? (x(), i(_a, {
|
|
12749
12848
|
key: 0,
|
|
12750
12849
|
open: L.value,
|
|
12751
12850
|
"onUpdate:open": Ne,
|
|
12752
12851
|
resolution: q.value,
|
|
12753
12852
|
type: Pe.value,
|
|
12754
12853
|
symbol: J.value,
|
|
12755
|
-
candles:
|
|
12854
|
+
candles: W.value,
|
|
12756
12855
|
percent: 90,
|
|
12757
12856
|
theme: F.value,
|
|
12758
12857
|
onUpgradeClick: ye
|
|
@@ -12764,12 +12863,12 @@ var As = ["lang"], js = {
|
|
|
12764
12863
|
"candles",
|
|
12765
12864
|
"theme"
|
|
12766
12865
|
])) : a("", !0),
|
|
12767
|
-
|
|
12866
|
+
ie.value ? (x(), i(or, {
|
|
12768
12867
|
key: 1,
|
|
12769
|
-
intent:
|
|
12868
|
+
intent: ie.value,
|
|
12770
12869
|
"set-resolution": Me,
|
|
12771
|
-
timeframe:
|
|
12772
|
-
"handle-close-dialog":
|
|
12870
|
+
timeframe: K.value,
|
|
12871
|
+
"handle-close-dialog": X,
|
|
12773
12872
|
"current-symbol": J.value,
|
|
12774
12873
|
theme: F.value,
|
|
12775
12874
|
onScanConfigSaved: me,
|
|
@@ -12780,10 +12879,10 @@ var As = ["lang"], js = {
|
|
|
12780
12879
|
"current-symbol",
|
|
12781
12880
|
"theme"
|
|
12782
12881
|
])) : a("", !0),
|
|
12783
|
-
A.value && j.value ? (x(), i(
|
|
12882
|
+
A.value && j.value ? (x(), i(Ia, {
|
|
12784
12883
|
key: 2,
|
|
12785
12884
|
event: j.value,
|
|
12786
|
-
symbol:
|
|
12885
|
+
symbol: Ie.value,
|
|
12787
12886
|
position: N.value,
|
|
12788
12887
|
onClose: be,
|
|
12789
12888
|
onGoToEventDetail: Se
|
|
@@ -12792,14 +12891,14 @@ var As = ["lang"], js = {
|
|
|
12792
12891
|
"symbol",
|
|
12793
12892
|
"position"
|
|
12794
12893
|
])) : a("", !0),
|
|
12795
|
-
R.value ? (x(), o("div",
|
|
12796
|
-
u(
|
|
12894
|
+
R.value ? (x(), o("div", tc)) : a("", !0),
|
|
12895
|
+
u(eo, {
|
|
12797
12896
|
theme: F.value,
|
|
12798
12897
|
style: _(ne.value)
|
|
12799
12898
|
}, null, 8, ["theme", "style"])
|
|
12800
|
-
], 10,
|
|
12899
|
+
], 10, ec));
|
|
12801
12900
|
}
|
|
12802
|
-
}),
|
|
12901
|
+
}), rc = (e) => {
|
|
12803
12902
|
let t = e?.contentWindow;
|
|
12804
12903
|
if (!t || !e?.src) return;
|
|
12805
12904
|
let n = new URL(e.src).origin, r = () => t.postMessage(JSON.stringify({
|
|
@@ -12825,14 +12924,70 @@ var As = ["lang"], js = {
|
|
|
12825
12924
|
"lookup_key"
|
|
12826
12925
|
].forEach((e) => r.searchParams.delete(e)), window.history.replaceState({}, "", r);
|
|
12827
12926
|
}
|
|
12828
|
-
},
|
|
12829
|
-
function
|
|
12927
|
+
}, ic = 60;
|
|
12928
|
+
function ac(e) {
|
|
12929
|
+
let t = e.split(".")[1];
|
|
12930
|
+
if (!t) return null;
|
|
12931
|
+
try {
|
|
12932
|
+
let e = t.replace(/-/g, "+").replace(/_/g, "/"), n = e + "=".repeat((4 - e.length % 4) % 4);
|
|
12933
|
+
return JSON.parse(atob(n));
|
|
12934
|
+
} catch {
|
|
12935
|
+
return null;
|
|
12936
|
+
}
|
|
12937
|
+
}
|
|
12938
|
+
function oc(e) {
|
|
12939
|
+
let t = ac(e);
|
|
12940
|
+
return t?.exp ? t.exp - ic > Math.floor(Date.now() / 1e3) : !1;
|
|
12941
|
+
}
|
|
12942
|
+
function sc() {
|
|
12943
|
+
if (typeof window > "u") return null;
|
|
12944
|
+
let e = localStorage.getItem(H);
|
|
12945
|
+
return !e || !oc(e) ? null : e;
|
|
12946
|
+
}
|
|
12947
|
+
//#endregion
|
|
12948
|
+
//#region src/composables/use-iccandle-auth.ts
|
|
12949
|
+
function cc() {
|
|
12950
|
+
let e = w(sc()), t = (t) => {
|
|
12951
|
+
if (t && oc(t)) {
|
|
12952
|
+
localStorage.setItem(H, t), e.value = t;
|
|
12953
|
+
return;
|
|
12954
|
+
}
|
|
12955
|
+
localStorage.removeItem(H), e.value = null;
|
|
12956
|
+
}, n = (e) => {
|
|
12957
|
+
if (e.origin !== "https://embed-iccandle-app.iccandle.ai") return;
|
|
12958
|
+
let n;
|
|
12959
|
+
try {
|
|
12960
|
+
n = typeof e.data == "string" ? JSON.parse(e.data) : e.data;
|
|
12961
|
+
} catch {
|
|
12962
|
+
return;
|
|
12963
|
+
}
|
|
12964
|
+
if (n?.name === "auth.signIn") {
|
|
12965
|
+
t(n.data?.idToken || null);
|
|
12966
|
+
return;
|
|
12967
|
+
}
|
|
12968
|
+
n?.name === "auth.signOut" && t(null);
|
|
12969
|
+
}, i = (t) => {
|
|
12970
|
+
t.key === "iccandle_token" && (e.value = sc());
|
|
12971
|
+
};
|
|
12972
|
+
return y(() => {
|
|
12973
|
+
window.addEventListener("message", n), window.addEventListener("storage", i);
|
|
12974
|
+
}), v(() => {
|
|
12975
|
+
window.removeEventListener("message", n), window.removeEventListener("storage", i);
|
|
12976
|
+
}), {
|
|
12977
|
+
isAuthenticated: r(() => !!e.value),
|
|
12978
|
+
idToken: e
|
|
12979
|
+
};
|
|
12980
|
+
}
|
|
12981
|
+
//#endregion
|
|
12982
|
+
//#region src/lib/post-selector-scan.ts
|
|
12983
|
+
var lc = "selector-scan";
|
|
12984
|
+
function uc(e) {
|
|
12830
12985
|
return {
|
|
12831
|
-
type:
|
|
12986
|
+
type: lc,
|
|
12832
12987
|
url: e
|
|
12833
12988
|
};
|
|
12834
12989
|
}
|
|
12835
|
-
function
|
|
12990
|
+
function dc(e, t) {
|
|
12836
12991
|
if (!e?.src || !e.contentWindow) return !1;
|
|
12837
12992
|
try {
|
|
12838
12993
|
let n = new URL(e.src), r = new URL(t, n.origin);
|
|
@@ -12841,14 +12996,14 @@ function Is(e, t) {
|
|
|
12841
12996
|
return !1;
|
|
12842
12997
|
}
|
|
12843
12998
|
}
|
|
12844
|
-
function
|
|
12999
|
+
function fc(e, t) {
|
|
12845
13000
|
let n = e?.contentWindow;
|
|
12846
13001
|
if (!n) return !1;
|
|
12847
13002
|
let r = "*";
|
|
12848
13003
|
try {
|
|
12849
13004
|
e?.src && (r = new URL(e.src).origin);
|
|
12850
13005
|
} catch {}
|
|
12851
|
-
return n.postMessage(JSON.stringify(
|
|
13006
|
+
return n.postMessage(JSON.stringify(uc(t)), r), !0;
|
|
12852
13007
|
}
|
|
12853
13008
|
//#endregion
|
|
12854
|
-
export {
|
|
13009
|
+
export { H as ICCANDLE_TOKEN_KEY, Ys as OPEN_PRICING_MESSAGE_TYPE, Ks as SELECTOR_LOADING_MESSAGE_TYPE, lc as SELECTOR_SCAN_MESSAGE_TYPE, z as WIDGET_RESULT_URL, nc as WidgetIccandle, dc as canSoftSelectorNavigate, fs as getCustomIndicators, rc as handleResultIframeLoad, Qs as postOpenPricingToEmbed, $s as postOpenPricingToParent, Zs as postOpenPricingToWindow, Js as postSelectorLoadingToEmbed, fc as postSelectorScanToEmbed, cc as useICCandleAuth, Ko as withPlayChart };
|