@onereach/ui-components 23.2.0 → 23.2.1-beta.5570.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.
- package/dist/esm/{OrConfirm-C9pmyc_f.mjs → OrConfirm-BKXhawH9.mjs} +31 -25
- package/dist/esm/OrConfirm-BKXhawH9.mjs.map +1 -0
- package/dist/esm/components/index.mjs +1 -1
- package/dist/esm/components/or-confirm-v3/index.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/types/components/or-confirm-v3/OrConfirm.vue.d.ts +9 -0
- package/package.json +4 -5
- package/dist/esm/OrConfirm-C9pmyc_f.mjs.map +0 -1
|
@@ -5,7 +5,7 @@ import { O as R } from "./OrInput-DBcNZlkx.mjs";
|
|
|
5
5
|
import { O as U } from "./OrOverlay-BjrghiC-.mjs";
|
|
6
6
|
import { useMagicKeys as G, whenever as J, onClickOutside as Q } from "@vueuse/core";
|
|
7
7
|
import { logicAnd as W } from "@vueuse/math";
|
|
8
|
-
import { defineComponent as X, ref as l, computed as t, toRef as Y, watch as c, resolveComponent as
|
|
8
|
+
import { defineComponent as X, ref as l, computed as t, toRef as Y, watch as c, resolveComponent as k, openBlock as P, createBlock as Z, withCtx as S, createElementVNode as a, mergeProps as x, normalizeClass as i, renderSlot as b, createTextVNode as w, toDisplayString as T, createElementBlock as _, createVNode as I, createCommentVNode as N } from "vue";
|
|
9
9
|
import { _ as oo } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
10
10
|
var s = /* @__PURE__ */ ((o) => (o.D = "d", o.C = "c", o))(s || {});
|
|
11
11
|
const eo = [
|
|
@@ -87,6 +87,10 @@ const eo = [
|
|
|
87
87
|
type: Boolean,
|
|
88
88
|
default: !0
|
|
89
89
|
},
|
|
90
|
+
closeOnClickOutside: {
|
|
91
|
+
type: Boolean,
|
|
92
|
+
default: !0
|
|
93
|
+
},
|
|
90
94
|
cancelButtonText: {
|
|
91
95
|
type: String,
|
|
92
96
|
default: "Cancel"
|
|
@@ -140,17 +144,17 @@ const eo = [
|
|
|
140
144
|
]), B = t(() => [
|
|
141
145
|
...ro,
|
|
142
146
|
...lo[o.confirmType]
|
|
143
|
-
]),
|
|
147
|
+
]), d = t(() => [
|
|
144
148
|
...ao
|
|
145
|
-
]), { state: $, open: A, close:
|
|
149
|
+
]), { state: $, open: A, close: f } = K(Y(o, "isOpen"), n.emit), m = l(!1), O = l("");
|
|
146
150
|
c($, () => {
|
|
147
151
|
O.value = "";
|
|
148
152
|
});
|
|
149
|
-
const { escape: F, enter: q } = G(),
|
|
153
|
+
const { escape: F, enter: q } = G(), v = t(() => !!o.confirmationText && o.confirmationText !== O.value), E = t(() => !!o.disabled || v.value), L = t(
|
|
150
154
|
() => o.confirmType === s.C ? D.Primary : D.Danger
|
|
151
155
|
);
|
|
152
|
-
function
|
|
153
|
-
!o.disabled && !
|
|
156
|
+
function h() {
|
|
157
|
+
!o.disabled && !v.value && n.emit("confirm");
|
|
154
158
|
}
|
|
155
159
|
function j() {
|
|
156
160
|
m.value = !0;
|
|
@@ -159,10 +163,10 @@ const eo = [
|
|
|
159
163
|
m.value = !1;
|
|
160
164
|
}
|
|
161
165
|
function H() {
|
|
162
|
-
|
|
166
|
+
h(), o.autoCloseOnConfirm && f();
|
|
163
167
|
}
|
|
164
168
|
return c(F, (e) => {
|
|
165
|
-
e &&
|
|
169
|
+
e && f();
|
|
166
170
|
}), c(y, (e) => {
|
|
167
171
|
var r;
|
|
168
172
|
return (r = e == null ? void 0 : e.focus) == null ? void 0 : r.call(e);
|
|
@@ -171,13 +175,15 @@ const eo = [
|
|
|
171
175
|
const r = e.root;
|
|
172
176
|
r == null || r.focus();
|
|
173
177
|
}
|
|
174
|
-
}), J(W(q, m), () =>
|
|
178
|
+
}), J(W(q, m), () => h()), Q(p, () => {
|
|
179
|
+
o.closeOnClickOutside && f();
|
|
180
|
+
}), {
|
|
175
181
|
root: p,
|
|
176
182
|
confirmationInput: y,
|
|
177
183
|
confirmationButton: C,
|
|
178
184
|
confirmationValue: O,
|
|
179
185
|
confirmButtonColor: L,
|
|
180
|
-
isInvalid:
|
|
186
|
+
isInvalid: v,
|
|
181
187
|
isConfirmationButtonDisabled: E,
|
|
182
188
|
state: $,
|
|
183
189
|
isInputActive: m,
|
|
@@ -186,23 +192,23 @@ const eo = [
|
|
|
186
192
|
headerStyles: g,
|
|
187
193
|
inputBoxStyles: u,
|
|
188
194
|
footerStyles: B,
|
|
189
|
-
buttonsStyles:
|
|
190
|
-
confirm:
|
|
195
|
+
buttonsStyles: d,
|
|
196
|
+
confirm: h,
|
|
191
197
|
onConfirmClick: H,
|
|
192
198
|
open: A,
|
|
193
|
-
close:
|
|
199
|
+
close: f,
|
|
194
200
|
onInputFocus: j,
|
|
195
201
|
onInputBlur: z
|
|
196
202
|
};
|
|
197
203
|
}
|
|
198
204
|
}), so = { class: "grow" }, uo = { class: "overflow-y-auto overflow-x-hidden" };
|
|
199
205
|
function fo(o, n, p, y, C, V) {
|
|
200
|
-
const g =
|
|
206
|
+
const g = k("OrInput"), u = k("OrButton"), B = k("OrOverlay");
|
|
201
207
|
return o.state === "open" ? (P(), Z(B, {
|
|
202
208
|
key: 0,
|
|
203
209
|
fullscreen: !0
|
|
204
210
|
}, {
|
|
205
|
-
default:
|
|
211
|
+
default: S(() => [
|
|
206
212
|
a("div", x(o.$attrs, {
|
|
207
213
|
ref: "root",
|
|
208
214
|
class: o.rootStyles,
|
|
@@ -211,13 +217,13 @@ function fo(o, n, p, y, C, V) {
|
|
|
211
217
|
a("div", {
|
|
212
218
|
class: i(o.headerStyles)
|
|
213
219
|
}, [
|
|
214
|
-
|
|
220
|
+
b(o.$slots, "header", {}, () => [
|
|
215
221
|
w(T(o.titleText), 1)
|
|
216
222
|
])
|
|
217
223
|
], 2),
|
|
218
224
|
a("div", so, [
|
|
219
225
|
a("div", uo, [
|
|
220
|
-
|
|
226
|
+
b(o.$slots, "default")
|
|
221
227
|
]),
|
|
222
228
|
o.confirmationText ? (P(), _("div", {
|
|
223
229
|
key: 0,
|
|
@@ -226,7 +232,7 @@ function fo(o, n, p, y, C, V) {
|
|
|
226
232
|
I(g, {
|
|
227
233
|
ref: "confirmationInput",
|
|
228
234
|
modelValue: o.confirmationValue,
|
|
229
|
-
"onUpdate:modelValue": n[0] || (n[0] = (
|
|
235
|
+
"onUpdate:modelValue": n[0] || (n[0] = (d) => o.confirmationValue = d),
|
|
230
236
|
label: o.textConfirmationLabel,
|
|
231
237
|
placeholder: o.textConfirmationPlaceholder,
|
|
232
238
|
onFocus: o.onInputFocus,
|
|
@@ -234,7 +240,7 @@ function fo(o, n, p, y, C, V) {
|
|
|
234
240
|
}, null, 8, ["modelValue", "label", "placeholder", "onFocus", "onBlur"])
|
|
235
241
|
], 2)) : N("", !0)
|
|
236
242
|
]),
|
|
237
|
-
|
|
243
|
+
b(o.$slots, "footer", {
|
|
238
244
|
confirm: o.confirm,
|
|
239
245
|
cancel: o.close
|
|
240
246
|
}, () => [
|
|
@@ -245,9 +251,9 @@ function fo(o, n, p, y, C, V) {
|
|
|
245
251
|
class: i(o.buttonsStyles),
|
|
246
252
|
variant: "outlined",
|
|
247
253
|
disabled: o.loading,
|
|
248
|
-
onClick: n[1] || (n[1] = (
|
|
254
|
+
onClick: n[1] || (n[1] = (d) => o.close())
|
|
249
255
|
}, {
|
|
250
|
-
default:
|
|
256
|
+
default: S(() => [
|
|
251
257
|
w(T(o.cancelButtonText), 1)
|
|
252
258
|
]),
|
|
253
259
|
_: 1
|
|
@@ -260,7 +266,7 @@ function fo(o, n, p, y, C, V) {
|
|
|
260
266
|
disabled: o.isConfirmationButtonDisabled,
|
|
261
267
|
onClick: o.onConfirmClick
|
|
262
268
|
}, {
|
|
263
|
-
default:
|
|
269
|
+
default: S(() => [
|
|
264
270
|
w(T(o.confirmButtonText), 1)
|
|
265
271
|
]),
|
|
266
272
|
_: 1
|
|
@@ -272,9 +278,9 @@ function fo(o, n, p, y, C, V) {
|
|
|
272
278
|
_: 3
|
|
273
279
|
})) : N("", !0);
|
|
274
280
|
}
|
|
275
|
-
const
|
|
281
|
+
const ho = /* @__PURE__ */ oo(io, [["render", fo]]);
|
|
276
282
|
export {
|
|
277
283
|
s as C,
|
|
278
|
-
|
|
284
|
+
ho as O
|
|
279
285
|
};
|
|
280
|
-
//# sourceMappingURL=OrConfirm-
|
|
286
|
+
//# sourceMappingURL=OrConfirm-BKXhawH9.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrConfirm-BKXhawH9.mjs","sources":["../../../components/or-confirm-v3/src/props.ts","../../../components/or-confirm-v3/src/styles.ts","../../../components/or-confirm-v3/src/OrConfirm.vue"],"sourcesContent":["export enum ConfirmType {\n D = 'd', // destructive / dangerous\n C = 'c', // consequential / common\n}\n","import { ConfirmType } from './props';\n\nexport const Confirm: string[] = [\n // Position\n 'fixed md:static',\n\n 'left-0',\n 'right-0',\n 'bottom-0',\n\n // Layout\n 'layout-column',\n\n // Box\n 'w-full md:w-[320px]',\n\n // Spacing\n 'px-lg',\n 'py-lg',\n\n 'gap-md',\n\n // Shape\n 'md:rounded-md',\n\n // Elevation\n 'shadow-modal',\n 'dark:shadow-modal-dark',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const ConfirmHeader: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-headline-3',\n];\n\nexport const ConfirmInput: string[] = [\n // Box\n 'w-full',\n\n // Spacing\n 'mt-md',\n];\n\nexport const ConfirmFooter: string[] = [\n // Spacing\n 'gap-md',\n];\n\nexport const ConfirmFooterTypes: Record<ConfirmType, string[]> = {\n [ConfirmType.C]: [\n // Layout\n 'layout-row',\n ],\n\n [ConfirmType.D]: [\n // Layout\n 'layout-row-reverse',\n ],\n};\n\nexport const ConfirmFooterButtons: string[] = [\n // Layout\n '!grow',\n\n // Box\n 'w-auto md:w-[128px]',\n];\n","<template>\n <OrOverlay\n v-if=\"state === 'open'\"\n :fullscreen=\"true\"\n >\n <div\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :role=\"'alertdialog'\"\n >\n <div :class=\"headerStyles\">\n <slot name=\"header\">\n {{ titleText }}\n </slot>\n </div>\n\n <div class=\"grow\">\n <div class=\"overflow-y-auto overflow-x-hidden\">\n <slot />\n </div>\n <div\n v-if=\"confirmationText\"\n :class=\"inputBoxStyles\"\n >\n <OrInput\n :ref=\"'confirmationInput'\"\n v-model=\"confirmationValue\"\n :label=\"textConfirmationLabel\"\n :placeholder=\"textConfirmationPlaceholder\"\n @focus=\"onInputFocus\"\n @blur=\"onInputBlur\"\n />\n </div>\n </div>\n\n <slot\n name=\"footer\"\n :confirm=\"confirm\"\n :cancel=\"close\"\n >\n <div :class=\"footerStyles\">\n <OrButton\n :class=\"buttonsStyles\"\n :variant=\"'outlined'\"\n :disabled=\"loading\"\n @click=\"close()\"\n >\n {{ cancelButtonText }}\n </OrButton>\n\n <OrButton\n :ref=\"'confirmationButton'\"\n :class=\"buttonsStyles\"\n :color=\"confirmButtonColor\"\n :loading=\"loading\"\n :disabled=\"isConfirmationButtonDisabled\"\n @click=\"onConfirmClick\"\n >\n {{ confirmButtonText }}\n </OrButton>\n </div>\n </slot>\n </div>\n </OrOverlay>\n</template>\n\n<script lang=\"ts\">\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { ButtonColor, OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrOverlayV3 as OrOverlay } from '@onereach/ui-components.or-overlay-v3';\nimport { onClickOutside, useMagicKeys, whenever } from '@vueuse/core';\nimport { logicAnd } from '@vueuse/math';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\n\nimport { ConfirmType } from './props';\nimport { Confirm, ConfirmFooter, ConfirmFooterButtons, ConfirmFooterTypes, ConfirmHeader, ConfirmInput } from './styles';\n\nexport default defineComponent({\n name: 'OrConfirm',\n\n components: {\n OrOverlay,\n OrButton,\n OrInput,\n },\n\n inheritAttrs: false,\n\n props: {\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n titleText: {\n type: String,\n required: false,\n default: null,\n },\n\n confirmButtonText: {\n type: String,\n default: 'Confirm',\n },\n\n autoCloseOnConfirm: {\n type: Boolean,\n default: true,\n },\n\n closeOnClickOutside: {\n type: Boolean,\n default: true,\n },\n\n cancelButtonText: {\n type: String,\n default: 'Cancel',\n },\n\n confirmType: {\n type: String as PropType<`${ConfirmType}`>,\n default: () => ConfirmType.C,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n required: false,\n default: false,\n },\n\n confirmationText: {\n type: String,\n default: undefined,\n },\n\n textConfirmationLabel: {\n type: String,\n default: undefined,\n },\n\n textConfirmationPlaceholder: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n 'confirm',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'open',\n 'close',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n const confirmationInput = ref<InstanceType<typeof OrInput>>();\n const confirmationButton = ref<InstanceType<typeof OrButton>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-confirm-v3',\n ...Confirm,\n ]);\n\n const headerStyles = computed(() => [\n ...ConfirmHeader,\n ]);\n\n const inputBoxStyles = computed(() => [\n ...ConfirmInput,\n ]);\n\n const footerStyles = computed(() => [\n ...ConfirmFooter,\n ...ConfirmFooterTypes[props.confirmType],\n ]);\n\n const buttonsStyles = computed(() => [\n ...ConfirmFooterButtons,\n ]);\n\n // State\n const { state, open, close } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n const isInputActive = ref(false);\n const confirmationValue = ref('');\n\n watch(state, () => {\n confirmationValue.value = '';\n });\n\n const { escape, enter } = useMagicKeys();\n\n const isInvalid = computed(() => {\n return !!props.confirmationText && props.confirmationText !== confirmationValue.value;\n });\n\n const isConfirmationButtonDisabled = computed(() => !!props.disabled || isInvalid.value);\n\n const confirmButtonColor = computed(() =>\n props.confirmType === ConfirmType.C ? ButtonColor.Primary : ButtonColor.Danger,\n );\n\n // Methods\n function confirm(): void {\n if (!props.disabled && !isInvalid.value) {\n context.emit('confirm');\n }\n }\n\n function onInputFocus(): void {\n isInputActive.value = true;\n }\n\n function onInputBlur(): void {\n isInputActive.value = false;\n }\n\n function onConfirmClick(): void {\n confirm();\n if (props.autoCloseOnConfirm) {\n close();\n }\n }\n // Events\n watch(escape, (val) => {\n if (val) close();\n });\n\n // types here are used for fixing TS2349\n watch(confirmationInput as any, (val: InstanceType<typeof OrInput>) =>\n (val?.focus as (() => void) | undefined)?.());\n\n // types here are used for fixing TS2349\n watch(confirmationButton as any, (val: InstanceType<typeof OrButton>) => {\n if (val && !props.confirmationText) {\n const button = val.root as HTMLButtonElement | undefined;\n button?.focus();\n }\n });\n\n whenever(logicAnd(enter, isInputActive), () => confirm());\n\n // #region Click Outside\n onClickOutside(root, () => {\n props.closeOnClickOutside ? close() : undefined;\n });\n // #endregion\n\n return {\n root,\n confirmationInput,\n confirmationButton,\n confirmationValue,\n confirmButtonColor,\n isInvalid,\n isConfirmationButtonDisabled,\n state,\n isInputActive,\n escape,\n rootStyles,\n headerStyles,\n inputBoxStyles,\n footerStyles,\n buttonsStyles,\n confirm,\n onConfirmClick,\n open,\n close,\n onInputFocus,\n onInputBlur,\n };\n },\n});\n</script>\n"],"names":["ConfirmType","Confirm","ConfirmHeader","ConfirmInput","ConfirmFooter","ConfirmFooterTypes","ConfirmFooterButtons","_sfc_main","defineComponent","OrOverlay","OrButton","OrInput","props","context","root","ref","confirmationInput","confirmationButton","rootStyles","computed","headerStyles","inputBoxStyles","footerStyles","buttonsStyles","state","open","close","usePopoverState","toRef","isInputActive","confirmationValue","watch","escape","enter","useMagicKeys","isInvalid","isConfirmationButtonDisabled","confirmButtonColor","ButtonColor","confirm","onInputFocus","onInputBlur","onConfirmClick","val","_a","button","whenever","logicAnd","onClickOutside","_component_OrOverlay","_resolveComponent","_ctx","_openBlock","_createBlock","_withCtx","_createElementVNode","_mergeProps","_normalizeClass","_hoisted_1","_hoisted_2","_renderSlot","_createElementBlock","_createVNode","_component_OrInput","_cache","$event","_createCommentVNode","_component_OrButton"],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ import { html as q } from "@codemirror/lang-html";
|
|
|
17
17
|
import { EditorView as K } from "@codemirror/view";
|
|
18
18
|
import { EditorState as X } from "@codemirror/state";
|
|
19
19
|
import { O as Z } from "../OrCombinedInput-CLIIindo.mjs";
|
|
20
|
-
import { C as $, O as rr } from "../OrConfirm-
|
|
20
|
+
import { C as $, O as rr } from "../OrConfirm-BKXhawH9.mjs";
|
|
21
21
|
import { O as ar } from "../OrContextMenu-CrpiM2Jq.mjs";
|
|
22
22
|
import { D as tr, O as sr } from "../OrDataGrid-BML2-j9s.mjs";
|
|
23
23
|
import { O as ir } from "../OrDateFormat-CnNnn2qx.mjs";
|
package/dist/esm/index.mjs
CHANGED
|
@@ -17,7 +17,7 @@ import { html as q } from "@codemirror/lang-html";
|
|
|
17
17
|
import { EditorView as K } from "@codemirror/view";
|
|
18
18
|
import { EditorState as X } from "@codemirror/state";
|
|
19
19
|
import { O as Z } from "./OrCombinedInput-CLIIindo.mjs";
|
|
20
|
-
import { C as $, O as rr } from "./OrConfirm-
|
|
20
|
+
import { C as $, O as rr } from "./OrConfirm-BKXhawH9.mjs";
|
|
21
21
|
import { O as ar } from "./OrContextMenu-CrpiM2Jq.mjs";
|
|
22
22
|
import { D as tr, O as sr } from "./OrDataGrid-BML2-j9s.mjs";
|
|
23
23
|
import { O as ir } from "./OrDateFormat-CnNnn2qx.mjs";
|
|
@@ -19,6 +19,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
19
19
|
type: BooleanConstructor;
|
|
20
20
|
default: boolean;
|
|
21
21
|
};
|
|
22
|
+
closeOnClickOutside: {
|
|
23
|
+
type: BooleanConstructor;
|
|
24
|
+
default: boolean;
|
|
25
|
+
};
|
|
22
26
|
cancelButtonText: {
|
|
23
27
|
type: StringConstructor;
|
|
24
28
|
default: string;
|
|
@@ -579,6 +583,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
579
583
|
type: BooleanConstructor;
|
|
580
584
|
default: boolean;
|
|
581
585
|
};
|
|
586
|
+
closeOnClickOutside: {
|
|
587
|
+
type: BooleanConstructor;
|
|
588
|
+
default: boolean;
|
|
589
|
+
};
|
|
582
590
|
cancelButtonText: {
|
|
583
591
|
type: StringConstructor;
|
|
584
592
|
default: string;
|
|
@@ -620,6 +628,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
620
628
|
titleText: string;
|
|
621
629
|
confirmButtonText: string;
|
|
622
630
|
autoCloseOnConfirm: boolean;
|
|
631
|
+
closeOnClickOutside: boolean;
|
|
623
632
|
cancelButtonText: string;
|
|
624
633
|
confirmType: "d" | "c";
|
|
625
634
|
confirmationText: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onereach/ui-components",
|
|
3
|
-
"version": "23.2.0",
|
|
3
|
+
"version": "23.2.1-beta.5570.0",
|
|
4
4
|
"description": "Vue components library for v3",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"@codemirror/view": "^6",
|
|
47
47
|
"@floating-ui/dom": "1.5.3",
|
|
48
48
|
"@lezer/highlight": "*",
|
|
49
|
-
"@onereach/styles": "^23.2.0",
|
|
50
|
-
"@onereach/ui-components-common": "^23.2.0",
|
|
49
|
+
"@onereach/styles": "^23.2.1-beta.5570.0",
|
|
50
|
+
"@onereach/ui-components-common": "^23.2.1-beta.5570.0",
|
|
51
51
|
"@splidejs/splide": "4.0.6",
|
|
52
52
|
"@tiptap/core": "2.0.3",
|
|
53
53
|
"@tiptap/extension-blockquote": "2.0.3",
|
|
@@ -102,6 +102,5 @@
|
|
|
102
102
|
"publishConfig": {
|
|
103
103
|
"access": "public"
|
|
104
104
|
},
|
|
105
|
-
"npmUnpacked": "4.15.2"
|
|
106
|
-
"gitHead": "a46509db45bcfd9fe3086a3c2bb0f490ce1390e6"
|
|
105
|
+
"npmUnpacked": "4.15.2"
|
|
107
106
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OrConfirm-C9pmyc_f.mjs","sources":["../../../components/or-confirm-v3/src/props.ts","../../../components/or-confirm-v3/src/styles.ts","../../../components/or-confirm-v3/src/OrConfirm.vue"],"sourcesContent":["export enum ConfirmType {\n D = 'd', // destructive / dangerous\n C = 'c', // consequential / common\n}\n","import { ConfirmType } from './props';\n\nexport const Confirm: string[] = [\n // Position\n 'fixed md:static',\n\n 'left-0',\n 'right-0',\n 'bottom-0',\n\n // Layout\n 'layout-column',\n\n // Box\n 'w-full md:w-[320px]',\n\n // Spacing\n 'px-lg',\n 'py-lg',\n\n 'gap-md',\n\n // Shape\n 'md:rounded-md',\n\n // Elevation\n 'shadow-modal',\n 'dark:shadow-modal-dark',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const ConfirmHeader: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-headline-3',\n];\n\nexport const ConfirmInput: string[] = [\n // Box\n 'w-full',\n\n // Spacing\n 'mt-md',\n];\n\nexport const ConfirmFooter: string[] = [\n // Spacing\n 'gap-md',\n];\n\nexport const ConfirmFooterTypes: Record<ConfirmType, string[]> = {\n [ConfirmType.C]: [\n // Layout\n 'layout-row',\n ],\n\n [ConfirmType.D]: [\n // Layout\n 'layout-row-reverse',\n ],\n};\n\nexport const ConfirmFooterButtons: string[] = [\n // Layout\n '!grow',\n\n // Box\n 'w-auto md:w-[128px]',\n];\n","<template>\n <OrOverlay\n v-if=\"state === 'open'\"\n :fullscreen=\"true\"\n >\n <div\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :role=\"'alertdialog'\"\n >\n <div :class=\"headerStyles\">\n <slot name=\"header\">\n {{ titleText }}\n </slot>\n </div>\n\n <div class=\"grow\">\n <div class=\"overflow-y-auto overflow-x-hidden\">\n <slot />\n </div>\n <div\n v-if=\"confirmationText\"\n :class=\"inputBoxStyles\"\n >\n <OrInput\n :ref=\"'confirmationInput'\"\n v-model=\"confirmationValue\"\n :label=\"textConfirmationLabel\"\n :placeholder=\"textConfirmationPlaceholder\"\n @focus=\"onInputFocus\"\n @blur=\"onInputBlur\"\n />\n </div>\n </div>\n\n <slot\n name=\"footer\"\n :confirm=\"confirm\"\n :cancel=\"close\"\n >\n <div :class=\"footerStyles\">\n <OrButton\n :class=\"buttonsStyles\"\n :variant=\"'outlined'\"\n :disabled=\"loading\"\n @click=\"close()\"\n >\n {{ cancelButtonText }}\n </OrButton>\n\n <OrButton\n :ref=\"'confirmationButton'\"\n :class=\"buttonsStyles\"\n :color=\"confirmButtonColor\"\n :loading=\"loading\"\n :disabled=\"isConfirmationButtonDisabled\"\n @click=\"onConfirmClick\"\n >\n {{ confirmButtonText }}\n </OrButton>\n </div>\n </slot>\n </div>\n </OrOverlay>\n</template>\n\n<script lang=\"ts\">\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { ButtonColor, OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrOverlayV3 as OrOverlay } from '@onereach/ui-components.or-overlay-v3';\nimport { onClickOutside, useMagicKeys, whenever } from '@vueuse/core';\nimport { logicAnd } from '@vueuse/math';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\n\nimport { ConfirmType } from './props';\nimport { Confirm, ConfirmFooter, ConfirmFooterButtons, ConfirmFooterTypes, ConfirmHeader, ConfirmInput } from './styles';\n\nexport default defineComponent({\n name: 'OrConfirm',\n\n components: {\n OrOverlay,\n OrButton,\n OrInput,\n },\n\n inheritAttrs: false,\n\n props: {\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n titleText: {\n type: String,\n required: false,\n default: null,\n },\n\n confirmButtonText: {\n type: String,\n default: 'Confirm',\n },\n\n autoCloseOnConfirm: {\n type: Boolean,\n default: true,\n },\n\n cancelButtonText: {\n type: String,\n default: 'Cancel',\n },\n\n confirmType: {\n type: String as PropType<`${ConfirmType}`>,\n default: () => ConfirmType.C,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n required: false,\n default: false,\n },\n\n confirmationText: {\n type: String,\n default: undefined,\n },\n\n textConfirmationLabel: {\n type: String,\n default: undefined,\n },\n\n textConfirmationPlaceholder: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n 'confirm',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'open',\n 'close',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n const confirmationInput = ref<InstanceType<typeof OrInput>>();\n const confirmationButton = ref<InstanceType<typeof OrButton>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-confirm-v3',\n ...Confirm,\n ]);\n\n const headerStyles = computed(() => [\n ...ConfirmHeader,\n ]);\n\n const inputBoxStyles = computed(() => [\n ...ConfirmInput,\n ]);\n\n const footerStyles = computed(() => [\n ...ConfirmFooter,\n ...ConfirmFooterTypes[props.confirmType],\n ]);\n\n const buttonsStyles = computed(() => [\n ...ConfirmFooterButtons,\n ]);\n\n // State\n const { state, open, close } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n const isInputActive = ref(false);\n const confirmationValue = ref('');\n\n watch(state, () => {\n confirmationValue.value = '';\n });\n\n const { escape, enter } = useMagicKeys();\n\n const isInvalid = computed(() => {\n return !!props.confirmationText && props.confirmationText !== confirmationValue.value;\n });\n\n const isConfirmationButtonDisabled = computed(() => !!props.disabled || isInvalid.value);\n\n const confirmButtonColor = computed(() =>\n props.confirmType === ConfirmType.C ? ButtonColor.Primary : ButtonColor.Danger,\n );\n\n // Methods\n function confirm(): void {\n if (!props.disabled && !isInvalid.value) {\n context.emit('confirm');\n }\n }\n\n function onInputFocus(): void {\n isInputActive.value = true;\n }\n\n function onInputBlur(): void {\n isInputActive.value = false;\n }\n\n function onConfirmClick(): void {\n confirm();\n if (props.autoCloseOnConfirm) {\n close();\n }\n }\n // Events\n watch(escape, (val) => {\n if (val) close();\n });\n\n // types here are used for fixing TS2349\n watch(confirmationInput as any, (val: InstanceType<typeof OrInput>) =>\n (val?.focus as (() => void) | undefined)?.());\n\n // types here are used for fixing TS2349\n watch(confirmationButton as any, (val: InstanceType<typeof OrButton>) => {\n if (val && !props.confirmationText) {\n const button = val.root as HTMLButtonElement | undefined;\n button?.focus();\n }\n });\n\n whenever(logicAnd(enter, isInputActive), () => confirm());\n\n // #region Click Outside\n onClickOutside(root, close);\n // #endregion\n\n return {\n root,\n confirmationInput,\n confirmationButton,\n confirmationValue,\n confirmButtonColor,\n isInvalid,\n isConfirmationButtonDisabled,\n state,\n isInputActive,\n escape,\n rootStyles,\n headerStyles,\n inputBoxStyles,\n footerStyles,\n buttonsStyles,\n confirm,\n onConfirmClick,\n open,\n close,\n onInputFocus,\n onInputBlur,\n };\n },\n});\n</script>\n"],"names":["ConfirmType","Confirm","ConfirmHeader","ConfirmInput","ConfirmFooter","ConfirmFooterTypes","ConfirmFooterButtons","_sfc_main","defineComponent","OrOverlay","OrButton","OrInput","props","context","root","ref","confirmationInput","confirmationButton","rootStyles","computed","headerStyles","inputBoxStyles","footerStyles","buttonsStyles","state","open","close","usePopoverState","toRef","isInputActive","confirmationValue","watch","escape","enter","useMagicKeys","isInvalid","isConfirmationButtonDisabled","confirmButtonColor","ButtonColor","confirm","onInputFocus","onInputBlur","onConfirmClick","val","_a","button","whenever","logicAnd","onClickOutside","_component_OrOverlay","_resolveComponent","_ctx","_openBlock","_createBlock","_withCtx","_createElementVNode","_mergeProps","_normalizeClass","_hoisted_1","_hoisted_2","_renderSlot","_createElementBlock","_createVNode","_component_OrInput","_cache","$event","_createCommentVNode","_component_OrButton"],"mappings":"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"}
|