@policystudio/policy-studio-ui-vue 1.1.90-beta.10 → 1.1.90-beta.17
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/.eslintrc.js +2 -1
- package/.github/workflows/deploy-storybook.yml +4 -4
- package/.nvmrc +1 -0
- package/dist/css/psui_styles_output.css +6986 -0
- package/package.json +9 -23
- package/src/assets/scss/components/PsDataTable.scss +1 -1
- package/src/components/accordion/PsAccordionItem.vue +75 -75
- package/src/components/badges-and-tags/PsBadgeWithIcon.vue +31 -34
- package/src/components/badges-and-tags/PsCardInfos.vue +40 -41
- package/src/components/badges-and-tags/PsChartLegend.vue +47 -51
- package/src/components/badges-and-tags/PsClimateZoneBadge.vue +14 -19
- package/src/components/badges-and-tags/PsCostEffectBar.vue +24 -56
- package/src/components/badges-and-tags/PsDateCardInfo.vue +17 -18
- package/src/components/badges-and-tags/PsHighlightRippleDot.vue +3 -2
- package/src/components/badges-and-tags/PsMiniTag.vue +39 -41
- package/src/components/badges-and-tags/PsProgressBar.vue +72 -68
- package/src/components/badges-and-tags/PsTagScope.vue +17 -22
- package/src/components/badges-and-tags/PsTestimonialCard.vue +20 -26
- package/src/components/buttons/PsButton.vue +61 -62
- package/src/components/chips/PsChips.vue +98 -101
- package/src/components/controls/PsCheckbox.vue +84 -84
- package/src/components/controls/PsCheckboxSimple.vue +95 -95
- package/src/components/controls/PsDraggable.vue +53 -55
- package/src/components/controls/PsInlineSelector.vue +99 -99
- package/src/components/controls/PsRadioButton.vue +59 -58
- package/src/components/controls/PsRadioButtonSimple.vue +79 -75
- package/src/components/controls/PsSlider.vue +185 -176
- package/src/components/controls/PsSwitch.vue +51 -52
- package/src/components/controls/PsToggle.vue +53 -50
- package/src/components/data-graphics/PsBarChart.vue +19 -21
- package/src/components/datatable/PsDataTable.vue +56 -60
- package/src/components/datatable/PsDataTableItem.vue +14 -28
- package/src/components/forms/PsDropdown.vue +164 -162
- package/src/components/forms/PsDropdownList.vue +132 -129
- package/src/components/forms/PsInput.vue +155 -153
- package/src/components/forms/PsInputSelect.vue +91 -92
- package/src/components/forms/PsInputTextArea.vue +71 -71
- package/src/components/navigations/PsBreadcrumb.vue +26 -34
- package/src/components/notifications/PsDialog.vue +57 -56
- package/src/components/notifications/PsSimpleAlert.vue +28 -29
- package/src/components/notifications/PsToast.vue +40 -39
- package/src/components/table-results/PsTableResults.vue +452 -458
- package/src/components/table-results/PsTableResultsBody.vue +66 -67
- package/src/components/table-results/PsTableResultsHead.vue +62 -56
- package/src/components/table-results/PsTableResultsHeadComparison.vue +62 -56
- package/src/components/table-results/PsTableResultsHeadFlexible.vue +63 -56
- package/src/components/table-results/PsTableResultsRow.vue +55 -56
- package/src/components/tabs/PsTabHeader.vue +106 -100
- package/src/components/tooltip/PsDialogTooltip.vue +96 -101
- package/src/components/tooltip/PsRichTooltip.vue +42 -45
- package/src/components/tooltip/PsTooltip.vue +111 -116
- package/src/components/ui/PsDotLoader.vue +1 -5
- package/src/components/ui/PsIcon.vue +126 -129
- package/src/index.ts +56 -66
- package/src/tsconfig.json +12 -0
- package/src/{shims-vue.d.ts → types/index.d.ts} +0 -5
- package/src/util/{GeneralFunctions.ts → GeneralFunctions.js} +3 -5
- package/src/util/directives.ts +24 -0
- package/src/util/eventBus.js +10 -0
- package/src/util/{imageLoader.ts → imageLoader.js} +9 -8
- package/tailwind.config.js +1 -1
- package/tsconfig.json +16 -18
- package/.storybook/PolicyStudio.ts +0 -11
- package/.storybook/eventBus.ts +0 -26
- package/.storybook/main.ts +0 -21
- package/.storybook/manager.ts +0 -7
- package/.storybook/preview.ts +0 -17
- package/dist/css/psui_styles.css +0 -4647
- package/postcss.config.js +0 -8
- package/src/assets/images/multifamily-units.svg +0 -10
- package/src/assets/images/policy-studio.svg +0 -15
- package/src/components/playground/PsScrollBar.vue +0 -320
- package/src/contents/ComparisonData.ts +0 -378
- package/src/contents/FlexibleData.ts +0 -502
- package/src/contents/ResultsData.ts +0 -531
- package/src/stories/Accordion.stories.ts +0 -59
- package/src/stories/BadgeWithIcon.stories.ts +0 -31
- package/src/stories/BarChart.stories.ts +0 -17
- package/src/stories/Breadcrumb.stories.ts +0 -22
- package/src/stories/Button.stories.ts +0 -48
- package/src/stories/Button.vue +0 -59
- package/src/stories/CardInfos.stories.ts +0 -15
- package/src/stories/ChartLegend.stories.ts +0 -15
- package/src/stories/Checkbox.stories.ts +0 -45
- package/src/stories/CheckboxSimple.stories.ts +0 -49
- package/src/stories/Chips.stories.ts +0 -33
- package/src/stories/ClimateZoneBadge.stories.ts +0 -28
- package/src/stories/Colors.mdx +0 -70
- package/src/stories/CostEffectBar.stories.ts +0 -26
- package/src/stories/Datatable.stories.ts +0 -53
- package/src/stories/DateCardInfo.stories.ts +0 -20
- package/src/stories/Dialog.stories.ts +0 -131
- package/src/stories/Draggable.stories.ts +0 -32
- package/src/stories/Dropdown.stories.ts +0 -89
- package/src/stories/DropdownList.stories.ts +0 -213
- package/src/stories/ElevationSystem.mdx +0 -41
- package/src/stories/Header.stories.ts +0 -42
- package/src/stories/Header.vue +0 -77
- package/src/stories/HighlightRippleDot.stories.ts +0 -16
- package/src/stories/Icon.stories.ts +0 -22
- package/src/stories/InlineSelector.stories.ts +0 -18
- package/src/stories/Input.stories.ts +0 -244
- package/src/stories/InputSelect.stories.ts +0 -31
- package/src/stories/InputTextArea.stories.ts +0 -25
- package/src/stories/Introduction.mdx +0 -211
- package/src/stories/MiniTag.stories.ts +0 -59
- package/src/stories/Playground.stories.ts +0 -16
- package/src/stories/ProgressBar.stories.ts +0 -24
- package/src/stories/RadioButton.stories.ts +0 -41
- package/src/stories/RadioButtonSimple.stories.ts +0 -43
- package/src/stories/SimpleAlert.stories.ts +0 -22
- package/src/stories/Slider.stories.ts +0 -79
- package/src/stories/Switch.stories.ts +0 -39
- package/src/stories/TabHeader.stories.ts +0 -56
- package/src/stories/TableResults.stories.ts +0 -728
- package/src/stories/TagScope.stories.ts +0 -17
- package/src/stories/TestimonialCard.stories.ts +0 -27
- package/src/stories/Toast.stories.ts +0 -52
- package/src/stories/Toggle.stories.ts +0 -48
- package/src/stories/Tooltip.stories.ts +0 -114
- package/src/stories/Typography.mdx +0 -212
- package/src/stories/assets/code-brackets.svg +0 -1
- package/src/stories/assets/colors.svg +0 -1
- package/src/stories/assets/comments.svg +0 -1
- package/src/stories/assets/direction.svg +0 -1
- package/src/stories/assets/flow.svg +0 -1
- package/src/stories/assets/plugin.svg +0 -1
- package/src/stories/assets/repo.svg +0 -1
- package/src/stories/assets/stackalt.svg +0 -1
- package/src/stories/button.css +0 -30
- package/src/stories/header.css +0 -32
- package/webpack.config.js +0 -36
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import MyButton from './Button.vue'
|
|
2
|
-
|
|
3
|
-
// More on how to set up stories at: https://storybook.js.org/docs/writing-stories
|
|
4
|
-
export default {
|
|
5
|
-
title: 'Example/Button',
|
|
6
|
-
component: MyButton,
|
|
7
|
-
tags: ['autodocs'],
|
|
8
|
-
argTypes: {
|
|
9
|
-
backgroundColor: {
|
|
10
|
-
control: 'color',
|
|
11
|
-
},
|
|
12
|
-
onClick: {},
|
|
13
|
-
size: {
|
|
14
|
-
control: {
|
|
15
|
-
type: 'select',
|
|
16
|
-
},
|
|
17
|
-
options: ['small', 'medium', 'large'],
|
|
18
|
-
},
|
|
19
|
-
},
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
|
|
23
|
-
export const Primary = {
|
|
24
|
-
args: {
|
|
25
|
-
primary: true,
|
|
26
|
-
label: 'Button',
|
|
27
|
-
},
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export const Secondary = {
|
|
31
|
-
args: {
|
|
32
|
-
label: 'Button',
|
|
33
|
-
},
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export const Large = {
|
|
37
|
-
args: {
|
|
38
|
-
size: 'large',
|
|
39
|
-
label: 'Button',
|
|
40
|
-
},
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
export const Small = {
|
|
44
|
-
args: {
|
|
45
|
-
size: 'small',
|
|
46
|
-
label: 'Button',
|
|
47
|
-
},
|
|
48
|
-
}
|
package/src/stories/Button.vue
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<button
|
|
3
|
-
type="button"
|
|
4
|
-
:class="classes"
|
|
5
|
-
@click="onClick"
|
|
6
|
-
:style="style"
|
|
7
|
-
>
|
|
8
|
-
{{ label }}
|
|
9
|
-
</button>
|
|
10
|
-
</template>
|
|
11
|
-
|
|
12
|
-
<script>
|
|
13
|
-
import './button.css'
|
|
14
|
-
import { reactive, computed } from 'vue'
|
|
15
|
-
|
|
16
|
-
export default {
|
|
17
|
-
name: 'MyButton',
|
|
18
|
-
|
|
19
|
-
props: {
|
|
20
|
-
label: {
|
|
21
|
-
type: String,
|
|
22
|
-
required: true,
|
|
23
|
-
},
|
|
24
|
-
primary: {
|
|
25
|
-
type: Boolean,
|
|
26
|
-
default: false,
|
|
27
|
-
},
|
|
28
|
-
size: {
|
|
29
|
-
type: String,
|
|
30
|
-
validator: function (value) {
|
|
31
|
-
return ['small', 'medium', 'large'].indexOf(value) !== -1
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
backgroundColor: {
|
|
35
|
-
type: String,
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
|
|
39
|
-
emits: ['click'],
|
|
40
|
-
|
|
41
|
-
setup(props, { emit }) {
|
|
42
|
-
props = reactive(props)
|
|
43
|
-
return {
|
|
44
|
-
classes: computed(() => ({
|
|
45
|
-
'storybook-button': true,
|
|
46
|
-
'storybook-button--primary': props.primary,
|
|
47
|
-
'storybook-button--secondary': !props.primary,
|
|
48
|
-
[`storybook-button--${props.size || 'medium'}`]: true,
|
|
49
|
-
})),
|
|
50
|
-
style: computed(() => ({
|
|
51
|
-
backgroundColor: props.backgroundColor,
|
|
52
|
-
})),
|
|
53
|
-
onClick() {
|
|
54
|
-
emit('click')
|
|
55
|
-
},
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
}
|
|
59
|
-
</script>
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import PsCardInfos from '../components/badges-and-tags/PsCardInfos.vue'
|
|
2
|
-
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Components/CardInfos',
|
|
5
|
-
component: PsCardInfos,
|
|
6
|
-
argTypes: {},
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
const Template = (args:any, { argTypes }:{ argTypes:any }) => ({
|
|
10
|
-
props: Object.keys(argTypes),
|
|
11
|
-
components: { PsCardInfos },
|
|
12
|
-
template: '<PsCardInfos v-bind="$props" />',
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
export const CardInfos = Template.bind({})
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import PsChartLegend from '../components/badges-and-tags/PsChartLegend.vue'
|
|
2
|
-
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Badges & Tags/Badges/ChartLegend',
|
|
5
|
-
component: PsChartLegend,
|
|
6
|
-
argTypes: {},
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
const Template = (args:any, { argTypes } : { argTypes:any }) => ({
|
|
10
|
-
props: Object.keys(argTypes),
|
|
11
|
-
components: { PsChartLegend },
|
|
12
|
-
template: '<PsChartLegend v-bind="$props" />',
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
export const ChartLegend = Template.bind({})
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import PsCheckbox from '../components/controls/PsCheckbox.vue'
|
|
2
|
-
// const icons = ['add_circle', 'delete', 'done', 'info', 'send']
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Controls & Selectors/Checkbox',
|
|
5
|
-
component: PsCheckbox,
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
const defaultTemplate = (args:any, {argTypes}:{argTypes:any}) => ({
|
|
9
|
-
props: Object.keys(argTypes),
|
|
10
|
-
components: { PsCheckbox},
|
|
11
|
-
template: `
|
|
12
|
-
<div style='display:flex; gap: 20px;'>
|
|
13
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
14
|
-
<p>Resting</p>
|
|
15
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
16
|
-
<PsCheckbox v-bind="$props" label='Label 1' />
|
|
17
|
-
<PsCheckbox v-bind="$props" label='Label 2' size='small' />
|
|
18
|
-
</div>
|
|
19
|
-
</div>
|
|
20
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
21
|
-
<p>Active</p>
|
|
22
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
23
|
-
<PsCheckbox v-bind="$props" label='Label 3' checked />
|
|
24
|
-
<PsCheckbox v-bind="$props" label='Label 4' checked size='small'/>
|
|
25
|
-
</div>
|
|
26
|
-
</div>
|
|
27
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
28
|
-
<p>Mixed</p>
|
|
29
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
30
|
-
<PsCheckbox v-bind="$props" label='Label 5' layout='mixed' checked />
|
|
31
|
-
<PsCheckbox v-bind="$props" label='Label 6' layout='mixed' size='small' checked />
|
|
32
|
-
</div>
|
|
33
|
-
</div>
|
|
34
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
35
|
-
<p>Disabled</p>
|
|
36
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
37
|
-
<PsCheckbox v-bind="$props" label='Label 7' disabled/>
|
|
38
|
-
<PsCheckbox v-bind="$props" label='Label 8' size='small' disabled/>
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
</div>
|
|
42
|
-
`
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
export const Default = defaultTemplate.bind({})
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import PsCheckboxSimple from '../components/controls/PsCheckboxSimple.vue'
|
|
2
|
-
// const icons = ['add_circle', 'delete', 'done', 'info', 'send']
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Text fields & Forms/Inputs V2/Checkbox',
|
|
5
|
-
component: PsCheckboxSimple,
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
const defaultTemplate = (args:any, {argTypes}:{argTypes:any}) => ({
|
|
9
|
-
props: Object.keys(argTypes),
|
|
10
|
-
components: { PsCheckboxSimple },
|
|
11
|
-
data: () => ({
|
|
12
|
-
checkBox1 : true
|
|
13
|
-
}),
|
|
14
|
-
template: `
|
|
15
|
-
<div style='display:flex; gap: 20px;'>
|
|
16
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
17
|
-
<p>Resting</p>
|
|
18
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
19
|
-
<PsCheckboxSimple :checked="checkBox1" @click="checkBox1 = !checkBox1" label='Label 1' />
|
|
20
|
-
<PsCheckboxSimple v-bind="$props" label='Label 2' size='small' />
|
|
21
|
-
</div>
|
|
22
|
-
</div>
|
|
23
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
24
|
-
<p>Active</p>
|
|
25
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
26
|
-
<PsCheckboxSimple v-bind="$props" label='Label 3' checked />
|
|
27
|
-
<PsCheckboxSimple v-bind="$props" label='Label 4' checked size='small'/>
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
31
|
-
<p>Mixed</p>
|
|
32
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
33
|
-
<PsCheckboxSimple v-bind="$props" label='Label 5' layout='mixed' checked />
|
|
34
|
-
<PsCheckboxSimple v-bind="$props" label='Label 6' layout='mixed' size='small' checked />
|
|
35
|
-
</div>
|
|
36
|
-
</div>
|
|
37
|
-
<div style='display:flex; flex-direction:column; gap:5px;'>
|
|
38
|
-
<p>Disabled</p>
|
|
39
|
-
<div style='display: flex; flex-direction:column; gap: 10px;'>
|
|
40
|
-
<PsCheckboxSimple v-bind="$props" label='Input via inputAttrs' :inputAttrs="{ id: 'my-input-id' }" disabled/>
|
|
41
|
-
<PsCheckboxSimple v-bind="$props" label='Input via component id' size='small' id="my-component-id" data-test="test" disabled/>
|
|
42
|
-
<PsCheckboxSimple v-bind="$props" label='Input fallback' size='small' disabled/>
|
|
43
|
-
</div>
|
|
44
|
-
</div>
|
|
45
|
-
</div>
|
|
46
|
-
`
|
|
47
|
-
})
|
|
48
|
-
|
|
49
|
-
export const Default = defaultTemplate.bind({})
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import PsChips from '../components/chips/PsChips.vue'
|
|
2
|
-
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
3
|
-
|
|
4
|
-
import * as HeaderStories from '../stories/Header.stories'
|
|
5
|
-
|
|
6
|
-
const meta: Meta<typeof PsChips> = {
|
|
7
|
-
component: PsChips
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export default meta
|
|
11
|
-
|
|
12
|
-
type Story = StoryObj<typeof PsChips>
|
|
13
|
-
|
|
14
|
-
export const Primary: Story = {
|
|
15
|
-
render: (args) => ({
|
|
16
|
-
components: { PsChips },
|
|
17
|
-
setup(){
|
|
18
|
-
return { args }
|
|
19
|
-
},
|
|
20
|
-
template: `<div style="display:flex; gap: 10px;">
|
|
21
|
-
<PsChips v-bind='$props' label="Simple chips with icons" type="button" layout="with-icon" icon="home" @update:checked='isChecked = $event' :checked='isChecked'/>
|
|
22
|
-
<PsChips v-bind='$props' label="Radio chips" type="radio" @update:checked='isChecked = $event' :checked='isChecked'/>
|
|
23
|
-
<PsChips v-bind='$props' label="Checkbox chips" type="checkbox" @update:checked='isCheckedTwo = $event' :checked='isCheckedTwo'/>
|
|
24
|
-
<PsChips v-bind='$props' label="Rich chips" type="button" layout="rich" icon="text_snippet" @update:checked='isChecked = $event' :checked='isChecked'/>
|
|
25
|
-
</div>
|
|
26
|
-
`,
|
|
27
|
-
args:{
|
|
28
|
-
label: 'Simple Chip',
|
|
29
|
-
icon:'',
|
|
30
|
-
...HeaderStories.LoggedIn.args
|
|
31
|
-
}
|
|
32
|
-
})
|
|
33
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
2
|
-
|
|
3
|
-
import PsClimateZoneBadge from '../components/badges-and-tags/PsClimateZoneBadge.vue'
|
|
4
|
-
|
|
5
|
-
import * as HeaderStories from '../stories/Header.stories'
|
|
6
|
-
|
|
7
|
-
const meta: Meta<typeof PsClimateZoneBadge> = {
|
|
8
|
-
component: PsClimateZoneBadge
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export default meta
|
|
12
|
-
|
|
13
|
-
type Story = StoryObj<typeof PsClimateZoneBadge>
|
|
14
|
-
|
|
15
|
-
export const Primary: Story = {
|
|
16
|
-
render: (args) => ({
|
|
17
|
-
components: { PsClimateZoneBadge },
|
|
18
|
-
setup(){
|
|
19
|
-
return { args }
|
|
20
|
-
},
|
|
21
|
-
template: '<PsClimateZoneBadge v-bind="$props" />',
|
|
22
|
-
args:{
|
|
23
|
-
icon: 'area_chart',
|
|
24
|
-
...HeaderStories.LoggedIn.args
|
|
25
|
-
}
|
|
26
|
-
})
|
|
27
|
-
}
|
|
28
|
-
|
package/src/stories/Colors.mdx
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import {Meta } from '@storybook/addon-docs';
|
|
2
|
-
|
|
3
|
-
<Meta title="Colors" />
|
|
4
|
-
|
|
5
|
-
<style>{`
|
|
6
|
-
.mx-auto { margin: 0 auto; }
|
|
7
|
-
`}</style>
|
|
8
|
-
|
|
9
|
-
# Colors
|
|
10
|
-
Out colors are designed to be harmonious, ensure accessible text, and distinguish UI elements and surfaces from one another. The support colors are used as a visual support to communicate and provide better and more meaningful feedback.
|
|
11
|
-
|
|
12
|
-
## Blue
|
|
13
|
-
<div class="psui-flex">
|
|
14
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-blue click-to-copy" data-to-copy="psui-bg-blue">Blue <div>#5094D3</div></div>
|
|
15
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-blue-80 click-to-copy" data-to-copy="psui-bg-blue-80">Blue 80 <div>#002A3A</div></div>
|
|
16
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-blue-70 click-to-copy" data-to-copy="psui-bg-blue-70">Blue 70 <div>#00465F</div></div>
|
|
17
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-blue-60 click-to-copy" data-to-copy="psui-bg-blue-60">Blue 60 <div>#318FAC</div></div>
|
|
18
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-blue-50 click-to-copy" data-to-copy="psui-bg-blue-50">Blue 50 <div>#64B5CE</div></div>
|
|
19
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-blue-70 psui-bg-blue-20 click-to-copy" data-to-copy="psui-bg-blue-20">Blue 20 <div>#E0EFF6</div></div>
|
|
20
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-blue-70 psui-bg-blue-10 click-to-copy" data-to-copy="psui-bg-blue-10">Blue 10 <div>#ECF7FB</div></div>
|
|
21
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-blue-70 psui-bg-white click-to-copy" data-to-copy="psui-bg-white">White <div>#FFFFFF</div></div>
|
|
22
|
-
</div>
|
|
23
|
-
|
|
24
|
-
## Gray
|
|
25
|
-
<div class="psui-flex">
|
|
26
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-gray-80 click-to-copy" data-to-copy="psui-bg-gray-80">Gray 80 <div>#28323B</div></div>
|
|
27
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-gray-70 click-to-copy" data-to-copy="psui-bg-gray-70">Gray 70 <div>#34404A</div></div>
|
|
28
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-gray-60 click-to-copy" data-to-copy="psui-bg-gray-60">Gray 60 <div>#515E6A</div></div>
|
|
29
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-gray-50 click-to-copy" data-to-copy="psui-bg-gray-50">Gray 50 <div>#798490</div></div>
|
|
30
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-gray-40 click-to-copy" data-to-copy="psui-bg-gray-40">Gray 40 <div>#A2ACB7</div></div>
|
|
31
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-gray-50 psui-bg-gray-30 click-to-copy" data-to-copy="psui-bg-gray-30">Gray 30 <div>#D6DDE5</div></div>
|
|
32
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-gray-50 psui-bg-gray-20 click-to-copy" data-to-copy="psui-bg-gray-20">Gray 20 <div>#E6ECF2</div></div>
|
|
33
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-gray-50 psui-bg-gray-10 click-to-copy" data-to-copy="psui-bg-gray-10">Gray 10 <div>#F3F6F9</div></div>
|
|
34
|
-
</div>
|
|
35
|
-
|
|
36
|
-
## Yellow
|
|
37
|
-
<div class="psui-flex">
|
|
38
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-yellow-80 click-to-copy" data-to-copy="psui-bg-yellow-80">Yellow 80 <div>#834C0D</div></div>
|
|
39
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-yellow-70 click-to-copy" data-to-copy="psui-bg-yellow-70">Yellow 70 <div>#B87305</div></div>
|
|
40
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-yellow-20 click-to-copy" data-to-copy="psui-bg-yellow-20">Yellow 20 <div>#EDAB3E</div></div>
|
|
41
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-yellow-20 psui-bg-yellow-10 click-to-copy" data-to-copy="psui-bg-yellow-10">Yellow 10 <div>#FDF3E3</div></div>
|
|
42
|
-
</div>
|
|
43
|
-
|
|
44
|
-
## Green
|
|
45
|
-
<div class="psui-flex">
|
|
46
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-green-80 click-to-copy" data-to-copy="psui-bg-green-80">Green 80 <div>#286943</div></div>
|
|
47
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-green-70 click-to-copy" data-to-copy="psui-bg-green-70">Green 70 <div>#44A06A</div></div>
|
|
48
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-green-20 click-to-copy" data-to-copy="psui-bg-green-20">Green 20 <div>#5DB883</div></div>
|
|
49
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-green-20 psui-bg-green-10 click-to-copy" data-to-copy="psui-bg-green-10">Green 10 <div>#DEF8E8</div></div>
|
|
50
|
-
</div>
|
|
51
|
-
|
|
52
|
-
## Red
|
|
53
|
-
<div class="psui-flex">
|
|
54
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-red-80 click-to-copy" data-to-copy="psui-bg-red-80">Red 80 <div>#832F2E</div></div>
|
|
55
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-red-70 click-to-copy" data-to-copy="psui-bg-red-70">Red 70 <div>#AA3937</div></div>
|
|
56
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-red-20 click-to-copy" data-to-copy="psui-bg-red-20">Red 20 <div>#D65C5A</div></div>
|
|
57
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-red-20 psui-bg-red-15 click-to-copy" data-to-copy="psui-bg-red-15">Red 15 <div>#EAC5C5</div></div>
|
|
58
|
-
<div class="psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-red-20 psui-bg-red-10 click-to-copy" data-to-copy="psui-bg-red-10">Red 10 <div>#FCEBEB</div></div>
|
|
59
|
-
</div>
|
|
60
|
-
|
|
61
|
-
## Chart colors
|
|
62
|
-
<div class="psui-flex">
|
|
63
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-sky click-to-copy" data-to-copy="psui-bg-sky">Sky <div>#518BE2</div></div>
|
|
64
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-teal click-to-copy" data-to-copy="psui-bg-teal">Teal <div>#57C0BA</div></div>
|
|
65
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-emerald click-to-copy" data-to-copy="psui-bg-emerald">Emerald <div>#8CCA82</div></div>
|
|
66
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-mustard click-to-copy" data-to-copy="psui-bg-mustard">Mustard <div>#E9CF74</div></div>
|
|
67
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-orange click-to-copy" data-to-copy="psui-bg-orange">Orange <div>#FF906D</div></div>
|
|
68
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-pink click-to-copy" data-to-copy="psui-bg-pink">Pink <div>#FF77B8</div></div>
|
|
69
|
-
<div class="psui-float-left psui-cursor-pointer psui-p-2 psui-h-24 psui-w-32 psui-text-white psui-bg-purple click-to-copy" data-to-copy="psui-bg-purple">Purple <div>#9278C9</div></div>
|
|
70
|
-
</div>
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
2
|
-
|
|
3
|
-
import PsCostEffectBar from '../components/badges-and-tags/PsCostEffectBar.vue'
|
|
4
|
-
|
|
5
|
-
import * as HeaderStories from '../stories/Header.stories'
|
|
6
|
-
|
|
7
|
-
const meta: Meta<typeof PsCostEffectBar> = {
|
|
8
|
-
component: PsCostEffectBar
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export default meta
|
|
12
|
-
|
|
13
|
-
type Story = StoryObj<typeof PsCostEffectBar>
|
|
14
|
-
|
|
15
|
-
export const Primary: Story = {
|
|
16
|
-
render: (args) => ({
|
|
17
|
-
components: { PsCostEffectBar },
|
|
18
|
-
setup(){
|
|
19
|
-
return { args }
|
|
20
|
-
},
|
|
21
|
-
template: '<PsCostEffectBar v-bind="$props" />',
|
|
22
|
-
args:{
|
|
23
|
-
...HeaderStories.LoggedIn.args
|
|
24
|
-
}
|
|
25
|
-
})
|
|
26
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
// @ts-ignore
|
|
2
|
-
import PsDataTable, { alignment } from '../components/datatable/PsDataTable.vue'
|
|
3
|
-
import PsDataTableItem from '../components/datatable/PsDataTableItem.vue'
|
|
4
|
-
|
|
5
|
-
export default {
|
|
6
|
-
title: 'Data Tables/DataTable',
|
|
7
|
-
component: PsDataTable,
|
|
8
|
-
subcomponents: { PsDataTableItem },
|
|
9
|
-
argTypes: {
|
|
10
|
-
align: { control: { type: 'select', options: alignment } },
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
const Template = (args:any, { argTypes }:{ argTypes:any }) => ({
|
|
15
|
-
props: Object.keys(argTypes),
|
|
16
|
-
components: {PsDataTable},
|
|
17
|
-
template: `
|
|
18
|
-
<div style="width:400px;">
|
|
19
|
-
<PsDataTable v-bind="$props" />
|
|
20
|
-
</div>
|
|
21
|
-
`
|
|
22
|
-
})
|
|
23
|
-
|
|
24
|
-
const RichTemplate = (args:any, { argTypes }:{ argTypes:any } ) => ({
|
|
25
|
-
props: Object.keys(argTypes),
|
|
26
|
-
components: {PsDataTable, PsDataTableItem},
|
|
27
|
-
template: `
|
|
28
|
-
<div style="width:400px">
|
|
29
|
-
<PsDataTable v-bind="$props">
|
|
30
|
-
<PsDataTableItem v-bind="$props"/>
|
|
31
|
-
</PsDataTable>
|
|
32
|
-
</div>
|
|
33
|
-
`
|
|
34
|
-
})
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
export const Simple = Template.bind({})
|
|
38
|
-
// @ts-ignore
|
|
39
|
-
Simple.args = {
|
|
40
|
-
header: ['year', 'month', 'sale'],
|
|
41
|
-
data: [{ year: '1992', month: '12', sale: '1000.00' }, { year: '1989', month: '02', sale: '1200.00' }],
|
|
42
|
-
footer: ['Footer 1', 'Footer 2', 'Footer 3'],
|
|
43
|
-
type: 'simple',
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export const Rich = RichTemplate.bind({})
|
|
47
|
-
// @ts-ignore
|
|
48
|
-
Rich.args = {
|
|
49
|
-
header: ['header 1', 'header 2', 'header 3'],
|
|
50
|
-
data:[[ [ 20, -3], [ 20, 2], [ 20, 2] ], { header4: { value: 20, delta: 2}, header5: { value: 20, delta: 2}, header6: { value: 20, delta: 2} }],
|
|
51
|
-
footer: ['Footer 1', 'Footer 2', 'Footer 3'],
|
|
52
|
-
type: 'rich'
|
|
53
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import PsDateCardInfo from '../components/badges-and-tags/PsDateCardInfo.vue'
|
|
2
|
-
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Components/DateCardInfo',
|
|
5
|
-
component: PsDateCardInfo,
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
const Template = (args:any, {argTypes}:{argTypes:any}) => ({
|
|
9
|
-
props: Object.keys(argTypes),
|
|
10
|
-
components:{PsDateCardInfo},
|
|
11
|
-
template: `
|
|
12
|
-
<div style="width: 1000px; background:#DBE9F1; display:flex; gap: 7px; padding: 20px; height: 100%;">
|
|
13
|
-
<PsDateCardInfo v-bind="$props"/>
|
|
14
|
-
<PsDateCardInfo v-bind="$props"/>
|
|
15
|
-
<PsDateCardInfo v-bind="$props"/>
|
|
16
|
-
</div>
|
|
17
|
-
`
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
export const Default = Template.bind({})
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
import PsDialog from '../components/notifications/PsDialog.vue'
|
|
2
|
-
|
|
3
|
-
export default {
|
|
4
|
-
title: 'Notifications/Dialog',
|
|
5
|
-
component: PsDialog,
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
const TemplateExamples = (args:any, { argTypes }: { argTypes:any }) => ({
|
|
9
|
-
props: Object.keys(argTypes),
|
|
10
|
-
components: { PsDialog },
|
|
11
|
-
template: `
|
|
12
|
-
<div class="psui-grid psui-grid-cols-3 psui-gap-4">
|
|
13
|
-
|
|
14
|
-
<div class="psui-col-span-3 psui-mt-8">
|
|
15
|
-
<h1 class="psui-font-bold psui-border-b psui-border-gray-30">PSDialog Horizontal</h1>
|
|
16
|
-
</div>
|
|
17
|
-
|
|
18
|
-
<div>
|
|
19
|
-
<h2>Informative</h2>
|
|
20
|
-
<PsDialog theme="informative" layout="horizontal" message="teste">
|
|
21
|
-
<template v-slot:action>
|
|
22
|
-
<p style='font-weight: 700;'>Action</p>
|
|
23
|
-
</template>
|
|
24
|
-
</PsDialog>
|
|
25
|
-
</div>
|
|
26
|
-
|
|
27
|
-
<div>
|
|
28
|
-
<h2>Success</h2>
|
|
29
|
-
<PsDialog theme="success" layout="horizontal" :hasClose="false">
|
|
30
|
-
<template>
|
|
31
|
-
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
|
|
32
|
-
</template>
|
|
33
|
-
<template v-slot:action>
|
|
34
|
-
<p style='font-weight: 700;'>Action</p>
|
|
35
|
-
</template>
|
|
36
|
-
</PsDialog>
|
|
37
|
-
</div>
|
|
38
|
-
|
|
39
|
-
<div>
|
|
40
|
-
<h2>Alert</h2>
|
|
41
|
-
<PsDialog theme="alert" layout="horizontal">
|
|
42
|
-
<template>
|
|
43
|
-
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
|
|
44
|
-
</template>
|
|
45
|
-
<template v-slot:action>
|
|
46
|
-
<p style='font-weight: 700;'>Action</p>
|
|
47
|
-
</template>
|
|
48
|
-
</PsDialog>
|
|
49
|
-
</div>
|
|
50
|
-
|
|
51
|
-
<div class="psui-col-span-3 psui-mt-8">
|
|
52
|
-
<h1 class="psui-font-bold psui-border-b psui-border-gray-30">PSDialog Vertical</h1>
|
|
53
|
-
</div>
|
|
54
|
-
|
|
55
|
-
<div>
|
|
56
|
-
<h2>Informative</h2>
|
|
57
|
-
<PsDialog theme="informative" layout="vertical">
|
|
58
|
-
<template>
|
|
59
|
-
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
|
|
60
|
-
</template>
|
|
61
|
-
<template v-slot:action>
|
|
62
|
-
<p style='font-weight: 700;'>Action</p>
|
|
63
|
-
</template>
|
|
64
|
-
</PsDialog>
|
|
65
|
-
</div>
|
|
66
|
-
|
|
67
|
-
<div class="psui-text-red">
|
|
68
|
-
<h2>Success</h2>
|
|
69
|
-
<PsDialog theme="success" layout="vertical" :hasClose="false">
|
|
70
|
-
<template>
|
|
71
|
-
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
|
|
72
|
-
</template>
|
|
73
|
-
<template v-slot:action>
|
|
74
|
-
<p style='font-weight: 700;'>Action</p>
|
|
75
|
-
</template>
|
|
76
|
-
</PsDialog>
|
|
77
|
-
</div>
|
|
78
|
-
|
|
79
|
-
<div>
|
|
80
|
-
<h2>Alert</h2>
|
|
81
|
-
<PsDialog theme="alert" layout="vertical">
|
|
82
|
-
<template>
|
|
83
|
-
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
|
|
84
|
-
</template>
|
|
85
|
-
<template v-slot:action>
|
|
86
|
-
<p style='font-weight: 700;'>Action</p>
|
|
87
|
-
</template>
|
|
88
|
-
</PsDialog>
|
|
89
|
-
</div>
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
<!-- PSDialog Vertical -->
|
|
94
|
-
<div class="psui-col-span-3 psui-mt-8">
|
|
95
|
-
<h1 class="psui-font-bold psui-border-b psui-border-gray-30">PSDialog Vertical Props Message</h1>
|
|
96
|
-
</div>
|
|
97
|
-
|
|
98
|
-
<div>
|
|
99
|
-
<h2>Informative</h2>
|
|
100
|
-
<PsDialog theme="informative" layout="vertical" message="This component uses only the props message!">
|
|
101
|
-
<template v-slot:action>
|
|
102
|
-
<p style='font-weight: 700;'>Action</p>
|
|
103
|
-
</template>
|
|
104
|
-
</PsDialog>
|
|
105
|
-
</div>
|
|
106
|
-
|
|
107
|
-
<div>
|
|
108
|
-
<h2>Success</h2>
|
|
109
|
-
<PsDialog theme="success" layout="vertical" message="This component uses only the props message!" :hasClose="false">
|
|
110
|
-
<template v-slot:action>
|
|
111
|
-
<p style='font-weight: 700;'>Action</p>
|
|
112
|
-
</template>
|
|
113
|
-
</PsDialog>
|
|
114
|
-
</div>
|
|
115
|
-
|
|
116
|
-
<div>
|
|
117
|
-
<h2>Alert</h2>
|
|
118
|
-
<PsDialog theme="alert" layout="vertical" message="This component uses only the props message!">
|
|
119
|
-
<template v-slot:action>
|
|
120
|
-
<p style='font-weight: 700;'>Action</p>
|
|
121
|
-
</template>
|
|
122
|
-
</PsDialog>
|
|
123
|
-
</div>
|
|
124
|
-
|
|
125
|
-
</div>
|
|
126
|
-
`,
|
|
127
|
-
})
|
|
128
|
-
|
|
129
|
-
export const Examples = TemplateExamples.bind({})
|
|
130
|
-
|
|
131
|
-
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import PsDraggable from '../components/controls/PsDraggable.vue'
|
|
2
|
-
|
|
3
|
-
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
4
|
-
|
|
5
|
-
import * as HeaderStories from '../stories/Header.stories'
|
|
6
|
-
|
|
7
|
-
const meta: Meta<typeof PsDraggable> = {
|
|
8
|
-
component: PsDraggable
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export default meta
|
|
12
|
-
|
|
13
|
-
type Story = StoryObj<typeof PsDraggable>
|
|
14
|
-
|
|
15
|
-
export const Primary: Story = {
|
|
16
|
-
render: (args) => ({
|
|
17
|
-
components: { PsDraggable },
|
|
18
|
-
setup(){
|
|
19
|
-
return { args }
|
|
20
|
-
},
|
|
21
|
-
template: `
|
|
22
|
-
<div style='width: 300px; font-family: "Lato", sans-serif; font-size: 12px;'>
|
|
23
|
-
<PsDraggable v-bind='$props'/>
|
|
24
|
-
</div>
|
|
25
|
-
`,
|
|
26
|
-
args:{
|
|
27
|
-
...HeaderStories.LoggedIn.args,
|
|
28
|
-
getColumns: {columnGroups:[{title: 'COST EFFECTIVENESS', columns: [ 'Item 1' , 'Item 2' , 'Item 3', 'Item 4']}, {title: 'PER HOME RESULTS', columns: [ 'Item 1' , 'Item 2' , 'Item 3', 'Item 4']}]},
|
|
29
|
-
module: 'comparison'
|
|
30
|
-
}
|
|
31
|
-
})
|
|
32
|
-
}
|