vueless 0.0.626 → 0.0.628

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 (71) hide show
  1. package/index.d.ts +10 -8
  2. package/index.ts +14 -12
  3. package/package.json +2 -2
  4. package/types.ts +2 -1
  5. package/ui.boilerplate/UBoilerplate.vue +39 -0
  6. package/ui.boilerplate/config.ts +6 -0
  7. package/ui.boilerplate/constants.ts +5 -0
  8. package/ui.boilerplate/storybook/stories_.ts +39 -0
  9. package/ui.boilerplate/types.ts +18 -0
  10. package/ui.text-money/storybook/docs.mdx +16 -0
  11. package/web-types.json +32 -1
  12. /package/directives/clickOutside/storybook/{Docs.mdx → docs.mdx} +0 -0
  13. /package/directives/tooltip/storybook/{Docs.mdx → docs.mdx} +0 -0
  14. /package/{ui.button-link/storybook/Docs.mdx → ui.boilerplate/storybook/docs_.mdx} +0 -0
  15. /package/{ui.container-accordion/storybook/Docs.mdx → ui.button/storybook/docs.mdx} +0 -0
  16. /package/{ui.button-toggle-item/storybook/Docs.mdx → ui.button-link/storybook/docs.mdx} +0 -0
  17. /package/{ui.button/storybook/Docs.mdx → ui.button-toggle/storybook/docs.mdx} +0 -0
  18. /package/{ui.button-toggle/storybook/Docs.mdx → ui.button-toggle-item/storybook/docs.mdx} +0 -0
  19. /package/{ui.container-card/storybook/Docs.mdx → ui.container-accordion/storybook/docs.mdx} +0 -0
  20. /package/{ui.container-col/storybook/Docs.mdx → ui.container-card/storybook/docs.mdx} +0 -0
  21. /package/{ui.container-divider/storybook/Docs.mdx → ui.container-col/storybook/docs.mdx} +0 -0
  22. /package/{ui.container-group/storybook/Docs.mdx → ui.container-divider/storybook/docs.mdx} +0 -0
  23. /package/{ui.container-groups/storybook/Docs.mdx → ui.container-group/storybook/docs.mdx} +0 -0
  24. /package/{ui.container-modal-confirm/storybook/Docs.mdx → ui.container-groups/storybook/docs.mdx} +0 -0
  25. /package/{ui.container-page/storybook/Docs.mdx → ui.container-modal/storybook/docs.mdx} +0 -0
  26. /package/{ui.container-modal/storybook/Docs.mdx → ui.container-modal-confirm/storybook/docs.mdx} +0 -0
  27. /package/{ui.container-row/storybook/Docs.mdx → ui.container-page/storybook/docs.mdx} +0 -0
  28. /package/{ui.dropdown-badge/storybook/Docs.mdx → ui.container-row/storybook/docs.mdx} +0 -0
  29. /package/ui.data-list/storybook/{Docs.mdx → docs.mdx} +0 -0
  30. /package/ui.data-table/storybook/{Docs.mdx → docs.mdx} +0 -0
  31. /package/{ui.dropdown-button/storybook/Docs.mdx → ui.dropdown-badge/storybook/docs.mdx} +0 -0
  32. /package/{ui.dropdown-link/storybook/Docs.mdx → ui.dropdown-button/storybook/docs.mdx} +0 -0
  33. /package/{ui.dropdown-list/storybook/Docs.mdx → ui.dropdown-link/storybook/docs.mdx} +0 -0
  34. /package/{ui.form-checkbox-group/storybook/Docs.mdx → ui.dropdown-list/storybook/docs.mdx} +0 -0
  35. /package/ui.form-calendar/storybook/{Docs.mdx → docs.mdx} +0 -0
  36. /package/{ui.form-color-picker/storybook/Docs.mdx → ui.form-checkbox/storybook/docs.mdx} +0 -0
  37. /package/{ui.form-checkbox-multi-state/storybook/Docs.mdx → ui.form-checkbox-group/storybook/docs.mdx} +0 -0
  38. /package/{ui.form-checkbox/storybook/Docs.mdx → ui.form-checkbox-multi-state/storybook/docs.mdx} +0 -0
  39. /package/{ui.form-date-picker-range/storybook/Docs.mdx → ui.form-color-picker/storybook/docs.mdx} +0 -0
  40. /package/ui.form-date-picker/storybook/{Docs.mdx → docs.mdx} +0 -0
  41. /package/{ui.form-input-file/storybook/Docs.mdx → ui.form-date-picker-range/storybook/docs.mdx} +0 -0
  42. /package/{ui.form-label/storybook/Docs.mdx → ui.form-input/storybook/docs.mdx} +0 -0
  43. /package/{ui.form-input-money/storybook/Docs.mdx → ui.form-input-file/storybook/docs.mdx} +0 -0
  44. /package/{ui.form-input-number/storybook/Docs.mdx → ui.form-input-money/storybook/docs.mdx} +0 -0
  45. /package/{ui.form-input-rating/storybook/Docs.mdx → ui.form-input-number/storybook/docs.mdx} +0 -0
  46. /package/{ui.form-input-search/storybook/Docs.mdx → ui.form-input-rating/storybook/docs.mdx} +0 -0
  47. /package/{ui.form-input/storybook/Docs.mdx → ui.form-input-search/storybook/docs.mdx} +0 -0
  48. /package/{ui.form-radio/storybook/Docs.mdx → ui.form-label/storybook/docs.mdx} +0 -0
  49. /package/{ui.form-select/storybook/Docs.mdx → ui.form-radio/storybook/docs.mdx} +0 -0
  50. /package/ui.form-radio-group/storybook/{Docs.mdx → docs.mdx} +0 -0
  51. /package/{ui.form-switch/storybook/Docs.mdx → ui.form-select/storybook/docs.mdx} +0 -0
  52. /package/{ui.form-textarea/storybook/Docs.mdx → ui.form-switch/storybook/docs.mdx} +0 -0
  53. /package/{ui.image-avatar/storybook/Docs.mdx → ui.form-textarea/storybook/docs.mdx} +0 -0
  54. /package/{ui.image-icon/storybook/Docs.mdx → ui.image-avatar/storybook/docs.mdx} +0 -0
  55. /package/{ui.loader/storybook/Docs.mdx → ui.image-icon/storybook/docs.mdx} +0 -0
  56. /package/{ui.navigation-pagination/storybook/Docs.mdx → ui.loader/storybook/docs.mdx} +0 -0
  57. /package/ui.loader-overlay/storybook/{Docs.mdx → docs.mdx} +0 -0
  58. /package/ui.loader-progress/storybook/{Docs.mdx → docs.mdx} +0 -0
  59. /package/{ui.navigation-progress/storybook/Docs.mdx → ui.navigation-pagination/storybook/docs.mdx} +0 -0
  60. /package/{ui.navigation-tab/storybook/Docs.mdx → ui.navigation-progress/storybook/docs.mdx} +0 -0
  61. /package/{ui.navigation-tabs/storybook/Docs.mdx → ui.navigation-tab/storybook/docs.mdx} +0 -0
  62. /package/{ui.other-dot/storybook/Docs.mdx → ui.navigation-tabs/storybook/docs.mdx} +0 -0
  63. /package/{ui.text-alert/storybook/Docs.mdx → ui.other-dot/storybook/docs.mdx} +0 -0
  64. /package/{ui.text-badge/storybook/Docs.mdx → ui.text-alert/storybook/docs.mdx} +0 -0
  65. /package/{ui.text-block/storybook/Docs.mdx → ui.text-badge/storybook/docs.mdx} +0 -0
  66. /package/{ui.text-empty/storybook/Docs.mdx → ui.text-block/storybook/docs.mdx} +0 -0
  67. /package/{ui.text-file/storybook/Docs.mdx → ui.text-empty/storybook/docs.mdx} +0 -0
  68. /package/{ui.text-files/storybook/Docs.mdx → ui.text-file/storybook/docs.mdx} +0 -0
  69. /package/{ui.text-header/storybook/Docs.mdx → ui.text-files/storybook/docs.mdx} +0 -0
  70. /package/{ui.text-money/storybook/Docs.mdx → ui.text-header/storybook/docs.mdx} +0 -0
  71. /package/ui.text-notify/storybook/{Docs.mdx → docs.mdx} +0 -0
package/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { App } from "vue";
2
2
  import type { CreateVuelessOptions } from "./types.ts";
3
3
  export { setTheme } from "./utils/theme.ts";
4
- export { cx, cva, compose } from "./utils/ui.ts";
4
+ export { cx, cva, compose, getDefaults } from "./utils/ui.ts";
5
5
  export {
6
6
  isSSR,
7
7
  isCSR,
@@ -10,14 +10,16 @@ export {
10
10
  createDebounce,
11
11
  hasSlotContent,
12
12
  } from "./utils/helper.ts";
13
+ export { getArgTypes, getSlotNames, getSlotsFragment, getSource } from "./utils/storybook.ts";
13
14
  export { isMac, isPWA, isIOS, isAndroid, isMobileApp, isWindows } from "./utils/platform.ts";
14
- export { default as createVueI18nAdapter } from "./adatper.locale/vue-i18n.js";
15
- export { default as defaultEnLocale } from "./adatper.locale/locales/en.js";
15
+ export { default as createVueI18nAdapter } from "./adatper.locale/vue-i18n.ts";
16
+ export { default as defaultEnLocale } from "./adatper.locale/locales/en.ts";
17
+ export { default as useUI } from "./composables/useUI.ts";
16
18
  export { useLocale } from "./composables/useLocale.ts";
17
- export { useLoaderProgress } from "./ui.loader-progress/useLoaderProgress.js";
18
- export { loaderProgressOn, loaderProgressOff } from "./ui.loader-progress/utilLoaderProgress.js";
19
- export { useLoaderOverlay } from "./ui.loader-overlay/useLoaderOverlay.js";
20
- export { loaderOverlayOn, loaderOverlayOff } from "./ui.loader-overlay/utilLoaderOverlay.js";
19
+ export { useLoaderProgress } from "./ui.loader-progress/useLoaderProgress.ts";
20
+ export { loaderProgressOn, loaderProgressOff } from "./ui.loader-progress/utilLoaderProgress.ts";
21
+ export { useLoaderOverlay } from "./ui.loader-overlay/useLoaderOverlay.ts";
22
+ export { loaderOverlayOn, loaderOverlayOff } from "./ui.loader-overlay/utilLoaderOverlay.ts";
21
23
  export {
22
24
  notify,
23
25
  notifySuccess,
@@ -26,7 +28,7 @@ export {
26
28
  clearNotifications,
27
29
  setDelayedNotify,
28
30
  getDelayedNotify,
29
- } from "./ui.text-notify/utilNotify.js";
31
+ } from "./ui.text-notify/utilNotify.ts";
30
32
  export declare function createVueless(options?: CreateVuelessOptions): {
31
33
  install: (app: App) => void;
32
34
  };
package/index.ts CHANGED
@@ -1,23 +1,25 @@
1
1
  /* eslint-disable prettier/prettier */
2
2
  import { createLocale, LocaleSymbol } from "./composables/useLocale.ts";
3
- import { createLoaderOverlay, LoaderOverlaySymbol } from "./ui.loader-overlay/useLoaderOverlay.js";
4
- import { createLoaderProgress, LoaderProgressSymbol } from "./ui.loader-progress/useLoaderProgress.js";
3
+ import { createLoaderOverlay, LoaderOverlaySymbol } from "./ui.loader-overlay/useLoaderOverlay.ts";
4
+ import { createLoaderProgress, LoaderProgressSymbol } from "./ui.loader-progress/useLoaderProgress.ts";
5
5
  import { themeInit } from "./utils/theme.ts";
6
6
 
7
- import type { App } from 'vue'
8
- import type { CreateVuelessOptions } from './types.ts'
7
+ import type { App } from "vue"
8
+ import type { CreateVuelessOptions } from "./types.ts"
9
9
 
10
10
  export { setTheme } from "./utils/theme.ts";
11
- export { cx, cva, compose } from "./utils/ui.ts";
11
+ export { cx, cva, compose, getDefaults } from "./utils/ui.ts";
12
+ export { getArgTypes, getSlotNames, getSlotsFragment, getSource } from "./utils/storybook.ts";
12
13
  export { isSSR, isCSR, getRandomId, setTitle, createDebounce, hasSlotContent } from "./utils/helper.ts";
13
14
  export { isMac, isPWA, isIOS, isAndroid, isMobileApp, isWindows } from "./utils/platform.ts";
14
- export { default as createVueI18nAdapter } from "./adatper.locale/vue-i18n.js";
15
- export { default as defaultEnLocale } from "./adatper.locale/locales/en.js";
15
+ export { default as createVueI18nAdapter } from "./adatper.locale/vue-i18n.ts";
16
+ export { default as defaultEnLocale } from "./adatper.locale/locales/en.ts";
17
+ export { default as useUI } from "./composables/useUI.ts";
16
18
  export { useLocale } from "./composables/useLocale.ts";
17
- export { useLoaderProgress } from "./ui.loader-progress/useLoaderProgress.js";
18
- export { loaderProgressOn, loaderProgressOff } from "./ui.loader-progress/utilLoaderProgress.js";
19
- export { useLoaderOverlay } from "./ui.loader-overlay/useLoaderOverlay.js";
20
- export { loaderOverlayOn, loaderOverlayOff } from "./ui.loader-overlay/utilLoaderOverlay.js";
19
+ export { useLoaderProgress } from "./ui.loader-progress/useLoaderProgress.ts";
20
+ export { loaderProgressOn, loaderProgressOff } from "./ui.loader-progress/utilLoaderProgress.ts";
21
+ export { useLoaderOverlay } from "./ui.loader-overlay/useLoaderOverlay.ts";
22
+ export { loaderOverlayOn, loaderOverlayOff } from "./ui.loader-overlay/utilLoaderOverlay.ts";
21
23
  export {
22
24
  notify,
23
25
  notifySuccess,
@@ -26,7 +28,7 @@ export {
26
28
  clearNotifications,
27
29
  setDelayedNotify,
28
30
  getDelayedNotify,
29
- } from "./ui.text-notify/utilNotify.js";
31
+ } from "./ui.text-notify/utilNotify.ts";
30
32
  /* eslint-enable prettier/prettier */
31
33
 
32
34
  export function createVueless(options: CreateVuelessOptions = {}) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vueless",
3
- "version": "0.0.626",
3
+ "version": "0.0.628",
4
4
  "license": "MIT",
5
5
  "description": "Vue Styleless UI Component Library, powered by Tailwind CSS.",
6
6
  "keywords": [
@@ -66,7 +66,7 @@
66
66
  "@vue/eslint-config-prettier": "^10.0.0",
67
67
  "@vue/eslint-config-typescript": "^14.1.1",
68
68
  "@vue/tsconfig": "^0.5.1",
69
- "@vueless/storybook": "^0.0.37",
69
+ "@vueless/storybook": "^0.0.53",
70
70
  "@vueless/web-types": "^0.0.21",
71
71
  "autoprefixer": "^10.4.19",
72
72
  "cssnano": "^6.1.2",
package/types.ts CHANGED
@@ -139,7 +139,7 @@ export type UnknownObject = Record<string, unknown>;
139
139
  export type UnknownArray = unknown[];
140
140
  export type UnknownType = string | number | boolean | UnknownObject | undefined | null;
141
141
 
142
- export type ComponentNames = keyof Components; // keys union
142
+ export type ComponentNames = keyof Components & string; // keys union
143
143
  export type Strategies = "merge" | "replace" | "override";
144
144
 
145
145
  export type Gray = "gray";
@@ -226,6 +226,7 @@ export interface Components {
226
226
  UInputMoney: Partial<typeof UInputMoneyConfig>;
227
227
  UDataList: Partial<typeof UDataListConfig>;
228
228
  USelect: Partial<typeof USelectConfig>;
229
+ [key: string]: UnknownObject;
229
230
  }
230
231
 
231
232
  /* Make all config keys optional and allow to have string and object values. */
@@ -0,0 +1,39 @@
1
+ <script setup lang="ts">
2
+ import { computed } from "vue";
3
+
4
+ import useUI from "../composables/useUI.ts";
5
+ import { getDefaults } from "../utils/ui.ts";
6
+
7
+ import defaultConfig from "./config.ts";
8
+ import { COMPONENT_NAME } from "./constants.ts";
9
+
10
+ import type { Props, Config } from "./types.ts";
11
+
12
+ defineOptions({ inheritAttrs: false });
13
+
14
+ /**
15
+ * Declaring component props.
16
+ */
17
+ withDefaults(defineProps<Props>(), {
18
+ ...getDefaults<Props, Config>(defaultConfig, COMPONENT_NAME),
19
+ /* Add default values for props below */
20
+ });
21
+
22
+ /**
23
+ * Add component logic here.
24
+ */
25
+
26
+ /**
27
+ * Get element / nested component attributes for each config token ✨
28
+ * Applies: `class`, `config`, redefined default `props` and dev `vl-...` attributes.
29
+ */
30
+ const mutatedProps = computed(() => ({
31
+ /* Add mutated props or non-props component state below */
32
+ }));
33
+
34
+ const { wrapperAttrs } = useUI<Config>(defaultConfig, mutatedProps);
35
+ </script>
36
+
37
+ <template>
38
+ <div v-bind="wrapperAttrs">Boilerplate</div>
39
+ </template>
@@ -0,0 +1,6 @@
1
+ export default /*tw*/ {
2
+ wrapper: "text-6xl font-bold",
3
+ defaults: {
4
+ /* define default prop values */
5
+ },
6
+ };
@@ -0,0 +1,5 @@
1
+ /*
2
+ This const is needed to prevent the issue in script setup:
3
+ `defineProps` is referencing locally declared variables. (vue/valid-define-props)
4
+ */
5
+ export const COMPONENT_NAME = "UBoilerplate";
@@ -0,0 +1,39 @@
1
+ import { getArgTypes, getSlotNames, getSlotsFragment } from "../../utils/storybook.ts";
2
+
3
+ import UBoilerplate from "../../ui.boilerplate/UBoilerplate.vue";
4
+
5
+ import type { Meta, StoryFn } from "@storybook/vue3";
6
+ import type { Props } from "../types.ts";
7
+
8
+ interface UBoilerplateArgs extends Props {
9
+ slotTemplate?: string;
10
+ }
11
+
12
+ export default {
13
+ id: "10010",
14
+ title: "Custom / UBoilerplate",
15
+ component: UBoilerplate,
16
+ args: {
17
+ /* predefine prop values here */
18
+ },
19
+ argTypes: {
20
+ ...getArgTypes(UBoilerplate.__name),
21
+ },
22
+ } as Meta;
23
+
24
+ const DefaultTemplate: StoryFn<UBoilerplateArgs> = (args: UBoilerplateArgs) => ({
25
+ components: { UBoilerplate },
26
+ setup() {
27
+ const slots = getSlotNames(UBoilerplate.__name);
28
+
29
+ return { args, slots };
30
+ },
31
+ template: `
32
+ <UBoilerplate v-bind="args">
33
+ ${args.slotTemplate || getSlotsFragment("")}
34
+ </UBoilerplate>
35
+ `,
36
+ });
37
+
38
+ export const Default = DefaultTemplate.bind({});
39
+ Default.args = {};
@@ -0,0 +1,18 @@
1
+ import defaultConfig from "./config.ts";
2
+ import type { ComponentConfig } from "../types.ts";
3
+
4
+ export type Config = typeof defaultConfig;
5
+
6
+ export interface Props {
7
+ /* Add your component props below */
8
+
9
+ /**
10
+ * Component config object.
11
+ */
12
+ config?: ComponentConfig<Config>;
13
+
14
+ /**
15
+ * Data-test attribute for automated testing.
16
+ */
17
+ dataTest?: string;
18
+ }
@@ -0,0 +1,16 @@
1
+ import { Meta, Title, Subtitle, Description, Primary, Controls, Stories, Source } from "@storybook/blocks";
2
+ import { getSource } from "../../utils/storybook.ts";
3
+
4
+ import * as stories from "./stories.ts";
5
+ import defaultConfig from "../config.ts?raw"
6
+
7
+ <Meta of={stories} />
8
+ <Title of={stories} />
9
+ <Subtitle of={stories} />
10
+ <Description of={stories} />
11
+ <Primary of={stories} />
12
+ <Controls of={stories.Default} />
13
+ <Stories of={stories} />
14
+
15
+ ## Default config
16
+ <Source code={getSource(defaultConfig)} language="jsx" dark />
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "framework": "vue",
3
3
  "name": "vueless",
4
- "version": "0.0.626",
4
+ "version": "0.0.628",
5
5
  "contributions": {
6
6
  "html": {
7
7
  "description-markup": "markdown",
@@ -715,6 +715,37 @@
715
715
  "symbol": "default"
716
716
  }
717
717
  },
718
+ {
719
+ "name": "UBoilerplate",
720
+ "description": "",
721
+ "attributes": [
722
+ {
723
+ "name": "config",
724
+ "required": false,
725
+ "description": "Component config object.",
726
+ "enum": [
727
+ "Config"
728
+ ],
729
+ "value": {
730
+ "kind": "expression",
731
+ "type": "ComponentConfig"
732
+ }
733
+ },
734
+ {
735
+ "name": "dataTest",
736
+ "required": false,
737
+ "description": "Data-test attribute for automated testing.",
738
+ "value": {
739
+ "kind": "expression",
740
+ "type": "string"
741
+ }
742
+ }
743
+ ],
744
+ "source": {
745
+ "module": "./src/ui.boilerplate/UBoilerplate.vue",
746
+ "symbol": "default"
747
+ }
748
+ },
718
749
  {
719
750
  "name": "UButton",
720
751
  "description": "",
File without changes
File without changes
File without changes