@simsustech/quasar-components 0.11.5 → 0.11.7

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/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @simsustech/quasar-components
2
2
 
3
+ ## 0.11.7
4
+
5
+ ### Patch Changes
6
+
7
+ - 5822b58: fix(components): add word-wrap to FormItem
8
+ - 0a500e8: feat(components): add closeIcon prop to ResponsiveDialog
9
+
10
+ ## 0.11.6
11
+
12
+ ### Patch Changes
13
+
14
+ - 16ce5f9: feat(ResourcePage): replace fab by regular buttons
15
+
3
16
  ## 0.11.5
4
17
 
5
18
  ### Patch Changes
@@ -5,7 +5,9 @@ const lang$1 = {
5
5
  submit: "Submit",
6
6
  next: "Next",
7
7
  back: "Back",
8
- send: "Send"
8
+ send: "Send",
9
+ add: "Add",
10
+ edit: "Edit"
9
11
  };
10
12
  const enUS = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
11
13
  __proto__: null,
@@ -14,7 +16,7 @@ const enUS = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty
14
16
  const lang = ref(lang$1);
15
17
  const locales = /* @__PURE__ */ Object.assign({
16
18
  "./en-US.ts": () => Promise.resolve().then(() => enUS),
17
- "./nl.ts": () => import("./nl-CLymTRkb.js")
19
+ "./nl.ts": () => import("./nl-X50pmfG-.js")
18
20
  });
19
21
  const useLang = () => {
20
22
  return lang;
@@ -1,6 +1,6 @@
1
1
  import { useQuasar, QForm, QInput, QStep, QStepperNavigation, QStepper, QIcon, QBtn, QSlider, QItemSection, QItem, QList, QMenu, QTable, QTh, QTr, QSelect, QTd, QItemLabel } from "quasar";
2
2
  import { ref, defineComponent, watch, computed, openBlock, createBlock, unref, mergeProps, withCtx, createVNode, renderSlot, toRef, createCommentVNode, createElementBlock, Fragment, renderList, createTextVNode, toDisplayString, toRefs, createElementVNode } from "vue";
3
- import { _ as _sfc_main$d } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-D133pxTB.js";
3
+ import { _ as _sfc_main$d } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-BAoq0ukq.js";
4
4
  const lang$1 = {
5
5
  isoName: "en-US",
6
6
  myAccount: "Account",
package/dist/form.js CHANGED
@@ -276,7 +276,9 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
276
276
  ]),
277
277
  _: 1
278
278
  }),
279
- createVNode(unref(QItemLabel), null, {
279
+ createVNode(unref(QItemLabel), { style: {
280
+ "word-wrap": "anywhere"
281
+ } }, {
280
282
  default: withCtx(() => [
281
283
  createTextVNode(toDisplayString(_ctx.modelValue || "-"), 1)
282
284
  ]),
package/dist/general.js CHANGED
@@ -1,9 +1,9 @@
1
- import { l as loadLang, u as useLang, _ as _sfc_main$5 } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-D133pxTB.js";
2
- import { useQuasar, QCard, QCardSection, QCardActions, QDialog, QBtn, QToolbarTitle, QToolbar, QHeader, QPage, QPageContainer, QLayout, QPageSticky, QSelect, QItemSection, QItemLabel, QItem, QList } from "quasar";
3
- import { defineComponent, watch, ref, openBlock, createBlock, unref, withCtx, renderSlot, createVNode, createElementVNode, normalizeProps, guardReactiveProps, normalizeClass, createCommentVNode, toRefs, useAttrs, computed, mergeProps, createElementBlock, resolveDynamicComponent, createTextVNode, toDisplayString } from "vue";
1
+ import { l as loadLang, u as useLang, _ as _sfc_main$5 } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-BAoq0ukq.js";
2
+ import { useQuasar, QCard, QCardSection, QCardActions, QDialog, QBtn, QToolbarTitle, QToolbar, QHeader, QPage, QPageContainer, QLayout, QSpace, QPageSticky, QSelect, QItemSection, QItemLabel, QItem, QList } from "quasar";
3
+ import { defineComponent, watch, ref, openBlock, createBlock, unref, withCtx, renderSlot, createVNode, createElementVNode, normalizeProps, guardReactiveProps, normalizeClass, createCommentVNode, toRefs, createElementBlock, useAttrs, computed, mergeProps, resolveDynamicComponent, createTextVNode, toDisplayString } from "vue";
4
4
  import { f as flags, u as useLang$1 } from "./index-DnmJt2wP.js";
5
5
  const _hoisted_1$2 = { class: "text-h6" };
6
- const _hoisted_2 = { class: "text-subtitle2" };
6
+ const _hoisted_2$1 = { class: "text-subtitle2" };
7
7
  const __default__$2 = {
8
8
  name: "QStyledCard"
9
9
  };
@@ -45,7 +45,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
45
45
  createElementVNode("div", _hoisted_1$2, [
46
46
  renderSlot(_ctx.$slots, "title", {}, void 0, true)
47
47
  ]),
48
- createElementVNode("div", _hoisted_2, [
48
+ createElementVNode("div", _hoisted_2$1, [
49
49
  renderSlot(_ctx.$slots, "subtitle", {}, void 0, true)
50
50
  ])
51
51
  ]),
@@ -84,7 +84,8 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
84
84
  ...__default__$1,
85
85
  props: {
86
86
  display: { type: Boolean },
87
- buttonType: {}
87
+ buttonType: { default: "submit" },
88
+ closeIcon: { default: "close" }
88
89
  },
89
90
  emits: ["submit"],
90
91
  setup(__props, { expose: __expose, emit: __emit }) {
@@ -155,12 +156,12 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
155
156
  createVNode(_component_q_toolbar, null, {
156
157
  default: withCtx(() => [
157
158
  createVNode(_component_q_btn, {
158
- icon: "close",
159
+ icon: _ctx.closeIcon,
159
160
  flat: "",
160
161
  round: "",
161
162
  dense: "",
162
163
  onClick: close
163
- }),
164
+ }, null, 8, ["icon"]),
164
165
  createVNode(_component_q_toolbar_title, null, {
165
166
  default: withCtx(() => [
166
167
  renderSlot(_ctx.$slots, "title")
@@ -181,7 +182,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
181
182
  }),
182
183
  createVNode(_component_q_page_container, { style: { "padding-bottom": "-50px" } }, {
183
184
  default: withCtx(() => [
184
- createVNode(_component_q_page, { class: "q-pa-md q-pb-xl" }, {
185
+ createVNode(_component_q_page, { class: "q-pb-xl" }, {
185
186
  default: withCtx(() => [
186
187
  renderSlot(_ctx.$slots, "default")
187
188
  ]),
@@ -200,14 +201,18 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
200
201
  }
201
202
  });
202
203
  const _hoisted_1$1 = { style: { "margin-top": "80px" } };
204
+ const _hoisted_2 = { key: 0 };
205
+ const _hoisted_3 = { key: 1 };
203
206
  const __default__ = {
204
207
  name: "ResourcePage"
205
208
  };
206
209
  const _sfc_main$2 = /* @__PURE__ */ defineComponent({
207
210
  ...__default__,
208
211
  props: {
209
- type: {},
210
- disabled: { type: Boolean }
212
+ type: { default: void 0 },
213
+ disabled: { type: Boolean, default: false },
214
+ topBarFab: { type: Boolean, default: false },
215
+ topBarShrink: { type: Boolean, default: true }
211
216
  },
212
217
  emits: ["create", "update"],
213
218
  setup(__props, { emit: __emit }) {
@@ -226,6 +231,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
226
231
  return (_ctx, _cache) => {
227
232
  const _component_q_btn = QBtn;
228
233
  const _component_q_toolbar_title = QToolbarTitle;
234
+ const _component_q_space = QSpace;
229
235
  const _component_q_toolbar = QToolbar;
230
236
  const _component_q_page_sticky = QPageSticky;
231
237
  const _component_q_page = QPage;
@@ -243,36 +249,57 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
243
249
  class: normalizeClass(["shadow-2", { "bg-dark": unref($q).dark.isActive, "bg-white": !unref($q).dark.isActive }])
244
250
  }, {
245
251
  default: withCtx(() => [
246
- renderSlot(_ctx.$slots, "fab"),
247
- unref(type) === "create" ? (openBlock(), createBlock(_component_q_btn, {
248
- key: 0,
249
- disable: unref(disabled),
250
- flat: "",
251
- style: { "margin-bottom": "-50px", "z-index": "5" },
252
- round: "",
253
- size: "lg",
254
- dense: "",
255
- icon: "add",
256
- class: "q-mr-sm bg-primary text-white",
257
- onClick: create
258
- }, null, 8, ["disable"])) : unref(type) === "update" ? (openBlock(), createBlock(_component_q_btn, {
259
- key: 1,
260
- disable: unref(disabled),
261
- flat: "",
262
- style: { "margin-bottom": "-50px", "z-index": "5" },
263
- round: "",
264
- size: "lg",
265
- dense: "",
266
- icon: "edit",
267
- class: "q-mr-sm bg-primary text-white",
268
- onClick: update
269
- }, null, 8, ["disable"])) : createCommentVNode("", true),
270
- createVNode(_component_q_toolbar_title, null, {
252
+ _ctx.topBarFab ? (openBlock(), createElementBlock("div", _hoisted_2, [
253
+ renderSlot(_ctx.$slots, "fab"),
254
+ unref(type) === "create" ? (openBlock(), createBlock(_component_q_btn, {
255
+ key: 0,
256
+ disable: unref(disabled),
257
+ flat: "",
258
+ style: { "margin-bottom": "-50px", "z-index": "5" },
259
+ round: "",
260
+ size: "lg",
261
+ dense: "",
262
+ icon: "add",
263
+ class: "q-mr-sm bg-primary text-white",
264
+ onClick: create
265
+ }, null, 8, ["disable"])) : unref(type) === "update" ? (openBlock(), createBlock(_component_q_btn, {
266
+ key: 1,
267
+ disable: unref(disabled),
268
+ flat: "",
269
+ style: { "margin-bottom": "-50px", "z-index": "5" },
270
+ round: "",
271
+ size: "lg",
272
+ dense: "",
273
+ icon: "edit",
274
+ class: "q-mr-sm bg-primary text-white",
275
+ onClick: update
276
+ }, null, 8, ["disable"])) : createCommentVNode("", true)
277
+ ])) : createCommentVNode("", true),
278
+ createVNode(_component_q_toolbar_title, { shrink: _ctx.topBarShrink }, {
271
279
  default: withCtx(() => [
272
280
  renderSlot(_ctx.$slots, "header")
273
281
  ]),
274
282
  _: 3
275
- }),
283
+ }, 8, ["shrink"]),
284
+ !_ctx.topBarFab ? (openBlock(), createElementBlock("div", _hoisted_3, [
285
+ renderSlot(_ctx.$slots, "top-bar-buttons"),
286
+ unref(type) === "create" ? (openBlock(), createBlock(_component_q_btn, {
287
+ key: 0,
288
+ disable: unref(disabled),
289
+ label: unref(lang).add,
290
+ icon: "add",
291
+ outline: "",
292
+ onClick: create
293
+ }, null, 8, ["disable", "label"])) : unref(type) === "update" ? (openBlock(), createBlock(_component_q_btn, {
294
+ key: 1,
295
+ disable: unref(disabled),
296
+ label: unref(lang).edit,
297
+ icon: "edit",
298
+ outline: "",
299
+ onClick: update
300
+ }, null, 8, ["disable", "label"])) : createCommentVNode("", true)
301
+ ])) : createCommentVNode("", true),
302
+ createVNode(_component_q_space, { horizontal: "" }),
276
303
  renderSlot(_ctx.$slots, "header-side")
277
304
  ]),
278
305
  _: 3
@@ -3,7 +3,9 @@ const lang = {
3
3
  submit: "Opslaan",
4
4
  next: "Volgende",
5
5
  back: "Vorige",
6
- send: "Versturen"
6
+ send: "Versturen",
7
+ add: "Toevoegen",
8
+ edit: "Aanpassen"
7
9
  };
8
10
  export {
9
11
  lang as default
@@ -1,6 +1,8 @@
1
1
  export interface Props {
2
2
  type?: 'create' | 'update';
3
3
  disabled?: boolean;
4
+ topBarFab?: boolean;
5
+ topBarShrink?: boolean;
4
6
  }
5
7
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
6
8
  update: (args_0: {
@@ -20,10 +22,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<Pr
20
22
  data?: unknown;
21
23
  done: (success?: boolean) => void;
22
24
  }) => any) | undefined;
23
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
25
+ }>, {
26
+ type: "create" | "update";
27
+ disabled: boolean;
28
+ topBarFab: boolean;
29
+ topBarShrink: boolean;
30
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
24
31
  default?(_: {}): any;
25
32
  fab?(_: {}): any;
26
33
  header?(_: {}): any;
34
+ "top-bar-buttons"?(_: {}): any;
27
35
  "header-side"?(_: {}): any;
28
36
  }>;
29
37
  export default _default;
@@ -1,6 +1,7 @@
1
1
  export interface Props {
2
2
  display?: boolean;
3
3
  buttonType?: 'submit' | 'send';
4
+ closeIcon?: string;
4
5
  }
5
6
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<Props, {
6
7
  variables: import("vue").Ref<{}, {}>;
@@ -25,7 +26,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<Pr
25
26
  onSubmit?: ((args_0: {
26
27
  done: (success?: boolean) => void;
27
28
  }) => any) | undefined;
28
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
29
+ }>, {
30
+ buttonType: "submit" | "send";
31
+ closeIcon: string;
32
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
29
33
  title?(_: {}): any;
30
34
  default?(_: {}): any;
31
35
  }>;
@@ -4,6 +4,8 @@ export interface Language {
4
4
  next: string;
5
5
  back: string;
6
6
  send: string;
7
+ add: string;
8
+ edit: string;
7
9
  }
8
10
  import type { Ref } from 'vue';
9
11
  export declare const lang: Ref<{
@@ -12,12 +14,16 @@ export declare const lang: Ref<{
12
14
  next: string;
13
15
  back: string;
14
16
  send: string;
17
+ add: string;
18
+ edit: string;
15
19
  }, Language | {
16
20
  isoName: string;
17
21
  submit: string;
18
22
  next: string;
19
23
  back: string;
20
24
  send: string;
25
+ add: string;
26
+ edit: string;
21
27
  }>;
22
28
  export declare const defineLang: (lang: Language) => Language;
23
29
  export declare const useLang: () => Ref<Language>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simsustech/quasar-components",
3
- "version": "0.11.5",
3
+ "version": "0.11.7",
4
4
  "author": "Stefan van Herwijnen",
5
5
  "description": "High level components for Quasar Framework",
6
6
  "license": "MIT",
@@ -7,7 +7,11 @@
7
7
  <q-item-label overline>
8
8
  {{ label ? label : field ? lang.fields[field] : '' }}
9
9
  </q-item-label>
10
- <q-item-label>
10
+ <q-item-label
11
+ :style="{
12
+ 'word-wrap': 'anywhere'
13
+ }"
14
+ >
11
15
  {{ modelValue || '-' }}
12
16
  </q-item-label>
13
17
  </q-item-section>
@@ -8,34 +8,56 @@
8
8
  class="shadow-2"
9
9
  :class="{ 'bg-dark': $q.dark.isActive, 'bg-white': !$q.dark.isActive }"
10
10
  >
11
- <slot name="fab" />
12
- <q-btn
13
- v-if="type === 'create'"
14
- :disable="disabled"
15
- flat
16
- style="margin-bottom: -50px; z-index: 5"
17
- round
18
- size="lg"
19
- dense
20
- icon="add"
21
- class="q-mr-sm bg-primary text-white"
22
- @click="create"
23
- />
24
- <q-btn
25
- v-else-if="type === 'update'"
26
- :disable="disabled"
27
- flat
28
- style="margin-bottom: -50px; z-index: 5"
29
- round
30
- size="lg"
31
- dense
32
- icon="edit"
33
- class="q-mr-sm bg-primary text-white"
34
- @click="update"
35
- />
36
- <q-toolbar-title>
11
+ <div v-if="topBarFab">
12
+ <slot name="fab" />
13
+ <q-btn
14
+ v-if="type === 'create'"
15
+ :disable="disabled"
16
+ flat
17
+ style="margin-bottom: -50px; z-index: 5"
18
+ round
19
+ size="lg"
20
+ dense
21
+ icon="add"
22
+ class="q-mr-sm bg-primary text-white"
23
+ @click="create"
24
+ />
25
+ <q-btn
26
+ v-else-if="type === 'update'"
27
+ :disable="disabled"
28
+ flat
29
+ style="margin-bottom: -50px; z-index: 5"
30
+ round
31
+ size="lg"
32
+ dense
33
+ icon="edit"
34
+ class="q-mr-sm bg-primary text-white"
35
+ @click="update"
36
+ />
37
+ </div>
38
+ <q-toolbar-title :shrink="topBarShrink">
37
39
  <slot name="header" />
38
40
  </q-toolbar-title>
41
+ <div v-if="!topBarFab">
42
+ <slot name="top-bar-buttons" />
43
+ <q-btn
44
+ v-if="type === 'create'"
45
+ :disable="disabled"
46
+ :label="lang.add"
47
+ icon="add"
48
+ outline
49
+ @click="create"
50
+ />
51
+ <q-btn
52
+ v-else-if="type === 'update'"
53
+ :disable="disabled"
54
+ :label="lang.edit"
55
+ icon="edit"
56
+ outline
57
+ @click="update"
58
+ />
59
+ </div>
60
+ <q-space horizontal />
39
61
  <slot name="header-side" />
40
62
  </q-toolbar>
41
63
  </q-page-sticky>
@@ -56,8 +78,15 @@ import { useLang, loadLang } from './lang'
56
78
  export interface Props {
57
79
  type?: 'create' | 'update'
58
80
  disabled?: boolean
81
+ topBarFab?: boolean
82
+ topBarShrink?: boolean
59
83
  }
60
- const props = defineProps<Props>()
84
+ const props = withDefaults(defineProps<Props>(), {
85
+ type: undefined,
86
+ disabled: false,
87
+ topBarFab: false,
88
+ topBarShrink: true
89
+ })
61
90
 
62
91
  const emit = defineEmits<{
63
92
  (
@@ -8,7 +8,7 @@
8
8
  >
9
9
  <q-header class="bg-primary">
10
10
  <q-toolbar>
11
- <q-btn icon="close" flat round dense @click="close" />
11
+ <q-btn :icon="closeIcon" flat round dense @click="close" />
12
12
  <q-toolbar-title>
13
13
  <slot name="title" />
14
14
  </q-toolbar-title>
@@ -22,7 +22,7 @@
22
22
  </q-header>
23
23
 
24
24
  <q-page-container style="padding-bottom: -50px">
25
- <q-page class="q-pa-md q-pb-xl">
25
+ <q-page class="q-pb-xl">
26
26
  <slot></slot>
27
27
  </q-page>
28
28
  </q-page-container>
@@ -45,8 +45,9 @@ import QSubmitButton from './QSubmitButton.vue'
45
45
  export interface Props {
46
46
  display?: boolean
47
47
  buttonType?: 'submit' | 'send'
48
+ closeIcon?: string
48
49
  }
49
- defineProps<Props>()
50
+ withDefaults(defineProps<Props>(), { buttonType: 'submit', closeIcon: 'close' })
50
51
  // const attrs = useAttrs();
51
52
  const emit = defineEmits<{
52
53
  (
@@ -5,7 +5,9 @@ const lang: Language = {
5
5
  submit: 'Submit',
6
6
  next: 'Next',
7
7
  back: 'Back',
8
- send: 'Send'
8
+ send: 'Send',
9
+ add: 'Add',
10
+ edit: 'Edit'
9
11
  }
10
12
 
11
13
  export default lang
@@ -4,6 +4,8 @@ export interface Language {
4
4
  next: string
5
5
  back: string
6
6
  send: string
7
+ add: string
8
+ edit: string
7
9
  }
8
10
 
9
11
  import type { Ref } from 'vue'
@@ -5,7 +5,9 @@ const lang: Language = {
5
5
  submit: 'Opslaan',
6
6
  next: 'Volgende',
7
7
  back: 'Vorige',
8
- send: 'Versturen'
8
+ send: 'Versturen',
9
+ add: 'Toevoegen',
10
+ edit: 'Aanpassen'
9
11
  }
10
12
 
11
13
  export default lang