@ks-digital/designsystem-angular 0.0.1-alpha.5 → 0.0.1-alpha.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/README.md +23 -11
  2. package/__internals/README.md +3 -0
  3. package/alert/README.md +3 -0
  4. package/breadcrumbs/README.md +3 -0
  5. package/button/README.md +3 -0
  6. package/card/README.md +3 -0
  7. package/details/README.md +3 -0
  8. package/error-summary/README.md +3 -0
  9. package/fesm2022/ks-digital-designsystem-angular-__internals.mjs +82 -0
  10. package/fesm2022/ks-digital-designsystem-angular-__internals.mjs.map +1 -0
  11. package/fesm2022/ks-digital-designsystem-angular-alert.mjs +34 -0
  12. package/fesm2022/ks-digital-designsystem-angular-alert.mjs.map +1 -0
  13. package/fesm2022/ks-digital-designsystem-angular-breadcrumbs.mjs +59 -0
  14. package/fesm2022/ks-digital-designsystem-angular-breadcrumbs.mjs.map +1 -0
  15. package/fesm2022/ks-digital-designsystem-angular-button.mjs +72 -0
  16. package/fesm2022/ks-digital-designsystem-angular-button.mjs.map +1 -0
  17. package/fesm2022/ks-digital-designsystem-angular-card.mjs +86 -0
  18. package/fesm2022/ks-digital-designsystem-angular-card.mjs.map +1 -0
  19. package/fesm2022/ks-digital-designsystem-angular-chip.mjs +43 -0
  20. package/fesm2022/ks-digital-designsystem-angular-chip.mjs.map +1 -0
  21. package/fesm2022/ks-digital-designsystem-angular-details.mjs +64 -0
  22. package/fesm2022/ks-digital-designsystem-angular-details.mjs.map +1 -0
  23. package/fesm2022/ks-digital-designsystem-angular-error-summary.mjs +49 -0
  24. package/fesm2022/ks-digital-designsystem-angular-error-summary.mjs.map +1 -0
  25. package/fesm2022/ks-digital-designsystem-angular-forms.mjs +209 -0
  26. package/fesm2022/ks-digital-designsystem-angular-forms.mjs.map +1 -0
  27. package/fesm2022/ks-digital-designsystem-angular-heading.mjs +40 -0
  28. package/fesm2022/ks-digital-designsystem-angular-heading.mjs.map +1 -0
  29. package/fesm2022/ks-digital-designsystem-angular-link.mjs +31 -0
  30. package/fesm2022/ks-digital-designsystem-angular-link.mjs.map +1 -0
  31. package/fesm2022/ks-digital-designsystem-angular-pagination.mjs +143 -0
  32. package/fesm2022/ks-digital-designsystem-angular-pagination.mjs.map +1 -0
  33. package/fesm2022/ks-digital-designsystem-angular-paragraph.mjs +25 -0
  34. package/fesm2022/ks-digital-designsystem-angular-paragraph.mjs.map +1 -0
  35. package/fesm2022/ks-digital-designsystem-angular-popover.mjs +46 -0
  36. package/fesm2022/ks-digital-designsystem-angular-popover.mjs.map +1 -0
  37. package/fesm2022/ks-digital-designsystem-angular-search.mjs +183 -0
  38. package/fesm2022/ks-digital-designsystem-angular-search.mjs.map +1 -0
  39. package/fesm2022/ks-digital-designsystem-angular-spinner.mjs +87 -0
  40. package/fesm2022/ks-digital-designsystem-angular-spinner.mjs.map +1 -0
  41. package/fesm2022/ks-digital-designsystem-angular-suggestion.mjs +281 -0
  42. package/fesm2022/ks-digital-designsystem-angular-suggestion.mjs.map +1 -0
  43. package/fesm2022/ks-digital-designsystem-angular-table.mjs +105 -0
  44. package/fesm2022/ks-digital-designsystem-angular-table.mjs.map +1 -0
  45. package/fesm2022/ks-digital-designsystem-angular-tabs.mjs +130 -0
  46. package/fesm2022/ks-digital-designsystem-angular-tabs.mjs.map +1 -0
  47. package/fesm2022/ks-digital-designsystem-angular-tag.mjs +38 -0
  48. package/fesm2022/ks-digital-designsystem-angular-tag.mjs.map +1 -0
  49. package/fesm2022/ks-digital-designsystem-angular-validation-message.mjs +25 -0
  50. package/fesm2022/ks-digital-designsystem-angular-validation-message.mjs.map +1 -0
  51. package/fesm2022/ks-digital-designsystem-angular.mjs +7 -0
  52. package/fesm2022/ks-digital-designsystem-angular.mjs.map +1 -0
  53. package/forms/README.md +3 -0
  54. package/heading/README.md +3 -0
  55. package/link/README.md +3 -0
  56. package/package.json +101 -31
  57. package/pagination/README.md +3 -0
  58. package/paragraph/README.md +3 -0
  59. package/popover/README.md +3 -0
  60. package/search/README.md +3 -0
  61. package/spinner/README.md +3 -0
  62. package/suggestion/README.md +3 -0
  63. package/table/README.md +3 -0
  64. package/tabs/README.md +3 -0
  65. package/tag/README.md +3 -0
  66. package/types/ks-digital-designsystem-angular-__internals.d.ts +51 -0
  67. package/types/ks-digital-designsystem-angular-alert.d.ts +12 -0
  68. package/types/ks-digital-designsystem-angular-breadcrumbs.d.ts +13 -0
  69. package/types/ks-digital-designsystem-angular-button.d.ts +30 -0
  70. package/types/ks-digital-designsystem-angular-card.d.ts +24 -0
  71. package/types/ks-digital-designsystem-angular-chip.d.ts +15 -0
  72. package/types/ks-digital-designsystem-angular-details.d.ts +20 -0
  73. package/types/ks-digital-designsystem-angular-error-summary.d.ts +14 -0
  74. package/types/ks-digital-designsystem-angular-forms.d.ts +71 -0
  75. package/types/ks-digital-designsystem-angular-heading.d.ts +19 -0
  76. package/types/ks-digital-designsystem-angular-link.d.ts +9 -0
  77. package/types/ks-digital-designsystem-angular-pagination.d.ts +58 -0
  78. package/types/ks-digital-designsystem-angular-paragraph.d.ts +8 -0
  79. package/types/ks-digital-designsystem-angular-popover.d.ts +13 -0
  80. package/types/ks-digital-designsystem-angular-search.d.ts +84 -0
  81. package/types/ks-digital-designsystem-angular-spinner.d.ts +22 -0
  82. package/types/ks-digital-designsystem-angular-suggestion.d.ts +97 -0
  83. package/types/ks-digital-designsystem-angular-table.d.ts +43 -0
  84. package/types/ks-digital-designsystem-angular-tabs.d.ts +37 -0
  85. package/types/ks-digital-designsystem-angular-tag.d.ts +15 -0
  86. package/types/ks-digital-designsystem-angular-validation-message.d.ts +8 -0
  87. package/types/ks-digital-designsystem-angular.d.ts +2 -0
  88. package/validation-message/README.md +3 -0
  89. package/dist/README.md +0 -43
  90. package/dist/components/checkbox/checkbox.d.ts +0 -4
  91. package/dist/components/checkbox/checkbox.d.ts.map +0 -1
  92. package/dist/components/checkbox/index.d.ts +0 -2
  93. package/dist/components/checkbox/index.d.ts.map +0 -1
  94. package/dist/components/colors.d.ts +0 -27
  95. package/dist/components/colors.d.ts.map +0 -1
  96. package/dist/components/common-inputs.d.ts +0 -15
  97. package/dist/components/common-inputs.d.ts.map +0 -1
  98. package/dist/components/field/field.d.ts +0 -15
  99. package/dist/components/field/field.d.ts.map +0 -1
  100. package/dist/components/field/index.d.ts +0 -2
  101. package/dist/components/field/index.d.ts.map +0 -1
  102. package/dist/components/fieldset/fieldset-description.d.ts +0 -3
  103. package/dist/components/fieldset/fieldset-description.d.ts.map +0 -1
  104. package/dist/components/fieldset/fieldset-legend.d.ts +0 -3
  105. package/dist/components/fieldset/fieldset-legend.d.ts.map +0 -1
  106. package/dist/components/fieldset/fieldset.d.ts +0 -3
  107. package/dist/components/fieldset/fieldset.d.ts.map +0 -1
  108. package/dist/components/fieldset/index.d.ts +0 -4
  109. package/dist/components/fieldset/index.d.ts.map +0 -1
  110. package/dist/components/label/index.d.ts +0 -2
  111. package/dist/components/label/index.d.ts.map +0 -1
  112. package/dist/components/label/label.d.ts +0 -4
  113. package/dist/components/label/label.d.ts.map +0 -1
  114. package/dist/components/paragraph/index.d.ts +0 -2
  115. package/dist/components/paragraph/index.d.ts.map +0 -1
  116. package/dist/components/paragraph/paragraph.d.ts +0 -3
  117. package/dist/components/paragraph/paragraph.d.ts.map +0 -1
  118. package/dist/components/validation-message/index.d.ts +0 -2
  119. package/dist/components/validation-message/index.d.ts.map +0 -1
  120. package/dist/components/validation-message/validation-message.d.ts +0 -3
  121. package/dist/components/validation-message/validation-message.d.ts.map +0 -1
  122. package/dist/index.d.ts +0 -7
  123. package/dist/index.d.ts.map +0 -1
  124. package/dist/index.js +0 -1
  125. package/dist/package.json +0 -48
  126. package/dist/utils/random-id.d.ts +0 -2
  127. package/dist/utils/random-id.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-details.mjs","sources":["../../../../packages/angular/details/src/details.ts","../../../../packages/angular/details/src/details-content.ts","../../../../packages/angular/details/src/details-summary.ts","../../../../packages/angular/details/src/ks-digital-designsystem-angular-details.ts"],"sourcesContent":["import { Directive, input } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'details[ksd-details]',\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-details',\n '[attr.data-variant]': 'dataVariant()',\n },\n})\nexport class Details {\n readonly dataVariant = input<'default' | 'tinted'>('default', {\n alias: 'data-variant',\n })\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'ksd-details-content',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n})\nexport class DetailsContent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'ksd-details-summary',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n})\nexport class DetailsSummary {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, contentChild, inject, ElementRef, effect, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
4
+ import { randomId, HostSize } from '@ks-digital/designsystem-angular/__internals';
5
+ import { Heading } from '@ks-digital/designsystem-angular/heading';
6
+
7
+ class ErrorSummary {
8
+ id = signal(randomId(), ...(ngDevMode ? [{ debugName: "id" }] : []));
9
+ heading = contentChild(Heading, ...(ngDevMode ? [{ debugName: "heading" }] : []));
10
+ el = inject(ElementRef);
11
+ constructor() {
12
+ effect(() => {
13
+ if (this.heading()) {
14
+ this.heading()?.setId(this.id());
15
+ }
16
+ });
17
+ }
18
+ focus() {
19
+ this.el.nativeElement.focus();
20
+ }
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ErrorSummary, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.6", type: ErrorSummary, isStandalone: true, selector: "[ksd-error-summary]", host: { attributes: { "tabindex": "-1" }, properties: { "attr.aria-labelledby": "id()" }, classAttribute: "ds-error-summary" }, queries: [{ propertyName: "heading", first: true, predicate: Heading, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }], ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ErrorSummary, decorators: [{
25
+ type: Component,
26
+ args: [{
27
+ selector: '[ksd-error-summary]',
28
+ changeDetection: ChangeDetectionStrategy.OnPush,
29
+ template: ` <ng-content /> `,
30
+ hostDirectives: [
31
+ {
32
+ directive: HostSize,
33
+ inputs: ['data-size'],
34
+ },
35
+ ],
36
+ host: {
37
+ class: 'ds-error-summary',
38
+ tabindex: '-1',
39
+ '[attr.aria-labelledby]': 'id()',
40
+ },
41
+ }]
42
+ }], ctorParameters: () => [], propDecorators: { heading: [{ type: i0.ContentChild, args: [i0.forwardRef(() => Heading), { isSignal: true }] }] } });
43
+
44
+ /**
45
+ * Generated bundle index. Do not edit.
46
+ */
47
+
48
+ export { ErrorSummary };
49
+ //# sourceMappingURL=ks-digital-designsystem-angular-error-summary.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-error-summary.mjs","sources":["../../../../packages/angular/error-summary/src/error-summary.ts","../../../../packages/angular/error-summary/src/ks-digital-designsystem-angular-error-summary.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n effect,\n ElementRef,\n inject,\n signal,\n} from '@angular/core'\nimport {\n HostSize,\n randomId,\n} from '@ks-digital/designsystem-angular/__internals'\nimport { Heading } from '@ks-digital/designsystem-angular/heading'\n\n@Component({\n selector: '[ksd-error-summary]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: ` <ng-content /> `,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n ],\n host: {\n class: 'ds-error-summary',\n tabindex: '-1',\n '[attr.aria-labelledby]': 'id()',\n },\n})\nexport class ErrorSummary {\n protected id = signal(randomId())\n private heading = contentChild(Heading)\n private el = inject(ElementRef)\n\n constructor() {\n effect(() => {\n if (this.heading()) {\n this.heading()?.setId(this.id())\n }\n })\n }\n\n focus() {\n this.el.nativeElement.focus()\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MA+Ba,YAAY,CAAA;AACb,IAAA,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,8CAAC;AACzB,IAAA,OAAO,GAAG,YAAY,CAAC,OAAO,mDAAC;AAC/B,IAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;AAE/B,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBAClB,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAClC;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE;IAC/B;uGAfW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAEQ,OAAO,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAf5B,CAAA,gBAAA,CAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAajB,YAAY,EAAA,UAAA,EAAA,CAAA;kBAhBxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;oBAC/B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,CAAA,gBAAA,CAAkB;AAC5B,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,kBAAkB;AACzB,wBAAA,QAAQ,EAAE,IAAI;AACd,wBAAA,wBAAwB,EAAE,MAAM;AACjC,qBAAA;AACF,iBAAA;sHAGgC,OAAO,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;ACjCxC;;AAEG;;;;"}
@@ -0,0 +1,209 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component, signal, booleanAttribute, Directive } from '@angular/core';
3
+ import '@digdir/designsystemet-web';
4
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
5
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
6
+ import * as i1$1 from '@ks-digital/designsystem-angular/validation-message';
7
+ import { ValidationMessage } from '@ks-digital/designsystem-angular/validation-message';
8
+
9
+ /**
10
+ * Use the Field component to connect inputs and labels
11
+ */
12
+ class Field {
13
+ /**
14
+ * Position of toggle inputs (radio, checkbox, switch) in field
15
+ * @default start
16
+ */
17
+ position = input('start', ...(ngDevMode ? [{ debugName: "position" }] : []));
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Field, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: Field, isStandalone: true, selector: "ksd-field", inputs: { position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: `
20
+ <ds-field class="ds-field" [attr.data-position]="position()">
21
+ <ng-content />
22
+ </ds-field>
23
+ `, isInline: true, styles: [":host{display:grid}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Field, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'ksd-field', changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
28
+ {
29
+ directive: HostSize,
30
+ inputs: ['data-size'],
31
+ },
32
+ {
33
+ directive: HostColor,
34
+ inputs: ['data-color'],
35
+ },
36
+ ], template: `
37
+ <ds-field class="ds-field" [attr.data-position]="position()">
38
+ <ng-content />
39
+ </ds-field>
40
+ `, schemas: [CUSTOM_ELEMENTS_SCHEMA], styles: [":host{display:grid}\n"] }]
41
+ }], propDecorators: { position: [{ type: i0.Input, args: [{ isSignal: true, alias: "position", required: false }] }] } });
42
+
43
+ class FieldDescription {
44
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldDescription, deps: [], target: i0.ɵɵFactoryTarget.Component });
45
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: FieldDescription, isStandalone: true, selector: "[ksd-field-description]", host: { attributes: { "data-field": "description" } }, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldDescription, decorators: [{
48
+ type: Component,
49
+ args: [{
50
+ selector: '[ksd-field-description]',
51
+ changeDetection: ChangeDetectionStrategy.OnPush,
52
+ host: {
53
+ 'data-field': 'description',
54
+ },
55
+ template: `<ng-content />`,
56
+ }]
57
+ }] });
58
+
59
+ class FieldError {
60
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldError, deps: [], target: i0.ɵɵFactoryTarget.Component });
61
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: FieldError, isStandalone: true, selector: "[ksd-error]", hostDirectives: [{ directive: i1$1.ValidationMessage }], ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldError, decorators: [{
64
+ type: Component,
65
+ args: [{
66
+ selector: '[ksd-error]',
67
+ changeDetection: ChangeDetectionStrategy.OnPush,
68
+ template: `<ng-content />`,
69
+ hostDirectives: [
70
+ {
71
+ directive: ValidationMessage,
72
+ },
73
+ ],
74
+ }]
75
+ }] });
76
+
77
+ class Fieldset {
78
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Fieldset, deps: [], target: i0.ɵɵFactoryTarget.Component });
79
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: Fieldset, isStandalone: true, selector: "fieldset[ksd-fieldset]", host: { classAttribute: "ds-fieldset" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, styles: [":host>::ng-deep ksd-field+ksd-field{margin-block-start:var(--ds-size-4)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
80
+ }
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Fieldset, decorators: [{
82
+ type: Component,
83
+ args: [{ selector: 'fieldset[ksd-fieldset]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
84
+ class: 'ds-fieldset',
85
+ }, template: ` <ng-content /> `, schemas: [CUSTOM_ELEMENTS_SCHEMA], styles: [":host>::ng-deep ksd-field+ksd-field{margin-block-start:var(--ds-size-4)}\n"] }]
86
+ }] });
87
+
88
+ class FieldsetDescription {
89
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldsetDescription, deps: [], target: i0.ɵɵFactoryTarget.Component });
90
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: FieldsetDescription, isStandalone: true, selector: "p[ksd-fieldset-description]", ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
91
+ }
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldsetDescription, decorators: [{
93
+ type: Component,
94
+ args: [{
95
+ selector: 'p[ksd-fieldset-description]',
96
+ changeDetection: ChangeDetectionStrategy.OnPush,
97
+ template: `<ng-content />`,
98
+ host: {},
99
+ }]
100
+ }] });
101
+
102
+ class FieldsetLegend {
103
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldsetLegend, deps: [], target: i0.ɵɵFactoryTarget.Component });
104
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: FieldsetLegend, isStandalone: true, selector: "legend[ksd-fieldset-legend]", host: { classAttribute: "ds-label" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
105
+ }
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: FieldsetLegend, decorators: [{
107
+ type: Component,
108
+ args: [{
109
+ selector: 'legend[ksd-fieldset-legend]',
110
+ changeDetection: ChangeDetectionStrategy.OnPush,
111
+ host: {
112
+ class: 'ds-label',
113
+ },
114
+ template: ` <ng-content /> `,
115
+ }]
116
+ }] });
117
+
118
+ class Input {
119
+ /**
120
+ * The value of the input
121
+ */
122
+ value = signal('', ...(ngDevMode ? [{ debugName: "value" }] : []));
123
+ /**
124
+ * Whether the input is readonly
125
+ */
126
+ readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : {}), transform: booleanAttribute });
127
+ /**
128
+ * Disables element
129
+ */
130
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
131
+ /**
132
+ * Whether the element is invalid.
133
+ */
134
+ ariaInvalid = input(false, { ...(ngDevMode ? { debugName: "ariaInvalid" } : {}), transform: booleanAttribute,
135
+ alias: 'aria-invalid' });
136
+ onClick(event) {
137
+ if (this.readonly()) {
138
+ event.preventDefault();
139
+ }
140
+ }
141
+ onInput(event) {
142
+ const target = event.target;
143
+ const val = target?.value;
144
+ this.value.set(val ?? '');
145
+ }
146
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Input, deps: [], target: i0.ɵɵFactoryTarget.Directive });
147
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: Input, isStandalone: true, selector: "input[ksd-input], textarea[ksd-input], select[ksd-input]", inputs: { readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, ariaInvalid: { classPropertyName: "ariaInvalid", publicName: "aria-invalid", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "onClick($event)", "input": "onInput($event)" }, properties: { "attr.readonly": "readonly() ? true : null", "attr.disabled": "disabled() ? true : null", "attr.aria-invalid": "ariaInvalid() ? true : null" }, classAttribute: "ds-input" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0 });
148
+ }
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Input, decorators: [{
150
+ type: Directive,
151
+ args: [{
152
+ // eslint-disable-next-line @angular-eslint/directive-selector
153
+ selector: 'input[ksd-input], textarea[ksd-input], select[ksd-input]',
154
+ hostDirectives: [
155
+ {
156
+ directive: HostSize,
157
+ inputs: ['data-size'],
158
+ },
159
+ {
160
+ directive: HostColor,
161
+ inputs: ['data-color'],
162
+ },
163
+ ],
164
+ host: {
165
+ class: 'ds-input',
166
+ '[attr.readonly]': 'readonly() ? true : null',
167
+ '[attr.disabled]': 'disabled() ? true : null',
168
+ '[attr.aria-invalid]': 'ariaInvalid() ? true : null',
169
+ '(click)': 'onClick($event)',
170
+ '(input)': 'onInput($event)',
171
+ },
172
+ }]
173
+ }], propDecorators: { readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], ariaInvalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-invalid", required: false }] }] } });
174
+
175
+ class Label {
176
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Label, deps: [], target: i0.ɵɵFactoryTarget.Component });
177
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: Label, isStandalone: true, selector: "ksd-label", hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: `
178
+ <!-- eslint-disable @angular-eslint/template/label-has-associated-control -- Fieldobserver handles binding the label to the input -->
179
+ <label class="ds-label"><ng-content /></label>
180
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
181
+ }
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Label, decorators: [{
183
+ type: Component,
184
+ args: [{
185
+ selector: 'ksd-label',
186
+ changeDetection: ChangeDetectionStrategy.OnPush,
187
+ hostDirectives: [
188
+ {
189
+ directive: HostSize,
190
+ inputs: ['data-size'],
191
+ },
192
+ {
193
+ directive: HostColor,
194
+ inputs: ['data-color'],
195
+ },
196
+ ],
197
+ template: `
198
+ <!-- eslint-disable @angular-eslint/template/label-has-associated-control -- Fieldobserver handles binding the label to the input -->
199
+ <label class="ds-label"><ng-content /></label>
200
+ `,
201
+ }]
202
+ }] });
203
+
204
+ /**
205
+ * Generated bundle index. Do not edit.
206
+ */
207
+
208
+ export { Field, FieldDescription, FieldError, Fieldset, FieldsetDescription, FieldsetLegend, Input, Label };
209
+ //# sourceMappingURL=ks-digital-designsystem-angular-forms.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-forms.mjs","sources":["../../../../packages/angular/forms/src/field/field.ts","../../../../packages/angular/forms/src/field/field-description.ts","../../../../packages/angular/forms/src/field/field-error.ts","../../../../packages/angular/forms/src/fieldset/fieldset.ts","../../../../packages/angular/forms/src/fieldset/fieldset-description.ts","../../../../packages/angular/forms/src/fieldset/fieldset-legend.ts","../../../../packages/angular/forms/src/input/input.ts","../../../../packages/angular/forms/src/label/label.ts","../../../../packages/angular/forms/src/ks-digital-designsystem-angular-forms.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n input,\n} from '@angular/core'\nimport '@digdir/designsystemet-web'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n/**\n * Use the Field component to connect inputs and labels\n */\n@Component({\n selector: 'ksd-field',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n template: `\n <ds-field class=\"ds-field\" [attr.data-position]=\"position()\">\n <ng-content />\n </ds-field>\n `,\n styles: `\n :host {\n display: grid;\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class Field {\n /**\n * Position of toggle inputs (radio, checkbox, switch) in field\n * @default start\n */\n position = input<'start' | 'end'>('start')\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: '[ksd-field-description]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'data-field': 'description',\n },\n template: `<ng-content />`,\n})\nexport class FieldDescription {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\nimport { ValidationMessage } from '@ks-digital/designsystem-angular/validation-message'\n\n@Component({\n selector: '[ksd-error]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n hostDirectives: [\n {\n directive: ValidationMessage,\n },\n ],\n})\nexport class FieldError {}\n","import {\n ChangeDetectionStrategy,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n} from '@angular/core'\nimport '@digdir/designsystemet-web'\n\n@Component({\n selector: 'fieldset[ksd-fieldset]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ds-fieldset',\n },\n template: ` <ng-content /> `,\n styles: `\n :host > ::ng-deep ksd-field + ksd-field {\n margin-block-start: var(--ds-size-4);\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class Fieldset {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'p[ksd-fieldset-description]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n host: {},\n})\nexport class FieldsetDescription {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'legend[ksd-fieldset-legend]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ds-label',\n },\n template: ` <ng-content /> `,\n})\nexport class FieldsetLegend {}\n","import { booleanAttribute, Directive, input, signal } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'input[ksd-input], textarea[ksd-input], select[ksd-input]',\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-input',\n '[attr.readonly]': 'readonly() ? true : null',\n '[attr.disabled]': 'disabled() ? true : null',\n '[attr.aria-invalid]': 'ariaInvalid() ? true : null',\n '(click)': 'onClick($event)',\n '(input)': 'onInput($event)',\n },\n})\nexport class Input {\n /**\n * The value of the input\n */\n value = signal<string | undefined>('')\n\n /**\n * Whether the input is readonly\n */\n readonly readonly = input(false, { transform: booleanAttribute })\n\n /**\n * Disables element\n */\n readonly disabled = input(false, { transform: booleanAttribute })\n\n /**\n * Whether the element is invalid.\n */\n readonly ariaInvalid = input(false, {\n transform: booleanAttribute,\n alias: 'aria-invalid',\n })\n\n onClick(event: Event) {\n if (this.readonly()) {\n event.preventDefault()\n }\n }\n\n onInput(event: Event) {\n const target = event.target as\n | HTMLInputElement\n | HTMLTextAreaElement\n | HTMLSelectElement\n | null\n const val = target?.value\n this.value.set(val ?? '')\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Component({\n selector: 'ksd-label',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n template: `\n <!-- eslint-disable @angular-eslint/template/label-has-associated-control -- Fieldobserver handles binding the label to the input -->\n <label class=\"ds-label\"><ng-content /></label>\n `,\n})\nexport class Label {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAYA;;AAEG;MA0BU,KAAK,CAAA;AAChB;;;AAGG;AACH,IAAA,QAAQ,GAAG,KAAK,CAAkB,OAAO,oDAAC;uGAL/B,KAAK,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAL,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAK,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAZN;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAQU,KAAK,EAAA,UAAA,EAAA,CAAA;kBAzBjB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAAA,eAAA,EACJ,uBAAuB,CAAC,MAAM,EAAA,cAAA,EAC/B;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;qBACF,EAAA,QAAA,EACS;;;;GAIT,EAAA,OAAA,EAMQ,CAAC,sBAAsB,CAAC,EAAA,MAAA,EAAA,CAAA,uBAAA,CAAA,EAAA;;;MC5BtB,gBAAgB,CAAA;uGAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,0IAFjB,CAAA,cAAA,CAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAEf,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;oBACnC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACJ,wBAAA,YAAY,EAAE,aAAa;AAC5B,qBAAA;AACD,oBAAA,QAAQ,EAAE,CAAA,cAAA,CAAgB;AAC3B,iBAAA;;;MCIY,UAAU,CAAA;uGAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAV,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAU,gIAPX,CAAA,cAAA,CAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAOf,UAAU,EAAA,UAAA,EAAA,CAAA;kBAVtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;oBACvB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,CAAA,cAAA,CAAgB;AAC1B,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,iBAAiB;AAC7B,yBAAA;AACF,qBAAA;AACF,iBAAA;;;MCSY,QAAQ,CAAA;uGAAR,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAR,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,2HART,CAAA,gBAAA,CAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAQjB,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAdpB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,EAAA,eAAA,EACjB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACJ,wBAAA,KAAK,EAAE,aAAa;AACrB,qBAAA,EAAA,QAAA,EACS,CAAA,gBAAA,CAAkB,EAAA,OAAA,EAMnB,CAAC,sBAAsB,CAAC,EAAA,MAAA,EAAA,CAAA,4EAAA,CAAA,EAAA;;;MCXtB,mBAAmB,CAAA;uGAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,uFAHpB,CAAA,cAAA,CAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAGf,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,6BAA6B;oBACvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,CAAA,cAAA,CAAgB;AAC1B,oBAAA,IAAI,EAAE,EAAE;AACT,iBAAA;;;MCGY,cAAc,CAAA;uGAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,6HAFf,CAAA,gBAAA,CAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAEjB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAR1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,6BAA6B;oBACvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,UAAU;AAClB,qBAAA;AACD,oBAAA,QAAQ,EAAE,CAAA,gBAAA,CAAkB;AAC7B,iBAAA;;;MCmBY,KAAK,CAAA;AAChB;;AAEG;AACH,IAAA,KAAK,GAAG,MAAM,CAAqB,EAAE,iDAAC;AAEtC;;AAEG;IACM,QAAQ,GAAG,KAAK,CAAC,KAAK,qDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEjE;;AAEG;IACM,QAAQ,GAAG,KAAK,CAAC,KAAK,qDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEjE;;AAEG;AACM,IAAA,WAAW,GAAG,KAAK,CAAC,KAAK,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,aAAA,EAAA,GAAA,EAAA,CAAA,EAChC,SAAS,EAAE,gBAAgB;QAC3B,KAAK,EAAE,cAAc,EAAA,CACrB;AAEF,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YACnB,KAAK,CAAC,cAAc,EAAE;QACxB;IACF;AAEA,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAIb;AACR,QAAA,MAAM,GAAG,GAAG,MAAM,EAAE,KAAK;QACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IAC3B;uGAtCW,KAAK,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAL,KAAK,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0DAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,0BAAA,EAAA,eAAA,EAAA,0BAAA,EAAA,mBAAA,EAAA,6BAAA,EAAA,EAAA,cAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAL,KAAK,EAAA,UAAA,EAAA,CAAA;kBAtBjB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAET,oBAAA,QAAQ,EAAE,0DAA0D;AACpE,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,UAAU;AACjB,wBAAA,iBAAiB,EAAE,0BAA0B;AAC7C,wBAAA,iBAAiB,EAAE,0BAA0B;AAC7C,wBAAA,qBAAqB,EAAE,6BAA6B;AACpD,wBAAA,SAAS,EAAE,iBAAiB;AAC5B,wBAAA,SAAS,EAAE,iBAAiB;AAC7B,qBAAA;AACF,iBAAA;;;MCHY,KAAK,CAAA;uGAAL,KAAK,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAL,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAK,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EALN;;;AAGT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAEU,KAAK,EAAA,UAAA,EAAA,CAAA;kBAlBjB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;oBACrB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;AACF,qBAAA;AACD,oBAAA,QAAQ,EAAE;;;AAGT,EAAA,CAAA;AACF,iBAAA;;;ACvBD;;AAEG;;;;"}
@@ -0,0 +1,40 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, input, Directive } from '@angular/core';
3
+
4
+ class Heading {
5
+ id = signal(undefined, ...(ngDevMode ? [{ debugName: "id" }] : []));
6
+ /**
7
+ * Changes text sizing
8
+ * @default 'md'
9
+ */
10
+ dataSize = input(undefined, { ...(ngDevMode ? { debugName: "dataSize" } : {}), alias: 'data-size' });
11
+ /**
12
+ * Set the id of the heading
13
+ * @param id
14
+ */
15
+ setId(id) {
16
+ this.id.set(id);
17
+ }
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Heading, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: Heading, isStandalone: true, selector: "h1[ksd-heading], h2[ksd-heading], h3[ksd-heading], h4[ksd-heading], h5[ksd-heading], h6[ksd-heading]", inputs: { dataSize: { classPropertyName: "dataSize", publicName: "data-size", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-size": "dataSize() || null", "attr.id": "id() || null" }, classAttribute: "ds-heading" }, ngImport: i0 });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Heading, decorators: [{
22
+ type: Directive,
23
+ args: [{
24
+ selector:
25
+ // eslint-disable-next-line @angular-eslint/directive-selector
26
+ 'h1[ksd-heading], h2[ksd-heading], h3[ksd-heading], h4[ksd-heading], h5[ksd-heading], h6[ksd-heading]',
27
+ host: {
28
+ class: 'ds-heading',
29
+ '[attr.data-size]': 'dataSize() || null',
30
+ '[attr.id]': 'id() || null',
31
+ },
32
+ }]
33
+ }], propDecorators: { dataSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-size", required: false }] }] } });
34
+
35
+ /**
36
+ * Generated bundle index. Do not edit.
37
+ */
38
+
39
+ export { Heading };
40
+ //# sourceMappingURL=ks-digital-designsystem-angular-heading.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-heading.mjs","sources":["../../../../packages/angular/heading/src/heading.ts","../../../../packages/angular/heading/src/ks-digital-designsystem-angular-heading.ts"],"sourcesContent":["import { Directive, input, signal } from '@angular/core'\n\n@Directive({\n selector:\n // eslint-disable-next-line @angular-eslint/directive-selector\n 'h1[ksd-heading], h2[ksd-heading], h3[ksd-heading], h4[ksd-heading], h5[ksd-heading], h6[ksd-heading]',\n host: {\n class: 'ds-heading',\n '[attr.data-size]': 'dataSize() || null',\n '[attr.id]': 'id() || null',\n },\n})\nexport class Heading {\n public id = signal<string | undefined>(undefined)\n /**\n * Changes text sizing\n * @default 'md'\n */\n readonly dataSize = input<'2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'>(\n undefined,\n {\n alias: 'data-size',\n },\n )\n\n /**\n * Set the id of the heading\n * @param id\n */\n setId(id: string) {\n this.id.set(id)\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAYa,OAAO,CAAA;AACX,IAAA,EAAE,GAAG,MAAM,CAAqB,SAAS,8CAAC;AACjD;;;AAGG;IACM,QAAQ,GAAG,KAAK,CACvB,SAAS,qDAEP,KAAK,EAAE,WAAW,EAAA,CAErB;AAED;;;AAGG;AACH,IAAA,KAAK,CAAC,EAAU,EAAA;AACd,QAAA,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACjB;uGAnBW,OAAO,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAP,OAAO,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,oBAAA,EAAA,SAAA,EAAA,cAAA,EAAA,EAAA,cAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAP,OAAO,EAAA,UAAA,EAAA,CAAA;kBAVnB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,QAAQ;;oBAEN,sGAAsG;AACxG,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,YAAY;AACnB,wBAAA,kBAAkB,EAAE,oBAAoB;AACxC,wBAAA,WAAW,EAAE,cAAc;AAC5B,qBAAA;AACF,iBAAA;;;ACXD;;AAEG;;;;"}
@@ -0,0 +1,31 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
4
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
5
+
6
+ class Link {
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Link, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: Link, isStandalone: true, selector: "a[ksd-link]", host: { classAttribute: "ds-link" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: ` <ng-content /> `, isInline: true, styles: [":host:has(>span)>:is(ng-icon){margin-inline:var(--ds-size-1);margin-inline-start:0}:host ng-icon{display:inline-flex;vertical-align:middle;font-size:var(--ng-icon-size, 1.3em)}:host svg{width:1em;height:1em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Link, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'a[ksd-link]', changeDetection: ChangeDetectionStrategy.OnPush, template: ` <ng-content /> `, hostDirectives: [
13
+ {
14
+ directive: HostSize,
15
+ inputs: ['data-size'],
16
+ },
17
+ {
18
+ directive: HostColor,
19
+ inputs: ['data-color'],
20
+ },
21
+ ], host: {
22
+ class: 'ds-link',
23
+ }, styles: [":host:has(>span)>:is(ng-icon){margin-inline:var(--ds-size-1);margin-inline-start:0}:host ng-icon{display:inline-flex;vertical-align:middle;font-size:var(--ng-icon-size, 1.3em)}:host svg{width:1em;height:1em}\n"] }]
24
+ }] });
25
+
26
+ /**
27
+ * Generated bundle index. Do not edit.
28
+ */
29
+
30
+ export { Link };
31
+ //# sourceMappingURL=ks-digital-designsystem-angular-link.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-link.mjs","sources":["../../../../packages/angular/link/src/link.ts","../../../../packages/angular/link/src/ks-digital-designsystem-angular-link.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Component({\n selector: 'a[ksd-link]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: ` <ng-content /> `,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-link',\n },\n styles: `\n :host {\n &:has(> span) > :is(ng-icon) {\n margin-inline: var(--ds-size-1);\n margin-inline-start: 0;\n }\n ng-icon {\n display: inline-flex;\n vertical-align: middle;\n font-size: var(--ng-icon-size, 1.3em);\n }\n svg {\n width: 1em;\n height: 1em;\n }\n }\n `,\n})\nexport class Link {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAyCa,IAAI,CAAA;uGAAJ,IAAI,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAJ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAI,iQAhCL,CAAA,gBAAA,CAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mNAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAgCjB,IAAI,EAAA,UAAA,EAAA,CAAA;kBAnChB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,mBACN,uBAAuB,CAAC,MAAM,EAAA,QAAA,EACrC,kBAAkB,EAAA,cAAA,EACZ;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;qBACF,EAAA,IAAA,EACK;AACJ,wBAAA,KAAK,EAAE,SAAS;AACjB,qBAAA,EAAA,MAAA,EAAA,CAAA,mNAAA,CAAA,EAAA;;;ACtBH;;AAEG;;;;"}
@@ -0,0 +1,143 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, numberAttribute, output, computed, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, Component, inject, ElementRef, DestroyRef, Directive } from '@angular/core';
3
+ import { pagination } from '@digdir/designsystemet-web';
4
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
5
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
6
+
7
+ class Pagination {
8
+ /**
9
+ * The current page
10
+ */
11
+ current = input.required({ ...(ngDevMode ? { debugName: "current" } : {}), transform: numberAttribute });
12
+ /**
13
+ * The total number of pages
14
+ */
15
+ total = input.required({ ...(ngDevMode ? { debugName: "total" } : {}), transform: numberAttribute });
16
+ /**
17
+ * Sets the screen reader label for the pagination
18
+ */
19
+ ariaLabel = input('Bla i sider', { ...(ngDevMode ? { debugName: "ariaLabel" } : {}), alias: 'aria-label' });
20
+ /**
21
+ * How many pages to show. Default is 7
22
+ */
23
+ show = input(7, { ...(ngDevMode ? { debugName: "show" } : {}), transform: numberAttribute });
24
+ /**
25
+ * E.g if "?page=%d" all the links will set href to "?page=1", "?page=2".
26
+ */
27
+ href = input(...(ngDevMode ? [undefined, { debugName: "href" }] : []));
28
+ /**
29
+ * Emits the page number when a page is clicked
30
+ */
31
+ pageClicked = output();
32
+ /**
33
+ * Exposes pagination data for consumer use
34
+ */
35
+ pages = computed(() => {
36
+ const result = pagination({
37
+ current: this.current(),
38
+ total: this.total(),
39
+ show: this.show(),
40
+ });
41
+ return {
42
+ pages: result.pages.map((p) => ({
43
+ page: p.page,
44
+ current: p.current === 'page',
45
+ key: p.key,
46
+ })),
47
+ prev: result.prev,
48
+ next: result.next,
49
+ };
50
+ }, ...(ngDevMode ? [{ debugName: "pages" }] : []));
51
+ onClick(e) {
52
+ const target = e.target.closest('[aria-label]');
53
+ if (!target)
54
+ return;
55
+ const label = target.getAttribute('aria-label');
56
+ if (!label)
57
+ return;
58
+ const page = Number(label);
59
+ if (!isNaN(page) && page !== this.current()) {
60
+ e.preventDefault();
61
+ this.pageClicked.emit(page);
62
+ }
63
+ }
64
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Pagination, deps: [], target: i0.ɵɵFactoryTarget.Component });
65
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: Pagination, isStandalone: true, selector: "ksd-pagination", inputs: { current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: true, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: true, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, show: { classPropertyName: "show", publicName: "show", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { pageClicked: "pageClicked" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: `
66
+ <ds-pagination
67
+ class="ds-pagination"
68
+ [attr.data-current]="current()"
69
+ [attr.data-total]="total()"
70
+ [attr.data-href]="href()"
71
+ [attr.aria-label]="ariaLabel()"
72
+ (click)="onClick($event)"
73
+ >
74
+ <ng-content />
75
+ </ds-pagination>
76
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
77
+ }
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Pagination, decorators: [{
79
+ type: Component,
80
+ args: [{
81
+ selector: 'ksd-pagination',
82
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
83
+ changeDetection: ChangeDetectionStrategy.OnPush,
84
+ template: `
85
+ <ds-pagination
86
+ class="ds-pagination"
87
+ [attr.data-current]="current()"
88
+ [attr.data-total]="total()"
89
+ [attr.data-href]="href()"
90
+ [attr.aria-label]="ariaLabel()"
91
+ (click)="onClick($event)"
92
+ >
93
+ <ng-content />
94
+ </ds-pagination>
95
+ `,
96
+ hostDirectives: [
97
+ {
98
+ directive: HostSize,
99
+ inputs: ['data-size'],
100
+ },
101
+ {
102
+ directive: HostColor,
103
+ inputs: ['data-color'],
104
+ },
105
+ ],
106
+ }]
107
+ }], propDecorators: { current: [{ type: i0.Input, args: [{ isSignal: true, alias: "current", required: true }] }], total: [{ type: i0.Input, args: [{ isSignal: true, alias: "total", required: true }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-label", required: false }] }], show: [{ type: i0.Input, args: [{ isSignal: true, alias: "show", required: false }] }], href: [{ type: i0.Input, args: [{ isSignal: true, alias: "href", required: false }] }], pageClicked: [{ type: i0.Output, args: ["pageClicked"] }] } });
108
+
109
+ class PaginationButton {
110
+ el = inject(ElementRef);
111
+ destroyRef = inject(DestroyRef);
112
+ constructor() {
113
+ const observer = new MutationObserver(() => this.updateVariant());
114
+ observer.observe(this.el.nativeElement, {
115
+ attributes: true,
116
+ attributeFilter: ['aria-current'],
117
+ });
118
+ this.updateVariant();
119
+ this.destroyRef.onDestroy(() => observer.disconnect());
120
+ }
121
+ updateVariant() {
122
+ const isCurrent = this.el.nativeElement.getAttribute('aria-current') === 'true';
123
+ this.el.nativeElement.setAttribute('data-variant', isCurrent ? 'primary' : 'tertiary');
124
+ }
125
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PaginationButton, deps: [], target: i0.ɵɵFactoryTarget.Directive });
126
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: PaginationButton, isStandalone: true, selector: "[ksdPaginationButton]", host: { classAttribute: "ds-button" }, ngImport: i0 });
127
+ }
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PaginationButton, decorators: [{
129
+ type: Directive,
130
+ args: [{
131
+ selector: '[ksdPaginationButton]',
132
+ host: {
133
+ class: 'ds-button',
134
+ },
135
+ }]
136
+ }], ctorParameters: () => [] });
137
+
138
+ /**
139
+ * Generated bundle index. Do not edit.
140
+ */
141
+
142
+ export { Pagination, PaginationButton };
143
+ //# sourceMappingURL=ks-digital-designsystem-angular-pagination.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-pagination.mjs","sources":["../../../../packages/angular/pagination/src/pagination.ts","../../../../packages/angular/pagination/src/pagination.button.ts","../../../../packages/angular/pagination/src/ks-digital-designsystem-angular-pagination.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n CUSTOM_ELEMENTS_SCHEMA,\n input,\n numberAttribute,\n output,\n} from '@angular/core'\nimport { pagination } from '@digdir/designsystemet-web'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\nexport interface PaginationPage {\n page: number\n current: boolean\n key: string\n}\n\nexport interface PaginationPages {\n pages: PaginationPage[]\n prev: number\n next: number\n}\n\n@Component({\n selector: 'ksd-pagination',\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <ds-pagination\n class=\"ds-pagination\"\n [attr.data-current]=\"current()\"\n [attr.data-total]=\"total()\"\n [attr.data-href]=\"href()\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"onClick($event)\"\n >\n <ng-content />\n </ds-pagination>\n `,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n})\nexport class Pagination {\n /**\n * The current page\n */\n readonly current = input.required<number, string | number>({\n transform: numberAttribute,\n })\n\n /**\n * The total number of pages\n */\n readonly total = input.required<number, string | number>({\n transform: numberAttribute,\n })\n\n /**\n * Sets the screen reader label for the pagination\n */\n readonly ariaLabel = input<string>('Bla i sider', { alias: 'aria-label' })\n\n /**\n * How many pages to show. Default is 7\n */\n readonly show = input(7, { transform: numberAttribute })\n\n /**\n * E.g if \"?page=%d\" all the links will set href to \"?page=1\", \"?page=2\".\n */\n readonly href = input<string>()\n\n /**\n * Emits the page number when a page is clicked\n */\n readonly pageClicked = output<number>()\n\n /**\n * Exposes pagination data for consumer use\n */\n readonly pages = computed<PaginationPages>(() => {\n const result = pagination({\n current: this.current(),\n total: this.total(),\n show: this.show(),\n })\n return {\n pages: result.pages.map((p) => ({\n page: p.page,\n current: p.current === 'page',\n key: p.key,\n })),\n prev: result.prev,\n next: result.next,\n }\n })\n\n protected onClick(e: Event) {\n const target = (e.target as HTMLElement).closest('[aria-label]')\n if (!target) return\n\n const label = target.getAttribute('aria-label')\n if (!label) return\n\n const page = Number(label)\n if (!isNaN(page) && page !== this.current()) {\n e.preventDefault()\n this.pageClicked.emit(page)\n }\n }\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core'\n\n@Directive({\n selector: '[ksdPaginationButton]',\n host: {\n class: 'ds-button',\n },\n})\nexport class PaginationButton {\n private el = inject<ElementRef<HTMLElement>>(ElementRef)\n private destroyRef = inject(DestroyRef)\n\n constructor() {\n const observer = new MutationObserver(() => this.updateVariant())\n observer.observe(this.el.nativeElement, {\n attributes: true,\n attributeFilter: ['aria-current'],\n })\n this.updateVariant()\n\n this.destroyRef.onDestroy(() => observer.disconnect())\n }\n\n private updateVariant() {\n const isCurrent =\n this.el.nativeElement.getAttribute('aria-current') === 'true'\n this.el.nativeElement.setAttribute(\n 'data-variant',\n isCurrent ? 'primary' : 'tertiary',\n )\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
3
+
4
+ class Paragraph {
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Paragraph, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: Paragraph, isStandalone: true, selector: "p[ksd-paragraph]", host: { classAttribute: "ds-paragraph" }, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: Paragraph, decorators: [{
9
+ type: Component,
10
+ args: [{
11
+ selector: 'p[ksd-paragraph]',
12
+ changeDetection: ChangeDetectionStrategy.OnPush,
13
+ template: `<ng-content />`,
14
+ host: {
15
+ class: 'ds-paragraph',
16
+ },
17
+ }]
18
+ }] });
19
+
20
+ /**
21
+ * Generated bundle index. Do not edit.
22
+ */
23
+
24
+ export { Paragraph };
25
+ //# sourceMappingURL=ks-digital-designsystem-angular-paragraph.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-paragraph.mjs","sources":["../../../../packages/angular/paragraph/src/paragraph.ts","../../../../packages/angular/paragraph/src/ks-digital-designsystem-angular-paragraph.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'p[ksd-paragraph]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n host: {\n class: 'ds-paragraph',\n },\n})\nexport class Paragraph {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAUa,SAAS,CAAA;uGAAT,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAT,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,SAAS,sHALV,CAAA,cAAA,CAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAKf,SAAS,EAAA,UAAA,EAAA,CAAA;kBARrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,CAAA,cAAA,CAAgB;AAC1B,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,cAAc;AACtB,qBAAA;AACF,iBAAA;;;ACTD;;AAEG;;;;"}