You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

127 lines
2.5 KiB

import { moduleMetadata } from '@storybook/angular';
import type { Meta, StoryObj } from '@storybook/angular';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
import { GfValueComponent } from './value.component';
export default {
title: 'Value',
component: GfValueComponent,
decorators: [
moduleMetadata({
imports: [NgxSkeletonLoaderModule]
})
],
argTypes: {
deviceType: {
control: 'select',
options: ['desktop', 'mobile']
},
size: {
control: 'select',
options: ['small', 'medium', 'large']
}
}
} as Meta<GfValueComponent>;
type Story = StoryObj<GfValueComponent>;
export const Loading: Story = {
args: {
value: undefined
}
};
export const IsinNoLabel: Story = {
args: {
isCurrency: false,
locale: 'en-US',
unit: 'USD',
value: 'US5949181045',
enableCopyToClipboardButton: true
},
name: 'Without Label with Copy'
};
export const IsinWithLabel: Story = {
args: {
isCurrency: false,
locale: 'en-US',
unit: 'USD',
value: 'US5949181045',
enableCopyToClipboardButton: true
},
render: (args) => ({
props: args,
template: `<gf-value [enableCopyToClipboardButton]="enableCopyToClipboardButton" [locale]="locale" [size]="size" [value]="value">ISIN</gf-value>`
}),
name: 'With Label and Copy'
};
export const Currency: Story = {
args: {
isCurrency: true,
locale: 'en-US',
unit: 'USD',
value: 7
}
};
export const DateValue: Story = {
args: {
deviceType: 'desktop',
isDate: true,
locale: 'en-US',
value: new Date().toISOString()
},
name: 'Date'
};
export const Label: Story = {
args: {
locale: 'en-US',
value: 7.25
},
render: (args) => ({
props: args,
template: `<gf-value [locale]="locale" [size]="size" [value]="value">Label</gf-value>`
})
};
export const PerformancePositive: Story = {
args: {
colorizeSign: true,
isPercent: true,
locale: 'en-US',
value: 0.0136810853673890378
},
name: 'Performance (positive)'
};
export const PerformanceNegative: Story = {
args: {
colorizeSign: true,
isPercent: true,
locale: 'en-US',
value: -0.0136810853673890378
},
name: 'Performance (negative)'
};
export const PerformanceCloseToZero: Story = {
args: {
colorizeSign: true,
isPercent: true,
locale: 'en-US',
value: -2.388915360475e-8
},
name: 'Performance (negative zero)'
};
export const Precision: Story = {
args: {
locale: 'en-US',
precision: 3,
value: 7.2534802394809285309
}
};