@vuetify/v0 1.0.0-alpha.0 → 1.0.0-alpha.2
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/README.md +5 -1
- package/dist/{adapter-T7AedXkz.d.mts → adapter-58IvIfAZ.d.mts} +1 -1
- package/dist/{adapter-Drq1v5wV.mjs → adapter-Be9zUc-n.mjs} +6 -3
- package/dist/{adapter-CcHB7rs3.d.mts → adapter-BvWEd9w-.d.mts} +2 -2
- package/dist/{adapter-BZjmDNJF.d.mts → adapter-DlX3FA3A.d.mts} +2 -2
- package/dist/{adapter-CCIeOzqr.mjs → adapter-gQ2SNKZq.mjs} +31 -22
- package/dist/{adapters-D49L7m2R.mjs → adapters-BJ5n7rgh.mjs} +1 -1
- package/dist/adapters-BnKW0BF_.mjs +2 -0
- package/dist/adapters-CBrvizWb.mjs +4 -0
- package/dist/adapters-CMJGA1k7.mjs +2 -0
- package/dist/adapters-Dse4bPxk.mjs +5 -0
- package/dist/browser/index.js +4845 -3272
- package/dist/components/index.d.mts +3 -3
- package/dist/components/index.mjs +2 -2
- package/dist/{components-Dc7sUTsg.mjs → components-CqDewYTU.mjs} +1407 -411
- package/dist/composables/index.d.mts +19 -19
- package/dist/composables/index.mjs +28 -26
- package/dist/{consola-Byg0ybzh.d.mts → consola-BdgyPEfx.d.mts} +1 -1
- package/dist/constants/index.d.mts +2 -2
- package/dist/constants/index.mjs +3 -3
- package/dist/{createDataTable-BbUL9Vva.mjs → createDataTable-rXBqGglI.mjs} +105 -32
- package/dist/{createGroup-C2WCfYPB.mjs → createGroup-BU4olYtB.mjs} +29 -14
- package/dist/{createPagination-Tp4C4He8.mjs → createPagination-CHF7SmmK.mjs} +11 -7
- package/dist/{createTokens-qv02qq4_.mjs → createRegistry-Dl-bSSTr.mjs} +21 -302
- package/dist/{createSelection-AmMX6sjc.mjs → createSelection-Csaa-C8p.mjs} +28 -21
- package/dist/{createSingle-CffpxK__.mjs → createSingle-8xbHAIpY.mjs} +13 -17
- package/dist/createTokens-lNg2M_P_.mjs +302 -0
- package/dist/{createTrinity-vvXk0ARD.mjs → createTrinity-BTCs1pYx.mjs} +34 -31
- package/dist/data-table/adapters/client/index.d.mts +1 -1
- package/dist/data-table/adapters/client/index.mjs +1 -1
- package/dist/data-table/adapters/index.d.mts +4 -4
- package/dist/data-table/adapters/index.mjs +5 -5
- package/dist/data-table/adapters/server/index.d.mts +1 -1
- package/dist/data-table/adapters/server/index.mjs +1 -1
- package/dist/data-table/adapters/virtual/index.d.mts +1 -1
- package/dist/data-table/adapters/virtual/index.mjs +1 -1
- package/dist/data-table/index.d.mts +6 -6
- package/dist/data-table/index.mjs +6 -6
- package/dist/date/index.d.mts +2 -2
- package/dist/date/index.mjs +4 -4
- package/dist/features/adapters/flagsmith/index.d.mts +1 -1
- package/dist/features/adapters/flagsmith/index.mjs +1 -1
- package/dist/features/adapters/launchdarkly/index.d.mts +1 -1
- package/dist/features/adapters/launchdarkly/index.mjs +1 -1
- package/dist/features/adapters/posthog/index.d.mts +1 -1
- package/dist/features/adapters/posthog/index.mjs +1 -1
- package/dist/features/index.d.mts +2 -2
- package/dist/features/index.mjs +1 -1
- package/dist/{globals-CAv9vqkP.mjs → globals-CKdzjeLe.mjs} +1 -1
- package/dist/htmlElements-D4oMQZPJ.mjs +28 -0
- package/dist/{index-M8EpGjjA.d.mts → index-1XdASTjp.d.mts} +1 -1
- package/dist/{index-D26_u_WI.d.mts → index-B7cqgTBL.d.mts} +1599 -468
- package/dist/{index-DoGxDgdN.d.mts → index-BJGcVy7e.d.mts} +57 -6
- package/dist/index-BgCkepP_.d.mts +31 -0
- package/dist/{index-B_XLHftL.d.mts → index-BxKMMWnQ.d.mts} +301 -263
- package/dist/{index-tyzwWFHS.d.mts → index-BzFHTW59.d.mts} +1 -1
- package/dist/{index-CDcl4wPo.d.mts → index-CT5SCLzW.d.mts} +1 -1
- package/dist/{index-BUsrN1vL.d.mts → index-DE3bWw11.d.mts} +2 -2
- package/dist/{index-76fQGkkO.d.mts → index-DTvqw22G.d.mts} +8 -11
- package/dist/{index-F2Fmxnzi.d.mts → index-Dp1HjBxJ.d.mts} +1 -1
- package/dist/{index-B_AlCD7t.d.mts → index-DuddF-NR.d.mts} +2 -9
- package/dist/{index-Dxx0eMLi.d.mts → index-GOpjKzaJ.d.mts} +1 -1
- package/dist/index.d.mts +23 -23
- package/dist/index.mjs +31 -29
- package/dist/json/attributes.json +280 -4
- package/dist/json/importMap.json +60 -0
- package/dist/json/tags.json +136 -2
- package/dist/json/web-types.json +1186 -347
- package/dist/locale/adapters/index.d.mts +2 -2
- package/dist/locale/adapters/index.mjs +2 -2
- package/dist/locale/adapters/v0/index.d.mts +1 -1
- package/dist/locale/adapters/v0/index.mjs +1 -1
- package/dist/locale/adapters/vue-i18n/index.d.mts +1 -1
- package/dist/locale/index.d.mts +3 -3
- package/dist/locale/index.mjs +2 -2
- package/dist/logger/adapters/consola/index.d.mts +1 -1
- package/dist/logger/adapters/index.d.mts +4 -4
- package/dist/logger/adapters/index.mjs +2 -2
- package/dist/logger/adapters/pino/index.d.mts +1 -1
- package/dist/logger/adapters/v0/index.d.mts +1 -1
- package/dist/logger/adapters/v0/index.mjs +1 -1
- package/dist/logger/index.d.mts +5 -5
- package/dist/logger/index.mjs +2 -2
- package/dist/notifications/index.d.mts +2 -2
- package/dist/notifications/index.mjs +3 -54
- package/dist/palettes/ant/generate/index.mjs +1 -0
- package/dist/palettes/ant/index.d.mts +1 -1
- package/dist/palettes/index.d.mts +3 -3
- package/dist/palettes/leonardo/generate/index.mjs +1 -0
- package/dist/palettes/material/generate/index.mjs +1 -0
- package/dist/palettes/material/index.d.mts +1 -1
- package/dist/palettes/md1/index.d.mts +1 -1
- package/dist/palettes/md2/index.d.mts +1 -1
- package/dist/palettes/radix/index.d.mts +1 -1
- package/dist/palettes/tailwind/index.d.mts +1 -1
- package/dist/permissions/adapters/index.d.mts +1 -1
- package/dist/permissions/adapters/index.mjs +2 -2
- package/dist/permissions/adapters/v0/index.d.mts +1 -1
- package/dist/permissions/adapters/v0/index.mjs +1 -1
- package/dist/permissions/index.d.mts +1 -1
- package/dist/permissions/index.mjs +2 -2
- package/dist/{pino-BxddSW2l.d.mts → pino-DNfCEb0p.d.mts} +1 -1
- package/dist/{posthog-B8PEtlFr.mjs → posthog-DZNnPXxS.mjs} +1 -1
- package/dist/rules/index.d.mts +1 -1
- package/dist/rules/index.mjs +1 -1
- package/dist/{server-DNUTnISs.d.mts → server-3ilWFwqe.d.mts} +1 -1
- package/dist/{server-CIftA0pK.mjs → server-y7zLSCSx.mjs} +1 -1
- package/dist/storage/adapters/index.d.mts +2 -2
- package/dist/storage/adapters/index.mjs +1 -1
- package/dist/storage/adapters/memory/index.d.mts +1 -1
- package/dist/storage/adapters/memory/index.mjs +1 -1
- package/dist/storage/index.d.mts +3 -3
- package/dist/storage/index.mjs +2 -2
- package/dist/theme/adapters/index.d.mts +1 -1
- package/dist/theme/adapters/index.mjs +4 -4
- package/dist/theme/adapters/unhead/index.d.mts +1 -1
- package/dist/theme/adapters/unhead/index.mjs +1 -1
- package/dist/theme/adapters/v0/index.d.mts +1 -1
- package/dist/theme/adapters/v0/index.mjs +1 -1
- package/dist/theme/index.d.mts +1 -1
- package/dist/theme/index.mjs +3 -3
- package/dist/{toArray-doLQVI56.mjs → toArray-as9BWxBK.mjs} +10 -0
- package/dist/types/index.d.mts +2 -2
- package/dist/{unhead-BYw3a366.mjs → unhead-DZiD-4Tx.mjs} +2 -2
- package/dist/{useClickOutside-CnCQkh7M.mjs → useClickOutside-CmCUD_Pf.mjs} +577 -1024
- package/dist/{useFeatures-CMpkbU8Q.mjs → useFeatures-ZIvzzuEV.mjs} +16 -6
- package/dist/{useLocale-BYmoHpo6.mjs → useLocale-DTJx3aKR.mjs} +19 -7
- package/dist/{useLogger-BfaFH-Bi.mjs → useLogger-BBTcMN61.mjs} +33 -16
- package/dist/useNotifications-H4knpvNw.mjs +869 -0
- package/dist/{usePermissions-y3Uum3nO.mjs → usePermissions-B_G12Dwd.mjs} +14 -6
- package/dist/{useRules-eqSXpP9V.mjs → useRules--7Qoo60I.mjs} +15 -5
- package/dist/{useTheme-CFH6I91x.mjs → useTheme-Co05TEeD.mjs} +20 -8
- package/dist/utilities/index.d.mts +1 -1
- package/dist/utilities/index.mjs +14 -9
- package/dist/{v0-DXqYgj7J.mjs → v0-BrTEO5sv.mjs} +2 -2
- package/dist/{v0-BAG8p0si.d.mts → v0-CdusXjY_.d.mts} +1 -1
- package/dist/{v0-CFV8A5PF.mjs → v0-D0Mh3EVG.mjs} +1 -1
- package/dist/{v0-BpgPZ1qB.d.mts → v0-D7Fm2C3Y.d.mts} +1 -1
- package/dist/{v0-BqikIgl0.mjs → v0-DeiZuexg.mjs} +1 -1
- package/dist/{v0-DOq_Ia5H.mjs → v0-Dq3zhexO.mjs} +2 -2
- package/dist/{v0-C2UMaHUa.d.mts → v0-DrOub-e1.d.mts} +1 -1
- package/dist/{virtual-D1HwNBLS.mjs → virtual-C0yHf1DC.mjs} +2 -2
- package/dist/{virtual-BaQWQ9ji.d.mts → virtual-D4fckewC.d.mts} +1 -1
- package/package.json +10 -7
- package/SKILL.md +0 -95
- package/dist/adapters-BOVGPozf.mjs +0 -2
- package/dist/adapters-BbNfjyvY.mjs +0 -5
- package/dist/adapters-BhNTUuxE.mjs +0 -2
- package/dist/adapters-RwNU3wNj.mjs +0 -4
- package/dist/htmlElements-DcYtv0hg.mjs +0 -75
- package/dist/index-D6mQAEs2.d.mts +0 -79
- /package/dist/{adapter-DNKjooxI.d.mts → adapter-Dhq68tz0.d.mts} +0 -0
- /package/dist/{flagsmith-DQnnahG5.mjs → flagsmith-Dbh1h8WF.mjs} +0 -0
- /package/dist/{index-DxruGeVY.d.mts → index-C6rdXZ7j.d.mts} +0 -0
- /package/dist/{index-PWQavSPf.d.mts → index-CFhUdAHM.d.mts} +0 -0
- /package/dist/{index-c55Utzva.d.mts → index-CROz1VSV.d.mts} +0 -0
- /package/dist/{launchdarkly-2_48EJ1_.mjs → launchdarkly-BKtW-idu.mjs} +0 -0
- /package/dist/{memory-DUyWthic.d.mts → memory-CeSQE-QV.d.mts} +0 -0
- /package/dist/{memory-XCMtkld1.mjs → memory-oYBvtkgx.mjs} +0 -0
- /package/dist/{v0-4OQBCeda.mjs → v0-Bmow1q_x.mjs} +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { o as createPluginContext } from "./useLogger-
|
|
2
|
-
import { t as createTokens } from "./createTokens-
|
|
3
|
-
import { t as toArray } from "./toArray-
|
|
4
|
-
import { t as Vuetify0PermissionAdapter } from "./v0-
|
|
5
|
-
import "./adapters-
|
|
1
|
+
import { o as createPluginContext } from "./useLogger-BBTcMN61.mjs";
|
|
2
|
+
import { t as createTokens } from "./createTokens-lNg2M_P_.mjs";
|
|
3
|
+
import { t as toArray } from "./toArray-as9BWxBK.mjs";
|
|
4
|
+
import { t as Vuetify0PermissionAdapter } from "./v0-Bmow1q_x.mjs";
|
|
5
|
+
import "./adapters-CMJGA1k7.mjs";
|
|
6
6
|
//#region src/composables/usePermissions/index.ts
|
|
7
7
|
/**
|
|
8
8
|
* @module usePermissions
|
|
@@ -20,6 +20,14 @@ import "./adapters-BhNTUuxE.mjs";
|
|
|
20
20
|
* - Adapter pattern for custom permission systems
|
|
21
21
|
*
|
|
22
22
|
* Built on createTokens for flexible permission configuration.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* import { usePermissions } from '@vuetify/v0'
|
|
27
|
+
*
|
|
28
|
+
* const permissions = usePermissions()
|
|
29
|
+
* console.log(permissions.can('admin', 'edit', 'users'))
|
|
30
|
+
* ```
|
|
23
31
|
*/
|
|
24
32
|
/**
|
|
25
33
|
* Creates a new permissions instance.
|
|
@@ -49,7 +57,7 @@ function createPermissions(_options = {}) {
|
|
|
49
57
|
const record = {};
|
|
50
58
|
for (const role in permissions) {
|
|
51
59
|
if (!record[role]) record[role] = {};
|
|
52
|
-
for (const [actions, subjects, condition = true] of permissions[role]) for (const action of toArray(actions)) for (const subject of toArray(subjects)) {
|
|
60
|
+
for (const [actions, subjects, condition = true] of permissions[role]) for (const action of /* @__PURE__ */ toArray(actions)) for (const subject of /* @__PURE__ */ toArray(subjects)) {
|
|
53
61
|
if (!record[role][action]) record[role][action] = {};
|
|
54
62
|
record[role][action][subject] = condition;
|
|
55
63
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { instanceExists, isFunction, isObject } from "./utilities/index.mjs";
|
|
2
|
-
import { o as createPluginContext } from "./useLogger-
|
|
3
|
-
import { a as useLocale } from "./useLocale-
|
|
2
|
+
import { o as createPluginContext } from "./useLogger-BBTcMN61.mjs";
|
|
3
|
+
import { a as useLocale } from "./useLocale-DTJx3aKR.mjs";
|
|
4
4
|
//#region src/composables/useRules/adapters/standard.ts
|
|
5
5
|
/**
|
|
6
6
|
* Type guard for Standard Schema objects.
|
|
@@ -9,6 +9,7 @@ import { a as useLocale } from "./useLocale-BYmoHpo6.mjs";
|
|
|
9
9
|
* @param value The value to check.
|
|
10
10
|
* @returns `true` if the value conforms to the Standard Schema interface.
|
|
11
11
|
*/
|
|
12
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
12
13
|
function isStandardSchema(value) {
|
|
13
14
|
return /* @__PURE__ */ isObject(value) && "~standard" in value;
|
|
14
15
|
}
|
|
@@ -24,6 +25,7 @@ function isStandardSchema(value) {
|
|
|
24
25
|
*
|
|
25
26
|
* @see https://standardschema.dev/
|
|
26
27
|
*/
|
|
28
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
27
29
|
function toRule(schema) {
|
|
28
30
|
return async (value) => {
|
|
29
31
|
let result = schema["~standard"].validate(value);
|
|
@@ -54,6 +56,14 @@ function toRule(schema) {
|
|
|
54
56
|
* - `false` — validation fails, error message resolved from locale (`$rules.<name>`)
|
|
55
57
|
*
|
|
56
58
|
* Integrates with createValidation for rule resolution, useLocale for i18n.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```ts
|
|
62
|
+
* import { useRules } from '@vuetify/v0'
|
|
63
|
+
*
|
|
64
|
+
* const rules = useRules()
|
|
65
|
+
* const validators = rules.resolve(['required', v => v.length > 3 || 'Too short'])
|
|
66
|
+
* ```
|
|
57
67
|
*/
|
|
58
68
|
/**
|
|
59
69
|
* Wraps an alias predicate so that `false` results are
|
|
@@ -84,8 +94,8 @@ function createResolve(aliases, locale) {
|
|
|
84
94
|
result.push(rule);
|
|
85
95
|
continue;
|
|
86
96
|
}
|
|
87
|
-
if (isStandardSchema(rule)) {
|
|
88
|
-
result.push(toRule(rule));
|
|
97
|
+
if (/* @__PURE__ */ isStandardSchema(rule)) {
|
|
98
|
+
result.push(/* @__PURE__ */ toRule(rule));
|
|
89
99
|
continue;
|
|
90
100
|
}
|
|
91
101
|
const predicate = aliases[rule];
|
|
@@ -121,7 +131,7 @@ function createRules(_options = {}) {
|
|
|
121
131
|
const { aliases: customAliases } = _options;
|
|
122
132
|
let locale;
|
|
123
133
|
try {
|
|
124
|
-
if (instanceExists()) locale = useLocale();
|
|
134
|
+
if (/* @__PURE__ */ instanceExists()) locale = useLocale();
|
|
125
135
|
} catch {}
|
|
126
136
|
const aliases = { ...customAliases };
|
|
127
137
|
return {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { foreground } from "./utilities/index.mjs";
|
|
2
|
-
import { o as createPluginContext } from "./useLogger-
|
|
3
|
-
import {
|
|
4
|
-
import { t as
|
|
5
|
-
import { t as V0StyleSheetThemeAdapter } from "./v0-
|
|
6
|
-
import "./adapters-
|
|
2
|
+
import { o as createPluginContext } from "./useLogger-BBTcMN61.mjs";
|
|
3
|
+
import { t as createSingle } from "./createSingle-8xbHAIpY.mjs";
|
|
4
|
+
import { r as flatten, t as createTokens } from "./createTokens-lNg2M_P_.mjs";
|
|
5
|
+
import { t as V0StyleSheetThemeAdapter } from "./v0-BrTEO5sv.mjs";
|
|
6
|
+
import "./adapters-CBrvizWb.mjs";
|
|
7
7
|
import { computed, shallowRef, toRef } from "vue";
|
|
8
8
|
//#region src/composables/useTheme/index.ts
|
|
9
9
|
/**
|
|
@@ -24,6 +24,15 @@ import { computed, shallowRef, toRef } from "vue";
|
|
|
24
24
|
* - Theme cycling
|
|
25
25
|
*
|
|
26
26
|
* Integrates with createSingle for selection and createTokens for color resolution.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* import { useTheme } from '@vuetify/v0'
|
|
31
|
+
*
|
|
32
|
+
* const theme = useTheme()
|
|
33
|
+
* theme.select('dark')
|
|
34
|
+
* console.log(theme.isDark.value) // true
|
|
35
|
+
* ```
|
|
27
36
|
*/
|
|
28
37
|
/**
|
|
29
38
|
* Creates a new theme instance.
|
|
@@ -63,7 +72,10 @@ function createTheme(_options = {}) {
|
|
|
63
72
|
palette,
|
|
64
73
|
...themes
|
|
65
74
|
}, { flat: true });
|
|
66
|
-
const registry = createSingle(
|
|
75
|
+
const registry = createSingle({
|
|
76
|
+
...options,
|
|
77
|
+
reactive: true
|
|
78
|
+
});
|
|
67
79
|
for (const id in themes) {
|
|
68
80
|
const { colors: value, ...theme } = themes[id];
|
|
69
81
|
register({
|
|
@@ -82,7 +94,7 @@ function createTheme(_options = {}) {
|
|
|
82
94
|
const themeColors = resolve(theme.value);
|
|
83
95
|
if (genForeground) for (const [key, value] of Object.entries(themeColors)) {
|
|
84
96
|
const onKey = `on-${key}`;
|
|
85
|
-
if (!key.startsWith("on-") && !(onKey in themeColors)) themeColors[onKey] = foreground(value);
|
|
97
|
+
if (!key.startsWith("on-") && !(onKey in themeColors)) themeColors[onKey] = /* @__PURE__ */ foreground(value);
|
|
86
98
|
}
|
|
87
99
|
resolved[theme.id] = themeColors;
|
|
88
100
|
}
|
|
@@ -101,7 +113,7 @@ function createTheme(_options = {}) {
|
|
|
101
113
|
}
|
|
102
114
|
function register(registration = {}) {
|
|
103
115
|
const { colors, ...rest } = registration;
|
|
104
|
-
if (colors && rest.id && !registry.has(rest.id)) tokens.onboard(flatten({ [rest.id]: { colors } }, "", true));
|
|
116
|
+
if (colors && rest.id && !registry.has(rest.id)) tokens.onboard(/* @__PURE__ */ flatten({ [rest.id]: { colors } }, "", true));
|
|
105
117
|
const item = {
|
|
106
118
|
lazy: false,
|
|
107
119
|
dark: false,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as foreground, E as rgbToHex, S as apca, T as hexToRgb, _ as mergeDeep, a as isBoolean, b as resolveIndexes, c as isNaN, d as isNumber, f as isObject, g as isUndefined, h as isSymbol, i as isArray, l as isNull, m as isString, n as instanceName, o as isElement, p as isPrimitive, r as clamp, s as isFunction, t as instanceExists, u as isNullOrUndefined, v as range, w as RGB, x as useId, y as resolveIds } from "../index-
|
|
1
|
+
import { C as foreground, E as rgbToHex, S as apca, T as hexToRgb, _ as mergeDeep, a as isBoolean, b as resolveIndexes, c as isNaN, d as isNumber, f as isObject, g as isUndefined, h as isSymbol, i as isArray, l as isNull, m as isString, n as instanceName, o as isElement, p as isPrimitive, r as clamp, s as isFunction, t as instanceExists, u as isNullOrUndefined, v as range, w as RGB, x as useId, y as resolveIds } from "../index-GOpjKzaJ.mjs";
|
|
2
2
|
export { RGB, apca, clamp, foreground, hexToRgb, instanceExists, instanceName, isArray, isBoolean, isElement, isFunction, isNaN, isNull, isNullOrUndefined, isNumber, isObject, isPrimitive, isString, isSymbol, isUndefined, mergeDeep, range, resolveIds, resolveIndexes, rgbToHex, useId };
|
package/dist/utilities/index.mjs
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { t as IN_BROWSER } from "../globals-
|
|
1
|
+
import { t as IN_BROWSER } from "../globals-CKdzjeLe.mjs";
|
|
2
2
|
import * as Vue from "vue";
|
|
3
3
|
import { useId as useId$1 } from "vue";
|
|
4
4
|
//#region src/utilities/color.ts
|
|
5
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
5
6
|
function hexToRgb(hex) {
|
|
6
7
|
const clean = hex.startsWith("#") ? hex.slice(1) : hex;
|
|
7
8
|
if (clean.length === 3 || clean.length === 4) {
|
|
@@ -9,7 +10,7 @@ function hexToRgb(hex) {
|
|
|
9
10
|
const g = Number.parseInt(clean[1] + clean[1], 16);
|
|
10
11
|
const b = Number.parseInt(clean[2] + clean[2], 16);
|
|
11
12
|
const a = clean.length === 4 ? Number.parseInt(clean[3] + clean[3], 16) : void 0;
|
|
12
|
-
return
|
|
13
|
+
return /* @__PURE__ */ isUndefined(a) ? {
|
|
13
14
|
r,
|
|
14
15
|
g,
|
|
15
16
|
b
|
|
@@ -24,7 +25,7 @@ function hexToRgb(hex) {
|
|
|
24
25
|
const g = Number.parseInt(clean.slice(2, 4), 16);
|
|
25
26
|
const b = Number.parseInt(clean.slice(4, 6), 16);
|
|
26
27
|
const a = clean.length === 8 ? Number.parseInt(clean.slice(6, 8), 16) : void 0;
|
|
27
|
-
return
|
|
28
|
+
return /* @__PURE__ */ isUndefined(a) ? {
|
|
28
29
|
r,
|
|
29
30
|
g,
|
|
30
31
|
b
|
|
@@ -35,13 +36,14 @@ function hexToRgb(hex) {
|
|
|
35
36
|
a
|
|
36
37
|
};
|
|
37
38
|
}
|
|
39
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
38
40
|
function rgbToHex({ r, g, b, a }) {
|
|
39
41
|
const hex = "#" + [
|
|
40
42
|
r,
|
|
41
43
|
g,
|
|
42
44
|
b
|
|
43
45
|
].map((c) => c.toString(16).padStart(2, "0")).join("");
|
|
44
|
-
if (
|
|
46
|
+
if (!/* @__PURE__ */ isUndefined(a)) return hex + a.toString(16).padStart(2, "0");
|
|
45
47
|
return hex;
|
|
46
48
|
}
|
|
47
49
|
//#endregion
|
|
@@ -70,6 +72,7 @@ function luminance(rgb) {
|
|
|
70
72
|
function clamp$1(y) {
|
|
71
73
|
return y > blkThrs ? y : y + Math.pow(blkThrs - y, blkClmp);
|
|
72
74
|
}
|
|
75
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
73
76
|
function apca(text, background) {
|
|
74
77
|
const txtY = clamp$1(luminance(text));
|
|
75
78
|
const bgY = clamp$1(luminance(background));
|
|
@@ -93,10 +96,10 @@ const WHITE = {
|
|
|
93
96
|
g: 255,
|
|
94
97
|
b: 255
|
|
95
98
|
};
|
|
99
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
96
100
|
function foreground(hex) {
|
|
97
|
-
const rgb = hexToRgb(hex);
|
|
98
|
-
|
|
99
|
-
return Math.abs(apca(BLACK, rgb)) > onWhite ? "#000000" : "#ffffff";
|
|
101
|
+
const rgb = /* @__PURE__ */ hexToRgb(hex);
|
|
102
|
+
return Math.abs(/* @__PURE__ */ apca(BLACK, rgb)) > Math.abs(/* @__PURE__ */ apca(WHITE, rgb)) ? "#000000" : "#ffffff";
|
|
100
103
|
}
|
|
101
104
|
//#endregion
|
|
102
105
|
//#region src/utilities/instance.ts
|
|
@@ -116,9 +119,11 @@ function getInstanceCompat() {
|
|
|
116
119
|
if (INSTANCE_KEY in vueExports) return vueExports[INSTANCE_KEY];
|
|
117
120
|
return Vue.getCurrentInstance();
|
|
118
121
|
}
|
|
122
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
119
123
|
function instanceExists() {
|
|
120
124
|
return !/* @__PURE__ */ isNull(getInstanceCompat());
|
|
121
125
|
}
|
|
126
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
122
127
|
function instanceName() {
|
|
123
128
|
return getInstanceCompat()?.type?.name;
|
|
124
129
|
}
|
|
@@ -379,7 +384,7 @@ function isSymbol(item) {
|
|
|
379
384
|
function isNaN(item) {
|
|
380
385
|
return /* @__PURE__ */ isNumber(item) && Number.isNaN(item);
|
|
381
386
|
}
|
|
382
|
-
const UNSAFE_KEYS = new Set([
|
|
387
|
+
const UNSAFE_KEYS = /* @__PURE__ */ new Set([
|
|
383
388
|
"__proto__",
|
|
384
389
|
"constructor",
|
|
385
390
|
"prototype"
|
|
@@ -455,7 +460,7 @@ let idCounter = 0;
|
|
|
455
460
|
*/
|
|
456
461
|
/* @__NO_SIDE_EFFECTS__ */
|
|
457
462
|
function useId() {
|
|
458
|
-
if (instanceExists()) return useId$1();
|
|
463
|
+
if (/* @__PURE__ */ instanceExists()) return useId$1();
|
|
459
464
|
if (typeof (process.env.NODE_ENV !== "production") !== "undefined" && process.env.NODE_ENV !== "production" && !IN_BROWSER) console.warn("[v0 warn] useId() called outside component context during SSR. Provide explicit ID to avoid hydration mismatch.");
|
|
460
465
|
return `v0-${idCounter++}`;
|
|
461
466
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as IN_BROWSER } from "./globals-
|
|
1
|
+
import { t as IN_BROWSER } from "./globals-CKdzjeLe.mjs";
|
|
2
2
|
import { isNull, isString } from "./utilities/index.mjs";
|
|
3
|
-
import { t as ThemeAdapter } from "./adapter-
|
|
3
|
+
import { t as ThemeAdapter } from "./adapter-Be9zUc-n.mjs";
|
|
4
4
|
import { onScopeDispose, watch } from "vue";
|
|
5
5
|
//#region src/composables/useTheme/adapters/v0.ts
|
|
6
6
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as DataTableAdapterResult, n as DataTableAdapterContext, t as DataTableAdapter } from "./adapter-
|
|
1
|
+
import { i as DataTableAdapterResult, n as DataTableAdapterContext, t as DataTableAdapter } from "./adapter-DlX3FA3A.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/composables/createDataTable/adapters/v0.d.ts
|
|
4
4
|
declare class ClientAdapter<T extends Record<string, unknown>> extends DataTableAdapter<T> {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as DataTableAdapter } from "./adapter-
|
|
2
|
-
import { t as createPagination } from "./createPagination-
|
|
1
|
+
import { t as DataTableAdapter } from "./adapter-gQ2SNKZq.mjs";
|
|
2
|
+
import { t as createPagination } from "./createPagination-CHF7SmmK.mjs";
|
|
3
3
|
import { computed, toRef, watch } from "vue";
|
|
4
4
|
//#region src/composables/createDataTable/adapters/v0.ts
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as DataTableAdapter } from "./adapter-
|
|
2
|
-
import { t as createPagination } from "./createPagination-
|
|
1
|
+
import { t as DataTableAdapter } from "./adapter-gQ2SNKZq.mjs";
|
|
2
|
+
import { t as createPagination } from "./createPagination-CHF7SmmK.mjs";
|
|
3
3
|
import { toRef, watch } from "vue";
|
|
4
4
|
//#region src/composables/createDataTable/adapters/virtual.ts
|
|
5
5
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as DataTableAdapterResult, n as DataTableAdapterContext, t as DataTableAdapter } from "./adapter-
|
|
1
|
+
import { i as DataTableAdapterResult, n as DataTableAdapterContext, t as DataTableAdapter } from "./adapter-DlX3FA3A.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/composables/createDataTable/adapters/virtual.d.ts
|
|
4
4
|
declare class VirtualAdapter<T extends Record<string, unknown>> extends DataTableAdapter<T> {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vuetify/v0",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.2",
|
|
4
4
|
"description": "A meta UI framework for building applications, component libraries, and design systems with Vue 3",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"types": "./dist/index.d.mts",
|
|
@@ -52,17 +52,18 @@
|
|
|
52
52
|
"@ant-design/colors": "^8.0.1",
|
|
53
53
|
"@flagsmith/flagsmith": "^11.0.0",
|
|
54
54
|
"@material/material-color-utilities": "^0.4.0",
|
|
55
|
-
"@vue/compiler-dom": "^3.5.
|
|
55
|
+
"@vue/compiler-dom": "^3.5.32",
|
|
56
56
|
"@vue/test-utils": "^2.4.6",
|
|
57
|
-
"
|
|
58
|
-
"
|
|
57
|
+
"concurrently": "^9.2.1",
|
|
58
|
+
"launchdarkly-js-client-sdk": "^3.9.1",
|
|
59
|
+
"posthog-js": "^1.365.0",
|
|
59
60
|
"tsdown": "^0.21.7",
|
|
60
61
|
"tsx": "4.21.0",
|
|
61
62
|
"typescript": "6.0.2",
|
|
62
63
|
"unplugin-vue": "^7.1.1",
|
|
63
|
-
"vue": "3.5.
|
|
64
|
+
"vue": "3.5.32",
|
|
64
65
|
"vue-component-meta": "3.2.6",
|
|
65
|
-
"vue-i18n": "^11.3.
|
|
66
|
+
"vue-i18n": "^11.3.1"
|
|
66
67
|
},
|
|
67
68
|
"imports": {
|
|
68
69
|
"#v0/*": {
|
|
@@ -125,7 +126,9 @@
|
|
|
125
126
|
"@js-temporal/polyfill": "0.5.1"
|
|
126
127
|
},
|
|
127
128
|
"scripts": {
|
|
128
|
-
"build": "tsdown
|
|
129
|
+
"build": "concurrently --names tsdown,webtypes --kill-others-on-fail --prefix-colors cyan,magenta 'pnpm build:tsdown' 'pnpm build:web-types'",
|
|
130
|
+
"build:tsdown": "tsdown",
|
|
131
|
+
"build:web-types": "tsx scripts/generate-web-types.ts",
|
|
129
132
|
"generate:web-types": "tsx scripts/generate-web-types.ts",
|
|
130
133
|
"typecheck": "vue-tsc --noEmit --incremental"
|
|
131
134
|
}
|
package/SKILL.md
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: vuetify0
|
|
3
|
-
description: Build with @vuetify/v0 headless composables and components for Vue 3. Use when creating selection state (single, multi, grouped, stepped), form validation, tab/dialog/popover UI, provide/inject context, registries, virtual scrolling, pagination, keyboard shortcuts, resize observers, theming, breakpoints, or SSR-safe browser detection. Triggers on v0, vuetify0, headless components, or WAI-ARIA patterns.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Vuetify0 - Headless Composables & Components
|
|
7
|
-
|
|
8
|
-
Transform Vue 3 apps with unstyled, logic-focused building blocks for design systems.
|
|
9
|
-
|
|
10
|
-
## Quick Start
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
pnpm install @vuetify/v0
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
No global plugin required. Import only what you need:
|
|
17
|
-
|
|
18
|
-
```ts
|
|
19
|
-
import { createSelection } from '@vuetify/v0/composables'
|
|
20
|
-
import { Tabs } from '@vuetify/v0/components'
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## Core Decision Tree
|
|
24
|
-
|
|
25
|
-
**Before writing custom logic**, check if v0 already provides it:
|
|
26
|
-
|
|
27
|
-
| Need | Use |
|
|
28
|
-
|------|-----|
|
|
29
|
-
| Single item selection | `createSingle` |
|
|
30
|
-
| Multi-item selection | `createSelection` |
|
|
31
|
-
| Selection with "select all" | `createGroup` |
|
|
32
|
-
| Step wizard / carousel | `createStep` |
|
|
33
|
-
| Form validation | `createForm` |
|
|
34
|
-
| Shared state (provide/inject) | `createContext` |
|
|
35
|
-
| Browser utilities | `IN_BROWSER`, `useBreakpoints`, `useMediaQuery` |
|
|
36
|
-
|
|
37
|
-
## Component Architecture
|
|
38
|
-
|
|
39
|
-
All components are **headless** (unstyled) and follow WAI-ARIA patterns:
|
|
40
|
-
|
|
41
|
-
```vue
|
|
42
|
-
<script setup>
|
|
43
|
-
import { Tabs } from '@vuetify/v0/components'
|
|
44
|
-
</script>
|
|
45
|
-
|
|
46
|
-
<template>
|
|
47
|
-
<Tabs.Root v-model="active">
|
|
48
|
-
<Tabs.List>
|
|
49
|
-
<Tabs.Item value="overview">Overview</Tabs.Item>
|
|
50
|
-
</Tabs.List>
|
|
51
|
-
<Tabs.Panel value="overview">Content</Tabs.Panel>
|
|
52
|
-
</Tabs.Root>
|
|
53
|
-
</template>
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
**Available components**: Dialog, Tabs, ExpansionPanel, Checkbox, Radio, Popover, Pagination, Select, Slider, Splitter, Switch, Avatar, Breadcrumbs, Form, Input, Scrim
|
|
57
|
-
|
|
58
|
-
## Essential Patterns
|
|
59
|
-
|
|
60
|
-
### Selection State
|
|
61
|
-
```ts
|
|
62
|
-
// Single selection (tabs, theme picker)
|
|
63
|
-
const single = createSingle({ mandatory: 'force' })
|
|
64
|
-
|
|
65
|
-
// Multi-selection (tags, filters)
|
|
66
|
-
const selection = createSelection({ multiple: true })
|
|
67
|
-
|
|
68
|
-
// Group with "select all" (data tables)
|
|
69
|
-
const group = createGroup()
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Context Sharing
|
|
73
|
-
```ts
|
|
74
|
-
// Type-safe provide/inject
|
|
75
|
-
const [useTheme, provideTheme] = createContext<Theme>('Theme')
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### Form Validation
|
|
79
|
-
```ts
|
|
80
|
-
const form = createForm()
|
|
81
|
-
form.register({ id: 'email', rules: [required, email] })
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
## Anti-Patterns
|
|
85
|
-
|
|
86
|
-
**Don't reinvent these wheels:**
|
|
87
|
-
|
|
88
|
-
- **Custom selection logic** → Use `createSelection`
|
|
89
|
-
- **Manual provide/inject** → Use `createContext`
|
|
90
|
-
- **SSR checks** → Use `IN_BROWSER` constant
|
|
91
|
-
|
|
92
|
-
## Resources
|
|
93
|
-
|
|
94
|
-
- **Vuetify MCP** for structured API access: `claude mcp add vuetify-mcp https://mcp.vuetifyjs.com/mcp`
|
|
95
|
-
- **Live docs**: https://0.vuetifyjs.com
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Set of HTML elements that are self-closing (void elements)
|
|
3
|
-
* These elements cannot have children and don't need closing tags
|
|
4
|
-
*/
|
|
5
|
-
const SELF_CLOSING_TAGS = new Set([
|
|
6
|
-
"area",
|
|
7
|
-
"base",
|
|
8
|
-
"br",
|
|
9
|
-
"col",
|
|
10
|
-
"embed",
|
|
11
|
-
"hr",
|
|
12
|
-
"img",
|
|
13
|
-
"input",
|
|
14
|
-
"link",
|
|
15
|
-
"meta",
|
|
16
|
-
"source",
|
|
17
|
-
"track",
|
|
18
|
-
"wbr"
|
|
19
|
-
]);
|
|
20
|
-
/**
|
|
21
|
-
* Common HTML element types for polymorphic components
|
|
22
|
-
*/
|
|
23
|
-
const COMMON_ELEMENTS = {
|
|
24
|
-
DIV: "div",
|
|
25
|
-
SPAN: "span",
|
|
26
|
-
SECTION: "section",
|
|
27
|
-
ARTICLE: "article",
|
|
28
|
-
ASIDE: "aside",
|
|
29
|
-
HEADER: "header",
|
|
30
|
-
FOOTER: "footer",
|
|
31
|
-
MAIN: "main",
|
|
32
|
-
NAV: "nav",
|
|
33
|
-
P: "p",
|
|
34
|
-
H1: "h1",
|
|
35
|
-
H2: "h2",
|
|
36
|
-
H3: "h3",
|
|
37
|
-
H4: "h4",
|
|
38
|
-
H5: "h5",
|
|
39
|
-
H6: "h6",
|
|
40
|
-
BUTTON: "button",
|
|
41
|
-
A: "a",
|
|
42
|
-
INPUT: "input",
|
|
43
|
-
TEXTAREA: "textarea",
|
|
44
|
-
SELECT: "select",
|
|
45
|
-
LABEL: "label",
|
|
46
|
-
UL: "ul",
|
|
47
|
-
OL: "ol",
|
|
48
|
-
LI: "li",
|
|
49
|
-
DL: "dl",
|
|
50
|
-
DT: "dt",
|
|
51
|
-
DD: "dd",
|
|
52
|
-
IMG: "img",
|
|
53
|
-
VIDEO: "video",
|
|
54
|
-
AUDIO: "audio",
|
|
55
|
-
CANVAS: "canvas",
|
|
56
|
-
SVG: "svg",
|
|
57
|
-
TABLE: "table",
|
|
58
|
-
THEAD: "thead",
|
|
59
|
-
TBODY: "tbody",
|
|
60
|
-
TFOOT: "tfoot",
|
|
61
|
-
TR: "tr",
|
|
62
|
-
TH: "th",
|
|
63
|
-
TD: "td",
|
|
64
|
-
FORM: "form",
|
|
65
|
-
FIELDSET: "fieldset",
|
|
66
|
-
LEGEND: "legend"
|
|
67
|
-
};
|
|
68
|
-
/**
|
|
69
|
-
* Check if an element is self-closing
|
|
70
|
-
*/
|
|
71
|
-
function isSelfClosingTag(tag) {
|
|
72
|
-
return SELF_CLOSING_TAGS.has(tag.toLowerCase());
|
|
73
|
-
}
|
|
74
|
-
//#endregion
|
|
75
|
-
export { SELF_CLOSING_TAGS as n, isSelfClosingTag as r, COMMON_ELEMENTS as t };
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
//#region src/constants/globals.d.ts
|
|
2
|
-
declare const IN_BROWSER: boolean;
|
|
3
|
-
declare const SUPPORTS_TOUCH: boolean;
|
|
4
|
-
declare const SUPPORTS_MATCH_MEDIA: boolean;
|
|
5
|
-
declare const SUPPORTS_OBSERVER: boolean;
|
|
6
|
-
declare const SUPPORTS_INTERSECTION_OBSERVER: boolean;
|
|
7
|
-
declare const SUPPORTS_MUTATION_OBSERVER: boolean;
|
|
8
|
-
declare const version: any;
|
|
9
|
-
declare const __LOGGER_ENABLED__: any;
|
|
10
|
-
//#endregion
|
|
11
|
-
//#region src/constants/htmlElements.d.ts
|
|
12
|
-
declare const selfClosingTags: ["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "source", "track", "wbr"];
|
|
13
|
-
/**
|
|
14
|
-
* Set of HTML elements that are self-closing (void elements)
|
|
15
|
-
* These elements cannot have children and don't need closing tags
|
|
16
|
-
*/
|
|
17
|
-
declare const SELF_CLOSING_TAGS: Set<"area" | "base" | "br" | "col" | "embed" | "hr" | "img" | "input" | "link" | "meta" | "source" | "track" | "wbr">;
|
|
18
|
-
/**
|
|
19
|
-
* Common HTML element types for polymorphic components
|
|
20
|
-
*/
|
|
21
|
-
declare const COMMON_ELEMENTS: {
|
|
22
|
-
readonly DIV: "div";
|
|
23
|
-
readonly SPAN: "span";
|
|
24
|
-
readonly SECTION: "section";
|
|
25
|
-
readonly ARTICLE: "article";
|
|
26
|
-
readonly ASIDE: "aside";
|
|
27
|
-
readonly HEADER: "header";
|
|
28
|
-
readonly FOOTER: "footer";
|
|
29
|
-
readonly MAIN: "main";
|
|
30
|
-
readonly NAV: "nav";
|
|
31
|
-
readonly P: "p";
|
|
32
|
-
readonly H1: "h1";
|
|
33
|
-
readonly H2: "h2";
|
|
34
|
-
readonly H3: "h3";
|
|
35
|
-
readonly H4: "h4";
|
|
36
|
-
readonly H5: "h5";
|
|
37
|
-
readonly H6: "h6";
|
|
38
|
-
readonly BUTTON: "button";
|
|
39
|
-
readonly A: "a";
|
|
40
|
-
readonly INPUT: "input";
|
|
41
|
-
readonly TEXTAREA: "textarea";
|
|
42
|
-
readonly SELECT: "select";
|
|
43
|
-
readonly LABEL: "label";
|
|
44
|
-
readonly UL: "ul";
|
|
45
|
-
readonly OL: "ol";
|
|
46
|
-
readonly LI: "li";
|
|
47
|
-
readonly DL: "dl";
|
|
48
|
-
readonly DT: "dt";
|
|
49
|
-
readonly DD: "dd";
|
|
50
|
-
readonly IMG: "img";
|
|
51
|
-
readonly VIDEO: "video";
|
|
52
|
-
readonly AUDIO: "audio";
|
|
53
|
-
readonly CANVAS: "canvas";
|
|
54
|
-
readonly SVG: "svg";
|
|
55
|
-
readonly TABLE: "table";
|
|
56
|
-
readonly THEAD: "thead";
|
|
57
|
-
readonly TBODY: "tbody";
|
|
58
|
-
readonly TFOOT: "tfoot";
|
|
59
|
-
readonly TR: "tr";
|
|
60
|
-
readonly TH: "th";
|
|
61
|
-
readonly TD: "td";
|
|
62
|
-
readonly FORM: "form";
|
|
63
|
-
readonly FIELDSET: "fieldset";
|
|
64
|
-
readonly LEGEND: "legend";
|
|
65
|
-
};
|
|
66
|
-
/**
|
|
67
|
-
* Check if an element is self-closing
|
|
68
|
-
*/
|
|
69
|
-
declare function isSelfClosingTag(tag: keyof HTMLElementTagNameMap): boolean;
|
|
70
|
-
/**
|
|
71
|
-
* Type for all valid HTML element names
|
|
72
|
-
*/
|
|
73
|
-
type HTMLElementName = keyof HTMLElementTagNameMap;
|
|
74
|
-
/**
|
|
75
|
-
* Type for self-closing HTML elements
|
|
76
|
-
*/
|
|
77
|
-
type SelfClosingElement = (typeof selfClosingTags)[number];
|
|
78
|
-
//#endregion
|
|
79
|
-
export { isSelfClosingTag as a, SUPPORTS_MATCH_MEDIA as c, SUPPORTS_TOUCH as d, __LOGGER_ENABLED__ as f, SelfClosingElement as i, SUPPORTS_MUTATION_OBSERVER as l, HTMLElementName as n, IN_BROWSER as o, version as p, SELF_CLOSING_TAGS as r, SUPPORTS_INTERSECTION_OBSERVER as s, COMMON_ELEMENTS as t, SUPPORTS_OBSERVER as u };
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|