@health-samurai/react-components 0.0.0-alpha.13 → 0.0.0-alpha.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.css +468 -326
- package/dist/src/components/code-editor/index.d.ts.map +1 -1
- package/dist/src/components/code-editor/index.js +110 -26
- package/dist/src/components/code-editor/index.js.map +1 -1
- package/dist/src/components/fhir-structure-view.js +4 -4
- package/dist/src/components/fhir-structure-view.js.map +1 -1
- package/dist/src/index.css +293 -91
- package/dist/src/shadcn/components/ui/checkbox.js +2 -2
- package/dist/src/shadcn/components/ui/checkbox.js.map +1 -1
- package/dist/src/shadcn/components/ui/radio-group.js +2 -2
- package/dist/src/shadcn/components/ui/radio-group.js.map +1 -1
- package/dist/src/shadcn/shadcn.css +4 -4
- package/dist/src/tokens.css +25 -9
- package/package.json +1 -1
- package/src/components/code-editor/index.tsx +99 -22
- package/src/components/fhir-structure-view.tsx +4 -4
- package/src/index.css +293 -91
- package/src/shadcn/components/ui/checkbox.tsx +2 -2
- package/src/shadcn/components/ui/radio-group.tsx +2 -2
- package/src/shadcn/shadcn.css +4 -4
- package/src/tokens.css +25 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/fhir-structure-view.tsx"],"sourcesContent":["import type { ItemInstance } from \"@headless-tree/core\";\nimport React from \"react\";\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from \"#shadcn/components/ui/tooltip\";\nimport { cn } from \"#shadcn/lib/utils.js\";\nimport * as CustomIcon from \"../icons\";\nimport { TreeView, type TreeViewItem } from \"./tree-view\";\n\ntype PackageSpec = {\n\tname: string;\n\tversion: string;\n};\n\ntype Coordinate = {\n\tid?: string;\n\tpackageSpec?: PackageSpec;\n\t\"package-spec\"?: PackageSpec;\n\tlabel?: string;\n};\n\ntype FhirStructure = {\n\ttype?: string;\n\tmin?: string | number;\n\tmax?: string | number;\n\tlastNode?: boolean;\n\tisSummary?: boolean;\n\tisModifier?: boolean;\n\tmustSupport?: boolean;\n\tdatatype?: string;\n\tshort?: string;\n\tdesc?: string;\n\textensionUrl?: string;\n\textensionCoordinate?: Coordinate;\n\tbinding?: {\n\t\tvalueSet: string;\n\t};\n\tvsCoordinate?: Coordinate;\n};\n\nfunction FiledIcon(item: ItemInstance<TreeViewItem<FhirStructure>>) {\n\tconst filedType = item.getItemData()?.meta?.type;\n\n\tswitch (filedType) {\n\t\tcase \"Resource\":\n\t\t\treturn <CustomIcon.ResourceIcon />;\n\t\tcase \"BackboneElement\":\n\t\t\treturn <CustomIcon.BackboneElementIcon />;\n\t\tcase \"Extension\":\n\t\t\treturn <CustomIcon.ExtensionIcon />;\n\t\tcase \"Reference\":\n\t\t\treturn <CustomIcon.ReferenceIcon />;\n\t\tcase \"union\":\n\t\t\treturn <CustomIcon.UnionIcon />;\n\t\tcase \"instant\":\n\t\tcase \"time\":\n\t\tcase \"date\":\n\t\tcase \"dateTime\":\n\t\tcase \"decimal\":\n\t\tcase \"boolean\":\n\t\tcase \"integer\":\n\t\tcase \"string\":\n\t\tcase \"uri\":\n\t\tcase \"base64Binary\":\n\t\tcase \"code\":\n\t\tcase \"id\":\n\t\tcase \"oid\":\n\t\tcase \"unsignedInt\":\n\t\tcase \"positiveInt\":\n\t\tcase \"markdown\":\n\t\tcase \"url\":\n\t\tcase \"canonical\":\n\t\tcase \"uuid\":\n\t\tcase \"integer64\":\n\t\t\treturn <CustomIcon.TypCodeIcon />;\n\t\tdefault:\n\t\t\treturn <CustomIcon.ComplexTypeIcon />;\n\t}\n}\n\nconst customItemFieldNameClass = cn(\n\t\"flex\",\n\t\"items-center\",\n\t\"truncate\",\n\t\"gap-2\",\n\t\"min-w-[calc(260px-var(--tree-padding))]\",\n\t\"w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:min-w-[calc(260px-var(--tree-padding))]\",\n);\n\nfunction customItemView(item: ItemInstance<TreeViewItem<FhirStructure>>) {\n\tconst fieldName = item.getItemData()?.name;\n\tconst cardinalityMin = item.getItemData()?.meta?.min;\n\tconst cardinalityMax = item.getItemData()?.meta?.max;\n\tconst isSummary = item.getItemData()?.meta?.isSummary;\n\tconst isModifier = item.getItemData()?.meta?.isModifier;\n\tconst mustSupport = item.getItemData()?.meta?.mustSupport;\n\tconst datatype = item.getItemData()?.meta?.type;\n\tconst short = item.getItemData()?.meta?.short;\n\tconst desc = item.getItemData()?.meta?.desc;\n\tconst extensionUrl = item.getItemData()?.meta?.extensionUrl;\n\tconst extensionCoordinate = item.getItemData()?.meta?.extensionCoordinate;\n\tconst binding = item.getItemData()?.meta?.binding;\n\tconst vsCoordinate = item.getItemData()?.meta?.vsCoordinate;\n\treturn (\n\t\t<div className=\"flex items-start gap-2 text-xs\">\n\t\t\t<div className={customItemFieldNameClass}>\n\t\t\t\t{FiledIcon(item)}\n\t\t\t\t{fieldName}\n\t\t\t</div>\n\n\t\t\t<div className=\"flex items-center gap-1 min-w-[60px] w-[60px]\">\n\t\t\t\t{mustSupport && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] text-white bg-red-600 rounded cursor-help\">\n\t\t\t\t\t\t\t\tS\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Must be supported</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isSummary && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">Σ</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Part of the summary set</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isModifier && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">!?</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Modifying element</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t<div className=\"flex items-center gap-1 min-w-[50px] w-[50px] typo-code\">\n\t\t\t\t{cardinalityMin && cardinalityMax\n\t\t\t\t\t? `${cardinalityMin}..${cardinalityMax}`\n\t\t\t\t\t: \"\"}\n\t\t\t</div>\n\t\t\t<div className=\"flex gap-1 w-[200px] min-w-[200px]\">\n\t\t\t\t{datatype !== \"union\" && datatype}\n\t\t\t</div>\n\t\t\t<div className=\"text-left overflow-hidden\">\n\t\t\t\t{short && <div className=\"line-clamp-2\">{short}</div>}\n\t\t\t\t{!short && desc && <div className=\"line-clamp-2\">{desc}</div>}\n\t\t\t\t{extensionUrl && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>URL:</span>\n\t\t\t\t\t\t{extensionCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${extensionCoordinate?.[\"package-spec\"]?.name || extensionCoordinate?.packageSpec?.name}#${extensionCoordinate?.[\"package-spec\"]?.version || extensionCoordinate?.packageSpec?.version}/sd/${extensionCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{binding && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>Binding:</span>\n\t\t\t\t\t\t{vsCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${vsCoordinate?.[\"package-spec\"]?.name || vsCoordinate?.packageSpec?.name}#${vsCoordinate?.[\"package-spec\"]?.version || vsCoordinate?.packageSpec?.version}/vs/${vsCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nfunction FhirStructureView({\n\ttree,\n}: {\n\ttree: Record<string, TreeViewItem<FhirStructure>>;\n}) {\n\tconst expandedItemIds = React.useMemo(() => {\n\t\treturn Object.keys(tree ?? {});\n\t}, [tree]);\n\n\treturn (\n\t\t<div className=\"h-fit w-fit min-h-0 min-w-0\">\n\t\t\t<div className=\"flex items-center gap-2 font-semibold text-xs text-text-secondary border-b py-2 bg-bg-primary sticky top-0 z-20\">\n\t\t\t\t<div className=\"min-w-[260px] w-[260px] ml-4\">Name</div>\n\t\t\t\t<div className=\"min-w-[60px] w-[60px]\">Flags</div>\n\t\t\t\t<div className=\"min-w-[50px] w-[50px]\">Card.</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Type</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Description</div>\n\t\t\t</div>\n\t\t\t<TreeView\n\t\t\t\tfocusedItem={null}\n\t\t\t\tonFocusedItemChange={() => {}}\n\t\t\t\thideChevron={false}\n\t\t\t\thorizontalLines={true}\n\t\t\t\tdisableHover={true}\n\t\t\t\tzebra={true}\n\t\t\t\trootItemId=\"root\"\n\t\t\t\titems={tree}\n\t\t\t\tcustomItemView={customItemView}\n\t\t\t\tdefaultExpandedItems={expandedItemIds}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport { FhirStructureView, type FhirStructure };\n"],"names":["React","Tooltip","TooltipContent","TooltipTrigger","cn","CustomIcon","TreeView","FiledIcon","item","filedType","getItemData","meta","type","ResourceIcon","BackboneElementIcon","ExtensionIcon","ReferenceIcon","UnionIcon","TypCodeIcon","ComplexTypeIcon","customItemFieldNameClass","customItemView","fieldName","name","cardinalityMin","min","cardinalityMax","max","isSummary","isModifier","mustSupport","datatype","short","desc","extensionUrl","extensionCoordinate","binding","vsCoordinate","div","className","asChild","span","p","id","a","href","packageSpec","version","label","valueSet","FhirStructureView","tree","expandedItemIds","useMemo","Object","keys","focusedItem","onFocusedItemChange","hideChevron","horizontalLines","disableHover","zebra","rootItemId","items","defaultExpandedItems"],"mappings":";AACA,OAAOA,WAAW,QAAQ;AAC1B,SACCC,OAAO,EACPC,cAAc,EACdC,cAAc,QACR,qCAAgC;AACvC,SAASC,EAAE,QAAQ,yBAAuB;AAC1C,YAAYC,gBAAgB,cAAW;AACvC,SAASC,QAAQ,QAA2B,iBAAc;AAiC1D,SAASC,UAAUC,IAA+C;IACjE,MAAMC,YAAYD,KAAKE,WAAW,IAAIC,MAAMC;IAE5C,OAAQH;QACP,KAAK;YACJ,qBAAO,KAACJ,WAAWQ,YAAY;QAChC,KAAK;YACJ,qBAAO,KAACR,WAAWS,mBAAmB;QACvC,KAAK;YACJ,qBAAO,KAACT,WAAWU,aAAa;QACjC,KAAK;YACJ,qBAAO,KAACV,WAAWW,aAAa;QACjC,KAAK;YACJ,qBAAO,KAACX,WAAWY,SAAS;QAC7B,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,KAAK;YACJ,qBAAO,KAACZ,WAAWa,WAAW;QAC/B;YACC,qBAAO,KAACb,WAAWc,eAAe;IACpC;AACD;AAEA,MAAMC,2BAA2BhB,GAChC,QACA,gBACA,YACA,SACA,2CACA,uCACA,6DACA;AAGD,SAASiB,eAAeb,IAA+C;IACtE,MAAMc,YAAYd,KAAKE,WAAW,IAAIa;IACtC,MAAMC,iBAAiBhB,KAAKE,WAAW,IAAIC,MAAMc;IACjD,MAAMC,iBAAiBlB,KAAKE,WAAW,IAAIC,MAAMgB;IACjD,MAAMC,YAAYpB,KAAKE,WAAW,IAAIC,MAAMiB;IAC5C,MAAMC,aAAarB,KAAKE,WAAW,IAAIC,MAAMkB;IAC7C,MAAMC,cAActB,KAAKE,WAAW,IAAIC,MAAMmB;IAC9C,MAAMC,WAAWvB,KAAKE,WAAW,IAAIC,MAAMC;IAC3C,MAAMoB,QAAQxB,KAAKE,WAAW,IAAIC,MAAMqB;IACxC,MAAMC,OAAOzB,KAAKE,WAAW,IAAIC,MAAMsB;IACvC,MAAMC,eAAe1B,KAAKE,WAAW,IAAIC,MAAMuB;IAC/C,MAAMC,sBAAsB3B,KAAKE,WAAW,IAAIC,MAAMwB;IACtD,MAAMC,UAAU5B,KAAKE,WAAW,IAAIC,MAAMyB;IAC1C,MAAMC,eAAe7B,KAAKE,WAAW,IAAIC,MAAM0B;IAC/C,qBACC,MAACC;QAAIC,WAAU;;0BACd,MAACD;gBAAIC,WAAWnB;;oBACdb,UAAUC;oBACVc;;;0BAGF,MAACgB;gBAAIC,WAAU;;oBACbT,6BACA,MAAC7B;;0CACA,KAACE;gCAAeqC,OAAO;0CACtB,cAAA,KAACC;oCAAKF,WAAU;8CAAkE;;;0CAInF,KAACrC;0CACA,cAAA,KAACwC;8CAAE;;;;;oBAILd,2BACA,MAAC3B;;0CACA,KAACE;gCAAeqC,OAAO;0CACtB,cAAA,KAACC;oCAAKF,WAAU;8CAAoC;;;0CAErD,KAACrC;0CACA,cAAA,KAACwC;8CAAE;;;;;oBAILb,4BACA,MAAC5B;;0CACA,KAACE;gCAAeqC,OAAO;0CACtB,cAAA,KAACC;oCAAKF,WAAU;8CAAoC;;;0CAErD,KAACrC;0CACA,cAAA,KAACwC;8CAAE;;;;;;;0BAKP,KAACJ;gBAAIC,WAAU;0BACbf,kBAAkBE,iBAChB,GAAGF,eAAe,EAAE,EAAEE,gBAAgB,GACtC;;0BAEJ,KAACY;gBAAIC,WAAU;0BACbR,aAAa,WAAWA;;0BAE1B,MAACO;gBAAIC,WAAU;;oBACbP,uBAAS,KAACM;wBAAIC,WAAU;kCAAgBP;;oBACxC,CAACA,SAASC,sBAAQ,KAACK;wBAAIC,WAAU;kCAAgBN;;oBACjDC,8BACA,MAACI;wBAAIC,WAAU;;0CACd,KAACE;0CAAK;;4BACLN,qBAAqBQ,mBACrB,KAACC;gCACAC,MAAM,CAAC,KAAK,EAAEV,qBAAqB,CAAC,eAAe,EAAEZ,QAAQY,qBAAqBW,aAAavB,KAAK,CAAC,EAAEY,qBAAqB,CAAC,eAAe,EAAEY,WAAWZ,qBAAqBW,aAAaC,QAAQ,IAAI,EAAEZ,qBAAqBQ,IAAI;gCAClOJ,WAAU;0CAETJ,qBAAqBa,SAASd;+CAGhC,KAACO;gCAAKF,WAAU;0CACdJ,qBAAqBa,SAASd;;;;oBAKlCE,yBACA,MAACE;wBAAIC,WAAU;;0CACd,KAACE;0CAAK;;4BACLJ,cAAcM,mBACd,KAACC;gCACAC,MAAM,CAAC,KAAK,EAAER,cAAc,CAAC,eAAe,EAAEd,QAAQc,cAAcS,aAAavB,KAAK,CAAC,EAAEc,cAAc,CAAC,eAAe,EAAEU,WAAWV,cAAcS,aAAaC,QAAQ,IAAI,EAAEV,cAAcM,IAAI;gCAC/LJ,WAAU;0CAETF,cAAcW,SAASZ,SAASa,YAAY;+CAG9C,KAACR;gCAAKF,WAAU;0CACdF,cAAcW,SAASZ,SAASa,YAAY;;;;;;;;AAQrD;AAEA,SAASC,kBAAkB,EAC1BC,IAAI,EAGJ;IACA,MAAMC,kBAAkBpD,MAAMqD,OAAO,CAAC;QACrC,OAAOC,OAAOC,IAAI,CAACJ,QAAQ,CAAC;IAC7B,GAAG;QAACA;KAAK;IAET,qBACC,MAACb;QAAIC,WAAU;;0BACd,MAACD;gBAAIC,WAAU;;kCACd,KAACD;wBAAIC,WAAU;kCAA+B;;kCAC9C,KAACD;wBAAIC,WAAU;kCAAwB;;kCACvC,KAACD;wBAAIC,WAAU;kCAAwB;;kCACvC,KAACD;wBAAIC,WAAU;kCAA0B;;kCACzC,KAACD;wBAAIC,WAAU;kCAA0B;;;;0BAE1C,KAACjC;gBACAkD,aAAa;gBACbC,qBAAqB,KAAO;gBAC5BC,aAAa;gBACbC,iBAAiB;gBACjBC,cAAc;gBACdC,OAAO;gBACPC,YAAW;gBACXC,OAAOZ;gBACP9B,gBAAgBA;gBAChB2C,sBAAsBZ;;;;AAI1B;AAEA,SAASF,iBAAiB,GAAuB"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/fhir-structure-view.tsx"],"sourcesContent":["import type { ItemInstance } from \"@headless-tree/core\";\nimport React from \"react\";\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from \"#shadcn/components/ui/tooltip\";\nimport { cn } from \"#shadcn/lib/utils.js\";\nimport * as CustomIcon from \"../icons\";\nimport { TreeView, type TreeViewItem } from \"./tree-view\";\n\ntype PackageSpec = {\n\tname: string;\n\tversion: string;\n};\n\ntype Coordinate = {\n\tid?: string;\n\tpackageSpec?: PackageSpec;\n\t\"package-spec\"?: PackageSpec;\n\tlabel?: string;\n};\n\ntype FhirStructure = {\n\ttype?: string;\n\tmin?: string | number;\n\tmax?: string | number;\n\tlastNode?: boolean;\n\tisSummary?: boolean;\n\tisModifier?: boolean;\n\tmustSupport?: boolean;\n\tdatatype?: string;\n\tshort?: string;\n\tdesc?: string;\n\textensionUrl?: string;\n\textensionCoordinate?: Coordinate;\n\tbinding?: {\n\t\tvalueSet: string;\n\t};\n\tvsCoordinate?: Coordinate;\n};\n\nfunction FiledIcon(item: ItemInstance<TreeViewItem<FhirStructure>>) {\n\tconst filedType = item.getItemData()?.meta?.type;\n\n\tswitch (filedType) {\n\t\tcase \"Resource\":\n\t\t\treturn <CustomIcon.ResourceIcon />;\n\t\tcase \"BackboneElement\":\n\t\t\treturn <CustomIcon.BackboneElementIcon />;\n\t\tcase \"Extension\":\n\t\t\treturn <CustomIcon.ExtensionIcon />;\n\t\tcase \"Reference\":\n\t\t\treturn <CustomIcon.ReferenceIcon />;\n\t\tcase \"union\":\n\t\t\treturn <CustomIcon.UnionIcon />;\n\t\tcase \"instant\":\n\t\tcase \"time\":\n\t\tcase \"date\":\n\t\tcase \"dateTime\":\n\t\tcase \"decimal\":\n\t\tcase \"boolean\":\n\t\tcase \"integer\":\n\t\tcase \"string\":\n\t\tcase \"uri\":\n\t\tcase \"base64Binary\":\n\t\tcase \"code\":\n\t\tcase \"id\":\n\t\tcase \"oid\":\n\t\tcase \"unsignedInt\":\n\t\tcase \"positiveInt\":\n\t\tcase \"markdown\":\n\t\tcase \"url\":\n\t\tcase \"canonical\":\n\t\tcase \"uuid\":\n\t\tcase \"integer64\":\n\t\t\treturn <CustomIcon.TypCodeIcon />;\n\t\tdefault:\n\t\t\treturn <CustomIcon.ComplexTypeIcon />;\n\t}\n}\n\nconst customItemFieldNameClass = cn(\n\t\"flex\",\n\t\"items-center\",\n\t\"truncate\",\n\t\"gap-2\",\n\t\"min-w-[calc(260px-var(--tree-padding))]\",\n\t\"w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:min-w-[calc(260px-var(--tree-padding))]\",\n);\n\nfunction customItemView(item: ItemInstance<TreeViewItem<FhirStructure>>) {\n\tconst fieldName = item.getItemData()?.name;\n\tconst cardinalityMin = item.getItemData()?.meta?.min;\n\tconst cardinalityMax = item.getItemData()?.meta?.max;\n\tconst isSummary = item.getItemData()?.meta?.isSummary;\n\tconst isModifier = item.getItemData()?.meta?.isModifier;\n\tconst mustSupport = item.getItemData()?.meta?.mustSupport;\n\tconst datatype = item.getItemData()?.meta?.type;\n\tconst short = item.getItemData()?.meta?.short;\n\tconst desc = item.getItemData()?.meta?.desc;\n\tconst extensionUrl = item.getItemData()?.meta?.extensionUrl;\n\tconst extensionCoordinate = item.getItemData()?.meta?.extensionCoordinate;\n\tconst binding = item.getItemData()?.meta?.binding;\n\tconst vsCoordinate = item.getItemData()?.meta?.vsCoordinate;\n\treturn (\n\t\t<div className=\"flex items-start gap-2 text-xs\">\n\t\t\t<div className={customItemFieldNameClass}>\n\t\t\t\t{FiledIcon(item)}\n\t\t\t\t{fieldName}\n\t\t\t</div>\n\n\t\t\t<div className=\"flex items-center gap-1 min-w-[60px] w-[60px]\">\n\t\t\t\t{mustSupport && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] text-white bg-red-600 rounded cursor-help\">\n\t\t\t\t\t\t\t\tS\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Must be supported</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isSummary && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">Σ</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Part of the summary set</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isModifier && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">!?</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Modifying element</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t<div className=\"flex items-center gap-1 min-w-[50px] w-[50px] typo-code\">\n\t\t\t\t{cardinalityMin && cardinalityMax\n\t\t\t\t\t? `${cardinalityMin}..${cardinalityMax}`\n\t\t\t\t\t: \"\"}\n\t\t\t</div>\n\t\t\t<div className=\"flex gap-1 w-[200px] min-w-[200px]\">\n\t\t\t\t{datatype !== \"union\" && datatype}\n\t\t\t</div>\n\t\t\t<div className=\"text-left overflow-hidden\">\n\t\t\t\t{short && <div className=\"line-clamp-2\">{short}</div>}\n\t\t\t\t{!short && desc && <div className=\"line-clamp-2\">{desc}</div>}\n\t\t\t\t{extensionUrl && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>URL:</span>\n\t\t\t\t\t\t{extensionCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${extensionCoordinate?.[\"package-spec\"]?.name || extensionCoordinate?.packageSpec?.name}#${extensionCoordinate?.[\"package-spec\"]?.version || extensionCoordinate?.packageSpec?.version}/sd/${extensionCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{binding && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>Binding:</span>\n\t\t\t\t\t\t{vsCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${vsCoordinate?.[\"package-spec\"]?.name || vsCoordinate?.packageSpec?.name}#${vsCoordinate?.[\"package-spec\"]?.version || vsCoordinate?.packageSpec?.version}/vs/${vsCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nfunction FhirStructureView({\n\ttree,\n}: {\n\ttree: Record<string, TreeViewItem<FhirStructure>>;\n}) {\n\tconst expandedItemIds = React.useMemo(() => {\n\t\treturn Object.keys(tree ?? {});\n\t}, [tree]);\n\n\treturn (\n\t\t<div className=\"min-h-0 min-w-0\">\n\t\t\t<div className=\"flex items-center gap-2 font-semibold text-xs text-text-secondary border-b py-2 pl-[34px] bg-bg-primary sticky top-0 z-20\">\n\t\t\t\t<div className=\"min-w-[260px] w-[260px]\">Name</div>\n\t\t\t\t<div className=\"min-w-[60px] w-[60px]\">Flags</div>\n\t\t\t\t<div className=\"min-w-[50px] w-[50px]\">Card.</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Type</div>\n\t\t\t\t<div className=\"flex-1\">Description</div>\n\t\t\t</div>\n\t\t\t<TreeView\n\t\t\t\tfocusedItem={null}\n\t\t\t\tonFocusedItemChange={() => {}}\n\t\t\t\thideChevron={false}\n\t\t\t\thorizontalLines={true}\n\t\t\t\tdisableHover={true}\n\t\t\t\tzebra={true}\n\t\t\t\trootItemId=\"root\"\n\t\t\t\titems={tree}\n\t\t\t\tcustomItemView={customItemView}\n\t\t\t\tdefaultExpandedItems={expandedItemIds}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport { FhirStructureView, type FhirStructure };\n"],"names":["React","Tooltip","TooltipContent","TooltipTrigger","cn","CustomIcon","TreeView","FiledIcon","item","filedType","getItemData","meta","type","ResourceIcon","BackboneElementIcon","ExtensionIcon","ReferenceIcon","UnionIcon","TypCodeIcon","ComplexTypeIcon","customItemFieldNameClass","customItemView","fieldName","name","cardinalityMin","min","cardinalityMax","max","isSummary","isModifier","mustSupport","datatype","short","desc","extensionUrl","extensionCoordinate","binding","vsCoordinate","div","className","asChild","span","p","id","a","href","packageSpec","version","label","valueSet","FhirStructureView","tree","expandedItemIds","useMemo","Object","keys","focusedItem","onFocusedItemChange","hideChevron","horizontalLines","disableHover","zebra","rootItemId","items","defaultExpandedItems"],"mappings":"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"}
|
package/dist/src/index.css
CHANGED
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
stroke-width: 1.5px;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
@theme {
|
|
21
|
-
--color-selection: var(--
|
|
20
|
+
@theme inline {
|
|
21
|
+
--color-selection: var(--hs-selection);
|
|
22
22
|
--color-ring-red: var(--color-red-200);
|
|
23
23
|
--color-ring-green: var(--color-green-200);
|
|
24
24
|
--color-ring-yellow: var(--color-yellow-200);
|
|
@@ -26,36 +26,35 @@
|
|
|
26
26
|
--color-ring-orange: var(--color-orange-200);
|
|
27
27
|
--color-ring-pink: var(--color-pink-200);
|
|
28
28
|
--color-ring-blue: var(--color-blue-300);
|
|
29
|
-
--color-
|
|
30
|
-
--color-text-
|
|
31
|
-
--color-text-
|
|
32
|
-
--color-text-
|
|
33
|
-
--color-text-
|
|
34
|
-
--color-text-
|
|
35
|
-
--color-text-
|
|
36
|
-
--color-text-
|
|
37
|
-
--color-text-
|
|
38
|
-
--color-text-
|
|
39
|
-
--color-text-
|
|
40
|
-
--color-text-
|
|
41
|
-
--color-text-
|
|
42
|
-
--color-text-
|
|
43
|
-
--color-text-
|
|
44
|
-
--color-text-brand-
|
|
45
|
-
--color-text-brand-
|
|
46
|
-
--color-text-
|
|
47
|
-
--color-text-error-
|
|
48
|
-
--color-text-
|
|
49
|
-
--color-text-
|
|
50
|
-
--color-text-
|
|
51
|
-
--color-text-info-primary: var(--color-blue-600);
|
|
29
|
+
--color-text-primary: var(--hs-text-primary);
|
|
30
|
+
--color-text-secondary: var(--hs-text-secondary);
|
|
31
|
+
--color-text-secondary_hover: var(--hs-text-secondary-hover);
|
|
32
|
+
--color-text-primary_on-brand: var(--hs-text-primary-on-brand);
|
|
33
|
+
--color-text-secondary_on-brand: var(--hs-text-secondary-on-brand);
|
|
34
|
+
--color-text-tertiary: var(--hs-text-tertiary);
|
|
35
|
+
--color-text-tertiary_hover: var(--hs-text-tertiary-hover);
|
|
36
|
+
--color-text-quternary: var(--hs-text-quaternary);
|
|
37
|
+
--color-text-quternary_hover: var(--hs-text-quaternary-hover);
|
|
38
|
+
--color-text-quternary_on-brand: var(--hs-text-quaternary-on-brand);
|
|
39
|
+
--color-text-disabled: var(--hs-text-disabled);
|
|
40
|
+
--color-text-link: var(--hs-text-link);
|
|
41
|
+
--color-text-link_hover: var(--hs-text-link-hover);
|
|
42
|
+
--color-text-link_disabled: var(--hs-text-link-disabled);
|
|
43
|
+
--color-text-brand-primary: var(--hs-text-brand-primary);
|
|
44
|
+
--color-text-brand-secondary: var(--hs-text-brand-secondary);
|
|
45
|
+
--color-text-brand-secondary_hover: var(--hs-text-brand-secondary-hover);
|
|
46
|
+
--color-text-error-primary: var(--hs-text-error-primary);
|
|
47
|
+
--color-text-error-secondary: var(--hs-text-error-secondary);
|
|
48
|
+
--color-text-success-primary: var(--hs-text-success-primary);
|
|
49
|
+
--color-text-warning-primary: var(--hs-text-warning-primary);
|
|
50
|
+
--color-text-info-primary: var(--hs-text-info-primary);
|
|
52
51
|
--color-white: #ffffff;
|
|
53
|
-
--color-border-primary: var(--
|
|
54
|
-
--color-border-primary_hover: var(--
|
|
55
|
-
--color-border-secondary: var(--
|
|
56
|
-
--color-border-separator: var(--
|
|
57
|
-
--color-border-disabled: var(--
|
|
58
|
-
--color-border-dark: var(--
|
|
52
|
+
--color-border-primary: var(--hs-border-primary);
|
|
53
|
+
--color-border-primary_hover: var(--hs-border-primary-hover);
|
|
54
|
+
--color-border-secondary: var(--hs-border-secondary);
|
|
55
|
+
--color-border-separator: var(--hs-border-separator);
|
|
56
|
+
--color-border-disabled: var(--hs-border-disabled);
|
|
57
|
+
--color-border-dark: var(--hs-border-dark);
|
|
59
58
|
--color-border-brand: var(--color-brand-500);
|
|
60
59
|
--color-border-link: var(--color-blue-500);
|
|
61
60
|
--color-border-error: var(--color-red-500);
|
|
@@ -64,79 +63,282 @@
|
|
|
64
63
|
--color-border-success: var(--color-green-500);
|
|
65
64
|
--color-border-warning-primary: var(--color-yellow-500);
|
|
66
65
|
--color-border-warning-secondary: var(--color-yellow-300);
|
|
67
|
-
--color-bg-primary:
|
|
68
|
-
--color-bg-primary_inverse: var(--
|
|
69
|
-
--color-bg-secondary: var(--
|
|
70
|
-
--color-bg-secondary_inverse: var(--
|
|
71
|
-
--color-bg-secondary_inverse_hover: var(--
|
|
72
|
-
|
|
73
|
-
--color-bg-
|
|
74
|
-
--color-bg-
|
|
75
|
-
--color-bg-
|
|
76
|
-
--color-bg-
|
|
77
|
-
--color-bg-
|
|
78
|
-
--color-bg-
|
|
79
|
-
--color-bg-
|
|
80
|
-
|
|
81
|
-
--color-bg-brand-
|
|
82
|
-
--color-bg-brand-
|
|
83
|
-
--color-bg-
|
|
84
|
-
--color-bg-
|
|
85
|
-
|
|
86
|
-
--color-bg-
|
|
87
|
-
--color-bg-
|
|
88
|
-
--color-bg-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
--color-bg-error-
|
|
92
|
-
--color-bg-error-
|
|
93
|
-
--color-bg-
|
|
94
|
-
--color-bg-success-
|
|
95
|
-
--color-bg-success-
|
|
96
|
-
--color-bg-
|
|
97
|
-
--color-bg-warning-
|
|
98
|
-
--color-bg-warning-
|
|
99
|
-
--color-bg-
|
|
100
|
-
--color-bg-info-
|
|
101
|
-
--color-bg-
|
|
102
|
-
--color-bg-neutral-
|
|
103
|
-
--color-
|
|
104
|
-
--color-fg-
|
|
105
|
-
--color-fg-
|
|
106
|
-
--color-fg-
|
|
107
|
-
--color-fg-
|
|
108
|
-
--color-fg-
|
|
109
|
-
--color-fg-
|
|
110
|
-
--color-fg-
|
|
111
|
-
--color-fg-
|
|
112
|
-
--color-fg-
|
|
113
|
-
--color-fg-
|
|
114
|
-
--color-fg-
|
|
115
|
-
--color-fg-brand-
|
|
116
|
-
--color-fg-
|
|
117
|
-
--color-fg-
|
|
118
|
-
--color-fg-error-
|
|
119
|
-
--color-fg-
|
|
120
|
-
--color-fg-success-
|
|
121
|
-
--color-fg-
|
|
122
|
-
--color-fg-warning-
|
|
123
|
-
--color-fg-
|
|
124
|
-
--color-fg-
|
|
125
|
-
--color-fg-neutral-primary: var(--color-neutral-500);
|
|
66
|
+
--color-bg-primary: var(--hs-bg-primary);
|
|
67
|
+
--color-bg-primary_inverse: var(--hs-bg-primary-inverse);
|
|
68
|
+
--color-bg-secondary: var(--hs-bg-secondary);
|
|
69
|
+
--color-bg-secondary_inverse: var(--hs-bg-secondary-inverse);
|
|
70
|
+
--color-bg-secondary_inverse_hover: var(--hs-bg-secondary-inverse-hover);
|
|
71
|
+
--color-bg-tertiary: var(--hs-bg-tertiary);
|
|
72
|
+
--color-bg-tertiary_inverse: var(--hs-bg-tertiary-inverse);
|
|
73
|
+
--color-bg-quaternary: var(--hs-bg-quaternary);
|
|
74
|
+
--color-bg-overlay: var(--hs-bg-overlay);
|
|
75
|
+
--color-bg-disabled: var(--hs-bg-disabled);
|
|
76
|
+
--color-bg-hover: var(--hs-bg-hover);
|
|
77
|
+
--color-bg-dark_tertiary: var(--hs-bg-dark-tertiary);
|
|
78
|
+
--color-bg-brand-primary: var(--hs-bg-brand-primary);
|
|
79
|
+
--color-bg-brand-primary_inverse: var(--hs-bg-brand-primary-inverse);
|
|
80
|
+
--color-bg-brand-secondary: var(--hs-bg-brand-secondary);
|
|
81
|
+
--color-bg-brand-tertiary: var(--hs-bg-brand-tertiary);
|
|
82
|
+
--color-bg-link: var(--hs-bg-link);
|
|
83
|
+
--color-bg-link_disabled: var(--hs-bg-link-disabled);
|
|
84
|
+
--color-bg-link_hover: var(--hs-bg-link-hover);
|
|
85
|
+
--color-bg-error-primary: var(--hs-bg-error-primary);
|
|
86
|
+
--color-bg-error-primary_inverse: var(--hs-bg-error-primary-inverse);
|
|
87
|
+
--color-bg-error-primary_inverse_hover: var(
|
|
88
|
+
--hs-bg-error-primary-inverse-hover
|
|
89
|
+
);
|
|
90
|
+
--color-bg-error-secondary: var(--hs-bg-error-secondary);
|
|
91
|
+
--color-bg-error-tertiary: var(--hs-bg-error-tertiary);
|
|
92
|
+
--color-bg-success-primary: var(--hs-bg-success-primary);
|
|
93
|
+
--color-bg-success-primary_inverse: var(--hs-bg-success-primary-inverse);
|
|
94
|
+
--color-bg-success-secondary: var(--hs-bg-success-secondary);
|
|
95
|
+
--color-bg-warning-primary: var(--hs-bg-warning-primary);
|
|
96
|
+
--color-bg-warning-primary_inverse: var(--hs-bg-warning-primary-inverse);
|
|
97
|
+
--color-bg-warning-secondary: var(--hs-bg-warning-secondary);
|
|
98
|
+
--color-bg-info-primary: var(--hs-bg-info-primary);
|
|
99
|
+
--color-bg-info-primary_inverse: var(--hs-bg-info-primary-inverse);
|
|
100
|
+
--color-bg-neutral-primary: var(--hs-bg-neutral-primary);
|
|
101
|
+
--color-bg-neutral-primary_inverse: var(--hs-bg-neutral-primary-inverse);
|
|
102
|
+
--color-fg-primary: var(--hs-fg-primary);
|
|
103
|
+
--color-fg-primary_inverse: var(--hs-fg-primary-inverse);
|
|
104
|
+
--color-fg-primary_on-brand: var(--hs-fg-primary-on-brand);
|
|
105
|
+
--color-fg-secondary: var(--hs-fg-secondary);
|
|
106
|
+
--color-fg-secondary_inverse: var(--hs-fg-secondary-inverse);
|
|
107
|
+
--color-fg-secondary_hover: var(--hs-fg-secondary-hover);
|
|
108
|
+
--color-fg-secondary_on-brand: var(--hs-fg-secondary-on-brand);
|
|
109
|
+
--color-fg-tertiary: var(--hs-fg-tertiary);
|
|
110
|
+
--color-fg-tertiary_hover: var(--hs-fg-tertiary-hover);
|
|
111
|
+
--color-fg-tertiary_on-brand: var(--hs-fg-tertiary-on-brand);
|
|
112
|
+
--color-fg-disabled: var(--hs-fg-disabled);
|
|
113
|
+
--color-fg-brand-primary: var(--hs-fg-brand-primary);
|
|
114
|
+
--color-fg-brand-secondary: var(--hs-fg-brand-secondary);
|
|
115
|
+
--color-fg-link: var(--hs-fg-link);
|
|
116
|
+
--color-fg-error-primary: var(--hs-fg-error-primary);
|
|
117
|
+
--color-fg-error-secondary: var(--hs-fg-error-secondary);
|
|
118
|
+
--color-fg-success-primary: var(--hs-fg-success-primary);
|
|
119
|
+
--color-fg-success-secondary: var(--hs-fg-success-secondary);
|
|
120
|
+
--color-fg-warning-primary: var(--hs-fg-warning-primary);
|
|
121
|
+
--color-fg-warning-secondary: var(--hs-fg-warning-secondary);
|
|
122
|
+
--color-fg-info-primary: var(--hs-fg-info-primary);
|
|
123
|
+
--color-fg-neutral-primary: var(--hs-fg-neutral-primary);
|
|
126
124
|
--color-utility-green: var(--color-green-500);
|
|
127
125
|
--color-utility-yellow: var(--color-yellow-600);
|
|
128
126
|
--color-utility-blue: var(--color-blue-500);
|
|
129
127
|
--color-utility-violet: var(--color-violet-500);
|
|
130
128
|
--color-utility-red: var(--color-red-500);
|
|
131
|
-
|
|
132
129
|
--font-leading-14: 56px;
|
|
133
130
|
}
|
|
134
131
|
|
|
132
|
+
:root {
|
|
133
|
+
--hs-selection: var(--color-blue-300);
|
|
134
|
+
--hs-text-primary: var(--color-neutral-900);
|
|
135
|
+
--hs-text-secondary: var(--color-neutral-500);
|
|
136
|
+
--hs-text-secondary-hover: var(--color-neutral-600);
|
|
137
|
+
--hs-text-primary-on-brand: var(--color-neutral-50);
|
|
138
|
+
--hs-text-secondary-on-brand: var(--color-neutral-100);
|
|
139
|
+
--hs-text-tertiary: var(--color-neutral-400);
|
|
140
|
+
--hs-text-tertiary-hover: var(--color-neutral-500);
|
|
141
|
+
--hs-text-quaternary: var(--color-neutral-400);
|
|
142
|
+
--hs-text-quaternary-hover: var(--color-neutral-500);
|
|
143
|
+
--hs-text-quaternary-on-brand: var(--color-neutral-200);
|
|
144
|
+
--hs-text-disabled: var(--color-neutral-300);
|
|
145
|
+
--hs-text-link: var(--color-blue-500);
|
|
146
|
+
--hs-text-link-hover: var(--color-blue-700);
|
|
147
|
+
--hs-text-link-disabled: var(--color-blue-400);
|
|
148
|
+
--hs-text-brand-primary: var(--color-brand-500);
|
|
149
|
+
--hs-text-brand-secondary: var(--color-brand-300);
|
|
150
|
+
--hs-text-brand-secondary-hover: var(--color-brand-400);
|
|
151
|
+
--hs-text-error-primary: var(--color-red-500);
|
|
152
|
+
--hs-text-error-secondary: var(--color-red-400);
|
|
153
|
+
--hs-text-success-primary: var(--color-green-500);
|
|
154
|
+
--hs-text-warning-primary: var(--color-yellow-700);
|
|
155
|
+
--hs-text-info-primary: var(--color-blue-600);
|
|
156
|
+
--hs-border-primary: var(--color-neutral-300);
|
|
157
|
+
--hs-border-primary-hover: var(--color-neutral-400);
|
|
158
|
+
--hs-border-secondary: var(--color-neutral-200);
|
|
159
|
+
--hs-border-separator: var(--color-neutral-200);
|
|
160
|
+
--hs-border-disabled: var(--color-neutral-100);
|
|
161
|
+
--hs-border-dark: var(--color-neutral-500);
|
|
162
|
+
--hs-bg-primary: #ffffff;
|
|
163
|
+
--hs-bg-primary-inverse: var(--color-neutral-900);
|
|
164
|
+
--hs-bg-secondary: var(--color-neutral-50);
|
|
165
|
+
--hs-bg-secondary-inverse: var(--color-neutral-500);
|
|
166
|
+
--hs-bg-secondary-inverse-hover: var(--color-neutral-600);
|
|
167
|
+
--hs-bg-tertiary: var(--color-neutral-100);
|
|
168
|
+
--hs-bg-tertiary-inverse: var(--color-neutral-400);
|
|
169
|
+
--hs-bg-quaternary: var(--color-neutral-200);
|
|
170
|
+
--hs-bg-overlay: var(--color-neutral-900);
|
|
171
|
+
--hs-bg-disabled: var(--color-neutral-300);
|
|
172
|
+
--hs-bg-hover: var(--color-blue-200);
|
|
173
|
+
--hs-bg-dark-tertiary: var(--color-neutral-400);
|
|
174
|
+
--hs-bg-brand-primary: var(--color-brand-50);
|
|
175
|
+
--hs-bg-brand-primary-inverse: var(--color-brand-500);
|
|
176
|
+
--hs-bg-brand-secondary: var(--color-brand-100);
|
|
177
|
+
--hs-bg-brand-tertiary: var(--color-brand-200);
|
|
178
|
+
--hs-bg-link: var(--color-blue-500);
|
|
179
|
+
--hs-bg-link-disabled: var(--color-blue-400);
|
|
180
|
+
--hs-bg-link-hover: var(--color-blue-600);
|
|
181
|
+
--hs-bg-error-primary: var(--color-red-50);
|
|
182
|
+
--hs-bg-error-primary-inverse: var(--color-red-500);
|
|
183
|
+
--hs-bg-error-primary-inverse-hover: var(--color-red-700);
|
|
184
|
+
--hs-bg-error-secondary: var(--color-red-100);
|
|
185
|
+
--hs-bg-error-tertiary: var(--color-red-200);
|
|
186
|
+
--hs-bg-success-primary: var(--color-green-50);
|
|
187
|
+
--hs-bg-success-primary-inverse: var(--color-green-500);
|
|
188
|
+
--hs-bg-success-secondary: var(--color-green-100);
|
|
189
|
+
--hs-bg-warning-primary: var(--color-yellow-50);
|
|
190
|
+
--hs-bg-warning-primary-inverse: #f4cb00;
|
|
191
|
+
--hs-bg-warning-secondary: var(--color-yellow-100);
|
|
192
|
+
--hs-bg-info-primary: var(--color-blue-100);
|
|
193
|
+
--hs-bg-info-primary-inverse: var(--color-blue-500);
|
|
194
|
+
--hs-bg-neutral-primary: var(--color-neutral-100);
|
|
195
|
+
--hs-bg-neutral-primary-inverse: var(--color-neutral-900);
|
|
196
|
+
--hs-fg-primary: var(--color-neutral-900);
|
|
197
|
+
--hs-fg-primary-inverse: #ffffff;
|
|
198
|
+
--hs-fg-primary-on-brand: var(--color-neutral-50);
|
|
199
|
+
--hs-fg-secondary: var(--color-neutral-700);
|
|
200
|
+
--hs-fg-secondary-inverse: var(--color-neutral-400);
|
|
201
|
+
--hs-fg-secondary-hover: var(--color-neutral-800);
|
|
202
|
+
--hs-fg-secondary-on-brand: var(--color-neutral-100);
|
|
203
|
+
--hs-fg-tertiary: var(--color-neutral-500);
|
|
204
|
+
--hs-fg-tertiary-hover: var(--color-neutral-600);
|
|
205
|
+
--hs-fg-tertiary-on-brand: var(--color-neutral-200);
|
|
206
|
+
--hs-fg-disabled: var(--color-neutral-300);
|
|
207
|
+
--hs-fg-brand-primary: var(--color-brand-500);
|
|
208
|
+
--hs-fg-brand-secondary: var(--color-brand-300);
|
|
209
|
+
--hs-fg-link: var(--color-blue-500);
|
|
210
|
+
--hs-fg-error-primary: var(--color-red-500);
|
|
211
|
+
--hs-fg-error-secondary: var(--color-red-400);
|
|
212
|
+
--hs-fg-success-primary: var(--color-green-500);
|
|
213
|
+
--hs-fg-success-secondary: var(--color-green-400);
|
|
214
|
+
--hs-fg-warning-primary: var(--color-yellow-700);
|
|
215
|
+
--hs-fg-warning-secondary: var(--color-yellow-400);
|
|
216
|
+
--hs-fg-info-primary: var(--color-blue-600);
|
|
217
|
+
--hs-fg-neutral-primary: var(--color-neutral-500);
|
|
218
|
+
--hs-syntax-property: #ea4a35;
|
|
219
|
+
--hs-syntax-string: #405cbf;
|
|
220
|
+
--hs-syntax-number: #00a984;
|
|
221
|
+
--hs-syntax-keyword: #569cd6;
|
|
222
|
+
--hs-syntax-comment: #00a984;
|
|
223
|
+
}
|
|
224
|
+
|
|
135
225
|
@theme inline {
|
|
136
226
|
--font-family-sans: "Inter", system-ui, sans-serif;
|
|
137
227
|
--font-family-mono: "JetBrains Mono", monospace;
|
|
138
228
|
}
|
|
139
229
|
|
|
230
|
+
.dark {
|
|
231
|
+
/* tokens.css overrides */
|
|
232
|
+
--hs-elements-readable: oklch(0.985 0 0);
|
|
233
|
+
--hs-elements-readable-inv: oklch(0.205 0 0);
|
|
234
|
+
--hs-elements-assistive: oklch(0.556 0 0);
|
|
235
|
+
--hs-elements-disabled: oklch(0.371 0 0);
|
|
236
|
+
--hs-surface-0: oklch(0.178 0 0);
|
|
237
|
+
--hs-surface-1: oklch(0.205 0 0);
|
|
238
|
+
--hs-surface-selected: oklch(0.269 0 0);
|
|
239
|
+
--hs-border-default: oklch(1 0 0 / 10%);
|
|
240
|
+
--hs-separator: oklch(1 0 0 / 8%);
|
|
241
|
+
|
|
242
|
+
/* Selection */
|
|
243
|
+
--hs-selection: var(--color-blue-800);
|
|
244
|
+
|
|
245
|
+
/* Text */
|
|
246
|
+
--hs-text-primary: oklch(0.985 0 0);
|
|
247
|
+
--hs-text-secondary: oklch(0.556 0 0);
|
|
248
|
+
--hs-text-secondary-hover: oklch(0.708 0 0);
|
|
249
|
+
--hs-text-primary-on-brand: oklch(0.985 0 0);
|
|
250
|
+
--hs-text-secondary-on-brand: oklch(0.87 0 0);
|
|
251
|
+
--hs-text-tertiary: oklch(0.45 0 0);
|
|
252
|
+
--hs-text-tertiary-hover: oklch(0.556 0 0);
|
|
253
|
+
--hs-text-quaternary: oklch(0.45 0 0);
|
|
254
|
+
--hs-text-quaternary-hover: oklch(0.556 0 0);
|
|
255
|
+
--hs-text-disabled: oklch(0.371 0 0);
|
|
256
|
+
--hs-text-link: var(--color-blue-400);
|
|
257
|
+
--hs-text-link-hover: var(--color-blue-300);
|
|
258
|
+
--hs-text-link-disabled: var(--color-blue-600);
|
|
259
|
+
--hs-text-brand-primary: var(--color-brand-400);
|
|
260
|
+
--hs-text-brand-secondary: var(--color-brand-300);
|
|
261
|
+
--hs-text-brand-secondary-hover: var(--color-brand-200);
|
|
262
|
+
--hs-text-error-primary: var(--color-red-400);
|
|
263
|
+
--hs-text-error-secondary: var(--color-red-300);
|
|
264
|
+
--hs-text-success-primary: var(--color-green-400);
|
|
265
|
+
--hs-text-warning-primary: var(--color-yellow-500);
|
|
266
|
+
--hs-text-info-primary: var(--color-blue-400);
|
|
267
|
+
|
|
268
|
+
/* Borders */
|
|
269
|
+
--hs-border-primary: oklch(1 0 0 / 12%);
|
|
270
|
+
--hs-border-primary-hover: oklch(1 0 0 / 18%);
|
|
271
|
+
--hs-border-secondary: oklch(1 0 0 / 8%);
|
|
272
|
+
--hs-border-separator: oklch(1 0 0 / 8%);
|
|
273
|
+
--hs-border-disabled: oklch(1 0 0 / 5%);
|
|
274
|
+
--hs-border-dark: oklch(0.556 0 0);
|
|
275
|
+
|
|
276
|
+
/* Backgrounds — primary/secondary swapped */
|
|
277
|
+
--hs-bg-primary: #1a1a1a;
|
|
278
|
+
--hs-bg-primary-inverse: oklch(0.985 0 0);
|
|
279
|
+
--hs-bg-secondary: oklch(0.188 0 0);
|
|
280
|
+
--hs-bg-secondary-inverse: oklch(0.556 0 0);
|
|
281
|
+
--hs-bg-secondary-inverse-hover: oklch(0.708 0 0);
|
|
282
|
+
--hs-bg-tertiary: oklch(0.198 0 0);
|
|
283
|
+
--hs-bg-tertiary-inverse: oklch(0.45 0 0);
|
|
284
|
+
--hs-bg-quaternary: oklch(0.269 0 0);
|
|
285
|
+
--hs-bg-overlay: oklch(0.1 0 0);
|
|
286
|
+
--hs-bg-disabled: oklch(0.269 0 0);
|
|
287
|
+
--hs-bg-hover: var(--color-blue-900);
|
|
288
|
+
--hs-bg-dark-tertiary: oklch(0.371 0 0);
|
|
289
|
+
--hs-bg-brand-primary: var(--color-brand-950);
|
|
290
|
+
--hs-bg-brand-primary-inverse: var(--color-brand-400);
|
|
291
|
+
--hs-bg-brand-secondary: var(--color-brand-900);
|
|
292
|
+
--hs-bg-brand-tertiary: var(--color-brand-800);
|
|
293
|
+
--hs-bg-link: var(--color-blue-500);
|
|
294
|
+
--hs-bg-link-hover: var(--color-blue-400);
|
|
295
|
+
--hs-bg-link-disabled: var(--color-blue-600);
|
|
296
|
+
--hs-bg-error-primary: var(--color-red-950);
|
|
297
|
+
--hs-bg-error-primary-inverse: var(--color-red-500);
|
|
298
|
+
--hs-bg-error-primary-inverse-hover: var(--color-red-400);
|
|
299
|
+
--hs-bg-error-secondary: var(--color-red-900);
|
|
300
|
+
--hs-bg-error-tertiary: var(--color-red-800);
|
|
301
|
+
--hs-bg-success-primary: var(--color-green-950);
|
|
302
|
+
--hs-bg-success-primary-inverse: var(--color-green-500);
|
|
303
|
+
--hs-bg-success-secondary: var(--color-green-900);
|
|
304
|
+
--hs-bg-warning-primary: var(--color-yellow-950);
|
|
305
|
+
--hs-bg-warning-primary-inverse: var(--color-yellow-500);
|
|
306
|
+
--hs-bg-warning-secondary: var(--color-yellow-900);
|
|
307
|
+
--hs-bg-info-primary: var(--color-blue-900);
|
|
308
|
+
--hs-bg-info-primary-inverse: var(--color-blue-400);
|
|
309
|
+
--hs-bg-neutral-primary: oklch(0.205 0 0);
|
|
310
|
+
--hs-bg-neutral-primary-inverse: oklch(0.985 0 0);
|
|
311
|
+
|
|
312
|
+
/* Foreground */
|
|
313
|
+
--hs-fg-primary: oklch(0.985 0 0);
|
|
314
|
+
--hs-fg-primary-inverse: oklch(0.205 0 0);
|
|
315
|
+
--hs-fg-primary-on-brand: oklch(0.985 0 0);
|
|
316
|
+
--hs-fg-secondary: oklch(0.708 0 0);
|
|
317
|
+
--hs-fg-secondary-inverse: oklch(0.371 0 0);
|
|
318
|
+
--hs-fg-secondary-hover: oklch(0.87 0 0);
|
|
319
|
+
--hs-fg-secondary-on-brand: oklch(0.87 0 0);
|
|
320
|
+
--hs-fg-tertiary: oklch(0.556 0 0);
|
|
321
|
+
--hs-fg-tertiary-hover: oklch(0.708 0 0);
|
|
322
|
+
--hs-fg-tertiary-on-brand: oklch(0.708 0 0);
|
|
323
|
+
--hs-fg-disabled: oklch(0.371 0 0);
|
|
324
|
+
--hs-fg-brand-primary: var(--color-brand-400);
|
|
325
|
+
--hs-fg-brand-secondary: var(--color-brand-300);
|
|
326
|
+
--hs-fg-link: var(--color-blue-400);
|
|
327
|
+
--hs-fg-error-primary: var(--color-red-400);
|
|
328
|
+
--hs-fg-error-secondary: var(--color-red-300);
|
|
329
|
+
--hs-fg-success-primary: var(--color-green-400);
|
|
330
|
+
--hs-fg-success-secondary: var(--color-green-300);
|
|
331
|
+
--hs-fg-warning-primary: var(--color-yellow-500);
|
|
332
|
+
--hs-fg-warning-secondary: var(--color-yellow-400);
|
|
333
|
+
--hs-fg-info-primary: var(--color-blue-400);
|
|
334
|
+
--hs-fg-neutral-primary: oklch(0.556 0 0);
|
|
335
|
+
--hs-syntax-property: #f87171;
|
|
336
|
+
--hs-syntax-string: #7cacf8;
|
|
337
|
+
--hs-syntax-number: #34d399;
|
|
338
|
+
--hs-syntax-keyword: #7cacf8;
|
|
339
|
+
--hs-syntax-comment: #6b7280;
|
|
340
|
+
}
|
|
341
|
+
|
|
140
342
|
.no-scrollbar::-webkit-scrollbar {
|
|
141
343
|
display: none;
|
|
142
344
|
}
|
|
@@ -10,10 +10,10 @@ const baseCheckboxStyles = cn(// Layout
|
|
|
10
10
|
"rounded-[2px]", // Interaction
|
|
11
11
|
"outline-none", "cursor-pointer", // Animation
|
|
12
12
|
"transition-colors", "duration-200", // Default state
|
|
13
|
-
"bg-
|
|
13
|
+
"bg-bg-primary", "border-border-dark", // Checked state
|
|
14
14
|
"data-[state=checked]:bg-[var(--color-fg-link)]", "data-[state=checked]:border-[var(--color-fg-link)]", "data-[state=checked]:text-white", // Indeterminate state
|
|
15
15
|
"data-[state=indeterminate]:bg-[var(--color-fg-link)]", "data-[state=indeterminate]:border-[var(--color-fg-link)]", "data-[state=indeterminate]:text-white", // Disabled states
|
|
16
|
-
"disabled:cursor-not-allowed", "disabled:bg-
|
|
16
|
+
"disabled:cursor-not-allowed", "disabled:bg-bg-primary", "disabled:border-[var(--color-fg-disabled)]", "disabled:data-[state=checked]:bg-[var(--color-fg-disabled)]", "disabled:data-[state=checked]:border-[var(--color-fg-disabled)]", "disabled:data-[state=checked]:text-[var(--color-fg-secondary)]", "disabled:data-[state=indeterminate]:bg-[var(--color-fg-disabled)]", "disabled:data-[state=indeterminate]:border-[var(--color-fg-disabled)]", "disabled:data-[state=indeterminate]:text-[var(--color-fg-secondary)]", // Focus styles
|
|
17
17
|
"focus-visible:ring-4", "focus-visible:ring-ring-blue", "focus-visible:border-border-link", // Hover styles
|
|
18
18
|
"disabled:hover:ring-0");
|
|
19
19
|
const checkboxVariants = cva(baseCheckboxStyles, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/shadcn/components/ui/checkbox.tsx"],"sourcesContent":["\"use client\";\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { CheckIcon, MinusIcon } from \"lucide-react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Checkbox root styles\nconst baseCheckboxStyles = cn(\n\t// Layout\n\t\"inline-flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t\"peer\",\n\t\"shrink-0\",\n\t// Shape\n\t\"rounded-[2px]\",\n\t// Interaction\n\t\"outline-none\",\n\t\"cursor-pointer\",\n\t// Animation\n\t\"transition-colors\",\n\t\"duration-200\",\n\t// Default state\n\t\"bg-
|
|
1
|
+
{"version":3,"sources":["../../../../../src/shadcn/components/ui/checkbox.tsx"],"sourcesContent":["\"use client\";\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { CheckIcon, MinusIcon } from \"lucide-react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Checkbox root styles\nconst baseCheckboxStyles = cn(\n\t// Layout\n\t\"inline-flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t\"peer\",\n\t\"shrink-0\",\n\t// Shape\n\t\"rounded-[2px]\",\n\t// Interaction\n\t\"outline-none\",\n\t\"cursor-pointer\",\n\t// Animation\n\t\"transition-colors\",\n\t\"duration-200\",\n\t// Default state\n\t\"bg-bg-primary\",\n\t\"border-border-dark\",\n\t// Checked state\n\t\"data-[state=checked]:bg-[var(--color-fg-link)]\",\n\t\"data-[state=checked]:border-[var(--color-fg-link)]\",\n\t\"data-[state=checked]:text-white\",\n\t// Indeterminate state\n\t\"data-[state=indeterminate]:bg-[var(--color-fg-link)]\",\n\t\"data-[state=indeterminate]:border-[var(--color-fg-link)]\",\n\t\"data-[state=indeterminate]:text-white\",\n\t// Disabled states\n\t\"disabled:cursor-not-allowed\",\n\t\"disabled:bg-bg-primary\",\n\t\"disabled:border-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=checked]:bg-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=checked]:border-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=checked]:text-[var(--color-fg-secondary)]\",\n\t\"disabled:data-[state=indeterminate]:bg-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=indeterminate]:border-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=indeterminate]:text-[var(--color-fg-secondary)]\",\n\t// Focus styles\n\t\"focus-visible:ring-4\",\n\t\"focus-visible:ring-ring-blue\",\n\t\"focus-visible:border-border-link\",\n\t// Hover styles\n\t\"disabled:hover:ring-0\",\n);\n\nconst checkboxVariants = cva(baseCheckboxStyles, {\n\tvariants: {\n\t\tsize: {\n\t\t\tregular: \"size-5 border-[1.5px]\",\n\t\t\tsmall: \"size-4 border-[1.5px]\",\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"regular\",\n\t},\n});\n\n// Checkbox indicator styles\nconst checkboxIndicatorStyles = cn(\n\t// Layout\n\t\"flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t// Colors\n\t\"text-white\",\n\t\"disabled:text-[var(--color-fg-secondary)]\",\n);\n\nfunction Checkbox({\n\tclassName,\n\tsize,\n\t...props\n}: React.ComponentProps<typeof CheckboxPrimitive.Root> &\n\tVariantProps<typeof checkboxVariants>) {\n\treturn (\n\t\t<CheckboxPrimitive.Root\n\t\t\tdata-slot=\"checkbox\"\n\t\t\tclassName={cn(checkboxVariants({ size }), className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<CheckboxPrimitive.Indicator\n\t\t\t\tforceMount\n\t\t\t\tdata-slot=\"checkbox-indicator\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\tcheckboxIndicatorStyles,\n\t\t\t\t\t\"data-[state=unchecked]:opacity-0\",\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{props.checked === \"indeterminate\" ? (\n\t\t\t\t\t<MinusIcon\n\t\t\t\t\t\tclassName={cn(size === \"small\" ? \"size-2.5\" : \"size-3.5\")}\n\t\t\t\t\t\tstyle={{ strokeWidth: 3 }}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<CheckIcon\n\t\t\t\t\t\tclassName={cn(size === \"small\" ? \"size-2.5\" : \"size-3.5\")}\n\t\t\t\t\t\tstyle={{ strokeWidth: 3 }}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</CheckboxPrimitive.Indicator>\n\t\t</CheckboxPrimitive.Root>\n\t);\n}\n\nexport { Checkbox };\n"],"names":["CheckboxPrimitive","cva","CheckIcon","MinusIcon","cn","baseCheckboxStyles","checkboxVariants","variants","size","regular","small","defaultVariants","checkboxIndicatorStyles","Checkbox","className","props","Root","data-slot","Indicator","forceMount","checked","style","strokeWidth"],"mappings":"AAAA;;AACA,YAAYA,uBAAuB,2BAA2B;AAC9D,SAASC,GAAG,QAA2B,2BAA2B;AAClE,SAASC,SAAS,EAAEC,SAAS,QAAQ,eAAe;AAGpD,SAASC,EAAE,QAAQ,qBAAoB;AAEvC,uBAAuB;AACvB,MAAMC,qBAAqBD,GAC1B,SAAS;AACT,eACA,gBACA,kBACA,QACA,YACA,QAAQ;AACR,iBACA,cAAc;AACd,gBACA,kBACA,YAAY;AACZ,qBACA,gBACA,gBAAgB;AAChB,iBACA,sBACA,gBAAgB;AAChB,kDACA,sDACA,mCACA,sBAAsB;AACtB,wDACA,4DACA,yCACA,kBAAkB;AAClB,+BACA,0BACA,8CACA,+DACA,mEACA,kEACA,qEACA,yEACA,wEACA,eAAe;AACf,wBACA,gCACA,oCACA,eAAe;AACf;AAGD,MAAME,mBAAmBL,IAAII,oBAAoB;IAChDE,UAAU;QACTC,MAAM;YACLC,SAAS;YACTC,OAAO;QACR;IACD;IACAC,iBAAiB;QAChBH,MAAM;IACP;AACD;AAEA,4BAA4B;AAC5B,MAAMI,0BAA0BR,GAC/B,SAAS;AACT,QACA,gBACA,kBACA,SAAS;AACT,cACA;AAGD,SAASS,SAAS,EACjBC,SAAS,EACTN,IAAI,EACJ,GAAGO,OAEkC;IACrC,qBACC,KAACf,kBAAkBgB,IAAI;QACtBC,aAAU;QACVH,WAAWV,GAAGE,iBAAiB;YAAEE;QAAK,IAAIM;QACzC,GAAGC,KAAK;kBAET,cAAA,KAACf,kBAAkBkB,SAAS;YAC3BC,UAAU;YACVF,aAAU;YACVH,WAAWV,GACVQ,yBACA;sBAGAG,MAAMK,OAAO,KAAK,gCAClB,KAACjB;gBACAW,WAAWV,GAAGI,SAAS,UAAU,aAAa;gBAC9Ca,OAAO;oBAAEC,aAAa;gBAAE;+BAGzB,KAACpB;gBACAY,WAAWV,GAAGI,SAAS,UAAU,aAAa;gBAC9Ca,OAAO;oBAAEC,aAAa;gBAAE;;;;AAM9B;AAEA,SAAST,QAAQ,GAAG"}
|
|
@@ -12,9 +12,9 @@ const baseRadioGroupItemStyles = cn(// Layout
|
|
|
12
12
|
"rounded-full", "overflow-hidden", // Interaction
|
|
13
13
|
"outline-none", "cursor-pointer", // Animation
|
|
14
14
|
"transition-all", "duration-200", "active:scale-90", "active:duration-75", // Default state
|
|
15
|
-
"bg-
|
|
15
|
+
"bg-bg-primary", "border-[1.5px]", "border-solid", "border-border-primary", // Checked state
|
|
16
16
|
"data-[state=checked]:bg-bg-link", "data-[state=checked]:border-bg-link", // Disabled states
|
|
17
|
-
"disabled:cursor-not-allowed", "disabled:active:scale-100", "disabled:bg-
|
|
17
|
+
"disabled:cursor-not-allowed", "disabled:active:scale-100", "disabled:bg-bg-primary", "disabled:border-border-secondary", "disabled:data-[state=checked]:bg-border-secondary", "disabled:data-[state=checked]:border-border-secondary", // Focus styles
|
|
18
18
|
"focus-visible:ring-4", "focus-visible:ring-ring-blue", "focus-visible:data-[state=unchecked]:border-bg-link");
|
|
19
19
|
const radioGroupItemVariants = cva(baseRadioGroupItemStyles, {
|
|
20
20
|
variants: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/shadcn/components/ui/radio-group.tsx"],"sourcesContent":["\"use client\";\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Radio group root styles\nconst radioGroupStyles = cn(\n\t// Layout\n\t\"grid\",\n\t\"gap-3\",\n);\n\n// Radio group item base styles\nconst baseRadioGroupItemStyles = cn(\n\t// Layout\n\t\"aspect-square\",\n\t\"shrink-0\",\n\t\"relative\",\n\t// Shape\n\t\"rounded-full\",\n\t\"overflow-hidden\",\n\t// Interaction\n\t\"outline-none\",\n\t\"cursor-pointer\",\n\t// Animation\n\t\"transition-all\",\n\t\"duration-200\",\n\t\"active:scale-90\",\n\t\"active:duration-75\",\n\t// Default state\n\t\"bg-
|
|
1
|
+
{"version":3,"sources":["../../../../../src/shadcn/components/ui/radio-group.tsx"],"sourcesContent":["\"use client\";\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Radio group root styles\nconst radioGroupStyles = cn(\n\t// Layout\n\t\"grid\",\n\t\"gap-3\",\n);\n\n// Radio group item base styles\nconst baseRadioGroupItemStyles = cn(\n\t// Layout\n\t\"aspect-square\",\n\t\"shrink-0\",\n\t\"relative\",\n\t// Shape\n\t\"rounded-full\",\n\t\"overflow-hidden\",\n\t// Interaction\n\t\"outline-none\",\n\t\"cursor-pointer\",\n\t// Animation\n\t\"transition-all\",\n\t\"duration-200\",\n\t\"active:scale-90\",\n\t\"active:duration-75\",\n\t// Default state\n\t\"bg-bg-primary\",\n\t\"border-[1.5px]\",\n\t\"border-solid\",\n\t\"border-border-primary\",\n\t// Checked state\n\t\"data-[state=checked]:bg-bg-link\",\n\t\"data-[state=checked]:border-bg-link\",\n\t// Disabled states\n\t\"disabled:cursor-not-allowed\",\n\t\"disabled:active:scale-100\",\n\t\"disabled:bg-bg-primary\",\n\t\"disabled:border-border-secondary\",\n\t\"disabled:data-[state=checked]:bg-border-secondary\",\n\t\"disabled:data-[state=checked]:border-border-secondary\",\n\t// Focus styles\n\t\"focus-visible:ring-4\",\n\t\"focus-visible:ring-ring-blue\",\n\t\"focus-visible:data-[state=unchecked]:border-bg-link\",\n);\n\nconst radioGroupItemVariants = cva(baseRadioGroupItemStyles, {\n\tvariants: {\n\t\tsize: {\n\t\t\tregular: \"size-5\",\n\t\t\tsmall: \"size-4\",\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"regular\",\n\t},\n});\n\n// Radio group indicator styles\nconst radioGroupIndicatorStyles = cn(\n\t// Layout\n\t\"absolute\",\n\t\"inset-0\",\n\t\"flex\",\n\t\"items-center\",\n\t\"justify-center\",\n);\n\nfunction RadioGroup({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof RadioGroupPrimitive.Root>) {\n\treturn (\n\t\t<RadioGroupPrimitive.Root\n\t\t\tdata-slot=\"radio-group\"\n\t\t\tclassName={cn(radioGroupStyles, className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction RadioGroupItem({\n\tclassName,\n\tsize,\n\t...props\n}: React.ComponentProps<typeof RadioGroupPrimitive.Item> &\n\tVariantProps<typeof radioGroupItemVariants>) {\n\treturn (\n\t\t<RadioGroupPrimitive.Item\n\t\t\tdata-slot=\"radio-group-item\"\n\t\t\tclassName={cn(radioGroupItemVariants({ size }), className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<RadioGroupPrimitive.Indicator\n\t\t\t\tdata-slot=\"radio-group-indicator\"\n\t\t\t\tclassName={radioGroupIndicatorStyles}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t// Shape\n\t\t\t\t\t\t\"rounded-full\",\n\t\t\t\t\t\t// Colors\n\t\t\t\t\t\t\"bg-white\",\n\t\t\t\t\t\t// Size based on variant\n\t\t\t\t\t\tsize === \"small\" ? \"size-1.5\" : \"size-2\",\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t</RadioGroupPrimitive.Indicator>\n\t\t</RadioGroupPrimitive.Item>\n\t);\n}\n\nexport { RadioGroup, RadioGroupItem };\n"],"names":["RadioGroupPrimitive","cva","cn","radioGroupStyles","baseRadioGroupItemStyles","radioGroupItemVariants","variants","size","regular","small","defaultVariants","radioGroupIndicatorStyles","RadioGroup","className","props","Root","data-slot","RadioGroupItem","Item","Indicator","div"],"mappings":"AAAA;;AACA,YAAYA,yBAAyB,8BAA8B;AACnE,SAASC,GAAG,QAA2B,2BAA2B;AAGlE,SAASC,EAAE,QAAQ,qBAAoB;AAEvC,0BAA0B;AAC1B,MAAMC,mBAAmBD,GACxB,SAAS;AACT,QACA;AAGD,+BAA+B;AAC/B,MAAME,2BAA2BF,GAChC,SAAS;AACT,iBACA,YACA,YACA,QAAQ;AACR,gBACA,mBACA,cAAc;AACd,gBACA,kBACA,YAAY;AACZ,kBACA,gBACA,mBACA,sBACA,gBAAgB;AAChB,iBACA,kBACA,gBACA,yBACA,gBAAgB;AAChB,mCACA,uCACA,kBAAkB;AAClB,+BACA,6BACA,0BACA,oCACA,qDACA,yDACA,eAAe;AACf,wBACA,gCACA;AAGD,MAAMG,yBAAyBJ,IAAIG,0BAA0B;IAC5DE,UAAU;QACTC,MAAM;YACLC,SAAS;YACTC,OAAO;QACR;IACD;IACAC,iBAAiB;QAChBH,MAAM;IACP;AACD;AAEA,+BAA+B;AAC/B,MAAMI,4BAA4BT,GACjC,SAAS;AACT,YACA,WACA,QACA,gBACA;AAGD,SAASU,WAAW,EACnBC,SAAS,EACT,GAAGC,OACoD;IACvD,qBACC,KAACd,oBAAoBe,IAAI;QACxBC,aAAU;QACVH,WAAWX,GAAGC,kBAAkBU;QAC/B,GAAGC,KAAK;;AAGZ;AAEA,SAASG,eAAe,EACvBJ,SAAS,EACTN,IAAI,EACJ,GAAGO,OAEwC;IAC3C,qBACC,KAACd,oBAAoBkB,IAAI;QACxBF,aAAU;QACVH,WAAWX,GAAGG,uBAAuB;YAAEE;QAAK,IAAIM;QAC/C,GAAGC,KAAK;kBAET,cAAA,KAACd,oBAAoBmB,SAAS;YAC7BH,aAAU;YACVH,WAAWF;sBAEX,cAAA,KAACS;gBACAP,WAAWX,GACV,QAAQ;gBACR,gBACA,SAAS;gBACT,YACA,wBAAwB;gBACxBK,SAAS,UAAU,aAAa;;;;AAMtC;AAEA,SAASK,UAAU,EAAEK,cAAc,GAAG"}
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
.dark {
|
|
81
|
-
--background:
|
|
81
|
+
--background: var(--color-bg-primary);
|
|
82
82
|
--foreground: oklch(0.985 0 0);
|
|
83
83
|
--card: oklch(0.205 0 0);
|
|
84
84
|
--card-foreground: oklch(0.985 0 0);
|
|
@@ -101,11 +101,11 @@
|
|
|
101
101
|
--chart-3: oklch(0.769 0.188 70.08);
|
|
102
102
|
--chart-4: oklch(0.627 0.265 303.9);
|
|
103
103
|
--chart-5: oklch(0.645 0.246 16.439);
|
|
104
|
-
--sidebar:
|
|
104
|
+
--sidebar: var(--color-bg-primary);
|
|
105
105
|
--sidebar-foreground: oklch(0.985 0 0);
|
|
106
106
|
--sidebar-primary: oklch(0.488 0.243 264.376);
|
|
107
107
|
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
108
|
-
--sidebar-accent: oklch(0.
|
|
108
|
+
--sidebar-accent: oklch(0.205 0 0);
|
|
109
109
|
--sidebar-accent-foreground: oklch(0.985 0 0);
|
|
110
110
|
--sidebar-border: oklch(1 0 0 / 10%);
|
|
111
111
|
--sidebar-ring: oklch(0.556 0 0);
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
@apply border-border outline-ring/50;
|
|
117
117
|
}
|
|
118
118
|
body {
|
|
119
|
-
@apply bg-background text-foreground;
|
|
119
|
+
@apply bg-background text-foreground caret-foreground;
|
|
120
120
|
font-family: "Inter", system-ui, sans-serif;
|
|
121
121
|
}
|
|
122
122
|
}
|