@orchidui/core 0.0.1 → 0.2.0

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.
Files changed (169) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/dist/Calendar.js +103 -0
  4. package/dist/Cropper.js +6 -0
  5. package/dist/DataDisplay/CustomerCard/OcCustomerCard.js +4 -0
  6. package/dist/DataDisplay/FloatContent/OcFloatContent.js +4 -0
  7. package/dist/DataDisplay/HorizontalProgressbar/OcHorizontalProgressbar.js +4 -0
  8. package/dist/DataDisplay/InfoCard/OcInfoCard.js +4 -0
  9. package/dist/DataDisplay/ListDetail/OcListDetail.js +4 -0
  10. package/dist/DataDisplay/ListItem/OcListItem.js +5 -0
  11. package/dist/DataDisplay/OnboardingListItem/OcOnboardingListItem.js +4 -0
  12. package/dist/DataDisplay/Overview/OcOverview.js +7 -0
  13. package/dist/DataDisplay/Pagination/OcPagination.js +6 -0
  14. package/dist/DataDisplay/ProgressBar/OcProgressBar.js +4 -0
  15. package/dist/DataDisplay/Table/OcTable.js +11 -0
  16. package/dist/DataDisplay/TransferSummary/OcTransferSummary.js +4 -0
  17. package/dist/DatePicker-D3w435Ml.js +263 -0
  18. package/dist/Disclosure/Accordion/OcAccordion.js +4 -0
  19. package/dist/Disclosure/OnboardingAccordion/OnboardingAccordion.js +4 -0
  20. package/dist/Disclosure/Steps/OcSteps.js +5 -0
  21. package/dist/Disclosure/SwitchTabs/OcSwitchTabs.js +4 -0
  22. package/dist/Disclosure/Tabs/Tabs.js +5 -0
  23. package/dist/Disclosure/Variants/OcVariants.js +5 -0
  24. package/dist/Draggable.js +168 -0
  25. package/dist/Elements/AdditionalContent/OcAdditionalContent.js +5 -0
  26. package/dist/Elements/AuthenticationOption/AuthenticationOption.js +4 -0
  27. package/dist/Elements/Box/OcBox.js +4 -0
  28. package/dist/Elements/EmptyPage/OcEmptyPage.js +4 -0
  29. package/dist/Elements/FeatureOverviewCard/OcFeatureOverviewCard.js +4 -0
  30. package/dist/Elements/Header/OcHeader.js +9 -0
  31. package/dist/Elements/PageTitle/OcPageTitle.js +7 -0
  32. package/dist/Elements/SandboxBanner/OcSandboxBanner.js +4 -0
  33. package/dist/Elements/Sidebar/OcSidebar.js +6 -0
  34. package/dist/Elements/Skeleton/OcSkeleton.js +4 -0
  35. package/dist/Elements/SubSidebar/OcSubSidebar.js +4 -0
  36. package/dist/Elements/VerificationOption/OcVerificationOption.js +4 -0
  37. package/dist/EmojiPicker.js +4 -0
  38. package/dist/Feedback/Banner/OcBanner.js +4 -0
  39. package/dist/Feedback/Chip/OcChip.js +4 -0
  40. package/dist/Feedback/ShareIcon/OcShareIcon.js +4 -0
  41. package/dist/Feedback/Snackbar/OcSnackbar.js +4 -0
  42. package/dist/Feedback/Tag/OcTag.js +4 -0
  43. package/dist/Form/BaseInput/OcBaseInput.js +4 -0
  44. package/dist/Form/Button/OcButton.js +4 -0
  45. package/dist/Form/Calendar/OcCalendar.js +5 -0
  46. package/dist/Form/CardInput/OcCardInput.js +4 -0
  47. package/dist/Form/Checkbox/OcCheckbox.js +4 -0
  48. package/dist/Form/CheckboxesGroup/OcCheckboxesGroup.js +4 -0
  49. package/dist/Form/Criteria/OcCriteria.js +4 -0
  50. package/dist/Form/Cropper/OcCropper.js +4 -0
  51. package/dist/Form/DatePicker/OcDatePicker.js +4 -0
  52. package/dist/Form/EmojiPicker/OcEmojiPicker.js +4 -0
  53. package/dist/Form/EmojiPicker/conts/emoji.js +1030 -0
  54. package/dist/Form/Input/OcInput.js +6 -0
  55. package/dist/Form/LinkInput/OcLinkInput.js +4 -0
  56. package/dist/Form/MultipleUploadFile/OcMultipleUploadFile.js +4 -0
  57. package/dist/Form/NumberInput/OcNumberInput.js +4 -0
  58. package/dist/Form/PhoneInput/OcPhoneInput.js +4 -0
  59. package/dist/Form/Radio/OcRadio.js +4 -0
  60. package/dist/Form/RadioGroup/OcRadioGroup.js +4 -0
  61. package/dist/Form/RangeInput/OcRangeInput.js +4 -0
  62. package/dist/Form/SectionItem/OcSectionItem.js +4 -0
  63. package/dist/Form/Select/OcSelect.js +7 -0
  64. package/dist/Form/SelectOptions/OcSelectOptions.js +4 -0
  65. package/dist/Form/SingleFileUpload/OcSingleFileUpload.js +4 -0
  66. package/dist/Form/Slider/OcSlider.js +4 -0
  67. package/dist/Form/TextArea/OcTextArea.js +4 -0
  68. package/dist/Form/TimePicker/OcTimePicker.js +6 -0
  69. package/dist/Form/Toggle/OcToggle.js +4 -0
  70. package/dist/Form/index.js +54 -0
  71. package/dist/FormBuilder/OcFormBuilder.js +4 -0
  72. package/dist/MediaAndIcons/Avatar/OcAvatar.js +4 -0
  73. package/dist/MediaAndIcons/Icon/OcIcon.js +4 -0
  74. package/dist/OcAccordion-DdkNsXvN.js +101 -0
  75. package/dist/OcAccountSetup-BXDjf48o.js +324 -0
  76. package/dist/OcAdditionalContent-BMSysCXu.js +612 -0
  77. package/dist/OcAuthenticationOption.vue_vue_type_script_setup_true_lang-w5Y0ymGN.js +43 -0
  78. package/dist/OcAvatar-NDXQiZvz.js +41 -0
  79. package/dist/OcBanner-Cg2WJV6e.js +108 -0
  80. package/dist/OcBox.vue_vue_type_script_setup_true_lang-aB397QRg.js +43 -0
  81. package/dist/OcCardInput-BFE4Xu-S.js +75 -0
  82. package/dist/OcCheckboxesGroup-CLbquUO2.js +94 -0
  83. package/dist/OcChip-B1hm2Qni.js +144 -0
  84. package/dist/OcComplexCalendar-x-_kg9Yk.js +108 -0
  85. package/dist/OcComplexCalendar.vue_vue_type_style_index_0_lang-CIQPD-6N.js +1006 -0
  86. package/dist/OcConfirmationModal-BfCrRV9r.js +179 -0
  87. package/dist/OcCopyTooltip.vue_vue_type_script_setup_true_lang-S2RAfV_g.js +65 -0
  88. package/dist/OcCriteria-CpIohheZ.js +42 -0
  89. package/dist/OcCropper-31Y_S1Ne.js +240 -0
  90. package/dist/OcCustomerCard-DbDOBO03.js +160 -0
  91. package/dist/OcDraggable-BjhGJmpM.js +35 -0
  92. package/dist/OcDropdownItem-DAElmzEu.js +57 -0
  93. package/dist/OcEmojiPicker-BXm-_OGK.js +157 -0
  94. package/dist/OcEmptyPage-CTwgMzRp.js +155 -0
  95. package/dist/OcExpadingTable.vue_vue_type_script_setup_true_lang-B4HOMDBK.js +815 -0
  96. package/dist/OcFeatureOverviewCard-RVyrWLVW.js +71 -0
  97. package/dist/OcFloatContent-BIKQOxSw.js +142 -0
  98. package/dist/OcFormBuilder-CRXWtt8I.js +177 -0
  99. package/dist/OcGroupOptions-ChGJvTXl.js +16 -0
  100. package/dist/OcHorizontalProgressbar.vue_vue_type_script_setup_true_lang-4eVgPDi5.js +32 -0
  101. package/dist/OcIcon-CJgBICxh.js +63 -0
  102. package/dist/OcInfoCard-DpYUZOMZ.js +81 -0
  103. package/dist/OcInput-tcRxG3Y2.js +227 -0
  104. package/dist/OcInputOption-CncASfNt.js +160 -0
  105. package/dist/OcLinkInput-C2ixk-gk.js +143 -0
  106. package/dist/OcListDetail-6XeME6ko.js +76 -0
  107. package/dist/OcListUrl.vue_vue_type_script_setup_true_lang-BEJafLuT.js +749 -0
  108. package/dist/OcModal-DdD5VFEN.js +187 -0
  109. package/dist/OcModalCropper-D2OI2iun.js +56 -0
  110. package/dist/OcModalPage-BLVa-kcB.js +86 -0
  111. package/dist/OcMultipleUploadFile-B8Wl9Fuq.js +446 -0
  112. package/dist/OcNumberInput.vue_vue_type_script_setup_true_lang-C4EXUIUe.js +90 -0
  113. package/dist/OcOnboardingListItem.vue_vue_type_script_setup_true_lang-Cr80xmnz.js +81 -0
  114. package/dist/OcOption-DK2FBGq7.js +485 -0
  115. package/dist/OcOverviewIcon-D702Ujka.js +55 -0
  116. package/dist/OcOverviewItem-DNr5tWnt.js +186 -0
  117. package/dist/OcPageTitleRight-DMtJ1qmZ.js +243 -0
  118. package/dist/OcPaginationNumber-IKPorX26.js +172 -0
  119. package/dist/OcPaymentTab-Cna1IAhO.js +170 -0
  120. package/dist/OcPhoneInput-AC6BgQhN.js +432 -0
  121. package/dist/OcPopper-C11OgQAj.js +97 -0
  122. package/dist/OcPrimaryActions-D5IprKsQ.js +222 -0
  123. package/dist/OcProgressBar-hiyC5XSc.js +33 -0
  124. package/dist/OcRadio-CRYfNwV9.js +107 -0
  125. package/dist/OcRadioGroup-DgfdWJos.js +76 -0
  126. package/dist/OcRangeInput-C-hoHFhr.js +103 -0
  127. package/dist/OcSandboxBanner.vue_vue_type_script_setup_true_lang-BD0k_8xa.js +37 -0
  128. package/dist/OcSectionItem-BFgxO3se.js +84 -0
  129. package/dist/OcSelectOptions-BQlG_EUA.js +148 -0
  130. package/dist/OcShareIcon-BB-NPq0r.js +53 -0
  131. package/dist/OcSingleFileUpload-B8-e1H5t.js +464 -0
  132. package/dist/OcSkeleton-BdPTmGh0.js +13 -0
  133. package/dist/OcSlider-Bsi-ckbP.js +124 -0
  134. package/dist/OcSnackbar-CKxY1-ej.js +196 -0
  135. package/dist/OcSteps.vue_vue_type_script_setup_true_lang-CXGy8ma_.js +87 -0
  136. package/dist/OcSubSidebar.vue_vue_type_script_setup_true_lang-CNxgU07N.js +60 -0
  137. package/dist/OcSupportMenu.vue_vue_type_script_setup_true_lang-DrjZsWti.js +114 -0
  138. package/dist/OcSwitchTabs-CYp676bj.js +31 -0
  139. package/dist/OcTabToSelect-BHAz1Niv.js +183 -0
  140. package/dist/OcTag.vue_vue_type_script_setup_true_lang-D19lw-8Y.js +26 -0
  141. package/dist/OcTextArea-BpV1Bnj_.js +78 -0
  142. package/dist/OcTheme-CWgrJh5Q.js +25 -0
  143. package/dist/OcTimePicker-B61MCi0D.js +110 -0
  144. package/dist/OcTimePopup-zQFKCZLk.js +131 -0
  145. package/dist/OcToggle-C0wTjM_Y.js +54 -0
  146. package/dist/OcTransferSummary-Bk2GXhrT.js +67 -0
  147. package/dist/OcVariant.vue_vue_type_script_setup_true_lang-CY_82DLc.js +99 -0
  148. package/dist/OcVerificationOption.vue_vue_type_script_setup_true_lang-ChqvNoDe.js +59 -0
  149. package/dist/OcWhiteList.vue_vue_type_script_setup_true_lang-DI9pYU3w.js +64 -0
  150. package/dist/OnboardingAccordion.vue_vue_type_script_setup_true_lang-B0Z7ETmj.js +113 -0
  151. package/dist/Overlay/ConfirmationModal/OcConfirmationModal.js +4 -0
  152. package/dist/Overlay/CopyTooltip/OcCopyTooltip.js +4 -0
  153. package/dist/Overlay/Dropdown/OcDropdown.js +6 -0
  154. package/dist/Overlay/Modal/OcModal.js +6 -0
  155. package/dist/Overlay/Popper/OcPopper.js +4 -0
  156. package/dist/Overlay/SupportMenu/OcSupportMenu.js +4 -0
  157. package/dist/Overlay/Tooltip/OcTooltip.js +4 -0
  158. package/dist/Overlay/Whitelist/OcWhiteList.js +4 -0
  159. package/dist/StoreDesign.js +240 -0
  160. package/dist/Theme/OcTheme.js +4 -0
  161. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
  162. package/dist/composables/helpers.js +48 -0
  163. package/dist/composables/uploadFileProgress.js +62 -0
  164. package/dist/composables/useWindowWidth.js +10 -0
  165. package/dist/data/Validator.js +5 -0
  166. package/dist/directives/clickOutside.js +13 -0
  167. package/dist/index.js +177 -1
  168. package/dist/style.css +1 -0
  169. package/package.json +23 -5
@@ -0,0 +1,64 @@
1
+ import { defineComponent as a, openBlock as l, createElementBlock as m, createElementVNode as t, renderSlot as s, createTextVNode as p, toDisplayString as r, createBlock as d, unref as n, normalizeProps as f, mergeProps as c, createCommentVNode as u, createVNode as g } from "vue";
2
+ import "dayjs";
3
+ import { B as x } from "./OcComplexCalendar.vue_vue_type_style_index_0_lang-CIQPD-6N.js";
4
+ /* empty css */
5
+ import { _ as h } from "./OcTag.vue_vue_type_script_setup_true_lang-D19lw-8Y.js";
6
+ import "libphonenumber-js";
7
+ /* empty css */
8
+ import "v-calendar";
9
+ /* empty css */
10
+ import "./Cropper.js";
11
+ import "vue-draggable-next";
12
+ import "@popperjs/core";
13
+ const y = { class: "flex justify-center pt-[75px] items-start backdrop-blur-sm" }, _ = { class: "bg-white relative z-10 rounded pb-3 max-w-[320px] w-[96vw] shadow" }, b = { class: "flex flex-col gap-y-7 p-5" }, v = { class: "min-w-[142px] pt-7 flex justify-center items-center" }, w = ["src"], j = { class: "flex text-center flex-col gap-y-3" }, O = { class: "text-lg flex justify-center gap-x-3 items-center font-medium" }, P = { class: "text-oc-text-400" }, k = { class: "py-6 px-5 flex items-center justify-center" }, R = /* @__PURE__ */ a({
14
+ __name: "OcWhiteList",
15
+ props: {
16
+ buttonProps: {
17
+ type: Object,
18
+ default: () => ({})
19
+ },
20
+ tagOptions: {
21
+ type: Object,
22
+ default: () => null
23
+ },
24
+ title: String,
25
+ imagePath: String,
26
+ description: String
27
+ },
28
+ setup(e) {
29
+ return (o, i) => (l(), m("div", y, [
30
+ i[0] || (i[0] = t("div", { class: "absolute w-full h-full top-0 left-0 bg-oc-gray-50 opacity-80" }, null, -1)),
31
+ t("div", _, [
32
+ t("div", b, [
33
+ s(o.$slots, "logo", {}, () => [
34
+ t("div", v, [
35
+ t("img", {
36
+ src: e.imagePath,
37
+ alt: "logo"
38
+ }, null, 8, w)
39
+ ])
40
+ ]),
41
+ t("div", j, [
42
+ t("div", O, [
43
+ p(r(e.title) + " ", 1),
44
+ e.tagOptions ? (l(), d(n(h), f(c({ key: 0 }, e.tagOptions)), null, 16)) : u("", !0)
45
+ ]),
46
+ t("span", P, r(e.description), 1)
47
+ ]),
48
+ s(o.$slots, "bottom")
49
+ ]),
50
+ t("div", k, [
51
+ s(o.$slots, "footer", {}, () => [
52
+ g(n(x), c({
53
+ label: "Request Access",
54
+ class: "w-fit"
55
+ }, e.buttonProps), null, 16)
56
+ ])
57
+ ])
58
+ ])
59
+ ]));
60
+ }
61
+ });
62
+ export {
63
+ R as _
64
+ };
@@ -0,0 +1,113 @@
1
+ import { defineComponent as g, computed as y, openBlock as l, createElementBlock as f, normalizeClass as c, renderSlot as d, createBlock as b, unref as v, ref as p, watch as x, createElementVNode as o, createVNode as m, toDisplayString as u } from "vue";
2
+ import "dayjs";
3
+ import "./OcComplexCalendar.vue_vue_type_style_index_0_lang-CIQPD-6N.js";
4
+ import { _ as h } from "./OcIcon-CJgBICxh.js";
5
+ /* empty css */
6
+ import "libphonenumber-js";
7
+ /* empty css */
8
+ import "v-calendar";
9
+ /* empty css */
10
+ import "./Cropper.js";
11
+ import "vue-draggable-next";
12
+ import "@popperjs/core";
13
+ const _ = /* @__PURE__ */ g({
14
+ __name: "OnboardingStatusIcon",
15
+ props: {
16
+ variant: {
17
+ type: String,
18
+ default: "current",
19
+ validator: (e) => ["completed", "not_completed", "current", "partially_completed", "pending", "error"].includes(
20
+ e
21
+ )
22
+ }
23
+ },
24
+ setup(e) {
25
+ const t = e, r = y(() => !["completed", "error", "pending"].includes(t.variant)), a = {
26
+ completed: "check-2",
27
+ pending: "time",
28
+ error: "filled-x-circle"
29
+ }, i = {
30
+ completed: "text-white bg-oc-primary",
31
+ pending: "text-oc-warning border border-oc-warning",
32
+ error: "text-oc-error border border-oc-error",
33
+ not_completed: "border border-oc-gray-300",
34
+ partially_completed: "border-2 border-dashed border-oc-primary",
35
+ current: "border border-oc-gray-800"
36
+ }, n = {
37
+ completed: 12,
38
+ error: 18,
39
+ pending: 18
40
+ };
41
+ return (s, $) => (l(), f("div", {
42
+ class: c(["rounded-full w-7 h-7 flex items-center justify-center", i[e.variant]])
43
+ }, [
44
+ r.value ? d(s.$slots, "default", { key: 0 }) : (l(), b(v(h), {
45
+ key: 1,
46
+ width: n[e.variant],
47
+ height: n[e.variant],
48
+ name: a[e.variant]
49
+ }, null, 8, ["width", "height", "name"]))
50
+ ], 2));
51
+ }
52
+ }), w = { class: "flex items-center flex-1 gap-x-4" }, S = { class: "flex flex-col gap-y-1" }, k = { class: "font-medium" }, B = { class: "text-oc-text-400 text-sm" }, q = /* @__PURE__ */ g({
53
+ __name: "OnboardingAccordion",
54
+ props: {
55
+ description: {
56
+ type: String,
57
+ default: ""
58
+ },
59
+ title: {
60
+ type: String,
61
+ default: ""
62
+ },
63
+ isBorder: {
64
+ type: Boolean,
65
+ default: !1
66
+ },
67
+ variant: {
68
+ type: String,
69
+ default: "current",
70
+ validator: (e) => ["completed", "not_completed", "current", "partially_completed", "pending", "error"].includes(
71
+ e
72
+ )
73
+ }
74
+ },
75
+ setup(e) {
76
+ const t = p(), r = p(!1), a = () => {
77
+ t.value && (t.value.style.height = r.value ? `${t.value.scrollHeight}px` : "0px");
78
+ }, i = () => {
79
+ r.value = !r.value, a();
80
+ };
81
+ return x(() => t.value, a), (n, s) => (l(), f("div", {
82
+ class: c(["hover:bg-oc-gray-50 border overflow-hidden", e.isBorder ? "border-oc-gray-200 rounded" : "border-transparent"])
83
+ }, [
84
+ o("div", {
85
+ class: "px-7 items-center py-5 flex gap-x-7",
86
+ onClick: i
87
+ }, [
88
+ o("div", w, [
89
+ m(_, { variant: e.variant }, null, 8, ["variant"]),
90
+ o("div", S, [
91
+ o("span", k, u(e.title), 1),
92
+ o("span", B, u(e.description), 1)
93
+ ])
94
+ ]),
95
+ d(n.$slots, "button-group"),
96
+ m(v(h), {
97
+ name: "chevron-down",
98
+ class: c(["text-oc-text-400 transition duration-300", r.value ? "rotate-180" : ""])
99
+ }, null, 8, ["class"])
100
+ ]),
101
+ o("div", {
102
+ ref_key: "bodyWrapper",
103
+ ref: t,
104
+ class: "transition-all duration-300"
105
+ }, [
106
+ d(n.$slots, "default")
107
+ ], 512)
108
+ ], 2));
109
+ }
110
+ });
111
+ export {
112
+ q as _
113
+ };
@@ -0,0 +1,4 @@
1
+ import { _ as r } from "../../OcConfirmationModal-BfCrRV9r.js";
2
+ export {
3
+ r as ConfirmationModal
4
+ };
@@ -0,0 +1,4 @@
1
+ import { _ as r } from "../../OcCopyTooltip.vue_vue_type_script_setup_true_lang-S2RAfV_g.js";
2
+ export {
3
+ r as CopyTooltip
4
+ };
@@ -0,0 +1,6 @@
1
+ import { D as p } from "../../OcComplexCalendar.vue_vue_type_style_index_0_lang-CIQPD-6N.js";
2
+ import { _ as m } from "../../OcDropdownItem-DAElmzEu.js";
3
+ export {
4
+ p as Dropdown,
5
+ m as DropdownItem
6
+ };
@@ -0,0 +1,6 @@
1
+ import { _ as r } from "../../OcModal-DdD5VFEN.js";
2
+ import { _ as d } from "../../OcModalPage-BLVa-kcB.js";
3
+ export {
4
+ r as Modal,
5
+ d as OcModalPage
6
+ };
@@ -0,0 +1,4 @@
1
+ import { _ as r } from "../../OcPopper-C11OgQAj.js";
2
+ export {
3
+ r as Popper
4
+ };
@@ -0,0 +1,4 @@
1
+ import { _ as r } from "../../OcSupportMenu.vue_vue_type_script_setup_true_lang-DrjZsWti.js";
2
+ export {
3
+ r as SupportMenu
4
+ };
@@ -0,0 +1,4 @@
1
+ import { T as r } from "../../OcComplexCalendar.vue_vue_type_style_index_0_lang-CIQPD-6N.js";
2
+ export {
3
+ r as Tooltip
4
+ };
@@ -0,0 +1,4 @@
1
+ import { _ as i } from "../../OcWhiteList.vue_vue_type_script_setup_true_lang-DI9pYU3w.js";
2
+ export {
3
+ i as WhiteList
4
+ };
@@ -0,0 +1,240 @@
1
+ import { openBlock as s, createElementBlock as a, normalizeClass as u, createElementVNode as i, Fragment as k, createVNode as c, unref as l, createTextVNode as v, toDisplayString as o, createBlock as x, withCtx as $, createCommentVNode as h, computed as b, renderList as z } from "vue";
2
+ import "dayjs";
3
+ import { B as m } from "./OcComplexCalendar.vue_vue_type_style_index_0_lang-CIQPD-6N.js";
4
+ import { _ as w } from "./OcIcon-CJgBICxh.js";
5
+ import { _ as p } from "./OcChip-B1hm2Qni.js";
6
+ /* empty css */
7
+ import "libphonenumber-js";
8
+ /* empty css */
9
+ import "v-calendar";
10
+ /* empty css */
11
+ import "./Cropper.js";
12
+ import "vue-draggable-next";
13
+ import "@popperjs/core";
14
+ import { _ as A } from "./_plugin-vue_export-helper-CHgC5LLL.js";
15
+ const F = { class: "w-full relative group" }, B = {
16
+ key: 0,
17
+ class: "m-auto"
18
+ }, S = {
19
+ key: 1,
20
+ class: "m-auto flex gap-3"
21
+ }, j = {
22
+ key: 2,
23
+ class: "m-auto flex gap-3"
24
+ }, E = {
25
+ key: 1,
26
+ class: "m-auto bg-white/75 rounded p-5 flex text-center flex-col justify-center"
27
+ }, N = { class: "mx-auto mb-3" }, O = ["src", "alt"], V = { class: "p-4 flex items-center" }, q = { class: "w-full" }, D = { class: "text-md font-medium" }, R = { class: "text-oc-text-400 text-sm mt-1" }, U = { class: "h-full flex items-start" }, xe = {
28
+ __name: "ThumbnailTheme",
29
+ props: {
30
+ theme: Object,
31
+ activating: Boolean,
32
+ isFreeAccount: Boolean
33
+ },
34
+ emits: ["activate", "customize", "preview", "upgrade", "publish"],
35
+ setup(e) {
36
+ return (n, t) => (s(), a("div", {
37
+ class: u(["bg-oc-bg-dark border-[3px] rounded-lg flex flex-col", e.theme.active ? "border-oc-primary" : "border-oc-bg-dark"])
38
+ }, [
39
+ i("div", F, [
40
+ i("div", {
41
+ class: u(["w-full h-full bg-black/25 absolute top-0 left-0 group-hover:flex rounded-t-lg", e.activating ? "flex" : "hidden"])
42
+ }, [
43
+ e.activating ? (s(), a("div", E, [
44
+ i("div", N, [
45
+ c(l(w), {
46
+ name: "loading-2",
47
+ width: "32",
48
+ height: "32",
49
+ class: "text-oc-text-400 motion-safe:animate-spin"
50
+ })
51
+ ]),
52
+ t[6] || (t[6] = v(" Adding theme "))
53
+ ])) : (s(), a(k, { key: 0 }, [
54
+ e.theme.active ? (s(), a("div", B, [
55
+ c(l(m), {
56
+ variant: "secondary",
57
+ label: "Customize",
58
+ onClick: t[0] || (t[0] = (r) => n.$emit("customize", e.theme))
59
+ })
60
+ ])) : e.theme.draft ? (s(), a("div", S, [
61
+ c(l(m), {
62
+ variant: "secondary",
63
+ label: "Customize",
64
+ onClick: t[1] || (t[1] = (r) => n.$emit("customize", e.theme))
65
+ }),
66
+ c(l(m), {
67
+ label: "Publish",
68
+ onClick: t[2] || (t[2] = (r) => n.$emit("publish", e.theme))
69
+ })
70
+ ])) : (s(), a("div", j, [
71
+ c(l(m), {
72
+ variant: "secondary",
73
+ label: "Preview",
74
+ onClick: t[3] || (t[3] = (r) => n.$emit("preview", e.theme))
75
+ }),
76
+ c(l(m), {
77
+ label: e.isFreeAccount ? "Activate" : "Try Theme",
78
+ onClick: t[4] || (t[4] = (r) => n.$emit("activate", e.theme))
79
+ }, null, 8, ["label"])
80
+ ]))
81
+ ], 64))
82
+ ], 2),
83
+ i("img", {
84
+ class: "w-full rounded-t-md",
85
+ src: e.theme.thumbnail,
86
+ alt: e.theme.title
87
+ }, null, 8, O)
88
+ ]),
89
+ i("div", V, [
90
+ i("div", q, [
91
+ i("div", D, o(e.theme.title), 1),
92
+ i("div", R, o(e.theme.description), 1)
93
+ ]),
94
+ i("div", U, [
95
+ e.theme.active ? (s(), x(l(p), {
96
+ key: 0,
97
+ class: "ml-auto"
98
+ }, {
99
+ default: $(() => t[7] || (t[7] = [
100
+ v("Active")
101
+ ])),
102
+ _: 1
103
+ })) : e.theme.draft ? (s(), x(l(p), {
104
+ key: 1,
105
+ variant: "gray",
106
+ class: "ml-auto"
107
+ }, {
108
+ default: $(() => t[8] || (t[8] = [
109
+ v("Draft")
110
+ ])),
111
+ _: 1
112
+ })) : e.theme.pro ? (s(), x(l(p), {
113
+ key: 2,
114
+ class: "ml-auto",
115
+ variant: "accent-2",
116
+ onClick: t[5] || (t[5] = (r) => n.$emit("upgrade", e.theme))
117
+ }, {
118
+ default: $(() => t[9] || (t[9] = [
119
+ v("Upgrade")
120
+ ])),
121
+ _: 1
122
+ })) : h("", !0)
123
+ ])
124
+ ])
125
+ ], 2));
126
+ }
127
+ }, I = { class: "flex flex-col" }, L = { class: "w-full relative group" }, G = { class: "w-full h-full bg-black/25 absolute top-0 left-0 hidden group-hover:flex rounded-lg" }, H = { class: "w-full px-6 gap-3 m-auto flex" }, J = ["src", "alt"], K = { class: "mt-4 text-md text-center" }, ge = {
128
+ __name: "ThumbnailSection",
129
+ props: {
130
+ section: Object
131
+ },
132
+ emits: ["add", "customize"],
133
+ setup(e) {
134
+ return (n, t) => (s(), a("div", I, [
135
+ i("div", L, [
136
+ i("div", G, [
137
+ i("div", H, [
138
+ c(l(m), {
139
+ class: "w-1/2",
140
+ variant: "secondary",
141
+ label: "Customize",
142
+ size: "small",
143
+ onClick: t[0] || (t[0] = (r) => n.$emit("customize", e.section))
144
+ }),
145
+ c(l(m), {
146
+ class: "w-1/2",
147
+ label: "Add",
148
+ size: "small",
149
+ onClick: t[1] || (t[1] = (r) => n.$emit("add", e.section))
150
+ })
151
+ ])
152
+ ]),
153
+ i("img", {
154
+ class: "w-full",
155
+ src: e.section.preview,
156
+ alt: e.section.title
157
+ }, null, 8, J)
158
+ ]),
159
+ i("div", K, o(e.section.title), 1)
160
+ ]));
161
+ }
162
+ }, M = { class: "z-10 flex flex-col gap-4 p-9 relative" }, Q = { class: "flex items-center gap-4" }, W = { class: "font-medium text-xl" }, X = { class: "flex gap-3 items-center mb-5" }, Y = { class: "flex items-start gap-2" }, Z = { class: "text-[24px] font-medium tracking-tighter" }, _ = { class: "text-[40px] leading-none font-medium" }, ee = { key: 0 }, te = {
163
+ __name: "SubPlanCard",
164
+ props: {
165
+ planTier: {
166
+ type: Object,
167
+ required: !0
168
+ },
169
+ isPlanActive: Boolean
170
+ },
171
+ emits: ["select"],
172
+ setup(e, { emit: n }) {
173
+ const t = e, r = n, f = b(() => t.planTier.name === "Free"), T = b(() => t.planTier.name === "Pro"), g = b(() => t.planTier.name === "Plus"), C = b(() => t.planTier.billing_frequency === "monthly") ? "/month" : "/year", P = b(() => t.planTier.name === "free" ? "For individual who just starting their business" : t.planTier.name === "pro" ? "For business who needs more features to increase their sales" : "For business who want in-depth analytics to win business and work");
174
+ return (ie, d) => (s(), a("div", {
175
+ class: u(["tier-card rounded relative shadow-sm max-w-[300px]", {
176
+ "!bg-oc-bg-dark border border-oc-gray-200": f.value,
177
+ "tier-card--pro border border-oc-gray-200": T.value,
178
+ "tier-card--plus bg-oc-gray-900 text-white": g.value,
179
+ "border-2 border-oc-primary-500": e.isPlanActive
180
+ }])
181
+ }, [
182
+ i("div", M, [
183
+ i("div", Q, [
184
+ i("span", W, o(e.planTier.name), 1),
185
+ e.isPlanActive ? (s(), x(l(p), {
186
+ key: 0,
187
+ label: "Current Plan"
188
+ })) : h("", !0)
189
+ ]),
190
+ i("div", {
191
+ class: u(["text-oc-text-400 text-sm mb-5", { "!text-oc-text-200": g.value }])
192
+ }, o(P.value), 3),
193
+ i("div", X, [
194
+ i("div", Y, [
195
+ i("span", Z, o(e.planTier.currency.toUpperCase()), 1),
196
+ i("span", _, o(e.planTier.price), 1)
197
+ ]),
198
+ f.value ? h("", !0) : (s(), a("span", {
199
+ key: 0,
200
+ class: u(["text-oc-text-400 text-base", { "!text-oc-text-200": g.value }])
201
+ }, o(l(C)), 3))
202
+ ]),
203
+ e.isPlanActive ? h("", !0) : (s(), x(l(m), {
204
+ key: 0,
205
+ label: f.value ? "Change to Free" : "Start 14 day trial",
206
+ variant: f.value ? "secondary" : "primary",
207
+ size: "big",
208
+ class: "mb-5",
209
+ onClick: d[0] || (d[0] = (y) => r("select"))
210
+ }, null, 8, ["label", "variant"])),
211
+ i("div", {
212
+ class: u(["flex flex-col gap-3", { "text-oc-text-200": g.value }])
213
+ }, [
214
+ f.value ? h("", !0) : (s(), a("span", ee, [
215
+ d[1] || (d[1] = v(" Everything on ")),
216
+ i("strong", null, o(e.planTier.code === "tier_s" ? "FREE" : "PRO"), 1),
217
+ d[2] || (d[2] = v(" includes: "))
218
+ ])),
219
+ (s(!0), a(k, null, z(e.planTier.features, (y) => (s(), a("span", {
220
+ key: y.id,
221
+ class: "flex gap-3 items-center"
222
+ }, [
223
+ c(l(w), {
224
+ name: "check-fill",
225
+ class: "text-oc-primary-500",
226
+ height: "16",
227
+ width: "16"
228
+ }),
229
+ i("span", null, o(y.name), 1)
230
+ ]))), 128))
231
+ ], 2)
232
+ ])
233
+ ], 2));
234
+ }
235
+ }, pe = /* @__PURE__ */ A(te, [["__scopeId", "data-v-1c173638"]]);
236
+ export {
237
+ pe as SubPlanCard,
238
+ ge as ThumbnailSection,
239
+ xe as ThumbnailTheme
240
+ };
@@ -0,0 +1,4 @@
1
+ import { _ as o } from "../OcTheme-CWgrJh5Q.js";
2
+ export {
3
+ o as Theme
4
+ };
@@ -0,0 +1,9 @@
1
+ const s = (t, r) => {
2
+ const o = t.__vccOpts || t;
3
+ for (const [c, e] of r)
4
+ o[c] = e;
5
+ return o;
6
+ };
7
+ export {
8
+ s as _
9
+ };
@@ -0,0 +1,48 @@
1
+ const k = (e) => {
2
+ let i = {};
3
+ try {
4
+ document.cookie.split(";").forEach(function(n) {
5
+ let [t, c] = n.split("=");
6
+ i[t.trim()] = c;
7
+ });
8
+ } catch (n) {
9
+ console.log(n);
10
+ }
11
+ return i[e] ?? "";
12
+ }, p = (e, i, n = 9600) => {
13
+ let t = /* @__PURE__ */ new Date();
14
+ t.setTime(t.getTime() + n * 60 * 60 * 1e3);
15
+ try {
16
+ document.cookie = `${e}=${i};expires=${t.toUTCString()};path=/;domain=.${window.location.hostname};Secure;SameSite=Lax`;
17
+ } catch (c) {
18
+ console.log(c);
19
+ }
20
+ }, m = (e, i = {}) => {
21
+ const { isAmountInput: n } = i, t = [];
22
+ n && t.push(["."]), !(e.key >= "0" && e.key <= "9" || e.key === "ArrowLeft" || e.key === "ArrowRight" || e.key === "Tab" || e.key === "Backspace" || e.key.startsWith("F") && e.key.length > 1 && !isNaN(e.key.substring(1)) || e.metaKey || t.includes(e.key)) && e.preventDefault();
23
+ }, a = (e, i) => {
24
+ const n = e.match(/oc-emit/), t = e.match(/oc-end-emit/);
25
+ if (n && t) {
26
+ let c = e.substring(n.index, t.index) + "oc-end-emit", o = e.substring(n.index, t.index).replace("[", "").replace("]", "").replace("oc-emit", ""), r = `<span class="underline font-medium">${o.split("|")[2].replace("-", " ")}</span>`;
27
+ return i && i(c, o.split("|")), e.replace(c, r);
28
+ } else
29
+ return e;
30
+ }, u = (e, i) => {
31
+ let n = document.createElement("div");
32
+ n.innerHTML = e;
33
+ let t = n.textContent || n.innerText || "";
34
+ n.remove();
35
+ const c = t.match(/oc-link/), o = t.match(/oc-end-link/);
36
+ if (c && o) {
37
+ let r = t.substring(c.index, o.index) + "oc-end-link", l = t.substring(c.index, o.index).replace("[", "").replace("]", "").replace("oc-link", ""), s = `<a target="_blank" class="text-oc-accent-1" href="${l.split("|")[1]}">${l.split("|")[0].replace("-", " ")}</a>`;
38
+ return t.replace(r, s);
39
+ } else
40
+ return a(t, i);
41
+ };
42
+ export {
43
+ k as getCookie,
44
+ a as getTextWithAction,
45
+ u as getTextWithLink,
46
+ m as preventEventIfNotNumberInput,
47
+ p as setCookie
48
+ };
@@ -0,0 +1,62 @@
1
+ import { ref as p } from "vue";
2
+ const g = (u, n) => {
3
+ const d = n.split(","), f = u.name.split(".").pop().toLowerCase();
4
+ return d.find((t) => t.includes(f));
5
+ }, h = (u, n, d, f = !1) => {
6
+ const t = p([]), c = p(!1), v = (l, o = !1) => {
7
+ const e = [...l.target.files].filter((a) => {
8
+ const s = !t.value.some((i) => i.fileName === a.name);
9
+ if (s || n("fileExist"), f) {
10
+ const i = g(a, d);
11
+ return i || n("invalidFileType"), s && i;
12
+ } else
13
+ return s;
14
+ });
15
+ if (c.value = e.reduce((a, s) => a + s.size, 0) > u * 1024 * 1024, c.value) {
16
+ n("onExceedMaxFileSize", e);
17
+ return;
18
+ }
19
+ for (let a = 0; a < e.length; a++) {
20
+ const s = e[a], i = new FileReader();
21
+ new FormData().append("file", s), t.value.unshift({
22
+ file: s,
23
+ fileName: s.name,
24
+ link: s.link,
25
+ progress: 0,
26
+ fileUrl: "",
27
+ totalSize: 0,
28
+ isLoaded: !1,
29
+ extension: s.name.split(".").at(-1) || "png"
30
+ }), n("update:modelValue", o ? t.value[0] : t.value), s && (F(i, a), i.readAsDataURL(s));
31
+ }
32
+ }, r = (l, o, e) => {
33
+ if (!l.type) return;
34
+ const a = () => {
35
+ t.value[e].totalSize = l.total;
36
+ }, s = () => {
37
+ t.value[e].fileUrl = o.result, t.value[e].isLoaded = !0;
38
+ };
39
+ ({
40
+ loadstart: a,
41
+ loadend: s,
42
+ load: s,
43
+ progress: () => {
44
+ t.value[e].progress = Number((l.loaded / t.value[e].totalSize).toFixed(2)) * 100;
45
+ }
46
+ })[l.type]();
47
+ }, F = (l, o) => {
48
+ l.addEventListener("loadstart", (e) => r(e, l, o)), l.addEventListener("load", (e) => r(e, l, o)), l.addEventListener("loadend", (e) => r(e, l, o)), l.addEventListener("progress", (e) => r(e, l, o)), l.addEventListener("error", (e) => r(e, l, o)), l.addEventListener("abort", (e) => r(e, l, o));
49
+ };
50
+ return {
51
+ isErrorMaxSize: c,
52
+ currentFiles: t,
53
+ onChangeFile: v,
54
+ onDeleteFile: (l) => {
55
+ let o = t.value.find((e, a) => a === l);
56
+ t.value = t.value.filter((e) => e !== o), n("onRemoveFile", o), n("update:modelValue", t.value.length > 0 ? t.value : null);
57
+ }
58
+ };
59
+ };
60
+ export {
61
+ h as useUploadFileProgress
62
+ };
@@ -0,0 +1,10 @@
1
+ import { ref as o, onMounted as i, onBeforeUnmount as t } from "vue";
2
+ const d = () => {
3
+ const e = o(window.innerWidth < 768), n = () => e.value = window.innerWidth < 768;
4
+ return i(() => window.addEventListener("resize", n)), t(() => window.removeEventListener("resize", n)), {
5
+ isMobile: e
6
+ };
7
+ };
8
+ export {
9
+ d as useWindowWidth
10
+ };
@@ -0,0 +1,5 @@
1
+ const o = () => {
2
+ };
3
+ export {
4
+ o as validator
5
+ };
@@ -0,0 +1,13 @@
1
+ const i = {
2
+ beforeMount(t, c) {
3
+ t.clickOutsideEvent = function(e) {
4
+ document.contains(e.target) && !(t === e.target || t.contains(e.target)) && c.value(e);
5
+ }, document.addEventListener("click", t.clickOutsideEvent);
6
+ },
7
+ unmounted(t) {
8
+ document.removeEventListener("click", t.clickOutsideEvent);
9
+ }
10
+ };
11
+ export {
12
+ i as clickOutside
13
+ };