@lilydesignsystem/svelte-headless 0.1.0 → 0.3.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.
Files changed (157) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/dist/components/AotearoaNationalHealthIndexInput/AotearoaNationalHealthIndexInput.svelte +55 -0
  3. package/dist/components/AotearoaNationalHealthIndexInput/AotearoaNationalHealthIndexInput.svelte.d.ts +10 -0
  4. package/dist/components/AotearoaNationalHealthIndexView/AotearoaNationalHealthIndexView.svelte +40 -0
  5. package/dist/components/AotearoaNationalHealthIndexView/AotearoaNationalHealthIndexView.svelte.d.ts +8 -0
  6. package/dist/components/AreaChart/AreaChart.svelte +42 -3
  7. package/dist/components/AreaChart/AreaChart.svelte.d.ts +4 -0
  8. package/dist/components/ArgentinaCodigoUnicoDeIdentificacionLaboralInput/ArgentinaCodigoUnicoDeIdentificacionLaboralInput.svelte +55 -0
  9. package/dist/components/ArgentinaCodigoUnicoDeIdentificacionLaboralInput/ArgentinaCodigoUnicoDeIdentificacionLaboralInput.svelte.d.ts +10 -0
  10. package/dist/components/ArgentinaCodigoUnicoDeIdentificacionLaboralView/ArgentinaCodigoUnicoDeIdentificacionLaboralView.svelte +40 -0
  11. package/dist/components/ArgentinaCodigoUnicoDeIdentificacionLaboralView/ArgentinaCodigoUnicoDeIdentificacionLaboralView.svelte.d.ts +8 -0
  12. package/dist/components/BarChart/BarChart.svelte +42 -3
  13. package/dist/components/BarChart/BarChart.svelte.d.ts +4 -0
  14. package/dist/components/BharatAadhaarInput/BharatAadhaarInput.svelte +55 -0
  15. package/dist/components/BharatAadhaarInput/BharatAadhaarInput.svelte.d.ts +10 -0
  16. package/dist/components/BharatAadhaarView/BharatAadhaarView.svelte +40 -0
  17. package/dist/components/BharatAadhaarView/BharatAadhaarView.svelte.d.ts +8 -0
  18. package/dist/components/BrasilCartaoNacionalDeSaudeInput/BrasilCartaoNacionalDeSaudeInput.svelte +55 -0
  19. package/dist/components/BrasilCartaoNacionalDeSaudeInput/BrasilCartaoNacionalDeSaudeInput.svelte.d.ts +10 -0
  20. package/dist/components/BrasilCartaoNacionalDeSaudeView/BrasilCartaoNacionalDeSaudeView.svelte +40 -0
  21. package/dist/components/BrasilCartaoNacionalDeSaudeView/BrasilCartaoNacionalDeSaudeView.svelte.d.ts +8 -0
  22. package/dist/components/CalendarDayTable/CalendarDayTable.svelte +71 -0
  23. package/dist/components/CalendarDayTable/CalendarDayTable.svelte.d.ts +13 -0
  24. package/dist/components/CalendarMonthTable/CalendarMonthTable.svelte +71 -0
  25. package/dist/components/CalendarMonthTable/CalendarMonthTable.svelte.d.ts +13 -0
  26. package/dist/components/CalendarWeekTable/CalendarWeekTable.svelte +71 -0
  27. package/dist/components/CalendarWeekTable/CalendarWeekTable.svelte.d.ts +13 -0
  28. package/dist/components/CalendarYearTable/CalendarYearTable.svelte +71 -0
  29. package/dist/components/CalendarYearTable/CalendarYearTable.svelte.d.ts +13 -0
  30. package/dist/components/CanadaSocialInsuranceNumberInput/CanadaSocialInsuranceNumberInput.svelte +55 -0
  31. package/dist/components/CanadaSocialInsuranceNumberInput/CanadaSocialInsuranceNumberInput.svelte.d.ts +10 -0
  32. package/dist/components/CanadaSocialInsuranceNumberView/CanadaSocialInsuranceNumberView.svelte +40 -0
  33. package/dist/components/CanadaSocialInsuranceNumberView/CanadaSocialInsuranceNumberView.svelte.d.ts +8 -0
  34. package/dist/components/ChileRolUnicoNacionalInput/ChileRolUnicoNacionalInput.svelte +55 -0
  35. package/dist/components/ChileRolUnicoNacionalInput/ChileRolUnicoNacionalInput.svelte.d.ts +10 -0
  36. package/dist/components/ChileRolUnicoNacionalView/ChileRolUnicoNacionalView.svelte +40 -0
  37. package/dist/components/ChileRolUnicoNacionalView/ChileRolUnicoNacionalView.svelte.d.ts +8 -0
  38. package/dist/components/ColumnChart/ColumnChart.svelte +42 -3
  39. package/dist/components/ColumnChart/ColumnChart.svelte.d.ts +4 -0
  40. package/dist/components/EmptyState/EmptyState.svelte +47 -0
  41. package/dist/components/EmptyState/EmptyState.svelte.d.ts +11 -0
  42. package/dist/components/FileTree/FileTree.svelte +210 -0
  43. package/dist/components/FileTree/FileTree.svelte.d.ts +11 -0
  44. package/dist/components/GanttTable/GanttTable.svelte +5 -5
  45. package/dist/components/GanttTableTD/GanttTableTD.svelte +2 -2
  46. package/dist/components/GanttTableTH/GanttTableTH.svelte +3 -3
  47. package/dist/components/GanttTableTbody/GanttTableTbody.svelte +5 -5
  48. package/dist/components/GanttTableTbody/GanttTableTbody.svelte.d.ts +1 -1
  49. package/dist/components/GanttTableTfoot/GanttTableTfoot.svelte +5 -5
  50. package/dist/components/GanttTableTfoot/GanttTableTfoot.svelte.d.ts +1 -1
  51. package/dist/components/GanttTableThead/GanttTableThead.svelte +4 -4
  52. package/dist/components/GanttTableThead/GanttTableThead.svelte.d.ts +1 -1
  53. package/dist/components/GanttTableTr/GanttTableTr.svelte +8 -8
  54. package/dist/components/GaugeChart/GaugeChart.svelte +63 -0
  55. package/dist/components/GaugeChart/GaugeChart.svelte.d.ts +13 -0
  56. package/dist/components/HangukJuminDeungnokBeonhoInput/HangukJuminDeungnokBeonhoInput.svelte +55 -0
  57. package/dist/components/HangukJuminDeungnokBeonhoInput/HangukJuminDeungnokBeonhoInput.svelte.d.ts +10 -0
  58. package/dist/components/HangukJuminDeungnokBeonhoView/HangukJuminDeungnokBeonhoView.svelte +40 -0
  59. package/dist/components/HangukJuminDeungnokBeonhoView/HangukJuminDeungnokBeonhoView.svelte.d.ts +8 -0
  60. package/dist/components/HeatmapChart/HeatmapChart.svelte +63 -0
  61. package/dist/components/HeatmapChart/HeatmapChart.svelte.d.ts +13 -0
  62. package/dist/components/IconButton/IconButton.svelte +17 -2
  63. package/dist/components/IconButton/IconButton.svelte.d.ts +5 -1
  64. package/dist/components/IndonesiaNomorIndukKependudukanInput/IndonesiaNomorIndukKependudukanInput.svelte +55 -0
  65. package/dist/components/IndonesiaNomorIndukKependudukanInput/IndonesiaNomorIndukKependudukanInput.svelte.d.ts +10 -0
  66. package/dist/components/IndonesiaNomorIndukKependudukanView/IndonesiaNomorIndukKependudukanView.svelte +40 -0
  67. package/dist/components/IndonesiaNomorIndukKependudukanView/IndonesiaNomorIndukKependudukanView.svelte.d.ts +8 -0
  68. package/dist/components/KbdShortcut/KbdShortcut.svelte +49 -0
  69. package/dist/components/KbdShortcut/KbdShortcut.svelte.d.ts +12 -0
  70. package/dist/components/LineChart/LineChart.svelte +42 -3
  71. package/dist/components/LineChart/LineChart.svelte.d.ts +4 -0
  72. package/dist/components/Listbox/Listbox.svelte +213 -34
  73. package/dist/components/Listbox/Listbox.svelte.d.ts +24 -1
  74. package/dist/components/LuxembourgMatriculeInput/LuxembourgMatriculeInput.svelte +55 -0
  75. package/dist/components/LuxembourgMatriculeInput/LuxembourgMatriculeInput.svelte.d.ts +10 -0
  76. package/dist/components/LuxembourgMatriculeView/LuxembourgMatriculeView.svelte +40 -0
  77. package/dist/components/LuxembourgMatriculeView/LuxembourgMatriculeView.svelte.d.ts +8 -0
  78. package/dist/components/MagyarorszagTajSzamInput/MagyarorszagTajSzamInput.svelte +55 -0
  79. package/dist/components/MagyarorszagTajSzamInput/MagyarorszagTajSzamInput.svelte.d.ts +10 -0
  80. package/dist/components/MagyarorszagTajSzamView/MagyarorszagTajSzamView.svelte +40 -0
  81. package/dist/components/MagyarorszagTajSzamView/MagyarorszagTajSzamView.svelte.d.ts +8 -0
  82. package/dist/components/MexicoClaveUnicaDeRegistroDePoblacionInput/MexicoClaveUnicaDeRegistroDePoblacionInput.svelte +55 -0
  83. package/dist/components/MexicoClaveUnicaDeRegistroDePoblacionInput/MexicoClaveUnicaDeRegistroDePoblacionInput.svelte.d.ts +10 -0
  84. package/dist/components/MexicoClaveUnicaDeRegistroDePoblacionView/MexicoClaveUnicaDeRegistroDePoblacionView.svelte +40 -0
  85. package/dist/components/MexicoClaveUnicaDeRegistroDePoblacionView/MexicoClaveUnicaDeRegistroDePoblacionView.svelte.d.ts +8 -0
  86. package/dist/components/MisrAlRaqmAlQawmiInput/MisrAlRaqmAlQawmiInput.svelte +55 -0
  87. package/dist/components/MisrAlRaqmAlQawmiInput/MisrAlRaqmAlQawmiInput.svelte.d.ts +10 -0
  88. package/dist/components/MisrAlRaqmAlQawmiView/MisrAlRaqmAlQawmiView.svelte +40 -0
  89. package/dist/components/MisrAlRaqmAlQawmiView/MisrAlRaqmAlQawmiView.svelte.d.ts +8 -0
  90. package/dist/components/MultiSelect/MultiSelect.svelte +70 -0
  91. package/dist/components/MultiSelect/MultiSelect.svelte.d.ts +19 -0
  92. package/dist/components/MultiSelectWithExtras/MultiSelectWithExtras.svelte +80 -0
  93. package/dist/components/MultiSelectWithExtras/MultiSelectWithExtras.svelte.d.ts +23 -0
  94. package/dist/components/NihonKojinBangoInput/NihonKojinBangoInput.svelte +55 -0
  95. package/dist/components/NihonKojinBangoInput/NihonKojinBangoInput.svelte.d.ts +10 -0
  96. package/dist/components/NihonKojinBangoView/NihonKojinBangoView.svelte +40 -0
  97. package/dist/components/NihonKojinBangoView/NihonKojinBangoView.svelte.d.ts +8 -0
  98. package/dist/components/OneTimePasswordInput/OneTimePasswordInput.svelte +85 -0
  99. package/dist/components/OneTimePasswordInput/OneTimePasswordInput.svelte.d.ts +22 -0
  100. package/dist/components/OsterreichSozialversicherungsnummerInput/OsterreichSozialversicherungsnummerInput.svelte +55 -0
  101. package/dist/components/OsterreichSozialversicherungsnummerInput/OsterreichSozialversicherungsnummerInput.svelte.d.ts +10 -0
  102. package/dist/components/OsterreichSozialversicherungsnummerView/OsterreichSozialversicherungsnummerView.svelte +40 -0
  103. package/dist/components/OsterreichSozialversicherungsnummerView/OsterreichSozialversicherungsnummerView.svelte.d.ts +8 -0
  104. package/dist/components/PilipinasPhilhealthIdentificationNumberInput/PilipinasPhilhealthIdentificationNumberInput.svelte +55 -0
  105. package/dist/components/PilipinasPhilhealthIdentificationNumberInput/PilipinasPhilhealthIdentificationNumberInput.svelte.d.ts +10 -0
  106. package/dist/components/PilipinasPhilhealthIdentificationNumberView/PilipinasPhilhealthIdentificationNumberView.svelte +40 -0
  107. package/dist/components/PilipinasPhilhealthIdentificationNumberView/PilipinasPhilhealthIdentificationNumberView.svelte.d.ts +8 -0
  108. package/dist/components/PrathetThaiLekPrajamTuaPrachachonInput/PrathetThaiLekPrajamTuaPrachachonInput.svelte +55 -0
  109. package/dist/components/PrathetThaiLekPrajamTuaPrachachonInput/PrathetThaiLekPrajamTuaPrachachonInput.svelte.d.ts +10 -0
  110. package/dist/components/PrathetThaiLekPrajamTuaPrachachonView/PrathetThaiLekPrajamTuaPrachachonView.svelte +40 -0
  111. package/dist/components/PrathetThaiLekPrajamTuaPrachachonView/PrathetThaiLekPrajamTuaPrachachonView.svelte.d.ts +8 -0
  112. package/dist/components/RadarChart/RadarChart.svelte +63 -0
  113. package/dist/components/RadarChart/RadarChart.svelte.d.ts +13 -0
  114. package/dist/components/RossiyaSnilsInput/RossiyaSnilsInput.svelte +55 -0
  115. package/dist/components/RossiyaSnilsInput/RossiyaSnilsInput.svelte.d.ts +10 -0
  116. package/dist/components/RossiyaSnilsView/RossiyaSnilsView.svelte +40 -0
  117. package/dist/components/RossiyaSnilsView/RossiyaSnilsView.svelte.d.ts +8 -0
  118. package/dist/components/SankeyChart/SankeyChart.svelte +63 -0
  119. package/dist/components/SankeyChart/SankeyChart.svelte.d.ts +13 -0
  120. package/dist/components/ScatterChart/ScatterChart.svelte +42 -3
  121. package/dist/components/ScatterChart/ScatterChart.svelte.d.ts +4 -0
  122. package/dist/components/SchweizAhvNummerInput/SchweizAhvNummerInput.svelte +55 -0
  123. package/dist/components/SchweizAhvNummerInput/SchweizAhvNummerInput.svelte.d.ts +10 -0
  124. package/dist/components/SchweizAhvNummerView/SchweizAhvNummerView.svelte +40 -0
  125. package/dist/components/SchweizAhvNummerView/SchweizAhvNummerView.svelte.d.ts +8 -0
  126. package/dist/components/ShowMore/ShowMore.svelte +64 -0
  127. package/dist/components/ShowMore/ShowMore.svelte.d.ts +15 -0
  128. package/dist/components/SingaporeNationalRegistrationIdentityCardInput/SingaporeNationalRegistrationIdentityCardInput.svelte +55 -0
  129. package/dist/components/SingaporeNationalRegistrationIdentityCardInput/SingaporeNationalRegistrationIdentityCardInput.svelte.d.ts +10 -0
  130. package/dist/components/SingaporeNationalRegistrationIdentityCardView/SingaporeNationalRegistrationIdentityCardView.svelte +40 -0
  131. package/dist/components/SingaporeNationalRegistrationIdentityCardView/SingaporeNationalRegistrationIdentityCardView.svelte.d.ts +8 -0
  132. package/dist/components/SouthAfricaIdentityNumberInput/SouthAfricaIdentityNumberInput.svelte +55 -0
  133. package/dist/components/SouthAfricaIdentityNumberInput/SouthAfricaIdentityNumberInput.svelte.d.ts +10 -0
  134. package/dist/components/SouthAfricaIdentityNumberView/SouthAfricaIdentityNumberView.svelte +40 -0
  135. package/dist/components/SouthAfricaIdentityNumberView/SouthAfricaIdentityNumberView.svelte.d.ts +8 -0
  136. package/dist/components/Thinking/Thinking.svelte +58 -0
  137. package/dist/components/Thinking/Thinking.svelte.d.ts +15 -0
  138. package/dist/components/TurkiyeTcKimlikNumarasiInput/TurkiyeTcKimlikNumarasiInput.svelte +55 -0
  139. package/dist/components/TurkiyeTcKimlikNumarasiInput/TurkiyeTcKimlikNumarasiInput.svelte.d.ts +10 -0
  140. package/dist/components/TurkiyeTcKimlikNumarasiView/TurkiyeTcKimlikNumarasiView.svelte +40 -0
  141. package/dist/components/TurkiyeTcKimlikNumarasiView/TurkiyeTcKimlikNumarasiView.svelte.d.ts +8 -0
  142. package/dist/components/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivInput/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivInput.svelte +55 -0
  143. package/dist/components/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivInput/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivInput.svelte.d.ts +10 -0
  144. package/dist/components/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivView/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivView.svelte +40 -0
  145. package/dist/components/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivView/UkrayinaReyestratsiyniyNomerOblikovoyiKartkyPlatnykaPodatkivView.svelte.d.ts +8 -0
  146. package/dist/components/YisraelTeudatZehutInput/YisraelTeudatZehutInput.svelte +55 -0
  147. package/dist/components/YisraelTeudatZehutInput/YisraelTeudatZehutInput.svelte.d.ts +10 -0
  148. package/dist/components/YisraelTeudatZehutView/YisraelTeudatZehutView.svelte +40 -0
  149. package/dist/components/YisraelTeudatZehutView/YisraelTeudatZehutView.svelte.d.ts +8 -0
  150. package/dist/components/ZhongguoJuminShenfenzhengHaomaInput/ZhongguoJuminShenfenzhengHaomaInput.svelte +55 -0
  151. package/dist/components/ZhongguoJuminShenfenzhengHaomaInput/ZhongguoJuminShenfenzhengHaomaInput.svelte.d.ts +10 -0
  152. package/dist/components/ZhongguoJuminShenfenzhengHaomaView/ZhongguoJuminShenfenzhengHaomaView.svelte +40 -0
  153. package/dist/components/ZhongguoJuminShenfenzhengHaomaView/ZhongguoJuminShenfenzhengHaomaView.svelte.d.ts +8 -0
  154. package/dist/index.d.ts +64 -0
  155. package/dist/index.js +64 -0
  156. package/index.md +1 -1
  157. package/package.json +9 -8
@@ -0,0 +1,13 @@
1
+ import type { Snippet } from "svelte";
2
+ type $$ComponentProps = {
3
+ /** Accessible name for the chart. */
4
+ label: string;
5
+ /** The consumer-supplied inline svg. */
6
+ children: Snippet;
7
+ /** Optional accessible data table alternative. */
8
+ dataTable?: Snippet;
9
+ [key: string]: unknown;
10
+ };
11
+ declare const GaugeChart: import("svelte").Component<$$ComponentProps, {}, "">;
12
+ type GaugeChart = ReturnType<typeof GaugeChart>;
13
+ export default GaugeChart;
@@ -0,0 +1,55 @@
1
+ <script lang="ts">
2
+ // HangukJuminDeungnokBeonhoInput component
3
+ //
4
+ // A headless input for entering South Korea's Resident Registration Number (주민등록번호).
5
+ // Format: Thirteen digits, displayed as NNNNNN-NNNNNNN. The first six digits encode date of birth (YYMMDD); the seventh digit encodes sex and birth century; digits eight through eleven encode place of registration; the twelfth is a sequence number; the thirteenth is a Modulus-11 check digit over the preceding twelve.
6
+ //
7
+ // Props:
8
+ // className — string, optional. CSS class name.
9
+ // label — string, required. Accessible label for screen readers via aria-label.
10
+ // value — string, default "". Bindable input value; supports bind:value.
11
+ // required — boolean, default false. Whether the input is required for form submission.
12
+ // disabled — boolean, default false. Whether the input is disabled.
13
+ // ...restProps — additional HTML attributes spread onto the <input>.
14
+ //
15
+ // Syntax:
16
+ // <HangukJuminDeungnokBeonhoInput label="Resident Registration Number (주민등록번호)" bind:value />
17
+ //
18
+ // Accessibility:
19
+ // - aria-label provides the accessible name for screen readers
20
+ // - autocomplete="off" protects sensitive identifiers
21
+ // - required and disabled states are conveyed to assistive technology
22
+ //
23
+ // Internationalization:
24
+ // - The label prop externalizes user-facing text for translation
25
+ //
26
+ // References:
27
+ // - https://en.wikipedia.org/wiki/Resident_registration_number
28
+
29
+ let {
30
+ class: className = "",
31
+ label,
32
+ value = $bindable(""),
33
+ required = false,
34
+ disabled = false,
35
+ ...restProps
36
+ }: {
37
+ label: string;
38
+ value?: string;
39
+ required?: boolean;
40
+ disabled?: boolean;
41
+ [key: string]: unknown;
42
+ } = $props();
43
+ </script>
44
+
45
+ <!-- HangukJuminDeungnokBeonhoInput.svelte -->
46
+ <input
47
+ class={`hanguk-jumin-deungnok-beonho-input ${className}`}
48
+ type="text"
49
+ aria-label={label}
50
+ autocomplete="off"
51
+ bind:value
52
+ {required}
53
+ {disabled}
54
+ {...restProps}
55
+ />
@@ -0,0 +1,10 @@
1
+ type $$ComponentProps = {
2
+ label: string;
3
+ value?: string;
4
+ required?: boolean;
5
+ disabled?: boolean;
6
+ [key: string]: unknown;
7
+ };
8
+ declare const HangukJuminDeungnokBeonhoInput: import("svelte").Component<$$ComponentProps, {}, "value">;
9
+ type HangukJuminDeungnokBeonhoInput = ReturnType<typeof HangukJuminDeungnokBeonhoInput>;
10
+ export default HangukJuminDeungnokBeonhoInput;
@@ -0,0 +1,40 @@
1
+ <script lang="ts">
2
+ // HangukJuminDeungnokBeonhoView component
3
+ //
4
+ // A headless display component for showing South Korea's
5
+ // Resident Registration Number (주민등록번호) in a read-only format.
6
+ // Format: Thirteen digits, displayed as NNNNNN-NNNNNNN. The first six digits encode date of birth (YYMMDD); the seventh digit encodes sex and birth century; digits eight through eleven encode place of registration; the twelfth is a sequence number; the thirteenth is a Modulus-11 check digit over the preceding twelve.
7
+ //
8
+ // Props:
9
+ // className — string, optional. CSS class name.
10
+ // label — string, required. Accessible label for screen readers via aria-label.
11
+ // value — string, default "". The identifier string to display.
12
+ // ...restProps — additional HTML attributes spread onto the <span>.
13
+ //
14
+ // Syntax:
15
+ // <HangukJuminDeungnokBeonhoView label="Resident Registration Number (주민등록번호)" value={value} />
16
+ //
17
+ // Accessibility:
18
+ // - aria-label provides the accessible name so screen readers announce the purpose
19
+ //
20
+ // References:
21
+ // - https://en.wikipedia.org/wiki/Resident_registration_number
22
+
23
+ let {
24
+ class: className = "",
25
+ label,
26
+ value = "",
27
+ ...restProps
28
+ }: {
29
+ label: string;
30
+ value?: string;
31
+ [key: string]: unknown;
32
+ } = $props();
33
+ </script>
34
+
35
+ <!-- HangukJuminDeungnokBeonhoView.svelte -->
36
+ <span
37
+ class={`hanguk-jumin-deungnok-beonho-view ${className}`}
38
+ aria-label={label}
39
+ {...restProps}>{value}</span
40
+ >
@@ -0,0 +1,8 @@
1
+ type $$ComponentProps = {
2
+ label: string;
3
+ value?: string;
4
+ [key: string]: unknown;
5
+ };
6
+ declare const HangukJuminDeungnokBeonhoView: import("svelte").Component<$$ComponentProps, {}, "">;
7
+ type HangukJuminDeungnokBeonhoView = ReturnType<typeof HangukJuminDeungnokBeonhoView>;
8
+ export default HangukJuminDeungnokBeonhoView;
@@ -0,0 +1,63 @@
1
+ <script lang="ts">
2
+ // HeatmapChart component
3
+ //
4
+ // A headless chart container. The consumer supplies the inline svg as
5
+ // `children`; the component draws nothing. The graphic is a
6
+ // role="img" wrapper named by `label`. The optional `dataTable` snippet
7
+ // renders the accessible table alternative as a SIBLING of that image
8
+ // wrapper, never inside it: a role="img" element makes its descendants
9
+ // presentational, so a table placed inside would be invisible to
10
+ // assistive technology.
11
+ //
12
+ // Props:
13
+ // class — string, optional. Consumer class appended after the base class.
14
+ // label — string, required. Accessible name of the chart image.
15
+ // children — Snippet. The consumer-supplied inline svg.
16
+ // dataTable — Snippet, optional. The accessible table alternative.
17
+ // ...restProps — spread onto the root <figure>.
18
+ //
19
+ // Markup:
20
+ // <figure class="heatmap-chart">
21
+ // <div class="heatmap-chart-graphic" role="img" aria-label>…svg…</div>
22
+ // <div class="heatmap-chart-data-table">…table…</div> (only when provided)
23
+ // </figure>
24
+ //
25
+ // Keyboard: none on the graphic; the data table follows native table behaviour.
26
+ //
27
+ // Claude rules:
28
+ // - Headless: no CSS, no inline styles; no drawing.
29
+ // - No hardcoded user-facing strings.
30
+
31
+ import type { Snippet } from "svelte";
32
+
33
+ let {
34
+ class: className = "",
35
+ label,
36
+ children,
37
+ dataTable,
38
+ ...restProps
39
+ }: {
40
+ /** Accessible name for the chart. */
41
+ label: string;
42
+ /** The consumer-supplied inline svg. */
43
+ children: Snippet;
44
+ /** Optional accessible data table alternative. */
45
+ dataTable?: Snippet;
46
+ [key: string]: unknown;
47
+ } = $props();
48
+ </script>
49
+
50
+ <!-- HeatmapChart.svelte -->
51
+ <figure
52
+ class={`heatmap-chart ${className}`}
53
+ {...restProps}
54
+ >
55
+ <div class="heatmap-chart-graphic" role="img" aria-label={label}>
56
+ {@render children?.()}
57
+ </div>
58
+ {#if dataTable}
59
+ <div class="heatmap-chart-data-table">
60
+ {@render dataTable()}
61
+ </div>
62
+ {/if}
63
+ </figure>
@@ -0,0 +1,13 @@
1
+ import type { Snippet } from "svelte";
2
+ type $$ComponentProps = {
3
+ /** Accessible name for the chart. */
4
+ label: string;
5
+ /** The consumer-supplied inline svg. */
6
+ children: Snippet;
7
+ /** Optional accessible data table alternative. */
8
+ dataTable?: Snippet;
9
+ [key: string]: unknown;
10
+ };
11
+ declare const HeatmapChart: import("svelte").Component<$$ComponentProps, {}, "">;
12
+ type HeatmapChart = ReturnType<typeof HeatmapChart>;
13
+ export default HeatmapChart;
@@ -8,13 +8,21 @@
8
8
  //
9
9
  // Props:
10
10
  // class — string, optional. CSS class appended to the base class.
11
+ // baseClass — string, default "icon-button". The base class token itself
12
+ // (not appended — replaces "icon-button" outright). A consumer that owns
13
+ // its own exact class-hook contract (e.g. a picker component whose spec
14
+ // requires `class="{helper}-button"` with no extra "icon-button" token)
15
+ // sets this instead of layering on top of the default.
11
16
  // label — string, REQUIRED. aria-label for screen readers.
12
17
  // type — "button" | "submit" | "reset", default "button".
13
18
  // disabled — boolean, default false.
14
19
  // pressed — boolean | undefined, default undefined. Toggle button state.
15
20
  // onclick — (event: MouseEvent) => void, optional. Click handler.
21
+ // ref — HTMLButtonElement | undefined, bindable. The rendered button, for
22
+ // a consumer that needs to call .focus() on it.
16
23
  // children — Snippet, required. The icon content (svg, glyph, emoji).
17
- // ...restProps — additional HTML attributes spread onto the <button>.
24
+ // ...restProps — additional HTML attributes spread onto the <button>
25
+ // (e.g. aria-haspopup, aria-expanded, aria-controls, onkeydown).
18
26
  //
19
27
  // Syntax:
20
28
  // <IconButton label="Close" onclick={handleClose}>×</IconButton>
@@ -45,14 +53,18 @@
45
53
 
46
54
  let {
47
55
  class: className = "",
56
+ baseClass = "icon-button",
48
57
  label,
49
58
  type = "button",
50
59
  disabled = false,
51
60
  pressed = undefined,
52
61
  onclick = undefined,
62
+ ref = $bindable<HTMLButtonElement | undefined>(undefined),
53
63
  children,
54
64
  ...restProps
55
65
  }: {
66
+ /** Base class token, replacing "icon-button" outright (not appended). */
67
+ baseClass?: string;
56
68
  /** Accessible label (REQUIRED for icon-only buttons) */
57
69
  label: string;
58
70
  /** HTML button type */
@@ -63,6 +75,8 @@
63
75
  pressed?: boolean;
64
76
  /** Click handler */
65
77
  onclick?: (event: MouseEvent) => void;
78
+ /** The rendered button element. Bindable. */
79
+ ref?: HTMLButtonElement;
66
80
  /** Icon content */
67
81
  children: Snippet;
68
82
  [key: string]: unknown;
@@ -71,12 +85,13 @@
71
85
 
72
86
  <!-- IconButton.svelte -->
73
87
  <button
74
- class={`icon-button ${className}`}
88
+ class={`${baseClass} ${className}`}
75
89
  {type}
76
90
  {disabled}
77
91
  aria-label={label}
78
92
  aria-pressed={pressed}
79
93
  {onclick}
94
+ bind:this={ref}
80
95
  {...restProps}
81
96
  >
82
97
  {@render children?.()}
@@ -1,5 +1,7 @@
1
1
  import type { Snippet } from "svelte";
2
2
  type $$ComponentProps = {
3
+ /** Base class token, replacing "icon-button" outright (not appended). */
4
+ baseClass?: string;
3
5
  /** Accessible label (REQUIRED for icon-only buttons) */
4
6
  label: string;
5
7
  /** HTML button type */
@@ -10,10 +12,12 @@ type $$ComponentProps = {
10
12
  pressed?: boolean;
11
13
  /** Click handler */
12
14
  onclick?: (event: MouseEvent) => void;
15
+ /** The rendered button element. Bindable. */
16
+ ref?: HTMLButtonElement;
13
17
  /** Icon content */
14
18
  children: Snippet;
15
19
  [key: string]: unknown;
16
20
  };
17
- declare const IconButton: import("svelte").Component<$$ComponentProps, {}, "">;
21
+ declare const IconButton: import("svelte").Component<$$ComponentProps, {}, "ref">;
18
22
  type IconButton = ReturnType<typeof IconButton>;
19
23
  export default IconButton;
@@ -0,0 +1,55 @@
1
+ <script lang="ts">
2
+ // IndonesiaNomorIndukKependudukanInput component
3
+ //
4
+ // A headless input for entering Indonesia's Nomor Induk Kependudukan (NIK).
5
+ // Format: Sixteen digits in the form PPKKCC-DDMMYY-NNNN: the first six digits encode province, regency/city, and sub-district of first registration; the next six encode date of birth (with 40 added to the day-of-month digits for a female holder, e.g. day 10 becomes 50); the final four digits are a sequence number disambiguating same-day-same-subdistrict registrations. No published check digit.
6
+ //
7
+ // Props:
8
+ // className — string, optional. CSS class name.
9
+ // label — string, required. Accessible label for screen readers via aria-label.
10
+ // value — string, default "". Bindable input value; supports bind:value.
11
+ // required — boolean, default false. Whether the input is required for form submission.
12
+ // disabled — boolean, default false. Whether the input is disabled.
13
+ // ...restProps — additional HTML attributes spread onto the <input>.
14
+ //
15
+ // Syntax:
16
+ // <IndonesiaNomorIndukKependudukanInput label="Nomor Induk Kependudukan (NIK)" bind:value />
17
+ //
18
+ // Accessibility:
19
+ // - aria-label provides the accessible name for screen readers
20
+ // - autocomplete="off" protects sensitive identifiers
21
+ // - required and disabled states are conveyed to assistive technology
22
+ //
23
+ // Internationalization:
24
+ // - The label prop externalizes user-facing text for translation
25
+ //
26
+ // References:
27
+ // - https://en.wikipedia.org/wiki/National_identification_number#Indonesia
28
+
29
+ let {
30
+ class: className = "",
31
+ label,
32
+ value = $bindable(""),
33
+ required = false,
34
+ disabled = false,
35
+ ...restProps
36
+ }: {
37
+ label: string;
38
+ value?: string;
39
+ required?: boolean;
40
+ disabled?: boolean;
41
+ [key: string]: unknown;
42
+ } = $props();
43
+ </script>
44
+
45
+ <!-- IndonesiaNomorIndukKependudukanInput.svelte -->
46
+ <input
47
+ class={`indonesia-nomor-induk-kependudukan-input ${className}`}
48
+ type="text"
49
+ aria-label={label}
50
+ autocomplete="off"
51
+ bind:value
52
+ {required}
53
+ {disabled}
54
+ {...restProps}
55
+ />
@@ -0,0 +1,10 @@
1
+ type $$ComponentProps = {
2
+ label: string;
3
+ value?: string;
4
+ required?: boolean;
5
+ disabled?: boolean;
6
+ [key: string]: unknown;
7
+ };
8
+ declare const IndonesiaNomorIndukKependudukanInput: import("svelte").Component<$$ComponentProps, {}, "value">;
9
+ type IndonesiaNomorIndukKependudukanInput = ReturnType<typeof IndonesiaNomorIndukKependudukanInput>;
10
+ export default IndonesiaNomorIndukKependudukanInput;
@@ -0,0 +1,40 @@
1
+ <script lang="ts">
2
+ // IndonesiaNomorIndukKependudukanView component
3
+ //
4
+ // A headless display component for showing Indonesia's
5
+ // Nomor Induk Kependudukan (NIK) in a read-only format.
6
+ // Format: Sixteen digits in the form PPKKCC-DDMMYY-NNNN: the first six digits encode province, regency/city, and sub-district of first registration; the next six encode date of birth (with 40 added to the day-of-month digits for a female holder, e.g. day 10 becomes 50); the final four digits are a sequence number disambiguating same-day-same-subdistrict registrations. No published check digit.
7
+ //
8
+ // Props:
9
+ // className — string, optional. CSS class name.
10
+ // label — string, required. Accessible label for screen readers via aria-label.
11
+ // value — string, default "". The identifier string to display.
12
+ // ...restProps — additional HTML attributes spread onto the <span>.
13
+ //
14
+ // Syntax:
15
+ // <IndonesiaNomorIndukKependudukanView label="Nomor Induk Kependudukan (NIK)" value={value} />
16
+ //
17
+ // Accessibility:
18
+ // - aria-label provides the accessible name so screen readers announce the purpose
19
+ //
20
+ // References:
21
+ // - https://en.wikipedia.org/wiki/National_identification_number#Indonesia
22
+
23
+ let {
24
+ class: className = "",
25
+ label,
26
+ value = "",
27
+ ...restProps
28
+ }: {
29
+ label: string;
30
+ value?: string;
31
+ [key: string]: unknown;
32
+ } = $props();
33
+ </script>
34
+
35
+ <!-- IndonesiaNomorIndukKependudukanView.svelte -->
36
+ <span
37
+ class={`indonesia-nomor-induk-kependudukan-view ${className}`}
38
+ aria-label={label}
39
+ {...restProps}>{value}</span
40
+ >
@@ -0,0 +1,8 @@
1
+ type $$ComponentProps = {
2
+ label: string;
3
+ value?: string;
4
+ [key: string]: unknown;
5
+ };
6
+ declare const IndonesiaNomorIndukKependudukanView: import("svelte").Component<$$ComponentProps, {}, "">;
7
+ type IndonesiaNomorIndukKependudukanView = ReturnType<typeof IndonesiaNomorIndukKependudukanView>;
8
+ export default IndonesiaNomorIndukKependudukanView;
@@ -0,0 +1,49 @@
1
+ <script lang="ts">
2
+ // KbdShortcut component
3
+ //
4
+ // A headless keyboard shortcut: an outer <kbd> holding one inner <kbd> per key,
5
+ // with a decorative separator between keys. Use Kbd for a single key.
6
+ //
7
+ // Props:
8
+ // className — string, optional. CSS class name.
9
+ // keys — string[], required. The key names, in order, e.g. ["Ctrl", "K"].
10
+ // separator — string, default "+". Decorative text between keys (aria-hidden).
11
+ // label — string, optional. Spoken form; becomes aria-label on the root.
12
+ // ...restProps — additional HTML attributes spread onto the root <kbd>.
13
+ //
14
+ // Keyboard:
15
+ // - None; display only
16
+ //
17
+ // Accessibility:
18
+ // - Separators are aria-hidden so screen readers read the keys
19
+ // - label (optional) overrides the spoken form, e.g. "Control K"
20
+ //
21
+ // Internationalization:
22
+ // - Key names are consumer-supplied; no hardcoded strings
23
+ //
24
+ // Claude rules:
25
+ // - Headless: no CSS, no icons for keys
26
+
27
+ let {
28
+ class: className = "",
29
+ keys,
30
+ separator = "+",
31
+ label = undefined,
32
+ ...restProps
33
+ }: {
34
+ /** Key names, in order. */
35
+ keys: string[];
36
+ /** Decorative separator between keys. */
37
+ separator?: string;
38
+ /** Optional spoken form (aria-label). */
39
+ label?: string;
40
+ [key: string]: unknown;
41
+ } = $props();
42
+ </script>
43
+
44
+ <!-- KbdShortcut.svelte -->
45
+ <kbd class={`kbd-shortcut ${className}`} aria-label={label} {...restProps}>
46
+ {#each keys as key, i (i)}
47
+ {#if i > 0}<span class="kbd-shortcut-separator" aria-hidden="true">{separator}</span>{/if}<kbd class="kbd-shortcut-key">{key}</kbd>
48
+ {/each}
49
+ </kbd>
@@ -0,0 +1,12 @@
1
+ type $$ComponentProps = {
2
+ /** Key names, in order. */
3
+ keys: string[];
4
+ /** Decorative separator between keys. */
5
+ separator?: string;
6
+ /** Optional spoken form (aria-label). */
7
+ label?: string;
8
+ [key: string]: unknown;
9
+ };
10
+ declare const KbdShortcut: import("svelte").Component<$$ComponentProps, {}, "">;
11
+ type KbdShortcut = ReturnType<typeof KbdShortcut>;
12
+ export default KbdShortcut;
@@ -1,14 +1,48 @@
1
1
  <script lang="ts">
2
+ // LineChart component
3
+ //
4
+ // A headless chart container for a line chart visualization connecting data points to display data. The consumer supplies the inline
5
+ // svg as `children`; the component draws nothing. The graphic is a
6
+ // role="img" wrapper named by `label`. The optional `dataTable` snippet
7
+ // renders the accessible table alternative as a SIBLING of that image
8
+ // wrapper, never inside it: a role="img" element makes its descendants
9
+ // presentational, so a table placed inside would be invisible to
10
+ // assistive technology.
11
+ //
12
+ // Props:
13
+ // class — string, optional. Consumer class appended after the base class.
14
+ // label — string, optional. Accessible name of the chart image.
15
+ // children — Snippet. The consumer-supplied inline svg.
16
+ // dataTable — Snippet, optional. The accessible table alternative.
17
+ // ...restProps — spread onto the root <figure>.
18
+ //
19
+ // Markup:
20
+ // <figure class="line-chart">
21
+ // <div class="line-chart-graphic" role="img" aria-label>…svg…</div>
22
+ // <div class="line-chart-data-table">…table…</div> (only when provided)
23
+ // </figure>
24
+ //
25
+ // Keyboard: none on the graphic; the data table follows native table behaviour.
26
+ //
27
+ // Claude rules:
28
+ // - Headless: no CSS, no inline styles; no drawing.
29
+ // - No hardcoded user-facing strings.
30
+
2
31
  import type { Snippet } from "svelte";
3
32
 
4
33
  let {
5
34
  class: className = "",
6
35
  label = undefined,
7
36
  children,
37
+ dataTable,
8
38
  ...restProps
9
39
  }: {
40
+ /** Accessible name for the chart. */
10
41
  label?: string;
42
+ /** The consumer-supplied inline svg. */
11
43
  children: Snippet;
44
+ /** Optional accessible data table alternative. */
45
+ dataTable?: Snippet;
12
46
  [key: string]: unknown;
13
47
  } = $props();
14
48
  </script>
@@ -16,9 +50,14 @@
16
50
  <!-- LineChart.svelte -->
17
51
  <figure
18
52
  class={`line-chart ${className}`}
19
- role="img"
20
- aria-label={label}
21
53
  {...restProps}
22
54
  >
23
- {@render children?.()}
55
+ <div class="line-chart-graphic" role="img" aria-label={label}>
56
+ {@render children?.()}
57
+ </div>
58
+ {#if dataTable}
59
+ <div class="line-chart-data-table">
60
+ {@render dataTable()}
61
+ </div>
62
+ {/if}
24
63
  </figure>
@@ -1,7 +1,11 @@
1
1
  import type { Snippet } from "svelte";
2
2
  type $$ComponentProps = {
3
+ /** Accessible name for the chart. */
3
4
  label?: string;
5
+ /** The consumer-supplied inline svg. */
4
6
  children: Snippet;
7
+ /** Optional accessible data table alternative. */
8
+ dataTable?: Snippet;
5
9
  [key: string]: unknown;
6
10
  };
7
11
  declare const LineChart: import("svelte").Component<$$ComponentProps, {}, "">;