@spicainternational/ngx-sds-components 8.7.4 → 8.8.0
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/esm2022/src/lib/date-pipes/date-time-range-format.pipe.mjs +3 -7
- package/esm2022/src/lib/navigation/navigation-external-link/navigation-external-link.component.mjs +4 -9
- package/esm2022/src/lib/navigation/navigation-route-link/navigation-route-link.component.mjs +4 -7
- package/esm2022/src/lib/navigation/product-home/product-home.component.mjs +3 -4
- package/esm2022/src/lib/segmented-control/segmented-control.component.mjs +3 -3
- package/fesm2022/spicainternational-ngx-sds-components-src-lib-date-pipes.mjs +3 -6
- package/fesm2022/spicainternational-ngx-sds-components-src-lib-date-pipes.mjs.map +1 -1
- package/fesm2022/spicainternational-ngx-sds-components-src-lib-navigation.mjs +7 -16
- package/fesm2022/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
- package/fesm2022/spicainternational-ngx-sds-components-src-lib-segmented-control.mjs +2 -2
- package/fesm2022/spicainternational-ngx-sds-components-src-lib-segmented-control.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/navigation/navigation-external-link/navigation-external-link.component.d.ts +1 -5
- package/src/lib/navigation/navigation-route-link/navigation-route-link.component.d.ts +0 -1
- package/src/lib/navigation/product-home/product-home.component.d.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spicainternational-ngx-sds-components-src-lib-date-pipes.mjs","sources":["../../../projects/ngx-sds-components/src/lib/date-pipes/date-time-formats.constants.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-period-format.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-format.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-time-range-format.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-time-range-duration.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-compare.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/spicainternational-ngx-sds-components-src-lib-date-pipes.ts"],"sourcesContent":["/**\n * Common Intl.DateTimeFormatOptions constants for consistent date/time formatting\n */\n\n// Date formats\nexport const DATE_NUMERIC_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'numeric',\n day: 'numeric'\n};\n\nexport const DATE_SHORT_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'short',\n day: 'numeric'\n};\n\nexport const DATE_LONG_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'long',\n day: 'numeric'\n};\n\nexport const DATE_LONG_MONTH_LONG_WEEKDAY_OPTIONS: Intl.DateTimeFormatOptions = {\n weekday: 'long',\n ...DATE_LONG_MONTH_OPTIONS,\n};\n\nexport const DATE_LONG_MONTH_SHORT_WEEKDAY_OPTIONS: Intl.DateTimeFormatOptions = {\n weekday: 'short',\n ...DATE_LONG_MONTH_OPTIONS,\n};\n\n\n// export const SHORT_DATE_WITH_WEEKDAY_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'short',\n// year: 'numeric',\n// month: 'short',\n// day: 'numeric'\n// };\n\n// // Long date formats\n// export const LONG_DATE_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'long',\n// year: 'numeric',\n// month: 'long',\n// day: 'numeric'\n// };\n\n\n\n\n\n// Time formats\nexport const TIME_HOUR_NUMERIC_OPTION: Intl.DateTimeFormatOptions = {\n hour: 'numeric',\n minute: '2-digit'\n};\n\nexport const TIME_HOUR_2DIGIT_OPTION: Intl.DateTimeFormatOptions = {\n hour: '2-digit',\n minute: '2-digit'\n};\n\nexport const TIME_HOUR_NUMERIC_SECONDS_OPTION: Intl.DateTimeFormatOptions = {\n hour: 'numeric',\n minute: '2-digit',\n second: '2-digit'\n};\n\n// export const TIME_24H_OPTIONS: Intl.DateTimeFormatOptions = {\n// hour: '2-digit',\n// minute: '2-digit',\n// hour12: false\n// };\n\n// export const TIME_WITH_SECONDS_OPTIONS: Intl.DateTimeFormatOptions = {\n// hour: '2-digit',\n// minute: '2-digit',\n// second: '2-digit',\n// hour12: false\n// };\n\n// Date and time combinations\n// export const SHORT_DATETIME_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'short',\n// day: 'numeric',\n// hour: 'numeric',\n// minute: '2-digit',\n// hour12: true\n// };\n\n// export const LONG_DATETIME_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'long',\n// year: 'numeric',\n// month: 'long',\n// day: 'numeric',\n// hour: 'numeric',\n// minute: '2-digit',\n// hour12: true\n// };\n\n// export const COMPACT_DATETIME_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: '2-digit',\n// day: '2-digit',\n// hour: '2-digit',\n// minute: '2-digit',\n// hour12: false\n// };\n\n// Time range specific formats (optimized for ranges)\n\n\n// export const TIME_RANGE_WITH_DATE_OPTIONS: Intl.DateTimeFormatOptions = {\n// month: 'short',\n// day: 'numeric',\n// hour: 'numeric',\n// minute: '2-digit',\n// hour12: true\n// };\n\n// export const DATE_RANGE_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'short',\n// day: 'numeric'\n// };\n\n// export const DATE_RANGE_YEAR_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'long'\n// };\n\n// Special formats\n// export const RELATIVE_DATE_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'short',\n// month: 'short',\n// day: 'numeric'\n// };\n\n// export const MONTH_YEAR_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'long'\n// };\n\n// export const WEEKDAY_ONLY_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'long'\n// };\n\n// export const YEAR_ONLY_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric'\n// };\n\n// Utility object for easy access\nexport const DATE_TIME_FORMAT_OPTIONS = {\n\n DATE_NUMERIC_MONTH: DATE_NUMERIC_MONTH_OPTIONS,\n DATE_SHORT_MONTH: DATE_SHORT_MONTH_OPTIONS,\n DATE_LONG_MONTH: DATE_LONG_MONTH_OPTIONS,\n\n DATE_LONG_MONTH_LONG_WEEKDAY: DATE_LONG_MONTH_LONG_WEEKDAY_OPTIONS,\n DATE_LONG_MONTH_SHORT_WEEKDAY: DATE_LONG_MONTH_SHORT_WEEKDAY_OPTIONS,\n\n TIME_HOUR_NUMERIC: TIME_HOUR_NUMERIC_OPTION,\n TIME_HOUR_2DIGIT: TIME_HOUR_2DIGIT_OPTION,\n TIME_HOUR_NUMERIC_SECONDS: TIME_HOUR_NUMERIC_SECONDS_OPTION,\n\n // SHORT_DATE_WITH_WEEKDAY: SHORT_DATE_WITH_WEEKDAY_OPTIONS,\n \n // Long formats\n// LONG_DATE_WITH_WEEKDAY: LONG_DATE_WITH_WEEKDAY_OPTIONS,\n\n // Time formats\n// TIME_12H: TIME_12H_OPTIONS,\n// TIME_24H: TIME_24H_OPTIONS,\n// TIME_WITH_SECONDS: TIME_WITH_SECONDS_OPTIONS,\n \n // DateTime combinations\n// SHORT_DATETIME: SHORT_DATETIME_OPTIONS,\n// LONG_DATETIME: LONG_DATETIME_OPTIONS,\n// COMPACT_DATETIME: COMPACT_DATETIME_OPTIONS,\n \n // Range specific\n \n// TIME_RANGE_WITH_DATE: TIME_RANGE_WITH_DATE_OPTIONS,\n// DATE_RANGE_MONTH: DATE_RANGE_MONTH_OPTIONS,\n// DATE_RANGE_YEAR: DATE_RANGE_YEAR_OPTIONS,\n \n // Special\n// RELATIVE_DATE: RELATIVE_DATE_OPTIONS,\n// MONTH_YEAR: MONTH_YEAR_OPTIONS,\n// WEEKDAY_ONLY: WEEKDAY_ONLY_OPTIONS,\n// YEAR_ONLY: YEAR_ONLY_OPTIONS\n} as const;\nexport type DateTimeFormatOptionKeys = keyof typeof DATE_TIME_FORMAT_OPTIONS;\n\n\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { isSameDay, isSameYear } from 'date-fns';\n\n/**\n * @deprecated This pipe is deprecated and will be removed in a future release. \n * Use sdsDateTimeRangeFormat pipe instead.\n */\n@Pipe({\n name: 'sdsDatePeriodFormat',\n standalone: true,\n})\nexport class SdsDatePeriodFormatPipe implements PipeTransform {\n transform(\n from: Date,\n to: Date,\n locales: string | Array<string>,\n options?: Intl.DateTimeFormatOptions,\n omitRedundantSegments: boolean = false,\n periodSeparator: string = '-',\n omitCurrentYear: boolean = false\n ): string {\n if (!from) {\n return '';\n }\n\n if (!to) {\n return from.toLocaleDateString(locales, options);\n }\n\n\n if (isSameDay(from, to)) {\n return from.toLocaleDateString(locales, options);\n } else {\n let fromOptions = {...options};\n let toOptions = {...options};\n\n if (omitRedundantSegments && fromOptions && toOptions) {\n\n // if both dates are in current year -> remove it from format\n const now = new Date();\n if (omitCurrentYear && isSameYear(from, now) && isSameYear(to, now)) {\n fromOptions.year = undefined;\n toOptions.year = undefined;\n } \n\n if (isSameYear(from, to)) {\n // if both dates have same year -> remove it from start data\n fromOptions.year = undefined;\n }\n }\n\n const fromString = from.toLocaleDateString(locales, fromOptions);\n const toString = to.toLocaleDateString(locales, toOptions);\n\n return `${fromString} ${periodSeparator} ${toString}`;\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { IntlDateTimeFormatOptionPresetType } from '@spicainternational/ngx-sds-components/src/lib/utils/date-time';\nimport { formatDateTime } from '@spicainternational/ngx-sds-components/src/lib/utils/date-time';\n// import { IntlDateTimeFormatOptionPresetType } from '../utils/date-time/intl-date-time-format-options-presets';\n// import { formatDateTime } from '../utils/date-time/date-time-format.function';\n\n\n\n@Pipe({\n name: 'sdsDateFormat',\n standalone: true,\n})\nexport class SdsDateFormatPipe implements PipeTransform {\n\n /**\n * Formats date in given locale.\n *\n * @param date Date to be formatted.\n * @param locale A locale code for the locale format rules to use.\n * @param options An optional Intl.DateTimeFormatOptions parameter that can be used to fine-tune the output.\n * @returns A string with formatted date\n * @see [Intl docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl)\n *\n * @publicApi\n */\n public transform(\n date: Date | number | string | undefined,\n locales: string | Array<string>,\n options?: Intl.DateTimeFormatOptions | IntlDateTimeFormatOptionPresetType\n ): string {\n return formatDateTime(date, locales, options);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { addDays, startOfDay } from 'date-fns';\n\n@Pipe({\n name: 'sdsDateTimeRangeFormat',\n standalone: true\n})\nexport class SdsDateTimeRangeFormatPipe implements PipeTransform {\n /**\n * Formats a date range using Intl.DateTimeFormat.formatRange\n * @param startDate - The start date of the range\n * @param endDate - The end date of the range\n * @param locales - Locale(s) to use for formatting (optional, defaults to browser locale)\n * @param options - Intl.DateTimeFormatOptions for customizing the format\n * @returns Formatted date range string\n */\n transform(\n startDate: Date | string | number,\n endDate: Date | string | number,\n locales: string | string[],\n options: Intl.DateTimeFormatOptions\n ): string {\n if (!startDate || !endDate) {\n return '';\n }\n\n try {\n const start = new Date(startDate);\n let end = new Date(endDate);\n\n if (!options || isNaN(start.getTime()) || isNaN(end.getTime())) {\n return '';\n }\n\n const formatter = new Intl.DateTimeFormat(locales, options);\n const formatterWithRange = formatter as any;\n\n if (typeof formatterWithRange.formatRange === 'function') {\n\n if (startOfDay(addDays(start, 1)).getTime() === end.getTime()) {\n end = addDays(end, -1);\n }\n\n return formatterWithRange.formatRange(start, end);\n } else {\n return `${formatter.format(start)} - ${formatter.format(end)}`;\n }\n } catch (error) {\n return '';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport differenceInMinutes from 'date-fns/differenceInMinutes';\n\n@Pipe({\n name: 'sdsDateTimeRangeDuration',\n standalone: true\n})\nexport class SdsDateTimeRangeDurationPipe implements PipeTransform {\n transform(\n startDate: Date | string | number,\n endDate: Date | string | number,\n //locales: string | string[],\n \n ): string {\n\n if (!startDate || !endDate) {\n return '';\n }\n\n try {\n const start = new Date(startDate);\n const end = new Date(endDate); \n \n // not yet supported in all browsers\n // const formatter = new Intl.DurationFormat(locales, options);\n\n const totalMinutes = differenceInMinutes(end, start);\n const hours = Math.floor(totalMinutes / 60);\n const minutes = totalMinutes % 60;\n\n return `${hours}:${minutes.toString().padStart(2, '0')}`;\n } catch (error) {\n return '';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'sdsDateCompare',\n standalone: true\n})\nexport class SdsDateComparePipe implements PipeTransform {\n transform(\n date1: Date | string | number,\n date2: Date | string | number,\n operator: 'gt' | 'lt' | 'eq' | 'gte' | 'lte'\n ): boolean {\n const d1 = new Date(date1);\n const d2 = new Date(date2);\n\n switch (operator) {\n case 'gt':\n return d1 > d2;\n case 'lt':\n return d1 < d2;\n case 'eq':\n return d1.getTime() === d2.getTime();\n case 'gte':\n return d1 >= d2;\n case 'lte':\n return d1 <= d2;\n default:\n return false;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spicainternational-ngx-sds-components-src-lib-date-pipes.mjs","sources":["../../../projects/ngx-sds-components/src/lib/date-pipes/date-time-formats.constants.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-period-format.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-format.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-time-range-format.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-time-range-duration.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/date-compare.pipe.ts","../../../projects/ngx-sds-components/src/lib/date-pipes/spicainternational-ngx-sds-components-src-lib-date-pipes.ts"],"sourcesContent":["/**\n * Common Intl.DateTimeFormatOptions constants for consistent date/time formatting\n */\n\n// Date formats\nexport const DATE_NUMERIC_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'numeric',\n day: 'numeric'\n};\n\nexport const DATE_SHORT_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'short',\n day: 'numeric'\n};\n\nexport const DATE_LONG_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'long',\n day: 'numeric'\n};\n\nexport const DATE_LONG_MONTH_LONG_WEEKDAY_OPTIONS: Intl.DateTimeFormatOptions = {\n weekday: 'long',\n ...DATE_LONG_MONTH_OPTIONS,\n};\n\nexport const DATE_LONG_MONTH_SHORT_WEEKDAY_OPTIONS: Intl.DateTimeFormatOptions = {\n weekday: 'short',\n ...DATE_LONG_MONTH_OPTIONS,\n};\n\n\n// export const SHORT_DATE_WITH_WEEKDAY_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'short',\n// year: 'numeric',\n// month: 'short',\n// day: 'numeric'\n// };\n\n// // Long date formats\n// export const LONG_DATE_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'long',\n// year: 'numeric',\n// month: 'long',\n// day: 'numeric'\n// };\n\n\n\n\n\n// Time formats\nexport const TIME_HOUR_NUMERIC_OPTION: Intl.DateTimeFormatOptions = {\n hour: 'numeric',\n minute: '2-digit'\n};\n\nexport const TIME_HOUR_2DIGIT_OPTION: Intl.DateTimeFormatOptions = {\n hour: '2-digit',\n minute: '2-digit'\n};\n\nexport const TIME_HOUR_NUMERIC_SECONDS_OPTION: Intl.DateTimeFormatOptions = {\n hour: 'numeric',\n minute: '2-digit',\n second: '2-digit'\n};\n\n// export const TIME_24H_OPTIONS: Intl.DateTimeFormatOptions = {\n// hour: '2-digit',\n// minute: '2-digit',\n// hour12: false\n// };\n\n// export const TIME_WITH_SECONDS_OPTIONS: Intl.DateTimeFormatOptions = {\n// hour: '2-digit',\n// minute: '2-digit',\n// second: '2-digit',\n// hour12: false\n// };\n\n// Date and time combinations\n// export const SHORT_DATETIME_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'short',\n// day: 'numeric',\n// hour: 'numeric',\n// minute: '2-digit',\n// hour12: true\n// };\n\n// export const LONG_DATETIME_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'long',\n// year: 'numeric',\n// month: 'long',\n// day: 'numeric',\n// hour: 'numeric',\n// minute: '2-digit',\n// hour12: true\n// };\n\n// export const COMPACT_DATETIME_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: '2-digit',\n// day: '2-digit',\n// hour: '2-digit',\n// minute: '2-digit',\n// hour12: false\n// };\n\n// Time range specific formats (optimized for ranges)\n\n\n// export const TIME_RANGE_WITH_DATE_OPTIONS: Intl.DateTimeFormatOptions = {\n// month: 'short',\n// day: 'numeric',\n// hour: 'numeric',\n// minute: '2-digit',\n// hour12: true\n// };\n\n// export const DATE_RANGE_MONTH_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'short',\n// day: 'numeric'\n// };\n\n// export const DATE_RANGE_YEAR_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'long'\n// };\n\n// Special formats\n// export const RELATIVE_DATE_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'short',\n// month: 'short',\n// day: 'numeric'\n// };\n\n// export const MONTH_YEAR_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric',\n// month: 'long'\n// };\n\n// export const WEEKDAY_ONLY_OPTIONS: Intl.DateTimeFormatOptions = {\n// weekday: 'long'\n// };\n\n// export const YEAR_ONLY_OPTIONS: Intl.DateTimeFormatOptions = {\n// year: 'numeric'\n// };\n\n// Utility object for easy access\nexport const DATE_TIME_FORMAT_OPTIONS = {\n\n DATE_NUMERIC_MONTH: DATE_NUMERIC_MONTH_OPTIONS,\n DATE_SHORT_MONTH: DATE_SHORT_MONTH_OPTIONS,\n DATE_LONG_MONTH: DATE_LONG_MONTH_OPTIONS,\n\n DATE_LONG_MONTH_LONG_WEEKDAY: DATE_LONG_MONTH_LONG_WEEKDAY_OPTIONS,\n DATE_LONG_MONTH_SHORT_WEEKDAY: DATE_LONG_MONTH_SHORT_WEEKDAY_OPTIONS,\n\n TIME_HOUR_NUMERIC: TIME_HOUR_NUMERIC_OPTION,\n TIME_HOUR_2DIGIT: TIME_HOUR_2DIGIT_OPTION,\n TIME_HOUR_NUMERIC_SECONDS: TIME_HOUR_NUMERIC_SECONDS_OPTION,\n\n // SHORT_DATE_WITH_WEEKDAY: SHORT_DATE_WITH_WEEKDAY_OPTIONS,\n \n // Long formats\n// LONG_DATE_WITH_WEEKDAY: LONG_DATE_WITH_WEEKDAY_OPTIONS,\n\n // Time formats\n// TIME_12H: TIME_12H_OPTIONS,\n// TIME_24H: TIME_24H_OPTIONS,\n// TIME_WITH_SECONDS: TIME_WITH_SECONDS_OPTIONS,\n \n // DateTime combinations\n// SHORT_DATETIME: SHORT_DATETIME_OPTIONS,\n// LONG_DATETIME: LONG_DATETIME_OPTIONS,\n// COMPACT_DATETIME: COMPACT_DATETIME_OPTIONS,\n \n // Range specific\n \n// TIME_RANGE_WITH_DATE: TIME_RANGE_WITH_DATE_OPTIONS,\n// DATE_RANGE_MONTH: DATE_RANGE_MONTH_OPTIONS,\n// DATE_RANGE_YEAR: DATE_RANGE_YEAR_OPTIONS,\n \n // Special\n// RELATIVE_DATE: RELATIVE_DATE_OPTIONS,\n// MONTH_YEAR: MONTH_YEAR_OPTIONS,\n// WEEKDAY_ONLY: WEEKDAY_ONLY_OPTIONS,\n// YEAR_ONLY: YEAR_ONLY_OPTIONS\n} as const;\nexport type DateTimeFormatOptionKeys = keyof typeof DATE_TIME_FORMAT_OPTIONS;\n\n\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { isSameDay, isSameYear } from 'date-fns';\n\n/**\n * @deprecated This pipe is deprecated and will be removed in a future release. \n * Use sdsDateTimeRangeFormat pipe instead.\n */\n@Pipe({\n name: 'sdsDatePeriodFormat',\n standalone: true,\n})\nexport class SdsDatePeriodFormatPipe implements PipeTransform {\n transform(\n from: Date,\n to: Date,\n locales: string | Array<string>,\n options?: Intl.DateTimeFormatOptions,\n omitRedundantSegments: boolean = false,\n periodSeparator: string = '-',\n omitCurrentYear: boolean = false\n ): string {\n if (!from) {\n return '';\n }\n\n if (!to) {\n return from.toLocaleDateString(locales, options);\n }\n\n\n if (isSameDay(from, to)) {\n return from.toLocaleDateString(locales, options);\n } else {\n let fromOptions = {...options};\n let toOptions = {...options};\n\n if (omitRedundantSegments && fromOptions && toOptions) {\n\n // if both dates are in current year -> remove it from format\n const now = new Date();\n if (omitCurrentYear && isSameYear(from, now) && isSameYear(to, now)) {\n fromOptions.year = undefined;\n toOptions.year = undefined;\n } \n\n if (isSameYear(from, to)) {\n // if both dates have same year -> remove it from start data\n fromOptions.year = undefined;\n }\n }\n\n const fromString = from.toLocaleDateString(locales, fromOptions);\n const toString = to.toLocaleDateString(locales, toOptions);\n\n return `${fromString} ${periodSeparator} ${toString}`;\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { IntlDateTimeFormatOptionPresetType } from '@spicainternational/ngx-sds-components/src/lib/utils/date-time';\nimport { formatDateTime } from '@spicainternational/ngx-sds-components/src/lib/utils/date-time';\n// import { IntlDateTimeFormatOptionPresetType } from '../utils/date-time/intl-date-time-format-options-presets';\n// import { formatDateTime } from '../utils/date-time/date-time-format.function';\n\n\n\n@Pipe({\n name: 'sdsDateFormat',\n standalone: true,\n})\nexport class SdsDateFormatPipe implements PipeTransform {\n\n /**\n * Formats date in given locale.\n *\n * @param date Date to be formatted.\n * @param locale A locale code for the locale format rules to use.\n * @param options An optional Intl.DateTimeFormatOptions parameter that can be used to fine-tune the output.\n * @returns A string with formatted date\n * @see [Intl docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl)\n *\n * @publicApi\n */\n public transform(\n date: Date | number | string | undefined,\n locales: string | Array<string>,\n options?: Intl.DateTimeFormatOptions | IntlDateTimeFormatOptionPresetType\n ): string {\n return formatDateTime(date, locales, options);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'sdsDateTimeRangeFormat',\n standalone: true,\n})\nexport class SdsDateTimeRangeFormatPipe implements PipeTransform {\n /**\n * Formats a date range using Intl.DateTimeFormat.formatRange\n * @param startDate - The start date of the range\n * @param endDate - The end date of the range\n * @param locales - Locale(s) to use for formatting (optional, defaults to browser locale)\n * @param options - Intl.DateTimeFormatOptions for customizing the format\n * @returns Formatted date range string\n */\n transform(\n startDate: Date | string | number,\n endDate: Date | string | number,\n locales: string | string[],\n options: Intl.DateTimeFormatOptions,\n ): string {\n if (!startDate || !endDate) {\n return '';\n }\n\n try {\n const start = new Date(startDate);\n const end = new Date(endDate);\n\n if (!options || isNaN(start.getTime()) || isNaN(end.getTime())) {\n return '';\n }\n\n const formatter = new Intl.DateTimeFormat(locales, options);\n const formatterWithRange = formatter as any;\n\n if (typeof formatterWithRange.formatRange === 'function') {\n return formatterWithRange.formatRange(start, end);\n } else {\n return `${formatter.format(start)} - ${formatter.format(end)}`;\n }\n } catch (error) {\n return '';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport differenceInMinutes from 'date-fns/differenceInMinutes';\n\n@Pipe({\n name: 'sdsDateTimeRangeDuration',\n standalone: true\n})\nexport class SdsDateTimeRangeDurationPipe implements PipeTransform {\n transform(\n startDate: Date | string | number,\n endDate: Date | string | number,\n //locales: string | string[],\n \n ): string {\n\n if (!startDate || !endDate) {\n return '';\n }\n\n try {\n const start = new Date(startDate);\n const end = new Date(endDate); \n \n // not yet supported in all browsers\n // const formatter = new Intl.DurationFormat(locales, options);\n\n const totalMinutes = differenceInMinutes(end, start);\n const hours = Math.floor(totalMinutes / 60);\n const minutes = totalMinutes % 60;\n\n return `${hours}:${minutes.toString().padStart(2, '0')}`;\n } catch (error) {\n return '';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'sdsDateCompare',\n standalone: true\n})\nexport class SdsDateComparePipe implements PipeTransform {\n transform(\n date1: Date | string | number,\n date2: Date | string | number,\n operator: 'gt' | 'lt' | 'eq' | 'gte' | 'lte'\n ): boolean {\n const d1 = new Date(date1);\n const d2 = new Date(date2);\n\n switch (operator) {\n case 'gt':\n return d1 > d2;\n case 'lt':\n return d1 < d2;\n case 'eq':\n return d1.getTime() === d2.getTime();\n case 'gte':\n return d1 >= d2;\n case 'lte':\n return d1 <= d2;\n default:\n return false;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -121,15 +121,12 @@ class SdsNavigationRouteLinkComponent {
|
|
|
121
121
|
#routerUrl;
|
|
122
122
|
#currentUrl;
|
|
123
123
|
#activeRoutePatternRegExp;
|
|
124
|
-
navigateToDefaultUrl() {
|
|
125
|
-
this.#router.navigateByUrl(this.link());
|
|
126
|
-
}
|
|
127
124
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdsNavigationRouteLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
128
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: SdsNavigationRouteLinkComponent, isStandalone: true, selector: "sds-navigation-route-link", inputs: { link: { classPropertyName: "link", publicName: "link", isSignal: true, isRequired: false, transformFunction: null }, nestedLinks: { classPropertyName: "nestedLinks", publicName: "nestedLinks", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, activeRoutePattern: { classPropertyName: "activeRoutePattern", publicName: "activeRoutePattern", isSignal: true, isRequired: false, transformFunction: null }, additionalInfo: { classPropertyName: "additionalInfo", publicName: "additionalInfo", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, isCollapsed: { classPropertyName: "isCollapsed", publicName: "isCollapsed", isSignal: true, isRequired: false, transformFunction: null }, ignoreQueryParamsInActiveRoute: { classPropertyName: "ignoreQueryParamsInActiveRoute", publicName: "ignoreQueryParamsInActiveRoute", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isCollapsed: "isCollapsedChange" }, ngImport: i0, template: "<!-- class=\"sds-navigation-router-link sidebar-item-x d-flex justify-content-start align-items-center sidebar-item-x py-1\"> -->\n<div \n class=\"sds-navigation-router-link sds-navigation-item-container\"\n [class.disabled]=\"disabled()\"\n [class.active]=\"isActive()\"\n [title]=\"isCollapsed() ? text() : ''\"\n >\n <a class=\"sds-navigation-item-content w-100 pe-2 text-gray-800\" \n
|
|
125
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: SdsNavigationRouteLinkComponent, isStandalone: true, selector: "sds-navigation-route-link", inputs: { link: { classPropertyName: "link", publicName: "link", isSignal: true, isRequired: false, transformFunction: null }, nestedLinks: { classPropertyName: "nestedLinks", publicName: "nestedLinks", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, activeRoutePattern: { classPropertyName: "activeRoutePattern", publicName: "activeRoutePattern", isSignal: true, isRequired: false, transformFunction: null }, additionalInfo: { classPropertyName: "additionalInfo", publicName: "additionalInfo", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, isCollapsed: { classPropertyName: "isCollapsed", publicName: "isCollapsed", isSignal: true, isRequired: false, transformFunction: null }, ignoreQueryParamsInActiveRoute: { classPropertyName: "ignoreQueryParamsInActiveRoute", publicName: "ignoreQueryParamsInActiveRoute", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isCollapsed: "isCollapsedChange" }, ngImport: i0, template: "<!-- class=\"sds-navigation-router-link sidebar-item-x d-flex justify-content-start align-items-center sidebar-item-x py-1\"> -->\n<div \n class=\"sds-navigation-router-link sds-navigation-item-container\"\n [class.disabled]=\"disabled()\"\n [class.active]=\"isActive()\"\n [title]=\"isCollapsed() ? text() : ''\"\n >\n <a class=\"sds-navigation-item-content w-100 pe-2 text-gray-800\" \n [routerLink]=\"disabled() ? null : link()\"\n >\n <div class=\"d-flex align-items-center w-100 justify-content-center\">\n <div class=\"sds-navigation-icon\" >\n <ng-content select=\"[navigationIcon]\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!isCollapsed()\">\n <div class=\"sds-navigation-text user-select-none\">\n {{ text() }}\n </div>\n <span *ngIf=\"additionalInfo()\"\n class=\"sds-navigation-router-link-additional-info badge rounded-pill bg-warning text-body\"\n >{{ additionalInfo() }}</span\n > \n </ng-container>\n </div>\n </a>\n</div>", styles: [".sds-navigation-router-link.sds-navigation-item-container.disabled{pointer-events:none;opacity:.6}.sds-navigation-router-link.active>a{font-weight:600!important}.sds-navigation-router-link.sds-navigation-item-container.active{background-color:var(--sds-navigation-active-item)!important}.sds-navigation-router-link.sds-navigation-item-container:hover:not(.active){background-color:var(--bs-gray-200)!important}.sds-navigation-router-link.sds-navigation-item-container{border-radius:.266rem;border-left:none!important}.sds-navigation-router-link{padding:0!important}.sds-navigation-router-link a{padding-top:.5rem!important;padding-bottom:.5rem!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
129
126
|
}
|
|
130
127
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdsNavigationRouteLinkComponent, decorators: [{
|
|
131
128
|
type: Component,
|
|
132
|
-
args: [{ selector: 'sds-navigation-route-link', standalone: true, imports: [NgIf], template: "<!-- class=\"sds-navigation-router-link sidebar-item-x d-flex justify-content-start align-items-center sidebar-item-x py-1\"> -->\n<div \n class=\"sds-navigation-router-link sds-navigation-item-container\"\n [class.disabled]=\"disabled()\"\n [class.active]=\"isActive()\"\n [title]=\"isCollapsed() ? text() : ''\"\n >\n <a class=\"sds-navigation-item-content w-100 pe-2 text-gray-800\" \n
|
|
129
|
+
args: [{ selector: 'sds-navigation-route-link', standalone: true, imports: [NgIf, RouterLink], template: "<!-- class=\"sds-navigation-router-link sidebar-item-x d-flex justify-content-start align-items-center sidebar-item-x py-1\"> -->\n<div \n class=\"sds-navigation-router-link sds-navigation-item-container\"\n [class.disabled]=\"disabled()\"\n [class.active]=\"isActive()\"\n [title]=\"isCollapsed() ? text() : ''\"\n >\n <a class=\"sds-navigation-item-content w-100 pe-2 text-gray-800\" \n [routerLink]=\"disabled() ? null : link()\"\n >\n <div class=\"d-flex align-items-center w-100 justify-content-center\">\n <div class=\"sds-navigation-icon\" >\n <ng-content select=\"[navigationIcon]\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!isCollapsed()\">\n <div class=\"sds-navigation-text user-select-none\">\n {{ text() }}\n </div>\n <span *ngIf=\"additionalInfo()\"\n class=\"sds-navigation-router-link-additional-info badge rounded-pill bg-warning text-body\"\n >{{ additionalInfo() }}</span\n > \n </ng-container>\n </div>\n </a>\n</div>", styles: [".sds-navigation-router-link.sds-navigation-item-container.disabled{pointer-events:none;opacity:.6}.sds-navigation-router-link.active>a{font-weight:600!important}.sds-navigation-router-link.sds-navigation-item-container.active{background-color:var(--sds-navigation-active-item)!important}.sds-navigation-router-link.sds-navigation-item-container:hover:not(.active){background-color:var(--bs-gray-200)!important}.sds-navigation-router-link.sds-navigation-item-container{border-radius:.266rem;border-left:none!important}.sds-navigation-router-link{padding:0!important}.sds-navigation-router-link a{padding-top:.5rem!important;padding-bottom:.5rem!important}\n"] }]
|
|
133
130
|
}], ctorParameters: () => [] });
|
|
134
131
|
|
|
135
132
|
class SdsNavigationGroupComponent {
|
|
@@ -379,18 +376,13 @@ class SdsNavigationExternalLinkComponent {
|
|
|
379
376
|
this.externalLinkIcon = faExternalLink;
|
|
380
377
|
this.isCollapsed = model(false);
|
|
381
378
|
}
|
|
382
|
-
ngOnInit() {
|
|
383
|
-
}
|
|
384
|
-
openLink() {
|
|
385
|
-
window.open(this.link, this.tabName);
|
|
386
|
-
}
|
|
387
379
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdsNavigationExternalLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
388
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: SdsNavigationExternalLinkComponent, isStandalone: true, selector: "sds-navigation-external-link", inputs: { link: { classPropertyName: "link", publicName: "link", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: null }, tabName: { classPropertyName: "tabName", publicName: "tabName", isSignal: false, isRequired: false, transformFunction: null }, externalLinkHint: { classPropertyName: "externalLinkHint", publicName: "externalLinkHint", isSignal: false, isRequired: false, transformFunction: null }, showExternalLinkIcon: { classPropertyName: "showExternalLinkIcon", publicName: "showExternalLinkIcon", isSignal: false, isRequired: false, transformFunction: null }, isCollapsed: { classPropertyName: "isCollapsed", publicName: "isCollapsed", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isCollapsed: "isCollapsedChange" }, ngImport: i0, template: "<div \n class=\"sds-navigation-external-link sds-navigation-item-container\"\n [title]=\"isCollapsed() ? text : ''\"\n >\n <a
|
|
380
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: SdsNavigationExternalLinkComponent, isStandalone: true, selector: "sds-navigation-external-link", inputs: { link: { classPropertyName: "link", publicName: "link", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: null }, tabName: { classPropertyName: "tabName", publicName: "tabName", isSignal: false, isRequired: false, transformFunction: null }, externalLinkHint: { classPropertyName: "externalLinkHint", publicName: "externalLinkHint", isSignal: false, isRequired: false, transformFunction: null }, showExternalLinkIcon: { classPropertyName: "showExternalLinkIcon", publicName: "showExternalLinkIcon", isSignal: false, isRequired: false, transformFunction: null }, isCollapsed: { classPropertyName: "isCollapsed", publicName: "isCollapsed", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { isCollapsed: "isCollapsedChange" }, ngImport: i0, template: "<div \n class=\"sds-navigation-external-link sds-navigation-item-container\"\n [title]=\"isCollapsed() ? text : ''\"\n >\n <a\n class=\"w-100 sds-navigation-item-content pe-2 text-gray-800 sds-fs-93\"\n [attr.href]=\"link || null\"\n [attr.target]=\"tabName || null\"\n [attr.rel]=\"tabName === '_blank' ? 'noopener noreferrer' : null\"\n >\n <div class=\"d-flex align-items-center justify-content-center position-relative\">\n <div class=\"sds-navigation-icon\" >\n <ng-content select=\"[navigationIcon]\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!isCollapsed()\">\n \n <div class=\"sds-navigation-text\">\n <span>{{ text }}</span>\n </div>\n\n <div \n class=\"sds-navigation-external-link-info-container\">\n <fa-icon \n class=\"sds-navigation-external-link-info-icon\"\n *ngIf=\"showExternalLinkIcon\"\n\n [icon]=\"externalLinkIcon\"\n [size]=\"'xs'\"\n [title]=\"externalLinkHint\"\n >\n </fa-icon>\n </div> \n </ng-container>\n \n <ng-content></ng-content>\n\n </div>\n </a>\n</div>", styles: [".sds-navigation-external-link:hover{background-color:#eff1f3;border-left-color:#eff1f3}.sds-navigation-external-link{border-radius:.266rem;padding:0!important;border-left:none!important}.sds-navigation-external-link a{padding-top:.5rem!important;padding-bottom:.5rem!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }] }); }
|
|
389
381
|
}
|
|
390
382
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdsNavigationExternalLinkComponent, decorators: [{
|
|
391
383
|
type: Component,
|
|
392
|
-
args: [{ selector: 'sds-navigation-external-link', standalone: true, imports: [NgIf, FaIconComponent], template: "<div \n class=\"sds-navigation-external-link sds-navigation-item-container\"\n [title]=\"isCollapsed() ? text : ''\"\n >\n <a
|
|
393
|
-
}],
|
|
384
|
+
args: [{ selector: 'sds-navigation-external-link', standalone: true, imports: [NgIf, FaIconComponent], template: "<div \n class=\"sds-navigation-external-link sds-navigation-item-container\"\n [title]=\"isCollapsed() ? text : ''\"\n >\n <a\n class=\"w-100 sds-navigation-item-content pe-2 text-gray-800 sds-fs-93\"\n [attr.href]=\"link || null\"\n [attr.target]=\"tabName || null\"\n [attr.rel]=\"tabName === '_blank' ? 'noopener noreferrer' : null\"\n >\n <div class=\"d-flex align-items-center justify-content-center position-relative\">\n <div class=\"sds-navigation-icon\" >\n <ng-content select=\"[navigationIcon]\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!isCollapsed()\">\n \n <div class=\"sds-navigation-text\">\n <span>{{ text }}</span>\n </div>\n\n <div \n class=\"sds-navigation-external-link-info-container\">\n <fa-icon \n class=\"sds-navigation-external-link-info-icon\"\n *ngIf=\"showExternalLinkIcon\"\n\n [icon]=\"externalLinkIcon\"\n [size]=\"'xs'\"\n [title]=\"externalLinkHint\"\n >\n </fa-icon>\n </div> \n </ng-container>\n \n <ng-content></ng-content>\n\n </div>\n </a>\n</div>", styles: [".sds-navigation-external-link:hover{background-color:#eff1f3;border-left-color:#eff1f3}.sds-navigation-external-link{border-radius:.266rem;padding:0!important;border-left:none!important}.sds-navigation-external-link a{padding-top:.5rem!important;padding-bottom:.5rem!important}\n"] }]
|
|
385
|
+
}], propDecorators: { link: [{
|
|
394
386
|
type: Input
|
|
395
387
|
}], text: [{
|
|
396
388
|
type: Input
|
|
@@ -662,7 +654,6 @@ class SdsProductHomeComponent {
|
|
|
662
654
|
this.headerClick = new EventEmitter();
|
|
663
655
|
this.ICON_CLOSE = faArrowLeftFromLine;
|
|
664
656
|
this.ICON_OPEN = faArrowRightFromLine;
|
|
665
|
-
this.ICON_SIDEBAR = faArrowLeftFromLine; //faSidebar;
|
|
666
657
|
this.isCollapsed = model(false);
|
|
667
658
|
this.sideBarInstanceName = input('');
|
|
668
659
|
}
|
|
@@ -679,7 +670,7 @@ class SdsProductHomeComponent {
|
|
|
679
670
|
this.isCollapsed.set(!this.isCollapsed());
|
|
680
671
|
}
|
|
681
672
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdsProductHomeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
682
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SdsProductHomeComponent, isStandalone: true, selector: "sds-product-home", inputs: { logoUrl: { classPropertyName: "logoUrl", publicName: "logoUrl", isSignal: false, isRequired: false, transformFunction: null }, logoAltText: { classPropertyName: "logoAltText", publicName: "logoAltText", isSignal: false, isRequired: false, transformFunction: null }, moduleTitle: { classPropertyName: "moduleTitle", publicName: "moduleTitle", isSignal: false, isRequired: false, transformFunction: null }, showAppSwitcher: { classPropertyName: "showAppSwitcher", publicName: "showAppSwitcher", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherProductCode: { classPropertyName: "appSwitcherProductCode", publicName: "appSwitcherProductCode", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherUserProductCodes: { classPropertyName: "appSwitcherUserProductCodes", publicName: "appSwitcherUserProductCodes", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherTenantProducts: { classPropertyName: "appSwitcherTenantProducts", publicName: "appSwitcherTenantProducts", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherSwitchText: { classPropertyName: "appSwitcherSwitchText", publicName: "appSwitcherSwitchText", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherDiscoverText: { classPropertyName: "appSwitcherDiscoverText", publicName: "appSwitcherDiscoverText", isSignal: false, isRequired: false, transformFunction: null }, textOpen: { classPropertyName: "textOpen", publicName: "textOpen", isSignal: true, isRequired: false, transformFunction: null }, textClose: { classPropertyName: "textClose", publicName: "textClose", isSignal: true, isRequired: false, transformFunction: null }, allowHeaderClick: { classPropertyName: "allowHeaderClick", publicName: "allowHeaderClick", isSignal: false, isRequired: false, transformFunction: null }, isCollapsed: { classPropertyName: "isCollapsed", publicName: "isCollapsed", isSignal: true, isRequired: false, transformFunction: null }, sideBarInstanceName: { classPropertyName: "sideBarInstanceName", publicName: "sideBarInstanceName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { productSwitched: "productSwitched", headerClick: "headerClick", isCollapsed: "isCollapsedChange" }, ngImport: i0, template: "<div \n class=\"product-header pb-2 mb-2 align-items-start gap-2\"\n >\n @if(!isCollapsed()) {\n <sds-app-switcher\n *ngIf=\"showAppSwitcher\"\n class=\"app-switcher text-gray-800 sds-fs-93 sds-hoverable sds-rounded-2 p-1 d-flex align-items-center justify-content-center\"\n [productCode]=\"appSwitcherProductCode\"\n [userProductCodes]=\"appSwitcherUserProductCodes\"\n [tenantProducts]=\"appSwitcherTenantProducts\"\n [switchText]=\"appSwitcherSwitchText\"\n [discoverText]=\"appSwitcherDiscoverText\"\n (productClick)=\"onProductClick($event)\"\n >\n </sds-app-switcher>\n \n <div \n class=\"sds-flex-grow-shrink product-title\"\n (click)=\"onHeaderClick()\"\n [class.sds-cursor-pointer]=\"allowHeaderClick\"\n [title]=\"moduleTitle && isCollapsed() ? moduleTitle : ''\"\n >\n <div \n class=\"product-logo-container\"\n [class.collapsed]=\"isCollapsed()\"\n >\n <img\n class=\"product-logo\"\n [src]=\"logoUrl\" \n [alt]=\"logoAltText\"\n > \n </div>\n\n @if(moduleTitle && !isCollapsed()) {\n <h6 class=\"mt-2\">\n {{moduleTitle}}\n </h6>\n }\n </div>\n }\n\n <button\n type=\"button\"\n class=\"\n toggle-collapsed-button \n text-gray-800 sds-fs-93 \n sds-hoverable sds-rounded-2 \n p-1 ml-2\n d-flex align-items-center justify-content-center\n sds-cursor-pointer\n \" \n (click)=\"toggleState()\" \n [attr.aria-label]=\"isCollapsed() ? textOpen() : textClose()\"\n [title]=\"isCollapsed() ? textOpen() : textClose()\" \n >\n <fa-icon \n
|
|
673
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SdsProductHomeComponent, isStandalone: true, selector: "sds-product-home", inputs: { logoUrl: { classPropertyName: "logoUrl", publicName: "logoUrl", isSignal: false, isRequired: false, transformFunction: null }, logoAltText: { classPropertyName: "logoAltText", publicName: "logoAltText", isSignal: false, isRequired: false, transformFunction: null }, moduleTitle: { classPropertyName: "moduleTitle", publicName: "moduleTitle", isSignal: false, isRequired: false, transformFunction: null }, showAppSwitcher: { classPropertyName: "showAppSwitcher", publicName: "showAppSwitcher", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherProductCode: { classPropertyName: "appSwitcherProductCode", publicName: "appSwitcherProductCode", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherUserProductCodes: { classPropertyName: "appSwitcherUserProductCodes", publicName: "appSwitcherUserProductCodes", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherTenantProducts: { classPropertyName: "appSwitcherTenantProducts", publicName: "appSwitcherTenantProducts", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherSwitchText: { classPropertyName: "appSwitcherSwitchText", publicName: "appSwitcherSwitchText", isSignal: false, isRequired: false, transformFunction: null }, appSwitcherDiscoverText: { classPropertyName: "appSwitcherDiscoverText", publicName: "appSwitcherDiscoverText", isSignal: false, isRequired: false, transformFunction: null }, textOpen: { classPropertyName: "textOpen", publicName: "textOpen", isSignal: true, isRequired: false, transformFunction: null }, textClose: { classPropertyName: "textClose", publicName: "textClose", isSignal: true, isRequired: false, transformFunction: null }, allowHeaderClick: { classPropertyName: "allowHeaderClick", publicName: "allowHeaderClick", isSignal: false, isRequired: false, transformFunction: null }, isCollapsed: { classPropertyName: "isCollapsed", publicName: "isCollapsed", isSignal: true, isRequired: false, transformFunction: null }, sideBarInstanceName: { classPropertyName: "sideBarInstanceName", publicName: "sideBarInstanceName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { productSwitched: "productSwitched", headerClick: "headerClick", isCollapsed: "isCollapsedChange" }, ngImport: i0, template: "<div \n class=\"product-header pb-2 mb-2 align-items-start gap-2\"\n >\n @if(!isCollapsed()) {\n <sds-app-switcher\n *ngIf=\"showAppSwitcher\"\n class=\"app-switcher text-gray-800 sds-fs-93 sds-hoverable sds-rounded-2 p-1 d-flex align-items-center justify-content-center\"\n [productCode]=\"appSwitcherProductCode\"\n [userProductCodes]=\"appSwitcherUserProductCodes\"\n [tenantProducts]=\"appSwitcherTenantProducts\"\n [switchText]=\"appSwitcherSwitchText\"\n [discoverText]=\"appSwitcherDiscoverText\"\n (productClick)=\"onProductClick($event)\"\n >\n </sds-app-switcher>\n \n <div \n class=\"sds-flex-grow-shrink product-title\"\n (click)=\"onHeaderClick()\"\n [class.sds-cursor-pointer]=\"allowHeaderClick\"\n [title]=\"moduleTitle && isCollapsed() ? moduleTitle : ''\"\n >\n <div \n class=\"product-logo-container\"\n [class.collapsed]=\"isCollapsed()\"\n >\n <img\n class=\"product-logo\"\n [src]=\"logoUrl\" \n [alt]=\"logoAltText\"\n > \n </div>\n\n @if(moduleTitle && !isCollapsed()) {\n <h6 class=\"mt-2\">\n {{moduleTitle}}\n </h6>\n }\n </div>\n }\n\n <button\n type=\"button\"\n class=\"\n toggle-collapsed-button \n text-gray-800 sds-fs-93 \n sds-hoverable sds-rounded-2 \n p-1 ml-2\n d-flex align-items-center justify-content-center\n sds-cursor-pointer\n \" \n (click)=\"toggleState()\" \n [attr.aria-label]=\"isCollapsed() ? textOpen() : textClose()\"\n [title]=\"isCollapsed() ? textOpen() : textClose()\" \n >\n <fa-icon \n [icon]=\"isCollapsed() ? ICON_OPEN : ICON_CLOSE\" \n [fixedWidth]=\"true\"\n >\n </fa-icon>\n </button>\n \n</div>\n", styles: [".product-header{padding-left:.75rem!important}.product-header .app-switcher{height:2rem;width:2rem}.product-header .product-title{margin-top:.15rem}.product-header .product-logo-container{height:calc(1.5rem + 2px)}.product-header .product-logo-container.collapsed{width:calc(1.5rem + 2px);overflow-x:hidden}.product-header .product-logo{height:1.5rem}.product-header h6{font-size:.8rem}.product-header .toggle-collapsed-button{height:2rem;width:2rem;border:0;background:transparent;appearance:none}.product-header .toggle-collapsed-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}:host{width:100%}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1$1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "component", type: SdsAppSwitcherComponent, selector: "sds-app-switcher", inputs: ["productCode", "userProductCodes", "tenantProducts", "switchText", "discoverText", "ariaLabel"], outputs: ["productClick"] }] }); }
|
|
683
674
|
}
|
|
684
675
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdsProductHomeComponent, decorators: [{
|
|
685
676
|
type: Component,
|
|
@@ -687,7 +678,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
687
678
|
NgIf,
|
|
688
679
|
FontAwesomeModule,
|
|
689
680
|
SdsAppSwitcherComponent
|
|
690
|
-
], template: "<div \n class=\"product-header pb-2 mb-2 align-items-start gap-2\"\n >\n @if(!isCollapsed()) {\n <sds-app-switcher\n *ngIf=\"showAppSwitcher\"\n class=\"app-switcher text-gray-800 sds-fs-93 sds-hoverable sds-rounded-2 p-1 d-flex align-items-center justify-content-center\"\n [productCode]=\"appSwitcherProductCode\"\n [userProductCodes]=\"appSwitcherUserProductCodes\"\n [tenantProducts]=\"appSwitcherTenantProducts\"\n [switchText]=\"appSwitcherSwitchText\"\n [discoverText]=\"appSwitcherDiscoverText\"\n (productClick)=\"onProductClick($event)\"\n >\n </sds-app-switcher>\n \n <div \n class=\"sds-flex-grow-shrink product-title\"\n (click)=\"onHeaderClick()\"\n [class.sds-cursor-pointer]=\"allowHeaderClick\"\n [title]=\"moduleTitle && isCollapsed() ? moduleTitle : ''\"\n >\n <div \n class=\"product-logo-container\"\n [class.collapsed]=\"isCollapsed()\"\n >\n <img\n class=\"product-logo\"\n [src]=\"logoUrl\" \n [alt]=\"logoAltText\"\n > \n </div>\n\n @if(moduleTitle && !isCollapsed()) {\n <h6 class=\"mt-2\">\n {{moduleTitle}}\n </h6>\n }\n </div>\n }\n\n <button\n type=\"button\"\n class=\"\n toggle-collapsed-button \n text-gray-800 sds-fs-93 \n sds-hoverable sds-rounded-2 \n p-1 ml-2\n d-flex align-items-center justify-content-center\n sds-cursor-pointer\n \" \n (click)=\"toggleState()\" \n [attr.aria-label]=\"isCollapsed() ? textOpen() : textClose()\"\n [title]=\"isCollapsed() ? textOpen() : textClose()\" \n >\n <fa-icon \n
|
|
681
|
+
], template: "<div \n class=\"product-header pb-2 mb-2 align-items-start gap-2\"\n >\n @if(!isCollapsed()) {\n <sds-app-switcher\n *ngIf=\"showAppSwitcher\"\n class=\"app-switcher text-gray-800 sds-fs-93 sds-hoverable sds-rounded-2 p-1 d-flex align-items-center justify-content-center\"\n [productCode]=\"appSwitcherProductCode\"\n [userProductCodes]=\"appSwitcherUserProductCodes\"\n [tenantProducts]=\"appSwitcherTenantProducts\"\n [switchText]=\"appSwitcherSwitchText\"\n [discoverText]=\"appSwitcherDiscoverText\"\n (productClick)=\"onProductClick($event)\"\n >\n </sds-app-switcher>\n \n <div \n class=\"sds-flex-grow-shrink product-title\"\n (click)=\"onHeaderClick()\"\n [class.sds-cursor-pointer]=\"allowHeaderClick\"\n [title]=\"moduleTitle && isCollapsed() ? moduleTitle : ''\"\n >\n <div \n class=\"product-logo-container\"\n [class.collapsed]=\"isCollapsed()\"\n >\n <img\n class=\"product-logo\"\n [src]=\"logoUrl\" \n [alt]=\"logoAltText\"\n > \n </div>\n\n @if(moduleTitle && !isCollapsed()) {\n <h6 class=\"mt-2\">\n {{moduleTitle}}\n </h6>\n }\n </div>\n }\n\n <button\n type=\"button\"\n class=\"\n toggle-collapsed-button \n text-gray-800 sds-fs-93 \n sds-hoverable sds-rounded-2 \n p-1 ml-2\n d-flex align-items-center justify-content-center\n sds-cursor-pointer\n \" \n (click)=\"toggleState()\" \n [attr.aria-label]=\"isCollapsed() ? textOpen() : textClose()\"\n [title]=\"isCollapsed() ? textOpen() : textClose()\" \n >\n <fa-icon \n [icon]=\"isCollapsed() ? ICON_OPEN : ICON_CLOSE\" \n [fixedWidth]=\"true\"\n >\n </fa-icon>\n </button>\n \n</div>\n", styles: [".product-header{padding-left:.75rem!important}.product-header .app-switcher{height:2rem;width:2rem}.product-header .product-title{margin-top:.15rem}.product-header .product-logo-container{height:calc(1.5rem + 2px)}.product-header .product-logo-container.collapsed{width:calc(1.5rem + 2px);overflow-x:hidden}.product-header .product-logo{height:1.5rem}.product-header h6{font-size:.8rem}.product-header .toggle-collapsed-button{height:2rem;width:2rem;border:0;background:transparent;appearance:none}.product-header .toggle-collapsed-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}:host{width:100%}\n"] }]
|
|
691
682
|
}], ctorParameters: () => [], propDecorators: { logoUrl: [{
|
|
692
683
|
type: Input
|
|
693
684
|
}], logoAltText: [{
|