TECH |
Engadget Japanese |
東芝 REGZAのテレビがセール中! 55V型有機ELモデルが18万円、55V型液晶モデルは12万円など |
https://japanese.engadget.com/sale-toshiba-regza-083946062.html
|
regza |
2022-02-21 08:39:46 |
TECH |
Engadget Japanese |
『Call of Duty : Warzone』、自動でチーター検出・無力化するアンチチート「RICOCHET」の成果を報告 |
https://japanese.engadget.com/cod-ricochet-anti-cheat-083027807.html
|
activision |
2022-02-21 08:30:27 |
TECH |
Engadget Japanese |
Kindle本が最大50%のポイント還元! ITやビジネスなど、1万タイトル以上が対象。3月3日まで |
https://japanese.engadget.com/sale-kindle-winter-081107099.html
|
amazon |
2022-02-21 08:11:07 |
ROBOT |
ロボスタ |
ベネフィット・ワン 家族型ロボット「LOVOT」の会員限定優待を提供開始 ベネフィット・ステーション、インセンティブ・ポイントが対象 |
https://robotstart.info/2022/02/21/lovot-benefit-one.html
|
|
2022-02-21 08:03:56 |
IT |
ITmedia 総合記事一覧 |
[ITmedia News] 「VOICEPEAK」と「CeVIO Pro」、 新しい音声・歌声合成製品はどこがすごいの? 商用可能でMac対応でほぼ人間 |
https://www.itmedia.co.jp/news/articles/2202/21/news125.html
|
ceviopro |
2022-02-21 17:18:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia News] “ファミマで不要スマホ回収”終了 問い合わせ多数で店舗に支障 再チャレンジも検討 |
https://www.itmedia.co.jp/news/articles/2202/21/news152.html
|
itmedia |
2022-02-21 17:15:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia PC USER] サードウェーブ、ゲーミングPC「GALLERIA」にAI囲碁/将棋ソフト導入済みの対局研究用ノートPC |
https://www.itmedia.co.jp/pcuser/articles/2202/21/news149.html
|
galleria |
2022-02-21 17:05:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia ビジネスオンライン] 子育て世代の睡眠調査 満足度に対して男女差あり |
https://www.itmedia.co.jp/business/articles/2202/18/news047.html
|
itmedia |
2022-02-21 17:03:00 |
IT |
情報システムリーダーのためのIT情報専門サイト IT Leaders |
サッポロビール、Teamsと連携したAIチャットボットで社内の問い合わせを効率化、社員の過半数が利用 | IT Leaders |
https://it.impress.co.jp/articles/-/22742
|
サッポロビール、Teamsと連携したAIチャットボットで社内の問い合わせを効率化、社員の過半数が利用ITLeadersサッポロビールは、社内問い合わせ対応の効率化を目的にチャットボットを導入し、人を超える利用者からの日々の問い合わせに役立てている。 |
2022-02-21 17:09:00 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
【Gradient】無料のGPUクラウドサービス |
https://qiita.com/probabilityhill/items/e855d26f40c6bac97f16
|
Notebook、Workflow、DeploymentはすべてGradientmachineinstancesにアクセスでき、CPUとGPUハードウェア分散を含む、そしてオーケストレーションされたコンテナ化ソフトウェアの利点を、ユーザーが設定することなく提供することができるのです。 |
2022-02-21 17:31:20 |
技術ブログ |
Developers.IO |
AWS CloudFormation 드리프트 감지 기능 사용해보기 |
https://dev.classmethod.jp/articles/aws-cloudformation-drift-test/
|
AWS CloudFormation 드리프트감지기능사용해보기소개안녕하세요 클래스메소드금상원입니다 이번블로그에서는CloudFormation의기능인드리프트감지에대해알아보고사용하는방법에대해알아보도록하겠습니다 드리프트란 드리프트 |
2022-02-21 08:22:15 |
海外TECH |
DEV Community |
4 ways of finding elements in a JavaScript Array |
https://dev.to/anshuman_bhardwaj/4-ways-of-finding-elements-in-a-javascript-array-5g09
|
ways of finding elements in a JavaScript ArrayArrays are the building blocks for data based web apps We can store and manipulate data using an Array easily Today we are going to see ways to find an element in an Array along with some use cases explained with examples I know I know findthe find method returns the first item that returns true for the passed callback condition otherwise returns undefined if all items return false for the callback condition const numbers numbers find element gt element gt numbers find element gt element gt undefined findIndexthe findIndex method returns the index of the first item that returns true for the passed callback condition otherwise returns if all items return false for the callback condition const numbers numbers findIndex element gt element gt numbers findIndex element gt element gt The find methods are useful when you don t know exactly what you re looking for But you know a way to identify it indexOfthe indexOf method returns the index of the first item that matches the passed element otherwise returns const numbers numbers indexOf numbers indexOf The indexOf uses the same comparison logic as lastIndexOfthe lastIndexOf methods similar to indexOf we saw above the only difference being it starts the look up from the tail end of the array So it s a good idea to use lastIndexOf if you know that the element has a higher chance of being in the latter half const numbers numbers lastIndexOf numbers lastIndexOf The indexOf methods are useful when you know exactly what you re looking for SummaryTo summarise I would suggest usingfind when you don t know what you re looking for but you know how it should look findIndex to get the index of the element indexOf when you know exactly what you re looking for and want the index of the element lastIndexOf when you know what you re looking for you know it s somewhere at the end and want the index of the element That s it for now I hope you find this article helpful Should you have any feedback or questions please feel free to put them in the comments below For more such articles please follow me on TwitterUntil next time ResourcesMDN docs |
2022-02-21 08:49:04 |
海外TECH |
DEV Community |
Palette generator you will ❤️ |
https://dev.to/rezi/palette-generator-you-will-5gmc
|
Palette generator you will ️You can check it straight away palette rocks Why I made yet another Palette generatorI have been using color generators for years There are many great ones Coolors Adobe color Color hunt Paletton Material color tool Dopely to name a few They have eased my color palette selection a lot But maybe they could help me even more With such a tooling one would expect to generate the right palette within minutes In reality it is more like hours Maybe you know the feeling of generating super nice palette transferring it to an accessibility checker and finding out it has too low contrast or it doesn t pass color blind test And once you generate a palette which pass all the accessibility checks it simply doesn t look well in your particular web project I have been thinking about how to make the color selection easier and how to save some time How to try hundreds of palettes in my web projects in fraction of time I used to need I decided I would create my own generator which would be able to achieve that What a color palette generator should doIt needs to generate palettes easily It needs to give you all the accessibility feedback in real time It should show all the necessary data and feedback in one place colors their relations accessibility report preview It should be easy to transfer generated palette to you project Most of the palette generators mentioned in the introduction part cover up to of the above mentioned points Mostly they don t provide any accessibility feedback And if they do they struggle with showing all the data at one place and in real time None of the palette generators make it very easy to transfer the generated palettes to your web In better cases they generate CSS variables for you But you still need to copy paste them reload your browser remember how it looks like generate new palette and repeat the process until you are happy with result So I made my own palette generator and tried to cover all the points The killer featureProbably the most innovative palette rocks feature is the possibility to connect it to your web and remote control its color theme in real time Just spin the color wheel or generate random palette and see how it looks like in your web In order to connect your web to palette rocks you need to fulfill following requirements Your web needs to use CSS variables for colors root your color ab Add this script to your page it will expose a global function mapPaletterRocks mappingObject lt script src gt lt script gt Call the mapPaletterRocks mappingObject function with mapping object Keys of that object are colors in pallete rocks Values are pairs of color variables used in your app To the first in pair a color from palette rocks is mapped To the second in pair the most contrast color white or black is mapped mapPaletterRocks a primary color primary contrast b secondary color secondary contrast c tertiary color tertiary contrast d quaternary color quaternary contrast customColors custom color custom color contrast Click the Connect YOUR WEB to live preview button in palette rocks page Paste your web s url into the input in top of the modal and submit Try it outYou can try it on my other project Just go to palette rocks follow the point from above and submit this url Then click on the Desktop preview on the mobile phone to see it in full size And start changing colors More unique features And there are more advanced features in palette rocks Color BlenderBlender mixes all your primary colors and generates colors in between You can then easily pick some of those as custom supplementary colors Reversed BackgroundsThis not that well known color phenomenon is based on something called color subtraction I won t go for explanation as it would require more than another article You better see it in two following examples As you can see the inner squares are perceived as identical colors until you compare them side by side In real world design you would need such inner colors if you wanted to present just three colors in some kind of split color design This tool helps to find colors which are perceived as On the other hand if you manually find a mid color between those two backgrounds and use it as the inner squares you end up with colors which will be perceived as by your brain Future of palette rocksThere are definitely areas for more improvements different color formats LAB CMYK for manual inputs locking custom colors if you lock a custom color it would change automatically as you change your primary color and there are probably more features I don t think about now I ll be glad for your feedback What are YOU missing in palette rocks |
2022-02-21 08:47:45 |
海外TECH |
DEV Community |
Create Full Featured Admin Panel with React and Ant Design |
https://dev.to/pankod/create-full-featured-admin-panel-with-react-and-ant-design-3po8
|
Create Full Featured Admin Panel with React and Ant Designrefine is a headless React internal tool framework It helps you develop quickly while developing both BB and BC applications While speeding you up it is never restricted and has a fully customizable structure Key featuresHeadless So you can bring your own UI and fuel it with Refine for top speed development ️Zero configuration One line setup with superplate It takes less than a minute to start a project Out of the box Routing networking authentication state management in and UI Backend Agnostic Connects to any custom backend Built in support for REST API GraphQL NestJs CRUD Airtable Strapi Strapi v Strapi GraphQL Supabase Hasura Appwrite Firebase and Altogic Native Typescript Core You can always opt out for plain JavaScript Enterprise UI Works seamlessly with Ant Design System Support for multiple UI frameworks is on the Roadmap Boilerplate free Code Keeps your codebase clean and readable You can use it with any UI library you want without any problems Also Ant Design as out of the box is supported refine directly provides Ant Design components and some hooks to work with those components These hooks give you the required props for those Ant Design components Refine Advanced TutorialThis article will proceed through refine s Refine Basic Tutorial That s why I suggest you read the basic tutorial of refine In this tutorial we will learn how to include the features in Realtime Access Control provided by the refine in our project and how we can use it Create Refine ProjectLet s start by creating our refine project You can use the superplate to create a refine project npx superplate cli p refine react refine advanced tutorialWhat will be the name of your app ›refine advanced tutorialPackage manager ·npmDo you want to using UI Framework ·antdDo you want to customize theme ·cssData Provider ·custom json rest data providerAuth Provider ·noneDo you want to add an example page ·example resourceDo you want to customize layout ·noDo you want to add an example page ·example resource By selecting you can view the tutorial in your local cd refine advanced tutorialnpm run devAs you have seen our example project is ready Now let s examine how the features offered by refine are included in a project and how they are used Adding in Provider to Your Project Create in InstanceFirst we will create an in instance using react inext src in ts import in from inext import initReactInext from react inext import Backend from inext xhr backend import detector from inext browser languagedetector in use Backend use detector use initReactInext init supportedLngs en de backend loadPath locales lng ns json defaultNS common fallbackLng en de export default in Let s import the in instance we created in index tsx Then let s wrap the App in React Suspense src index tsx import React from react import ReactDOM from react dom import App from App import in ReactDOM render lt React StrictMode gt lt React Suspense fallback loading gt lt App gt lt React Suspense gt lt React StrictMode gt document getElementById root Let s define our in provider and give it a refine src App tsx import Refine from pankod refine core import notificationProvider Layout from pankod refine antd import routerProvider from pankod refine react router import pankod refine antd dist styles min css import dataProvider from pankod refine simple rest import PostList PostCreate PostEdit PostShow from pages posts import useTranslation from react inext function App const t in useTranslation const inProvider translate key string params object gt t key params changeLocale lang string gt in changeLanguage lang getLocale gt in language return lt Refine routerProvider routerProvider notificationProvider notificationProvider Layout Layout dataProvider dataProvider resources name posts list PostList create PostCreate edit PostEdit show PostShow inProvider inProvider gt export default App Now let s add our own translation Let s create two separate json files in English and German public locales en common json posts posts Posts fields id Id title Title category Category status title Status published Published draft Draft rejected Rejected content Content createdAt Created At titles create Create Post edit Edit Post list Posts show Show Post table actions Actions public locales de common json posts posts Einträge fields id Id title Titel category Kategorie status title Status published Veröffentlicht draft Draft rejected Abgelehnt content Inhalh createdAt Erstellt am titles create Erstellen edit Bearbeiten list Einträge show Eintrag zeigen table actions Aktionen In this article we have included the translation of only a small part as an example Now let s create a select component in the header and examine our posts according to the language we have chosen src components header tsx import useGetLocale useSetLocale from pankod refine core import AntdLayout Space Menu Button Icons Dropdown from pankod refine antd import useTranslation from react inext const DownOutlined Icons export const Header React FC gt const in useTranslation const locale useGetLocale const changeLanguage useSetLocale const currentLocale locale const menu lt Menu selectedKeys currentLocale gt in languages sort map lang string gt lt Menu Item key lang onClick gt changeLanguage lang gt lang en English German lt Menu Item gt lt Menu gt return lt AntdLayout Header style display flex justifyContent flex end alignItems center padding px px height px backgroundColor FFF gt lt Dropdown overlay menu gt lt Button type link gt lt Space gt currentLocale en English German lt DownOutlined gt lt Space gt lt Button gt lt Dropdown gt lt AntdLayout Header gt Let s define the header we created within the refine return lt Refine routerProvider routerProvider notificationProvider notificationProvider Layout Layout inProvider inProvider dataProvider dataProvider Header Header resources name posts list PostList create PostCreate edit PostEdit show PostShow gt Now our in Provider is ready to use let s test it together Use the translation with Table Contentimport useTranslate useMany from pankod refine core import List Table TextField useTable Space EditButton ShowButton from pankod refine antd import IPost ICategory from interfaces export const PostList React FC gt const translate useTranslate const tableProps useTable lt IPost gt const categoryIds tableProps dataSource map item gt item category id const data isLoading useMany lt ICategory gt resource categories ids categoryIds queryOptions enabled categoryIds length gt return lt List gt lt Table tableProps rowKey id gt lt Table Column dataIndex id title ID gt lt Table Column dataIndex title title translate posts fields title gt lt Table Column dataIndex category id title translate posts fields category render value gt if isLoading return lt TextField value Loading gt return lt TextField value data data find item gt item id value title gt gt lt Table Column lt IPost gt title translate table actions dataIndex actions key actions render value record gt lt Space gt lt EditButton size small recordItemId record id gt lt ShowButton size small recordItemId record id gt lt Space gt gt lt Table gt lt List gt You can add the translation you want and organize your content according to different languages together with the refine in Provider Check out refine in Provider for more detailed information and step by step guide Add Live Provider Realtime to Your Project with Refinerefine lets you add Realtime support to your app via liveProvider prop for It can be used to update and show data in Realtime throughout your app Now let s make our application Realtime using the refine Live ProviderWe will using Ably in this article to provide Realtime features InstallationWe need to install Ably live provider package from refine npm install pankod refine ablyFirst let s create ably client and define our Ably API key src utility client ts import Ably from pankod refine ably export const ablyClient new Ably Realtime YOUR ABLY API KEY Then pass liveProvider from pankod refine ably to src App tsx import Refine from pankod refine core import notificationProvider Layout from pankod refine antd import routerProvider from pankod refine react router import pankod refine antd dist styles min css import dataProvider from pankod refine simple rest import liveProvider from pankod refine ably import ablyClient from utility import PostList PostCreate PostEdit PostShow from pages posts import Header from components header import useTranslation from react inext function App const t in useTranslation const inProvider translate key string params object gt t key params changeLocale lang string gt in changeLanguage lang getLocale gt in language return lt Refine routerProvider routerProvider notificationProvider notificationProvider Layout Layout inProvider inProvider dataProvider dataProvider Header Header liveProvider liveProvider ablyClient liveMode auto resources name posts list PostList create PostCreate edit PostEdit show PostShow gt export default App You can configure liveMode this example use auto mode Check out Refine Live Provider for more detailed information and step by step guide Our project is now Realtime Thanks to refine Live Provider we made our project Realtime by adding only lines Let s see how our RealTime Project works Add Access Control to Your Project with RefineYou can control your project as you wish with the refine react admin framework Now let s add Access Control Provider to our refine project Access control is a broad topic where there are lots of advanced solutions that provide different set of features refine is deliberately agnostic for its own API to be able to integrate different methods RBAC ABAC ACL etc and different libraries Casbin CASL Cerbos AccessControl js can method would be the entry point for those solutions Refer to the Access Control Provider documentation for detailed information →Let s create two Roles Admin and Editor Admin have full CRUD authority on the posts The Editor role on the other hand only has the authority to create and edit new posts In other words the person in the editor role cannot delete the posts and cannot view all the rows on the table Let s start by creating two buttons for the Admin and Editor roles in our created Header Component src componets header tsx import useGetLocale useSetLocale from pankod refine core import AntdLayout Space Menu Button Icons Dropdown Radio from pankod refine antd import useTranslation from react inext const DownOutlined Icons interface HeaderProps role string export const Header React FC lt HeaderProps gt role gt const in useTranslation const locale useGetLocale const changeLanguage useSetLocale const currentLocale locale const menu lt Menu selectedKeys currentLocale gt in languages sort map lang string gt lt Menu Item key lang onClick gt changeLanguage lang gt lang en English German lt Menu Item gt lt Menu gt return lt AntdLayout Header style display flex justifyContent space between alignItems center padding px px height px backgroundColor FFF gt lt Radio Group value role onChange event gt localStorage setItem role event target value location reload gt lt Radio Button value admin gt Admin lt Radio Button gt lt Radio Button value editor gt Editor lt Radio Button gt lt Radio Group gt lt Dropdown overlay menu gt lt Button type link gt lt Space gt currentLocale en English German lt DownOutlined gt lt Space gt lt Button gt lt Dropdown gt lt AntdLayout Header gt In this article we will use Cerbos to refine Access Control npm install cerbosAfter the installation is complete let s create a Cerbos object in the App tsx file and define it in import Cerbos from cerbos const cerbos new Cerbos hostname The Cerbos PDP instance playgroundInstance WSbdQNYlAvTmJYubPbqFe The playground instance ID to test lt Refine routerProvider routerProvider notificationProvider notificationProvider Layout Layout inProvider inProvider dataProvider dataProvider Header gt lt Header role role gt liveProvider liveProvider ablyClient liveMode auto accessControlProvider can async action params resource gt const cerbosPayload principal id demoUser Fake a user ID roles role this is where user attributes can be passed attr the resouces being access can be multiple resource kind resource instances params id new attr params the list of actions on the resource to check authorization for actions action const result await cerbos check cerbosPayload return Promise resolve can result isAuthorized params id new action resources name posts list PostList create PostCreate edit PostEdit show PostShow canDelete true gt We will perform our actions according to the role we choose from the header As you can see above we set this with the access Control Provider can method Now using the refine useCanhook Let s perform operations according to roles within our list src pages PostList tsx import IResourceComponentsProps useMany useTranslate useCan from pankod refine core import List Table TextField useTable Space EditButton ShowButton FilterDropdown useSelect Select Radio TagField NumberField from pankod refine antd import IPost ICategory from interfaces export const PostList React FC lt IResourceComponentsProps gt gt const translate useTranslate const tableProps useTable lt IPost gt const categoryIds tableProps dataSource map item gt item category id const data isLoading useMany lt ICategory gt resource categories ids categoryIds queryOptions enabled categoryIds length gt const selectProps categorySelectProps useSelect lt ICategory gt resource categories optionLabel title optionValue id const data canAccess useCan resource posts action field params field hit return lt List gt lt Table tableProps rowKey id gt lt Table Column dataIndex id title ID gt lt Table Column dataIndex title title translate posts fields title gt lt Table Column dataIndex category id title translate posts fields category render value gt if isLoading return lt TextField value Loading gt return lt TextField value data data find item gt item id value title gt filterDropdown props gt lt FilterDropdown props gt lt Select style minWidth mode multiple placeholder Select Category categorySelectProps gt lt FilterDropdown gt gt canAccess can amp amp lt Table Column dataIndex hit title Hit render value number gt lt NumberField value value options notation compact gt gt lt Table Column dataIndex status title Status render value string gt lt TagField value value gt filterDropdown props any gt lt FilterDropdown props gt lt Radio Group gt lt Radio value published gt Published lt Radio gt lt Radio value draft gt Draft lt Radio gt lt Radio value rejected gt Rejected lt Radio gt lt Radio Group gt lt FilterDropdown gt gt lt Table Column lt IPost gt title translate table actions dataIndex actions render record gt lt Space gt lt EditButton hideText size small recordItemId record id gt lt ShowButton hideText size small recordItemId record id gt lt Space gt gt lt Table gt lt List gt Here if the selected role is Admin the Hit section will appear in our Table We have stated that the Editor role cannot display this section Check out refine Access Control Provider for more detailed information and step by step guide ConclusionIn this tutorial we have shown that the features of the refine internal tool Framework are useful and how simple it is These features will shorten your development time considerably While Refine offers you the opportunity to develop quickly it does not limit you and gives you the opportunity to customize your project as you wish We saw how simple it was for refine to include and use the Internationalization in Live Provider Realtime and Access Control features You can develop more complex applications in a simple way with refine With refine react admin you can develop any web application you want with Admin Panel Basic Crud App or Next js SSR Support refine offers the opportunity to develop BB and BC applications without any restrictions and in a fully customizable manner Check out for detailed information about refine →For information about other features of refine →Live CodeSandbox Example |
2022-02-21 08:41:15 |
海外TECH |
DEV Community |
Top React JS Frameworks Every Developer Should Know |
https://dev.to/pankod/top-react-js-frameworks-every-developer-should-know-3pod
|
Top React JS Frameworks Every Developer Should Know Best UI Frameworks for React jsIn this post I have listed some of the best React frameworks that are most popular and that I believe will be popular in What is React React is a JavaScript library that was developed by Facebook It is one of the most popular libraries for building user interfaces React has a number of features that make it an attractive option for developers to use when building their next front end project React is very easy to learn and can be used in any type of project It also has a large community which means you will always find help when you need it React has a number of frameworks that are competing to be the best framework in It is not easy to create a React project from scratch but with the help of some libraries and frameworks it can be done in no time Table of ContentsCreate React AppMaterial UIAnt DesignReact BootstrapRefine Create React App Create React App is a comfortable environment for learning React and is the best way to start building a new single page application in React You don t need to learn and configure many build tools Instant reloads help you focus on development When it s time to deploy your bundles are optimized automatically Get started in secondsWhether you re using React or another library Create React App lets you focus on code not build tools To create a project called my app run this command npx create react app my appcd my appnpm startExample Material UI First up Material UI is an excellent React UI framework with multiple pre built components and templates Material UI is a great framework for building UI components It has a large community of developers and is very popular MUI provides a robust customizable and accessible library of foundational and advanced components enabling you to build your design system and develop React applications faster with npmnpm install mui material emotion react emotion styled with yarnyarn add mui material emotion react emotion styledExampleLink Ant Design Looking for a React admin panel framework that is both attractive and easy to use Look no further than React Ant Design This library provides everything you need to get started quickly including components layout templates and powerful routing capabilities Best of all it conforms to the popular Ant Design style guide so your app will look great whether it s running on a desktop or mobile device with npmnpm install antd with yarnyarn add antdExample Link React Bootstrap This UI Kit library provides a React alternative to Bootstrap giving you more control over the function of each component With this framework it s easy for developers who want an online presence without having too much work with coding or design skills You can find thousands of themes made using these components as well so there will be something in here perfect just what your needs are at any given time npm install react bootstrap bootstrap ExampleLink refine If you re looking for a framework that will let your data intensive application run at top speeds with extreme customizability then look no further than refine This React based headless system has been designed specifically for speed allowing users to bring their own UI and update it via refine s powerful interface Key featuresHeadless So you can bring your own UI and fuel it with Refine for top speed development ️Zero configuration One line setup with superplate It takes less than a minute to start a project Out of the box Routing networking authentication state management in and UI Backend Agnostic Connects to any custom backend Built in support for REST API GraphQL NestJs CRUD Airtable Strapi Strapi v Strapi GraphQL Supabase Hasura Appwrite Firebase and Altogic Native Typescript Core You can always opt out for plain JavaScript Enterprise UI Works seamlessly with Ant Design System Support for multiple UI frameworks is on the Roadmap Boilerplate free Code Keeps your codebase clean and readable There are two ways to add UI elements to refine Using a UI Library such as Tailwind Chakra UI etc Using a complete UI Framework such as Ant Design Material UI etc The recommended way is using the superplate tool superplate s CLI wizard will let you create and customize your application in seconds You can find tutorial from herenpx superplate cli p refine react tutorialExamplesLinkLinkIf you enjoyed this article please hit that little heart button and share with others This will help us grow our community so we can all learn more together |
2022-02-21 08:19:45 |
海外TECH |
DEV Community |
3.Strinbuilder class in java |
https://dev.to/souravsingpardeshi/3strinbuilder-class-in-java-220d
|
Strinbuilder class in javaJava Stringbuilder classStrings in java are immutable not editable so to make changes in string we use this string builder class which makes the string mutable editable there are different methods which comes with stringbuilder class as shown below Append This method will simply append an string to existing string Insert this will insert an character or strig at given position in given string Replace this will replace certain part of string with another string it take position of string which need to be replaced Delete this method will delete certain part of string by taking starting and ending position |
2022-02-21 08:11:18 |
海外TECH |
DEV Community |
Build low-code, customizable and authorization ready (accesscontrol) admin panel with NestJS. |
https://dev.to/pankod/build-low-code-customizable-and-authorization-ready-accesscontrol-admin-panel-with-nestjs-1k65
|
Build low code customizable and authorization ready accesscontrol admin panel with NestJS All the steps described are in this repo IntroIn the previous blog post we used nestjs with an api and refine in the admin panel In this blog let s add authorization to both api and admin panel ScenarioLet s have two roles in this system they are admin and editor In the API we prepared we had two crud processes that we categorized as companies and jobs In this scenario editor can only list companies not any deletion or additions Have the authority to list and create job postings Let admin have authorization for all transactions AuthorizationI used nestjsx crud in the api we prepared This library makes CRUD operations very easy However there is no support on the authorization side That s why I made use of the accesscontrol library which can be easily integrated with both nestjs and refine Using AccessControl in APIIn the first step let s install nestjs access control in our project for accesscontrol integration to the api npm install nest access controlI m specifying a role as the AccessControl supports According to our scenario this should be as follows app roles tsimport RolesBuilder from nest access control export enum AppRoles ADMIN ADMIN EDITOR EDITOR export const roles RolesBuilder new RolesBuilder roles editor grant AppRoles EDITOR create jobs update jobs admin grant AppRoles ADMIN extend AppRoles EDITOR create companies update companies delete companies jobs Now I import AccessControlModule app module ts import roles from app roles Module imports AccessControlModule forRoles roles controllers providers export class AppModule After determining the roles and privileges we add the ACGuard class to the controller UseGuards import ACGuard from nest access control UseGuards JwtAuthGuard ACGuard Controller companies export class CompanyController implements CrudController lt CompanyEntity gt Now we define resource and action for methods using UseRoles decorator For example we override for the companies resource and the create action as follows import ACGuard UseRoles from nest access control UseGuards JwtAuthGuard ACGuard Controller companies export class CompanyController implements CrudController lt CompanyEntity gt constructor public service CompanyService get base CrudController lt CompanyEntity gt return this Override UseRoles resource companies action create createOne ParsedRequest req CrudRequest ParsedBody dto CompanyCreateDto return this base createOneBase req lt CompanyEntity gt dto Similarly we add this decorator for other methods After these operations we complete the authorization process on the API side Now we will do the authorization to the admin panel that we created with refine Using AccessControl in refine dashboard refine It supports many authorization tools very flexible What we need to do Defining an accessControlProvider inside the lt Refine gt component accessControlProvider is implemented only one asynchronous method named can to be used to control whether the requested access is granted This method takes resource and action with parameters App tsx lt Refine accessControlProvider can async resource action gt let can boolean false const stringifyUser localStorage getItem refine user if stringifyUser const roles JSON parse stringifyUser roles forEach role string gt switch action case list case show can ac can role read resource granted break case create can ac can role create resource granted break case edit can ac can role update resource granted break case delete can ac can role delete resource granted break return Promise resolve can gt Now let me explain a little bit of this code I wrote First we need the role of the logged in user We saved it to local storage during login Then we match the refine actions with the accessControl s actions and check its authorization with the granted method I also resolve the returned result ConclusionAs a result we have done the authorization on both the ui dashboard side and the api side |
2022-02-21 08:09:28 |
海外TECH |
DEV Community |
View the History of Jobs with SQL Jobs History Feature |
https://dev.to/madhavankovai_31/view-the-history-of-jobs-with-sql-jobs-history-feature-30e
|
View the History of Jobs with SQL Jobs History Feature IntroductionAdmin people on a day to day basis schedule a lot of SQL jobs and must monitor its success and failure statuses constantly In Biztalk we have already provided the capability for the users to do some operations and monitoring on SQL servers Here comes a new feature called SQL Jobs History to view the history of the jobs that have been scheduled on the server agent and this article holds more details about the new feature Why SQL Jobs History in BizTalkSQL Jobs History will give a clear picture on an overall level about the status of the scheduled job Biztalk will become a one stop solution for admin people to handle operations and monitoring concerning SQL server agents Helps the user by providing a view of the job history and reduces the navigation between different applications The created jobs get displayed in BizTalk and the jobs history can be viewed by clicking the eye icon both in SQL server jobs and in SQL jobs history Jobs in SSMS SQL Server Management Studio Jobs that are created in SQL Server Management Studio and its history will be displayed in Biztalk The below section will highlight how to create jobs in SSMS SQL Server Management Studio Click on the SQL server agent select new and create a job Add Job Name Category and Description and click the OK button To monitor the jobs first we must start the SQL server agent Renaming the jobs can be done in SSMS SQL Server Management Studio We can also view the execution history of the job by right click and selecting View History from the context menu Green colour shows the job executed successfully and red colour shows the job gets failed Key components of SQL Server AgentSQL agent service consists of the following components and defines a task to be performed The below mentioned components help to perform the tasks and describe the success and failure of the tasks There are a few components of the SQL Server Agent service General This defines the name of the job owner of the SQL server and we can categorize the job and its description too Steps Job can contain one or multiple steps Each step executes a specific set of instructions and contains its own task The next step will be executed based on the status of the previous step Schedules Jobs can be scheduled hourly daily weekly monthly and the schedule type can also be set Alerts Alerts triggered based on the job s execution Notifications User can set up email notifications to get updates about the result of the job execution It throws notification when the jobs fail so that appropriate action can be taken SQL Jobs HistorySQL Jobs History tab in BizTalk will help the user to view the history of jobs on a single page rather than going to SSMS SQL Server Management Studio for the same details SQL Jobs History tab has the recent records of jobs run and listed according to the max records selected SQL Jobs history can be accessed in BizTalk via Operations gt Manage Infrastructure gt SQL Server Instances gt SQL Jobs History The detailed history can be viewed by clicking the eye icon in each row SQL Jobs HistoryIn the previous version of the BizTalk only the jobs were getting displayed under SQL server jobs For example let us take a scenario If the user needs to view the history of the job the user must navigate to the SSMS SQL Server Management Studio to view the history So to overcome such a process we have implemented SQL Jobs History and it becomes more helpful for the user to audit all the history of the jobs instead of viewing in SSMS SQL Server Management Studio SQL Jobs History details bladeThe importance to add general details is that a user can be able to view the primary details of the job BizTalk provides a user friendly structure when compared to log file viewer in SSMS SQL Server Management Studio General tab Job NameOwner NameRun StatusCategoryCreated Date TimeModified Date TimeLast Modified Date TimeDescriptionIn the step tab only the step execution history gets displayed All the step details can be viewed in a single tab Step tab Step IdStep NameRun StatusLast Executed Date TimeDescriptionSQL Jobs History detailsSQL Server Jobs enhancementsAll the available jobs get listed under SQL server jobs For better usability grid crawler has been implemented When we hit the eye icon we can view the details of the job by clicking the Next and Previous arrow continuously to view the jobs detail instead of viewing all the jobs history separately Succeeded Failed Cancelled and unknown status of the jobs gets displayed SQL Server Jobs enhancementsParent and child job details can be viewed in the SQL jobs history blade on expanding the parent job SQL Jobs History blade holds the Steps of the Job ran For example step step Succeeded Jobs are shown in green colour and Failed Jobs are shown in red colour code in SQL Jobs History blade SQL Jobs History bladeOn clicking the eye icon in the child grid we can view the below step details in the SQL Jobs History Details blade Step IdStep NameRun StatusLast Executed Date TimeDescriptionStep IdSQL jobs history comes with different filters to filter their specific data There are more jobs run at the same time If the user needs to audit a particular job it is hard to search and it is time consuming To handle such challenges we can use the filter by option in SQL Jobs History ConclusionIn earlier versions there was no option to view the history of jobs which makes it difficult for users who are looking for history details as they must go SSMS SQL Server Management Studio every time to view those details By adding the SQL Jobs History feature the robustness of BizTalk has increased and helps the user with all the jobs related data in a single place We believe this new feature will add value to your day to day tasks by reducing your redundant efforts for those who need to view jobs history We have a free trial for you give a try |
2022-02-21 08:07:53 |
海外TECH |
DEV Community |
Build internal tools using Low-Code with Refine, React-based framework |
https://dev.to/pankod/build-internal-tools-using-low-code-with-refine-react-based-framework-4k92
|
Build internal tools using Low Code with Refine React based frameworkWhen it comes to creating internal tools low code platforms are the way to go With Refine a React based low code platform you can quickly build data intensive applications without having to worry about scalability or ease of use Other low code platforms may allow you to develop your applications but they are often limited in terms of flexibility and customizability With Refine you have full control over your application and can add any business logic that you need So if you re looking for a platform that will let you build internal tools quickly and easily Refine is the right choice What is Refine Refine is a React based headless framework that allows you to build data intensive applications quickly and with ease Rapid development and headless at the same time how is it Well Refine supports Ant Design for quick and easy solutions In addition it allows you to use your design system or to integrate with other popular design frameworks Refer to the Refine for more information Why you should use Refine It is Open Source under the MIT license Easy to use and it is easy to learn There are many examples to help you get started as well as documentation Is a framework that does not require you to use any UI libraries or frameworks Supports Ant Design for quick and easy solutions Backend agnostic so you can connect to any backend you want Customizable which means you can change it to fit your needs Refine is fully compatible with server side rendering with Next js Features of RefineSome of the main features of Refine are Data fetching and state managementRoutingsAuthenticationAuthorizationInternationalizationReal timeMutation modes with optimistic and pessimistic and undoadable modes How does Refine work Refine is completely agnostic just wrap your application with the Refine component and pass the property you need For example it takes properties such as dataProvider to communicate with the API and authProvider to authentication Then you have hooks that you can use throughout the whole application These hooks are compatible with React Query To understand how Refine works let s explore the following titles Communicate with the APIThe dataProvider allows communication with the API All the data fetching and mutations are done through this property A data provider must have the following properties const dataProvider create resource variables metaData gt Promise createMany resource variables metaData gt Promise deleteOne resource id metaData gt Promise deleteMany resource ids metaData gt Promise getList resource pagination sort filters metaData gt Promise getMany resource ids metaData gt Promise getOne resource id metaData gt Promise update resource id variables metaData gt Promise updateMany resource ids variables metaData gt Promise Refine offers hooks to help you with data fetching and mutations using the data provider s properties For example when you use the useTable or useList hook it will call the getList method underneath the hood Refer to the useTable and data hooks for more information For example let s look at what happens when useTable is called import List Table TextField useTable from pankod refine antd interface IPost id string title string content string status published draft rejected export const PostList React FC gt const tableProps useTable resource posts initialSorter field title order asc initialFilter field status operator eq value draft return lt List gt lt Table tableProps rowKey id gt lt Table Column dataIndex id title ID gt lt Table Column dataIndex title title Title gt lt Table Column dataIndex content title Content gt lt Table gt lt List gt The useTable in the example calls the getList method of the data provider with the following properties getList resource posts pagination page perPage sort field title order asc filters field status operator eq value draft With metaData you can pass any parameters that you need to the data provider You can handle it in the data provider All hooks that use data provider methods such as useTable work with React Query So you can use all the features of React Query Refer to the dataProvider for more information Out of the box data providersRefine includes many out of the box data providers to use in your projects like Simple REST APIGraphQLNestJS CRUDAirtableStrapi Strapi vStrapi GraphQLSupabaseHasuraAppwriteAltogic Add routing to the applicationRefine needs some router functions to create resource pages navigation and so on It uses the routerProvider property to pass the router functions to Refine In this way it allows you to use any router library that you want If you don t need any customization in your router we not recommend making this provider Instead try nextjs router for your Next js project and react router or react location for your React project Refer to the routerProvider for more information Out of the box router providersRefine includes many out of the box data providers to use in your projects like React RouterReact LocationNext js Router Create pages via resourcesThe main building blocks of a Refine app are resources A resource is an entity in the API s endpoint e g It connects data from the API with page components allowing pages to access data from the API import Refine from pankod refine core import dataProvider from pankod refine json server import pankod refine antd dist styles min css import PostList PostCreate PostEdit PostShow from pages posts const App React FC gt return lt Refine dataProvider dataProvider resources name posts list PostList create PostCreate edit PostEdit show PostShow gt export default App Each resource component is assigned a route by Refine The posts route for example displays the list page of the posts resource which is implemented using the PostList component The PostCreate component is the create page of the posts resource and it is rendered by the posts create route The PostEdit component is the edit page of the posts resource and it is rendered by the posts edit id route The PostShow component is the show page of the posts resource and it is rendered by the posts show id route Refine hooks used in these pages read some values from the route by default For example useForm hook takes the resource action and id from the route by default AuthenticationThe authProvider allows you to add authentication your application You can use any authentication library that you want All your authentication logic is managed with this authProvider A auth provider must have the following properties const authProvider login gt Promise logout gt Promise checkAuth gt Promise checkError gt Promise getPermissions gt Promise getUserIdentity gt Promise Refine uses these methods via authorization hooks Authentication and authorization procedures such as login logout checking user credentials and catching HTTP errors are all handled using authorization hooks For example checkAuthis called when the user tries to access a page that requires authentication Refer to the authProvider for more information Out of the box router providersAuth Source Code DemoGoogle Source Code DemoOTP Login Source Code Demo AuthorizationRefine provides accessControlProvider that you can use to control who has access to what in your app You can use any access control library that you want In addition you can choose the access control models that work best for you RBAC ABAC ACL etc An accessControlProvider must have one async method called can to check if the person asking for access is allowed to have it type CanParams resource string action string params any type CanReturnType can boolean reason string const accessControlProvider can resource action params CanParams gt Promise lt CanReturnType gt useCan and lt CanAccess gt component use this method to check if the user is allowed to access For example we can stop non admin users from editing the post resource const App React FC gt lt Refine accessControlProvider can async resource action params gt if resource posts amp amp action edit const userRole getUserRole if userRole admin return can true return Promise resolve can false reason Unauthorized return Promise resolve can true gt Refer to the accessControlProvider for more information Out of the box access control providersCasbin Source Code DemoCerbos Source Code Demo InternationalizationThe inProvider is used to give localization features to your application This will allow you to change the text in your application to different languages An in provider must have the following properties const inProvider translate key string params object gt string changeLocale lang string gt Promise getLocale gt string Refine uses these methods via translation hooks Refer to Refine inProvider for more details and how to use the react inext package Real time supportThe liveProvider is used to add real time support to your application You can use any real time library or tool that you want A live provider must have the following properties const liveProvider subscribe channel params ids types callback gt any unsubscribe subscription gt void publish event gt void Refine data hooks are subscribed to using the subscribe method given with the live provider The subscribe method returns a subscription object that can be used to unsubscribe The unsubscribe method is used to unsubscribe from the subscription The publish method is used to publish an event to the channel on the client side If you send an event after the relevant operations on the server Refine will invalidate the related queries If the liveMode is manual queries of related resources are not invalidated in real time instead onLiveEvent is run with the event as new events from the subscription arrive Out of the box access control providersAbly Source Code DemoSupabase Source CodeAppwrite Source Code Other features of Refine notificationProviderThe notificationProvider is used to display notifications to the user when mutations are performed You can use any notification library that you want mutationModeThe mutationMode is used to determine how to handle mutations You can use pessimistic optimistic or undoable mode When using the pessimistic mode UI updates are delayed until the mutation is confirmed by the server When using the optimistic mode UI updates are immediately updated When using the undoable mode UI updates are immediately updated but you can undo the mutation syncWithLocationIf syncWithLocation is turned on the list of query parameters may be modified manually by editing directly in the URL posts current amp pageSize amp sort createdAt amp order descCheck out all of Refine s features for more information ConclusionIf you re looking for a way to quickly and easily create an internal tool without sacrificing customization Refine is worth checking out It allows you to choose any library that you want for your requirements Plus if you need help or have feedback the team at Refine is responsive and happy to help out Give Refine a star on GitHub if you like it your support will help us continue making this tool amazing |
2022-02-21 08:05:21 |
海外TECH |
DEV Community |
hate CSS? use this extension instead |
https://dev.to/hamedbaatour/hate-css-use-this-extension-instead-1080
|
hate CSS use this extension insteadlet s be honest many developers just hate working with CSS because you have to try a lot of CSS properties values just to get something just right aka make it pixel perfect it s extremely repetitive how many times we just write the exact same thing display flex justify content center most CSS priorities just keep repeating over and over again to create any UIsoo I made a browser extension to visually change any website s CSS instead CSS properties customizable CSS selector integrated code editor super lightweight KB ∞ virtual devices realtime sync clean CSS inspector on hover breakpoints visualizer HTML layers tree x ray modewhy not devtools modifying CSS is slow and exporting changes is a painrefresh the page amp all the CSS changes are gone hard to inspect CSS with lots of crossed over propertiesconstantly resizing devtools or using one device at a time to test responsivenessso to fix all of those issues I made InTab give it a shot at intab iojust launched this also on ProductHuntplease show some Cheers |
2022-02-21 08:01:57 |
海外TECH |
Engadget |
Millions of WordPress sites receive forced patch for critical plugin flaw |
https://www.engadget.com/wordpress-sites-get-forced-patch-for-critical-plugin-security-flaw-084455633.html?src=rss
|
Millions of WordPress sites receive forced patch for critical plugin flawMillions of WordPress sites have received a forced patch over the past few days Ars Technica has reported The reason is a vulnerability in UpdraftPlus a popular plugin that allows users to create and restore website backups UpdraftPlus developers requested the mandatory patch as the vulnerability would allow anyone with an account to download a website s entire database nbsp The bug was discovered by Jetpack security researcher Marc Montpas during a security audit of the plugin quot This bug is pretty easy to exploit with some very bad outcomes if it does get exploited quot he told Ars Technica quot It made it possible for low privilege users to download a site s backups which include raw database backups quot nbsp He told UpdraftPlus developers about the bug on Tuesday last week they fixed it a day later and started force installing the patch shortly after that million sites had received it as of Thursday out of million plus users The main flaw was that UpdraftPlus didn t correctly implement WordPress s quot hearbeat function by properly checking to see if users had administrative privileges Another issue was a variable used to validate admins that could be modified by untrusted users Jetpack provided more details about how a hack could work in a blog post WordPress was previously breached earlier this year but it was done indirectly via a GoDaddy hack that exposed million accounts If you re running WordPress with the UpdraftPlus plugin you should definitely confirm that the plugin updated automatically to or later on the free version or and up on the premium app nbsp |
2022-02-21 08:44:55 |
海外科学 |
BBC News - Science & Environment |
Cambridge University Botanic Garden's 'Newton's apple tree' falls in storm |
https://www.bbc.co.uk/news/uk-england-cambridgeshire-60453267?at_medium=RSS&at_campaign=KARANGA
|
isaac |
2022-02-21 08:32:03 |
金融 |
RSS FILE - 日本証券業協会 |
公社債投資家別条件付売買(現先)月末残高 (旧公社債投資家別現先売買月末残高) |
https://www.jsda.or.jp/shiryoshitsu/toukei/jyouken/index.html
|
条件 |
2022-02-21 09:00:00 |
金融 |
RSS FILE - 日本証券業協会 |
公社債店頭売買高 |
https://www.jsda.or.jp/shiryoshitsu/toukei/tentoubaibai/index.html
|
店頭 |
2022-02-21 09:00:00 |
金融 |
金融庁ホームページ |
職員を募集しています。(金融モニタリング業務等に従事する職員(課長補佐クラス)【弁護士】) |
https://www.fsa.go.jp/common/recruit/r3/kantoku-10/kantoku-10.html
|
課長補佐 |
2022-02-21 09:00:00 |
ニュース |
BBC News - Home |
Jamal Edwards, music entrepreneur and Youtube star, dies aged 31 |
https://www.bbc.co.uk/news/uk-60457063?at_medium=RSS&at_campaign=KARANGA
|
sheeran |
2022-02-21 08:19:09 |
ニュース |
BBC News - Home |
Queen carries on with light duties after Covid symptoms |
https://www.bbc.co.uk/news/uk-60460402?at_medium=RSS&at_campaign=KARANGA
|
papers |
2022-02-21 08:01:32 |
ニュース |
BBC News - Home |
'It's dead in the water' - McIlroy says Johnson & DeChambeau rejecting Super League is a fatal blow |
https://www.bbc.co.uk/sport/golf/60457721?at_medium=RSS&at_campaign=KARANGA
|
x It x s dead in the water x McIlroy says Johnson amp DeChambeau rejecting Super League is a fatal blowDustin Johnson and Bryson DeChambeau distance themselves from a Saudi backed Super League by reaffirming their commitment to the PGA Tour |
2022-02-21 08:31:01 |
北海道 |
北海道新聞 |
<横田教授の「コロナ」チェック>全道で感染拡大止まる 医療は逼迫 |
https://www.hokkaido-np.co.jp/article/648290/
|
感染拡大 |
2022-02-21 17:15:08 |
IT |
週刊アスキー |
実売価格3000円台でIPv6 IPoEに対応、TP-LinkのWi-Fiルーター「Archer C6」のアップグレードバージョン「V3.2」が2月28日発売 |
https://weekly.ascii.jp/elem/000/004/084/4084095/
|
archerc |
2022-02-21 17:30:00 |
IT |
週刊アスキー |
噛めば噛むほどペヤング。特製ソースの「ペヤングの種」発売へ |
https://weekly.ascii.jp/elem/000/004/084/4084058/
|
製菓 |
2022-02-21 17:15:00 |
IT |
週刊アスキー |
セガの新作スマホRPG『シン・クロニクル』世界観とゲームシステムの最新情報を公開 |
https://weekly.ascii.jp/elem/000/004/084/4084109/
|
最新情報 |
2022-02-21 17:10:00 |
マーケティング |
AdverTimes |
ベクトル、創業者の西江会長が代表復帰へ |
https://www.advertimes.com/20220221/article377435/
|
代表取締役会長 |
2022-02-21 08:45:14 |
コメント
コメントを投稿